1 /////////////////////////////////////////////////////////////////////////////
3 // Purpose: SWIG interface file for a python wxWindows module
9 // Copyright: (c) 1998 by Total Control Software
10 // Licence: wxWindows license
11 /////////////////////////////////////////////////////////////////////////////
20 //----------------------------------------------------------------------
21 // This is where we include the other wrapper definition files for SWIG
22 //----------------------------------------------------------------------
25 %include my_typemaps.i
50 %native(_wxStart) __wxStart;
51 %native(_wxSetDictionary) __wxSetDictionary;
53 //---------------------------------------------------------------------------
56 #define __version__ "0.0.0" // The real value is now in setup.py...
59 wxPoint wxDefaultPosition;
63 //---------------------------------------------------------------------------
64 //---------------------------------------------------------------------------
66 class wxPyApp : public wxEvtHandler {
70 wxPythonApp = new wxPyApp();
77 wxString GetAppName();
81 wxString GetClassName();
82 bool GetExitOnFrameDelete();
84 wxWindow * GetTopWindow();
85 wxString GetVendorName();
86 bool GetUseBestVisual();
95 void SetAppName(const wxString& name);
97 void SetAuto3D(bool auto3D);
99 void SetClassName(const wxString& name);
100 void SetExitOnFrameDelete(bool flag);
101 void SetPrintMode(int mode);
102 void SetTopWindow(wxWindow* window);
103 void SetVendorName(const wxString& name);
104 void SetUseBestVisual(bool flag);
105 wxIcon GetStdIcon(int which);
109 wxPyApp* wxGetApp() {
116 //----------------------------------------------------------------------
117 // this is used to cleanup after wxWindows when Python shuts down.
120 void wxApp_CleanUp() {
125 //----------------------------------------------------------------------
126 // This code gets added to the module initialization function
127 //----------------------------------------------------------------------
132 extern "C" SWIGEXPORT(void) initwindowsc();
133 extern "C" SWIGEXPORT(void) initwindows2c();
134 extern "C" SWIGEXPORT(void) initeventsc();
135 extern "C" SWIGEXPORT(void) initmiscc();
136 extern "C" SWIGEXPORT(void) initmisc2c();
137 extern "C" SWIGEXPORT(void) initgdic();
138 extern "C" SWIGEXPORT(void) initmdic();
139 extern "C" SWIGEXPORT(void) initcontrolsc();
140 extern "C" SWIGEXPORT(void) initcontrols2c();
141 extern "C" SWIGEXPORT(void) initcmndlgsc();
142 extern "C" SWIGEXPORT(void) initstattoolc();
143 extern "C" SWIGEXPORT(void) initframesc();
144 extern "C" SWIGEXPORT(void) initwindows3c();
145 extern "C" SWIGEXPORT(void) initimagec();
146 extern "C" SWIGEXPORT(void) initprintfwc();
147 extern "C" SWIGEXPORT(void) initsizersc();
148 extern "C" SWIGEXPORT(void) initclip_dndc();
149 extern "C" SWIGEXPORT(void) initstreamsc();
150 extern "C" SWIGEXPORT(void) initfilesysc();
151 extern "C" SWIGEXPORT(void) initutilsc();
155 // Export a C API in a struct. Other modules will be able to load this from
156 // the wxc module and will then have safe access to these functions, even if
157 // in another shared library.
158 static wxPyCoreAPI API = {
162 SWIG_RegisterMapping,
166 wxPyBeginAllowThreads,
168 wxPyBeginBlockThreads,
183 wxBitmap_LIST_helper,
184 wxString_LIST_helper,
185 wxAcceleratorEntry_LIST_helper,
193 wxPyCBH_setCallbackInfo,
194 wxPyCBH_findCallback,
195 wxPyCBH_callCallback,
196 wxPyCBH_callCallbackObj,
203 wxArrayString2PyList_helper,
204 wxArrayInt2PyList_helper
213 // Make our API structure a CObject so other modules can import it
215 PyObject* v = PyCObject_FromVoidPtr(&API, NULL);
216 PyDict_SetItemString(d,"wxPyCoreAPI", v);
220 __wxPreStart(); // initialize the GUI toolkit, if needed.
223 // Since these modules are all linked together, initialize them now
224 // because Python won't be able to find their shared library files,
225 // (since there isn't any.)
248 PyDict_SetItemString(d,"wxMAJOR_VERSION", PyInt_FromLong((long)wxMAJOR_VERSION ));
249 PyDict_SetItemString(d,"wxMINOR_VERSION", PyInt_FromLong((long)wxMINOR_VERSION ));
250 PyDict_SetItemString(d,"wxRELEASE_NUMBER", PyInt_FromLong((long)wxRELEASE_NUMBER ));
251 PyDict_SetItemString(d,"wxVERSION_NUMBER", PyInt_FromLong((long)wxVERSION_NUMBER ));
253 wxString tempStr(wxVERSION_STRING);
254 PyDict_SetItemString(d,"wxVERSION_STRING", PyUnicode_FromUnicode(tempStr.c_str(), tempStr.Len()));
256 PyDict_SetItemString(d,"wxVERSION_STRING", PyString_FromString(wxVERSION_STRING));
262 //----------------------------------------------------------------------
263 // And this gets appended to the shadow class file.
264 //----------------------------------------------------------------------
266 %pragma(python) include="_extras.py";