4
* Declarations of platform specific Tcl APIs.
6
* Copyright (c) 1998-1999 by Scriptics Corporation.
9
* RCS: @(#) $Id: tclPlatDecls.h,v 1.27.2.3 2010/11/16 14:57:46 nijtmans Exp $
15
#undef TCL_STORAGE_CLASS
17
# define TCL_STORAGE_CLASS DLLEXPORT
20
# define TCL_STORAGE_CLASS
22
# define TCL_STORAGE_CLASS DLLIMPORT
27
* Pull in the typedef of TCHAR for windows.
29
#if defined(__WIN32__) && !defined(_TCHAR_DEFINED)
31
# ifndef _TCHAR_DEFINED
32
/* Borland seems to forget to set this. */
34
# define _TCHAR_DEFINED
36
# if defined(_MSC_VER) && defined(__STDC__)
37
/* VS2005 SP1 misses this. See [Bug #3110161] */
42
/* !BEGIN!: Do not edit below this line. */
45
* Exported function declarations:
48
#ifdef __WIN32__ /* WIN */
49
#ifndef Tcl_WinUtfToTChar_TCL_DECLARED
50
#define Tcl_WinUtfToTChar_TCL_DECLARED
52
EXTERN TCHAR * Tcl_WinUtfToTChar(CONST char *str, int len,
55
#ifndef Tcl_WinTCharToUtf_TCL_DECLARED
56
#define Tcl_WinTCharToUtf_TCL_DECLARED
58
EXTERN char * Tcl_WinTCharToUtf(CONST TCHAR *str, int len,
62
#ifdef MAC_OSX_TCL /* MACOSX */
63
#ifndef Tcl_MacOSXOpenBundleResources_TCL_DECLARED
64
#define Tcl_MacOSXOpenBundleResources_TCL_DECLARED
66
EXTERN int Tcl_MacOSXOpenBundleResources(Tcl_Interp *interp,
67
CONST char *bundleName, int hasResourceFile,
68
int maxPathLen, char *libraryPath);
70
#ifndef Tcl_MacOSXOpenVersionedBundleResources_TCL_DECLARED
71
#define Tcl_MacOSXOpenVersionedBundleResources_TCL_DECLARED
73
EXTERN int Tcl_MacOSXOpenVersionedBundleResources(
74
Tcl_Interp *interp, CONST char *bundleName,
75
CONST char *bundleVersion,
76
int hasResourceFile, int maxPathLen,
81
typedef struct TclPlatStubs {
83
struct TclPlatStubHooks *hooks;
85
#ifdef __WIN32__ /* WIN */
86
TCHAR * (*tcl_WinUtfToTChar) (CONST char *str, int len, Tcl_DString *dsPtr); /* 0 */
87
char * (*tcl_WinTCharToUtf) (CONST TCHAR *str, int len, Tcl_DString *dsPtr); /* 1 */
89
#ifdef MAC_OSX_TCL /* MACOSX */
90
int (*tcl_MacOSXOpenBundleResources) (Tcl_Interp *interp, CONST char *bundleName, int hasResourceFile, int maxPathLen, char *libraryPath); /* 0 */
91
int (*tcl_MacOSXOpenVersionedBundleResources) (Tcl_Interp *interp, CONST char *bundleName, CONST char *bundleVersion, int hasResourceFile, int maxPathLen, char *libraryPath); /* 1 */
98
extern const TclPlatStubs *tclPlatStubsPtr;
103
#if defined(USE_TCL_STUBS) && !defined(USE_TCL_STUB_PROCS)
106
* Inline function declarations:
109
#ifdef __WIN32__ /* WIN */
110
#ifndef Tcl_WinUtfToTChar
111
#define Tcl_WinUtfToTChar \
112
(tclPlatStubsPtr->tcl_WinUtfToTChar) /* 0 */
114
#ifndef Tcl_WinTCharToUtf
115
#define Tcl_WinTCharToUtf \
116
(tclPlatStubsPtr->tcl_WinTCharToUtf) /* 1 */
119
#ifdef MAC_OSX_TCL /* MACOSX */
120
#ifndef Tcl_MacOSXOpenBundleResources
121
#define Tcl_MacOSXOpenBundleResources \
122
(tclPlatStubsPtr->tcl_MacOSXOpenBundleResources) /* 0 */
124
#ifndef Tcl_MacOSXOpenVersionedBundleResources
125
#define Tcl_MacOSXOpenVersionedBundleResources \
126
(tclPlatStubsPtr->tcl_MacOSXOpenVersionedBundleResources) /* 1 */
130
#endif /* defined(USE_TCL_STUBS) && !defined(USE_TCL_STUB_PROCS) */
132
/* !END!: Do not edit above this line. */
134
#undef TCL_STORAGE_CLASS
135
#define TCL_STORAGE_CLASS DLLIMPORT
137
#endif /* _TCLPLATDECLS */