]> git.saurik.com Git - wxWidgets.git/blob - utils/wxPython/src/wxp.i
Version 0.4 of wxPython for MSW.
[wxWidgets.git] / utils / wxPython / src / wxp.i
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: wxp.i
3 // Purpose: SWIG interface file for a python wxWindows module
4 //
5 // Author: Robin Dunn
6 //
7 // Created: 5/22/98
8 // RCS-ID: $Id$
9 // Copyright: (c) 1998 by Total Control Software
10 // Licence: wxWindows license
11 /////////////////////////////////////////////////////////////////////////////
12
13 %module wxp
14
15
16 %{
17 #include "helpers.h"
18 %}
19
20 //----------------------------------------------------------------------
21 // This is where we include the other wrapper definition files for SWIG
22 //----------------------------------------------------------------------
23
24 %include typemaps.i
25 %include my_typemaps.i
26 %include _defs.i
27
28 %import misc.i
29 %import windows.i
30 %import events.i
31 %import gdi.i
32 %import mdi.i
33 %import controls.i
34 %import controls2.i
35 %import windows2.i
36 %import cmndlgs.i
37 %import stattool.i
38 %import frames.i
39
40
41
42 %native(_wxStart) __wxStart;
43 %native(_wxSetDictionary) __wxSetDictionary;
44
45 //---------------------------------------------------------------------------
46
47 #define __version__ "0.3.1"
48
49 wxPoint wxPyDefaultPosition;
50 wxSize wxPyDefaultSize;
51
52 //---------------------------------------------------------------------------
53 //---------------------------------------------------------------------------
54
55 class wxPyApp : public wxEvtHandler {
56 public:
57 %addmethods {
58 wxPyApp() {
59 wxPythonApp = new wxPyApp();
60 return wxPythonApp;
61 }
62 }
63
64
65 wxString GetAppName();
66 #ifdef __WXMSW__
67 bool GetAuto3D();
68 #endif
69 wxString GetClassName();
70 bool GetExitOnFrameDelete();
71 int GetPrintMode();
72 wxWindow * GetTopWindow();
73 wxString GetVendorName();
74
75 void Dispatch();
76 void ExitMainLoop();
77 bool Initialized();
78 int MainLoop();
79 bool Pending();
80
81 void SetAppName(const wxString& name);
82 #ifdef __WXMSW__
83 void SetAuto3D(bool auto3D);
84 #endif
85 void SetClassName(const wxString& name);
86 void SetExitOnFrameDelete(bool flag);
87 void SetPrintMode(int mode);
88 void SetTopWindow(wxWindow* window);
89 void SetVendorName(const wxString& name);
90
91 // This one is wxPython specific. If you override MainLoop,
92 // call this when done.
93 void AfterMainLoop();
94 };
95
96
97
98 //----------------------------------------------------------------------
99 // This code gets added to the module initialization function
100 //----------------------------------------------------------------------
101
102 %{
103 extern "C" SWIGEXPORT(void,initwindowsc)();
104 extern "C" SWIGEXPORT(void,initwindows2c)();
105 extern "C" SWIGEXPORT(void,initeventsc)();
106 extern "C" SWIGEXPORT(void,initmiscc)();
107 extern "C" SWIGEXPORT(void,initgdic)();
108 extern "C" SWIGEXPORT(void,initmdic)();
109 extern "C" SWIGEXPORT(void,initcontrolsc)();
110 extern "C" SWIGEXPORT(void,initcontrols2c)();
111 extern "C" SWIGEXPORT(void,initcmndlgsc)();
112 extern "C" SWIGEXPORT(void,initstattoolc)();
113 extern "C" SWIGEXPORT(void,initframesc)();
114
115 %}
116
117 %init %{
118
119 __wxPreStart(); // initialize the GUI toolkit, if needed.
120
121 // wxPyWindows = new wxHashTable(wxKEY_INTEGER, 100);
122
123 // Since these modules are all linked together, initialize them now
124 // because python won't be able to find their shared library files,
125 // (since there isn't any.)
126 initwindowsc();
127 initwindows2c();
128 initeventsc();
129 initmiscc();
130 initgdic();
131 initmdic();
132 initcontrolsc();
133 initcontrols2c();
134 initcmndlgsc();
135 initstattoolc();
136 initframesc();
137
138 %}
139
140 //----------------------------------------------------------------------
141 // And this gets appended to the shadow class file.
142 //----------------------------------------------------------------------
143
144 %pragma(python) include="_extras.py";
145
146
147 /////////////////////////////////////////////////////////////////////////////
148 //
149 // $Log$
150 // Revision 1.7 1998/10/02 06:40:44 RD
151 // Version 0.4 of wxPython for MSW.
152 //
153 // Revision 1.6 1998/08/27 21:59:10 RD
154 // Some chicken-and-egg problems solved for wxPython on wxGTK
155 //
156 // Revision 1.5 1998/08/27 00:00:28 RD
157 // - more tweaks
158 // - have discovered some problems but not yet discovered solutions...
159 //
160 // Revision 1.4 1998/08/18 19:48:20 RD
161 // more wxGTK compatibility things.
162 //
163 // It builds now but there are serious runtime problems...
164 //
165 // Revision 1.3 1998/08/15 07:36:53 RD
166 // - Moved the header in the .i files out of the code that gets put into
167 // the .cpp files. It caused CVS conflicts because of the RCS ID being
168 // different each time.
169 //
170 // - A few minor fixes.
171 //
172 // Revision 1.2 1998/08/14 23:36:49 RD
173 // Beginings of wxGTK compatibility
174 //
175 // Revision 1.1 1998/08/09 08:25:53 RD
176 // Initial version
177 //
178 //
179
180