]> git.saurik.com Git - wxWidgets.git/blob - utils/wxPython/src/wx.i
wxPython version 2.0b5
[wxWidgets.git] / utils / wxPython / src / wx.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 wx
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 %import windows3.i
40 #ifndef SEPARATE
41 %import utils.i
42 #endif
43
44
45 %native(_wxStart) __wxStart;
46 %native(_wxSetDictionary) __wxSetDictionary;
47
48 //---------------------------------------------------------------------------
49
50 #define __version__ "2.0b5"
51
52 wxPoint wxPyDefaultPosition;
53 wxSize wxPyDefaultSize;
54
55 //---------------------------------------------------------------------------
56 //---------------------------------------------------------------------------
57
58 class wxPyApp : public wxEvtHandler {
59 public:
60 %addmethods {
61 wxPyApp() {
62 wxPythonApp = new wxPyApp();
63 return wxPythonApp;
64 }
65 }
66
67
68 wxString GetAppName();
69 #ifdef __WXMSW__
70 bool GetAuto3D();
71 #endif
72 wxString GetClassName();
73 bool GetExitOnFrameDelete();
74 int GetPrintMode();
75 wxWindow * GetTopWindow();
76 wxString GetVendorName();
77
78 void Dispatch();
79 void ExitMainLoop();
80 bool Initialized();
81 int MainLoop();
82 bool Pending();
83
84 void SetAppName(const wxString& name);
85 #ifdef __WXMSW__
86 void SetAuto3D(bool auto3D);
87 #endif
88 void SetClassName(const wxString& name);
89 void SetExitOnFrameDelete(bool flag);
90 void SetPrintMode(int mode);
91 void SetTopWindow(wxWindow* window);
92 void SetVendorName(const wxString& name);
93
94 // This one is wxPython specific. If you override MainLoop,
95 // call this when done.
96 void AfterMainLoop();
97 };
98
99
100
101 //----------------------------------------------------------------------
102 // This code gets added to the module initialization function
103 //----------------------------------------------------------------------
104
105 %{
106 extern "C" SWIGEXPORT(void,initwindowsc)();
107 extern "C" SWIGEXPORT(void,initwindows2c)();
108 extern "C" SWIGEXPORT(void,initeventsc)();
109 extern "C" SWIGEXPORT(void,initmiscc)();
110 extern "C" SWIGEXPORT(void,initgdic)();
111 extern "C" SWIGEXPORT(void,initmdic)();
112 extern "C" SWIGEXPORT(void,initcontrolsc)();
113 extern "C" SWIGEXPORT(void,initcontrols2c)();
114 extern "C" SWIGEXPORT(void,initcmndlgsc)();
115 extern "C" SWIGEXPORT(void,initstattoolc)();
116 extern "C" SWIGEXPORT(void,initframesc)();
117 extern "C" SWIGEXPORT(void,initwindows3c)();
118 #ifndef SEPARATE
119 extern "C" SWIGEXPORT(void,initutilsc)();
120 #endif
121 %}
122
123
124
125 %init %{
126
127 __wxPreStart(); // initialize the GUI toolkit, if needed.
128
129 // wxPyWindows = new wxHashTable(wxKEY_INTEGER, 100);
130
131 // Since these modules are all linked together, initialize them now
132 // because python won't be able to find their shared library files,
133 // (since there isn't any.)
134 initwindowsc();
135 initwindows2c();
136 initeventsc();
137 initmiscc();
138 initgdic();
139 initmdic();
140 initcontrolsc();
141 initcontrols2c();
142 initcmndlgsc();
143 initstattoolc();
144 initframesc();
145 initwindows3c();
146 #ifndef SEPARATE
147 initutilsc();
148 #endif
149 %}
150
151 //----------------------------------------------------------------------
152 // And this gets appended to the shadow class file.
153 //----------------------------------------------------------------------
154
155 %pragma(python) include="_extras.py";
156
157
158 /////////////////////////////////////////////////////////////////////////////
159 //
160 // $Log$
161 // Revision 1.7 1999/02/25 07:08:37 RD
162 // wxPython version 2.0b5
163 //
164 // Revision 1.6 1999/02/20 09:03:04 RD
165 // Added wxWindow_FromHWND(hWnd) for wxMSW to construct a wxWindow from a
166 // window handle. If you can get the window handle into the python code,
167 // it should just work... More news on this later.
168 //
169 // Added wxImageList, wxToolTip.
170 //
171 // Re-enabled wxConfig.DeleteAll() since it is reportedly fixed for the
172 // wxRegConfig class.
173 //
174 // As usual, some bug fixes, tweaks, etc.
175 //
176 // Revision 1.5 1999/02/01 00:10:41 RD
177 //
178 // Added the missing EVT_LIST_ITEM_SELECTED and friends.
179 //
180 // Revision 1.4 1999/01/30 07:30:16 RD
181 //
182 // Added wxSashWindow, wxSashEvent, wxLayoutAlgorithm, etc.
183 //
184 // Various cleanup, tweaks, minor additions, etc. to maintain
185 // compatibility with the current wxWindows.
186 //
187 // Revision 1.3 1998/12/17 17:52:21 RD
188 //
189 // wxPython 0.5.2
190 // Minor fixes and SWIG code generation for RR's changes. MSW and GTK
191 // versions are much closer now!
192 //
193 // Revision 1.2 1998/12/16 22:10:57 RD
194 //
195 // Tweaks needed to be able to build wxPython with wxGTK.
196 //
197 // Revision 1.1 1998/12/15 20:41:27 RD
198 // Changed the import semantics from "from wxPython import *" to "from
199 // wxPython.wx import *" This is for people who are worried about
200 // namespace pollution, they can use "from wxPython import wx" and then
201 // prefix all the wxPython identifiers with "wx."
202 //
203 // Added wxTaskbarIcon for wxMSW.
204 //
205 // Made the events work for wxGrid.
206 //
207 // Added wxConfig.
208 //
209 // Added wxMiniFrame for wxGTK, (untested.)
210 //
211 // Changed many of the args and return values that were pointers to gdi
212 // objects to references to reflect changes in the wxWindows API.
213 //
214 // Other assorted fixes and additions.
215 //
216 // Revision 1.9 1998/10/20 07:38:04 RD
217 // bug fix
218 //
219 // Revision 1.8 1998/10/07 07:34:35 RD
220 // Version 0.4.1 for wxGTK
221 //
222 // Revision 1.7 1998/10/02 06:40:44 RD
223 //
224 // Version 0.4 of wxPython for MSW.
225 //
226 // Revision 1.6 1998/08/27 21:59:10 RD
227 // Some chicken-and-egg problems solved for wxPython on wxGTK
228 //
229 // Revision 1.5 1998/08/27 00:00:28 RD
230 // - more tweaks
231 // - have discovered some problems but not yet discovered solutions...
232 //
233 // Revision 1.4 1998/08/18 19:48:20 RD
234 // more wxGTK compatibility things.
235 //
236 // It builds now but there are serious runtime problems...
237 //
238 // Revision 1.3 1998/08/15 07:36:53 RD
239 // - Moved the header in the .i files out of the code that gets put into
240 // the .cpp files. It caused CVS conflicts because of the RCS ID being
241 // different each time.
242 //
243 // - A few minor fixes.
244 //
245 // Revision 1.2 1998/08/14 23:36:49 RD
246 // Beginings of wxGTK compatibility
247 //
248 // Revision 1.1 1998/08/09 08:25:53 RD
249 // Initial version
250 //
251 //
252
253