home *** CD-ROM | disk | FTP | other *** search
/ PC World 2005 June / PCWorld_2005-06_cd.bin / software / vyzkuste / firewally / firewally.exe / framework-2.3.exe / tclPlatDecls.h < prev    next >
C/C++ Source or Header  |  2003-09-01  |  6KB  |  187 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 2002/09/27 00:50:10 hobbs 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. #endif /* MAC_OSX_TCL */
  86.  
  87. typedef struct TclPlatStubs {
  88.     int magic;
  89.     struct TclPlatStubHooks *hooks;
  90.  
  91. #ifdef __WIN32__
  92.     TCHAR * (*tcl_WinUtfToTChar) _ANSI_ARGS_((CONST char * str, int len, Tcl_DString * dsPtr)); /* 0 */
  93.     char * (*tcl_WinTCharToUtf) _ANSI_ARGS_((CONST TCHAR * str, int len, Tcl_DString * dsPtr)); /* 1 */
  94. #endif /* __WIN32__ */
  95. #ifdef MAC_TCL
  96.     void (*tcl_MacSetEventProc) _ANSI_ARGS_((Tcl_MacConvertEventPtr procPtr)); /* 0 */
  97.     char * (*tcl_MacConvertTextResource) _ANSI_ARGS_((Handle resource)); /* 1 */
  98.     int (*tcl_MacEvalResource) _ANSI_ARGS_((Tcl_Interp * interp, CONST char * resourceName, int resourceNumber, CONST char * fileName)); /* 2 */
  99.     Handle (*tcl_MacFindResource) _ANSI_ARGS_((Tcl_Interp * interp, long resourceType, CONST char * resourceName, int resourceNumber, CONST char * resFileRef, int * releaseIt)); /* 3 */
  100.     int (*tcl_GetOSTypeFromObj) _ANSI_ARGS_((Tcl_Interp * interp, Tcl_Obj * objPtr, OSType * osTypePtr)); /* 4 */
  101.     void (*tcl_SetOSTypeObj) _ANSI_ARGS_((Tcl_Obj * objPtr, OSType osType)); /* 5 */
  102.     Tcl_Obj * (*tcl_NewOSTypeObj) _ANSI_ARGS_((OSType osType)); /* 6 */
  103.     int (*strncasecmp) _ANSI_ARGS_((CONST char * s1, CONST char * s2, size_t n)); /* 7 */
  104.     int (*strcasecmp) _ANSI_ARGS_((CONST char * s1, CONST char * s2)); /* 8 */
  105. #endif /* MAC_TCL */
  106. #ifdef MAC_OSX_TCL
  107.     int (*tcl_MacOSXOpenBundleResources) _ANSI_ARGS_((Tcl_Interp * interp, CONST char * bundleName, int hasResourceFile, int maxPathLen, char * libraryPath)); /* 0 */
  108. #endif /* MAC_OSX_TCL */
  109. } TclPlatStubs;
  110.  
  111. #ifdef __cplusplus
  112. extern "C" {
  113. #endif
  114. extern TclPlatStubs *tclPlatStubsPtr;
  115. #ifdef __cplusplus
  116. }
  117. #endif
  118.  
  119. #if defined(USE_TCL_STUBS) && !defined(USE_TCL_STUB_PROCS)
  120.  
  121. /*
  122.  * Inline function declarations:
  123.  */
  124.  
  125. #ifdef __WIN32__
  126. #ifndef Tcl_WinUtfToTChar
  127. #define Tcl_WinUtfToTChar \
  128.     (tclPlatStubsPtr->tcl_WinUtfToTChar) /* 0 */
  129. #endif
  130. #ifndef Tcl_WinTCharToUtf
  131. #define Tcl_WinTCharToUtf \
  132.     (tclPlatStubsPtr->tcl_WinTCharToUtf) /* 1 */
  133. #endif
  134. #endif /* __WIN32__ */
  135. #ifdef MAC_TCL
  136. #ifndef Tcl_MacSetEventProc
  137. #define Tcl_MacSetEventProc \
  138.     (tclPlatStubsPtr->tcl_MacSetEventProc) /* 0 */
  139. #endif
  140. #ifndef Tcl_MacConvertTextResource
  141. #define Tcl_MacConvertTextResource \
  142.     (tclPlatStubsPtr->tcl_MacConvertTextResource) /* 1 */
  143. #endif
  144. #ifndef Tcl_MacEvalResource
  145. #define Tcl_MacEvalResource \
  146.     (tclPlatStubsPtr->tcl_MacEvalResource) /* 2 */
  147. #endif
  148. #ifndef Tcl_MacFindResource
  149. #define Tcl_MacFindResource \
  150.     (tclPlatStubsPtr->tcl_MacFindResource) /* 3 */
  151. #endif
  152. #ifndef Tcl_GetOSTypeFromObj
  153. #define Tcl_GetOSTypeFromObj \
  154.     (tclPlatStubsPtr->tcl_GetOSTypeFromObj) /* 4 */
  155. #endif
  156. #ifndef Tcl_SetOSTypeObj
  157. #define Tcl_SetOSTypeObj \
  158.     (tclPlatStubsPtr->tcl_SetOSTypeObj) /* 5 */
  159. #endif
  160. #ifndef Tcl_NewOSTypeObj
  161. #define Tcl_NewOSTypeObj \
  162.     (tclPlatStubsPtr->tcl_NewOSTypeObj) /* 6 */
  163. #endif
  164. #ifndef strncasecmp
  165. #define strncasecmp \
  166.     (tclPlatStubsPtr->strncasecmp) /* 7 */
  167. #endif
  168. #ifndef strcasecmp
  169. #define strcasecmp \
  170.     (tclPlatStubsPtr->strcasecmp) /* 8 */
  171. #endif
  172. #endif /* MAC_TCL */
  173. #ifdef MAC_OSX_TCL
  174. #ifndef Tcl_MacOSXOpenBundleResources
  175. #define Tcl_MacOSXOpenBundleResources \
  176.     (tclPlatStubsPtr->tcl_MacOSXOpenBundleResources) /* 0 */
  177. #endif
  178. #endif /* MAC_OSX_TCL */
  179.  
  180. #endif /* defined(USE_TCL_STUBS) && !defined(USE_TCL_STUB_PROCS) */
  181.  
  182. /* !END!: Do not edit above this line. */
  183.  
  184. #endif /* _TCLPLATDECLS */
  185.  
  186.  
  187.