home *** CD-ROM | disk | FTP | other *** search
/ Netrunner 2004 October / NETRUNNER0410.ISO / regular / ActivePerl-5.8.4.810-MSWin32-x86.msi / _75036b8700ce2efdef4cc6cfbf923cbd < prev    next >
Encoding:
Text File  |  2004-06-01  |  6.3 KB  |  198 lines

  1. /*
  2.  * tclPlatDecls.h --
  3.  *
  4.  *    Declarations of platform specific Tcl APIs.
  5.  *
  6.  * Copyright (c) 1998-1999 by Scriptics Corporation.
  7.  * All rights reserved.
  8.  *
  9.  * RCS: @(#) $Id: tclPlatDecls.h,v 1.18.2.1 2003/05/13 08:41:26 das Exp $
  10.  */
  11.  
  12. #ifndef _TCLPLATDECLS
  13. #define _TCLPLATDECLS
  14.  
  15. /*
  16.  *  Pull in the typedef of TCHAR for windows.
  17.  */
  18. #if defined(__CYGWIN__)
  19.     typedef char TCHAR;
  20. #elif defined(__WIN32__) && !defined(_TCHAR_DEFINED)
  21. #   include <tchar.h>
  22. #   ifndef _TCHAR_DEFINED
  23.     /* Borland seems to forget to set this. */
  24.         typedef _TCHAR TCHAR;
  25. #    define _TCHAR_DEFINED
  26. #   endif
  27. #   if defined(_MSC_VER) && defined(__STDC__)
  28.     /* MSVC++ misses this. */
  29.     typedef _TCHAR TCHAR;
  30. #   endif
  31. #endif
  32.  
  33. /* !BEGIN!: Do not edit below this line. */
  34.  
  35. /*
  36.  * Exported function declarations:
  37.  */
  38.  
  39. #ifdef __WIN32__
  40. /* 0 */
  41. EXTERN TCHAR *        Tcl_WinUtfToTChar _ANSI_ARGS_((CONST char * str,
  42.                 int len, Tcl_DString * dsPtr));
  43. /* 1 */
  44. EXTERN char *        Tcl_WinTCharToUtf _ANSI_ARGS_((CONST TCHAR * str,
  45.                 int len, Tcl_DString * dsPtr));
  46. #endif /* __WIN32__ */
  47. #ifdef MAC_TCL
  48. /* 0 */
  49. EXTERN void        Tcl_MacSetEventProc _ANSI_ARGS_((
  50.                 Tcl_MacConvertEventPtr procPtr));
  51. /* 1 */
  52. EXTERN char *        Tcl_MacConvertTextResource _ANSI_ARGS_((
  53.                 Handle resource));
  54. /* 2 */
  55. EXTERN int        Tcl_MacEvalResource _ANSI_ARGS_((Tcl_Interp * interp,
  56.                 CONST char * resourceName,
  57.                 int resourceNumber, CONST char * fileName));
  58. /* 3 */
  59. EXTERN Handle        Tcl_MacFindResource _ANSI_ARGS_((Tcl_Interp * interp,
  60.                 long resourceType, CONST char * resourceName,
  61.                 int resourceNumber, CONST char * resFileRef,
  62.                 int * releaseIt));
  63. /* 4 */
  64. EXTERN int        Tcl_GetOSTypeFromObj _ANSI_ARGS_((
  65.                 Tcl_Interp * interp, Tcl_Obj * objPtr,
  66.                 OSType * osTypePtr));
  67. /* 5 */
  68. EXTERN void        Tcl_SetOSTypeObj _ANSI_ARGS_((Tcl_Obj * objPtr,
  69.                 OSType osType));
  70. /* 6 */
  71. EXTERN Tcl_Obj *    Tcl_NewOSTypeObj _ANSI_ARGS_((OSType osType));
  72. /* 7 */
  73. EXTERN int        strncasecmp _ANSI_ARGS_((CONST char * s1,
  74.                 CONST char * s2, size_t n));
  75. /* 8 */
  76. EXTERN int        strcasecmp _ANSI_ARGS_((CONST char * s1,
  77.                 CONST char * s2));
  78. #endif /* MAC_TCL */
  79. #ifdef MAC_OSX_TCL
  80. /* 0 */
  81. EXTERN int        Tcl_MacOSXOpenBundleResources _ANSI_ARGS_((
  82.                 Tcl_Interp * interp, CONST char * bundleName,
  83.                 int hasResourceFile, int maxPathLen,
  84.                 char * libraryPath));
  85. /* 1 */
  86. EXTERN int        Tcl_MacOSXOpenVersionedBundleResources _ANSI_ARGS_((
  87.                 Tcl_Interp * interp, CONST char * bundleName,
  88.                 CONST char * bundleVersion,
  89.                 int hasResourceFile, int maxPathLen,
  90.                 char * libraryPath));
  91. #endif /* MAC_OSX_TCL */
  92.  
  93. typedef struct TclPlatStubs {
  94.     int magic;
  95.     struct TclPlatStubHooks *hooks;
  96.  
  97. #ifdef __WIN32__
  98.     TCHAR * (*tcl_WinUtfToTChar) _ANSI_ARGS_((CONST char * str, int len, Tcl_DString * dsPtr)); /* 0 */
  99.     char * (*tcl_WinTCharToUtf) _ANSI_ARGS_((CONST TCHAR * str, int len, Tcl_DString * dsPtr)); /* 1 */
  100. #endif /* __WIN32__ */
  101. #ifdef MAC_TCL
  102.     void (*tcl_MacSetEventProc) _ANSI_ARGS_((Tcl_MacConvertEventPtr procPtr)); /* 0 */
  103.     char * (*tcl_MacConvertTextResource) _ANSI_ARGS_((Handle resource)); /* 1 */
  104.     int (*tcl_MacEvalResource) _ANSI_ARGS_((Tcl_Interp * interp, CONST char * resourceName, int resourceNumber, CONST char * fileName)); /* 2 */
  105.     Handle (*tcl_MacFindResource) _ANSI_ARGS_((Tcl_Interp * interp, long resourceType, CONST char * resourceName, int resourceNumber, CONST char * resFileRef, int * releaseIt)); /* 3 */
  106.     int (*tcl_GetOSTypeFromObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr, OSType * osTypePtr)); /* 4 */
  107.     void (*tcl_SetOSTypeObj) _ANSI_ARGS_((Tcl_Obj * objPtr, OSType osType)); /* 5 */
  108.     Tcl_Obj * (*tcl_NewOSTypeObj) _ANSI_ARGS_((OSType osType)); /* 6 */
  109.     int (*strncasecmp) _ANSI_ARGS_((CONST char * s1, CONST char * s2, size_t n)); /* 7 */
  110.     int (*strcasecmp) _ANSI_ARGS_((CONST char * s1, CONST char * s2)); /* 8 */
  111. #endif /* MAC_TCL */
  112. #ifdef MAC_OSX_TCL
  113.     int (*tcl_MacOSXOpenBundleResources) _ANSI_ARGS_((Tcl_Interp * interp, CONST char * bundleName, int hasResourceFile, int maxPathLen, char * libraryPath)); /* 0 */
  114.     int (*tcl_MacOSXOpenVersionedBundleResources) _ANSI_ARGS_((Tcl_Interp * interp, CONST char * bundleName, CONST char * bundleVersion, int hasResourceFile, int maxPathLen, char * libraryPath)); /* 1 */
  115. #endif /* MAC_OSX_TCL */
  116. } TclPlatStubs;
  117.  
  118. #ifdef __cplusplus
  119. extern "C" {
  120. #endif
  121. extern TclPlatStubs *tclPlatStubsPtr;
  122. #ifdef __cplusplus
  123. }
  124. #endif
  125.  
  126. #if defined(USE_TCL_STUBS) && !defined(USE_TCL_STUB_PROCS)
  127.  
  128. /*
  129.  * Inline function declarations:
  130.  */
  131.  
  132. #ifdef __WIN32__
  133. #ifndef Tcl_WinUtfToTChar
  134. #define Tcl_WinUtfToTChar \
  135.     (tclPlatStubsPtr->tcl_WinUtfToTChar) /* 0 */
  136. #endif
  137. #ifndef Tcl_WinTCharToUtf
  138. #define Tcl_WinTCharToUtf \
  139.     (tclPlatStubsPtr->tcl_WinTCharToUtf) /* 1 */
  140. #endif
  141. #endif /* __WIN32__ */
  142. #ifdef MAC_TCL
  143. #ifndef Tcl_MacSetEventProc
  144. #define Tcl_MacSetEventProc \
  145.     (tclPlatStubsPtr->tcl_MacSetEventProc) /* 0 */
  146. #endif
  147. #ifndef Tcl_MacConvertTextResource
  148. #define Tcl_MacConvertTextResource \
  149.     (tclPlatStubsPtr->tcl_MacConvertTextResource) /* 1 */
  150. #endif
  151. #ifndef Tcl_MacEvalResource
  152. #define Tcl_MacEvalResource \
  153.     (tclPlatStubsPtr->tcl_MacEvalResource) /* 2 */
  154. #endif
  155. #ifndef Tcl_MacFindResource
  156. #define Tcl_MacFindResource \
  157.     (tclPlatStubsPtr->tcl_MacFindResource) /* 3 */
  158. #endif
  159. #ifndef Tcl_GetOSTypeFromObj
  160. #define Tcl_GetOSTypeFromObj \
  161.     (tclPlatStubsPtr->tcl_GetOSTypeFromObj) /* 4 */
  162. #endif
  163. #ifndef Tcl_SetOSTypeObj
  164. #define Tcl_SetOSTypeObj \
  165.     (tclPlatStubsPtr->tcl_SetOSTypeObj) /* 5 */
  166. #endif
  167. #ifndef Tcl_NewOSTypeObj
  168. #define Tcl_NewOSTypeObj \
  169.     (tclPlatStubsPtr->tcl_NewOSTypeObj) /* 6 */
  170. #endif
  171. #ifndef strncasecmp
  172. #define strncasecmp \
  173.     (tclPlatStubsPtr->strncasecmp) /* 7 */
  174. #endif
  175. #ifndef strcasecmp
  176. #define strcasecmp \
  177.     (tclPlatStubsPtr->strcasecmp) /* 8 */
  178. #endif
  179. #endif /* MAC_TCL */
  180. #ifdef MAC_OSX_TCL
  181. #ifndef Tcl_MacOSXOpenBundleResources
  182. #define Tcl_MacOSXOpenBundleResources \
  183.     (tclPlatStubsPtr->tcl_MacOSXOpenBundleResources) /* 0 */
  184. #endif
  185. #ifndef Tcl_MacOSXOpenVersionedBundleResources
  186. #define Tcl_MacOSXOpenVersionedBundleResources \
  187.     (tclPlatStubsPtr->tcl_MacOSXOpenVersionedBundleResources) /* 1 */
  188. #endif
  189. #endif /* MAC_OSX_TCL */
  190.  
  191. #endif /* defined(USE_TCL_STUBS) && !defined(USE_TCL_STUB_PROCS) */
  192.  
  193. /* !END!: Do not edit above this line. */
  194.  
  195. #endif /* _TCLPLATDECLS */
  196.  
  197.  
  198.