X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f9bd2c1bdfdbd83a36ba4390a57d1e230876a18c..e422162882bf4c5ae743fd618864e97206765fca:/wxPython/src/misc.i diff --git a/wxPython/src/misc.i b/wxPython/src/misc.i index 9ef4364b59..1298d96f1c 100644 --- a/wxPython/src/misc.i +++ b/wxPython/src/misc.i @@ -28,6 +28,11 @@ %import _defs.i +//--------------------------------------------------------------------------- +%{ + // Put some wx default wxChar* values into wxStrings. + static const wxString wxPyEmptyString(wxT("")); +%} //--------------------------------------------------------------------------- @@ -35,7 +40,7 @@ class wxObject { public: %addmethods { - const char* GetClassName() { + wxString GetClassName() { return self->GetClassInfo()->GetClassName(); } @@ -66,9 +71,11 @@ public: %addmethods { PyObject* asTuple() { + wxPyBeginBlockThreads(); PyObject* tup = PyTuple_New(2); PyTuple_SET_ITEM(tup, 0, PyInt_FromLong(self->x)); PyTuple_SET_ITEM(tup, 1, PyInt_FromLong(self->y)); + wxPyEndBlockThreads(); return tup; } @@ -107,9 +114,11 @@ public: self->y = y; } PyObject* asTuple() { + wxPyBeginBlockThreads(); PyObject* tup = PyTuple_New(2); PyTuple_SET_ITEM(tup, 0, PyFloat_FromDouble(self->x)); PyTuple_SET_ITEM(tup, 1, PyFloat_FromDouble(self->y)); + wxPyEndBlockThreads(); return tup; } @@ -155,9 +164,11 @@ public: self->y = y; } PyObject* asTuple() { + wxPyBeginBlockThreads(); PyObject* tup = PyTuple_New(2); PyTuple_SET_ITEM(tup, 0, PyInt_FromLong(self->x)); PyTuple_SET_ITEM(tup, 1, PyInt_FromLong(self->y)); + wxPyEndBlockThreads(); return tup; } @@ -227,11 +238,13 @@ public: %addmethods { PyObject* asTuple() { + wxPyBeginBlockThreads(); PyObject* tup = PyTuple_New(4); PyTuple_SET_ITEM(tup, 0, PyInt_FromLong(self->x)); PyTuple_SET_ITEM(tup, 1, PyInt_FromLong(self->y)); PyTuple_SET_ITEM(tup, 2, PyInt_FromLong(self->width)); PyTuple_SET_ITEM(tup, 3, PyInt_FromLong(self->height)); + wxPyEndBlockThreads(); return tup; } @@ -345,11 +358,21 @@ long wxGetFreeMemory(); void wxGetMousePosition(int* OUTPUT, int* OUTPUT); bool wxIsBusy(); wxString wxNow(); -bool wxShell(const wxString& command = wxEmptyString); +bool wxShell(const wxString& command = wxPyEmptyString); void wxStartTimer(); int wxGetOsVersion(int *OUTPUT, int *OUTPUT); wxString wxGetOsDescription(); +enum wxShutdownFlags +{ + wxSHUTDOWN_POWEROFF, // power off the computer + wxSHUTDOWN_REBOOT // shutdown and reboot +}; + +// Shutdown or reboot the PC +bool wxShutdown(wxShutdownFlags wFlags); + + void wxSleep(int secs); void wxUsleep(unsigned long milliseconds); bool wxYield(); @@ -357,8 +380,9 @@ bool wxYieldIfNeeded(); void wxEnableTopLevelWindows(bool enable); %inline %{ - char* wxGetResource(char *section, char *entry, char *file = NULL) { - char * retval; + wxString wxGetResource(const wxString& section, const wxString& entry, + const wxString& file = wxPyEmptyString) { + wxChar * retval; wxGetResource(section, entry, &retval, file); return retval; } @@ -373,8 +397,9 @@ wxString wxGetFullHostName(); wxString wxGetUserId(); wxString wxGetUserName(); wxString wxGetHomeDir(); -wxString wxGetUserHome(const char* user = ""); +wxString wxGetUserHome(const wxString& user = wxPyEmptyString); +unsigned long wxGetProcessId(); // When wxApp gets the virtual method magic then enable this. // bool wxHandleFatalExceptions(bool doIt = TRUE); @@ -474,6 +499,7 @@ public: ~wxBusyInfo(); }; + //---------------------------------------------------------------------------