]> git.saurik.com Git - wxWidgets.git/blame_incremental - wxPython/src/_functions.i
Version
[wxWidgets.git] / wxPython / src / _functions.i
... / ...
CommitLineData
1/////////////////////////////////////////////////////////////////////////////
2// Name: _functions.i
3// Purpose: SWIG interface defs for various functions and such
4//
5// Author: Robin Dunn
6//
7// Created: 3-July-1997
8// RCS-ID: $Id$
9// Copyright: (c) 2003 by Total Control Software
10// Licence: wxWindows license
11/////////////////////////////////////////////////////////////////////////////
12
13// Not a %module
14
15
16%{
17#include <wx/stockitem.h>
18%}
19
20//---------------------------------------------------------------------------
21
22MAKE_CONST_WXSTRING(FileSelectorPromptStr);
23MAKE_CONST_WXSTRING(FileSelectorDefaultWildcardStr);
24MAKE_CONST_WXSTRING(DirSelectorPromptStr);
25
26//---------------------------------------------------------------------------
27%newgroup;
28
29
30long wxNewId();
31void wxRegisterId(long id);
32long wxGetCurrentId();
33
34// Returns true if the ID is in the list of recognized stock actions
35bool wxIsStockID(wxWindowID id);
36
37// Returns true of the label is empty or label of a stock button with
38// given ID
39bool wxIsStockLabel(wxWindowID id, const wxString& label);
40
41// Returns label that should be used for given stock UI element (e.g. "&OK"
42// for wxID_OK):
43wxString wxGetStockLabel(wxWindowID id,
44 bool withCodes = true,
45 wxString accelerator = wxPyEmptyString);
46
47
48MustHaveApp(wxBell);
49void wxBell();
50
51MustHaveApp(wxEndBusyCursor);
52void wxEndBusyCursor();
53
54long wxGetElapsedTime(bool resetTimer = true);
55
56MustHaveApp(wxGetMousePosition);
57DocDeclA(
58 void, wxGetMousePosition(int* OUTPUT, int* OUTPUT),
59 "GetMousePosition() -> (x,y)");
60
61bool wxIsBusy();
62wxString wxNow();
63bool wxShell(const wxString& command = wxPyEmptyString);
64void wxStartTimer();
65
66DocDeclA(
67 int, wxGetOsVersion(int *OUTPUT, int *OUTPUT),
68 "GetOsVersion() -> (platform, major, minor)");
69
70wxString wxGetOsDescription();
71
72// TODO:
73// // Parses the wildCard, returning the number of filters.
74// // Returns 0 if none or if there's a problem,
75// // The arrays will contain an equal number of items found before the error.
76// // wildCard is in the form:
77// // "All files (*)|*|Image Files (*.jpeg *.png)|*.jpg;*.png"
78// int wxParseCommonDialogsFilter(const wxString& wildCard, wxArrayString& descriptions, wxArrayString& filters);
79
80#if defined(__WXMSW__) || defined(__WXMAC__)
81long wxGetFreeMemory();
82#else
83%inline %{
84 long wxGetFreeMemory()
85 { wxPyRaiseNotImplemented(); return 0; }
86%}
87#endif
88
89enum wxShutdownFlags
90{
91 wxSHUTDOWN_POWEROFF, // power off the computer
92 wxSHUTDOWN_REBOOT // shutdown and reboot
93};
94
95// Shutdown or reboot the PC
96MustHaveApp(wxShutdown);
97bool wxShutdown(wxShutdownFlags wFlags);
98
99
100void wxSleep(int secs);
101void wxMilliSleep(unsigned long milliseconds);
102void wxMicroSleep(unsigned long microseconds);
103%pythoncode { Usleep = MilliSleep }
104
105void wxEnableTopLevelWindows(bool enable);
106
107wxString wxStripMenuCodes(const wxString& in);
108
109
110wxString wxGetEmailAddress();
111wxString wxGetHostName();
112wxString wxGetFullHostName();
113wxString wxGetUserId();
114wxString wxGetUserName();
115wxString wxGetHomeDir();
116wxString wxGetUserHome(const wxString& user = wxPyEmptyString);
117
118unsigned long wxGetProcessId();
119
120void wxTrap();
121
122
123// Dialog Functions
124
125MustHaveApp(wxFileSelector);
126wxString wxFileSelector(const wxString& message = wxPyFileSelectorPromptStr,
127 const wxString& default_path = wxPyEmptyString,
128 const wxString& default_filename = wxPyEmptyString,
129 const wxString& default_extension = wxPyEmptyString,
130 const wxString& wildcard = wxPyFileSelectorDefaultWildcardStr,
131 int flags = 0,
132 wxWindow *parent = NULL,
133 int x = -1, int y = -1);
134
135// TODO: wxFileSelectorEx
136
137
138// Ask for filename to load
139MustHaveApp(wxLoadFileSelector);
140wxString wxLoadFileSelector(const wxString& what,
141 const wxString& extension,
142 const wxString& default_name = wxPyEmptyString,
143 wxWindow *parent = NULL);
144
145// Ask for filename to save
146MustHaveApp(wxSaveFileSelector);
147wxString wxSaveFileSelector(const wxString& what,
148 const wxString& extension,
149 const wxString& default_name = wxPyEmptyString,
150 wxWindow *parent = NULL);
151
152
153MustHaveApp(wxDirSelector);
154wxString wxDirSelector(const wxString& message = wxPyDirSelectorPromptStr,
155 const wxString& defaultPath = wxPyEmptyString,
156 long style = wxDD_DEFAULT_STYLE,
157 const wxPoint& pos = wxDefaultPosition,
158 wxWindow *parent = NULL);
159
160MustHaveApp(wxGetTextFromUser);
161wxString wxGetTextFromUser(const wxString& message,
162 const wxString& caption = wxPyEmptyString,
163 const wxString& default_value = wxPyEmptyString,
164 wxWindow *parent = NULL,
165 int x = -1, int y = -1,
166 bool centre = true);
167
168MustHaveApp(wxGetPasswordFromUser);
169wxString wxGetPasswordFromUser(const wxString& message,
170 const wxString& caption = wxPyEmptyString,
171 const wxString& default_value = wxPyEmptyString,
172 wxWindow *parent = NULL);
173
174
175// TODO: Need to custom wrap this one...
176// int wxGetMultipleChoice(char* message, char* caption,
177// int LCOUNT, char** choices,
178// int nsel, int *selection,
179// wxWindow *parent = NULL, int x = -1, int y = -1,
180// bool centre = true, int width=150, int height=200);
181
182
183MustHaveApp(wxGetSingleChoice);
184wxString wxGetSingleChoice(const wxString& message, const wxString& caption,
185 int choices, wxString* choices_array,
186 wxWindow *parent = NULL,
187 int x = -1, int y = -1,
188 bool centre = true,
189 int width=150, int height=200);
190
191MustHaveApp(wxGetSingleChoiceIndex);
192int wxGetSingleChoiceIndex(const wxString& message, const wxString& caption,
193 int choices, wxString* choices_array,
194 wxWindow *parent = NULL,
195 int x = -1, int y = -1,
196 bool centre = true,
197 int width=150, int height=200);
198
199
200MustHaveApp(wxMessageBox);
201int wxMessageBox(const wxString& message,
202 const wxString& caption = wxPyEmptyString,
203 int style = wxOK | wxCENTRE,
204 wxWindow *parent = NULL,
205 int x = -1, int y = -1);
206
207// WXWIN_COMPATIBILITY_2_4
208MustHaveApp(wxGetNumberFromUser);
209long wxGetNumberFromUser(const wxString& message,
210 const wxString& prompt,
211 const wxString& caption,
212 long value,
213 long min = 0, long max = 100,
214 wxWindow *parent = NULL,
215 const wxPoint& pos = wxDefaultPosition);
216
217// GDI Functions
218
219MustHaveApp(wxColourDisplay);
220bool wxColourDisplay();
221
222MustHaveApp(wxDisplayDepth);
223int wxDisplayDepth();
224
225MustHaveApp(wxGetDisplayDepth);
226int wxGetDisplayDepth();
227
228MustHaveApp(wxDisplaySize);
229DocDeclA(
230 void, wxDisplaySize(int* OUTPUT, int* OUTPUT),
231 "DisplaySize() -> (width, height)");
232
233MustHaveApp(wxGetDisplaySize);
234wxSize wxGetDisplaySize();
235
236MustHaveApp(wxDisplaySizeMM);
237DocDeclA(
238 void, wxDisplaySizeMM(int* OUTPUT, int* OUTPUT),
239 "DisplaySizeMM() -> (width, height)");
240
241MustHaveApp(wxGetDisplaySizeMM);
242wxSize wxGetDisplaySizeMM();
243
244MustHaveApp(wxClientDisplayRect);
245DocDeclA(
246 void, wxClientDisplayRect(int *OUTPUT, int *OUTPUT, int *OUTPUT, int *OUTPUT),
247 "ClientDisplayRect() -> (x, y, width, height)");
248
249MustHaveApp(wxGetClientDisplayRect);
250wxRect wxGetClientDisplayRect();
251
252
253MustHaveApp(wxSetCursor);
254void wxSetCursor(wxCursor& cursor);
255
256
257
258// Miscellaneous functions
259
260MustHaveApp(wxBeginBusyCursor);
261void wxBeginBusyCursor(wxCursor *cursor = wxHOURGLASS_CURSOR);
262
263MustHaveApp(wxGetActiveWindow);
264wxWindow * wxGetActiveWindow();
265
266MustHaveApp(wxGenericFindWindowAtPoint);
267wxWindow* wxGenericFindWindowAtPoint(const wxPoint& pt);
268
269MustHaveApp(wxFindWindowAtPoint);
270wxWindow* wxFindWindowAtPoint(const wxPoint& pt);
271
272MustHaveApp(wxGetTopLevelParent);
273wxWindow* wxGetTopLevelParent(wxWindow *win);
274
275//bool wxSpawnBrowser(wxWindow *parent, wxString href);
276
277
278
279
280MustHaveApp(wxGetKeyState);
281DocDeclStr(
282 bool , wxGetKeyState(wxKeyCode key),
283 "Get the state of a key (true if pressed or toggled on, false if not.)
284This is generally most useful getting the state of the modifier or
285toggle keys. On some platforms those may be the only keys that work.
286", "");
287
288
289
290//---------------------------------------------------------------------------
291
292MustHaveApp(wxWakeUpMainThread);
293
294#if defined(__WXMSW__) || defined(__WXMAC__)
295void wxWakeUpMainThread();
296#else
297%inline %{
298 void wxWakeUpMainThread() {}
299%}
300#endif
301
302
303MustHaveApp(wxMutexGuiEnter);
304void wxMutexGuiEnter();
305
306MustHaveApp(wxMutexGuiLeave);
307void wxMutexGuiLeave();
308
309
310MustHaveApp(wxMutexGuiLocker);
311class wxMutexGuiLocker {
312public:
313 wxMutexGuiLocker();
314 ~wxMutexGuiLocker();
315};
316
317
318MustHaveApp(wxThread);
319%inline %{
320 bool wxThread_IsMain() {
321#ifdef WXP_WITH_THREAD
322 return wxThread::IsMain();
323#else
324 return true;
325#endif
326 }
327%}
328
329//---------------------------------------------------------------------------
330
331// enum wxPowerType
332// {
333// wxPOWER_SOCKET,
334// wxPOWER_BATTERY,
335// wxPOWER_UNKNOWN
336// };
337
338// DocDeclStr(
339// wxPowerType , wxGetPowerType(),
340// "Returns the type of power source as one of wx.POWER_SOCKET,
341// wx.POWER_BATTERY or wx.POWER_UNKNOWN. wx.POWER_UNKNOWN is also the
342// default on platforms where this feature is not implemented.", "");
343
344
345// enum wxBatteryState
346// {
347// wxBATTERY_NORMAL_STATE, // system is fully usable
348// wxBATTERY_LOW_STATE, // start to worry
349// wxBATTERY_CRITICAL_STATE, // save quickly
350// wxBATTERY_SHUTDOWN_STATE, // too late
351// wxBATTERY_UNKNOWN_STATE
352// };
353
354// DocDeclStr(
355// wxBatteryState , wxGetBatteryState(),
356// "Returns battery state as one of wx.BATTERY_NORMAL_STATE,
357// wx.BATTERY_LOW_STATE}, wx.BATTERY_CRITICAL_STATE,
358// wx.BATTERY_SHUTDOWN_STATE or wx.BATTERY_UNKNOWN_STATE.
359// wx.BATTERY_UNKNOWN_STATE is also the default on platforms where this
360// feature is not implemented.", "");
361
362
363
364//---------------------------------------------------------------------------
365//---------------------------------------------------------------------------