X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f6bcfd974ef26faf6f91a62cac09827e09463fd1..1bc4d9b0130f8fe6e9ce44fb3dd6b8d61088160c:/wxPython/src/misc.i diff --git a/wxPython/src/misc.i b/wxPython/src/misc.i index 6f0312e99e..36c75d98d6 100644 --- a/wxPython/src/misc.i +++ b/wxPython/src/misc.i @@ -28,6 +28,10 @@ %import _defs.i +%{ + static wxString wxPyEmptyStr(""); +%} + //--------------------------------------------------------------------------- @@ -56,8 +60,17 @@ public: return tup; } } - %pragma(python) addtoclass = "def __str__(self): return str(self.asTuple())" - %pragma(python) addtoclass = "def __repr__(self): return str(self.asTuple())" + + %pragma(python) addtoclass = " + def __str__(self): return str(self.asTuple()) + def __repr__(self): return str(self.asTuple()) + def __len__(self): return len(self.asTuple()) + def __getitem__(self, index): return self.asTuple()[index] + def __setitem__(self, index, val): + if index == 0: self.width = val + elif index == 1: self.height = val + else: raise IndexError +" }; @@ -81,9 +94,32 @@ public: PyTuple_SET_ITEM(tup, 1, PyFloat_FromDouble(self->y)); return tup; } + + wxRealPoint __add__(const wxRealPoint* p) { + if (! p) return *self; + return *self + *p; + } + + wxRealPoint __sub__(const wxRealPoint* p) { + if (! p) return *self; + return *self - *p; + } + + int __cmp__(const wxRealPoint* p) { + if (! p) return 0; + return *self == *p; + } } - %pragma(python) addtoclass = "def __str__(self): return str(self.asTuple())" - %pragma(python) addtoclass = "def __repr__(self): return str(self.asTuple())" + %pragma(python) addtoclass = " + def __str__(self): return str(self.asTuple()) + def __repr__(self): return str(self.asTuple()) + def __len__(self): return len(self.asTuple()) + def __getitem__(self, index): return self.asTuple()[index] + def __setitem__(self, index, val): + if index == 0: self.width = val + elif index == 1: self.height = val + else: raise IndexError +" }; @@ -105,9 +141,32 @@ public: PyTuple_SET_ITEM(tup, 1, PyInt_FromLong(self->y)); return tup; } + + wxPoint __add__(const wxPoint* p) { + if (! p) return *self; + return *self + *p; + } + + wxPoint __sub__(const wxPoint* p) { + if (! p) return *self; + return *self - *p; + } + + int __cmp__(const wxPoint* p) { + if (! p) return 0; + return *self == *p; + } } - %pragma(python) addtoclass = "def __str__(self): return str(self.asTuple())" - %pragma(python) addtoclass = "def __repr__(self): return str(self.asTuple())" + %pragma(python) addtoclass = " + def __str__(self): return str(self.asTuple()) + def __repr__(self): return str(self.asTuple()) + def __len__(self): return len(self.asTuple()) + def __getitem__(self, index): return self.asTuple()[index] + def __setitem__(self, index, val): + if index == 0: self.x = val + elif index == 1: self.y = val + else: raise IndexError +" }; //--------------------------------------------------------------------------- @@ -167,9 +226,18 @@ public: } } - %pragma(python) addtoclass = "def __str__(self): return str(self.asTuple())" - %pragma(python) addtoclass = "def __repr__(self): return str(self.asTuple())" %pragma(python) addtoclass = " + def __str__(self): return str(self.asTuple()) + def __repr__(self): return str(self.asTuple()) + def __len__(self): return len(self.asTuple()) + def __getitem__(self, index): return self.asTuple()[index] + def __setitem__(self, index, val): + if index == 0: self.x = val + elif index == 1: self.y = val + elif index == 2: self.width = val + elif index == 3: self.height = val + else: raise IndexError + # override the __getattr__ made by SWIG def __getattr__(self, name): d = { @@ -225,7 +293,9 @@ public: bool doSave = wxPyRestoreThread(); wxRect* newRect = new wxRect(dest); obj = wxPyConstructObject((void*)newRect, "wxRect"); - PyObject_SetAttrString(obj, "thisown", PyInt_FromLong(1)); + PyObject* one = PyInt_FromLong(1); + PyObject_SetAttrString(obj, "thisown", one); + Py_DECREF(one); wxPySaveThread(doSave); return obj; } @@ -242,11 +312,12 @@ long wxNewId(); void wxRegisterId(long id); %name(NewId) long wxNewId(); %name(RegisterId) void wxRegisterId(long id); +long wxGetCurrentId(); void wxBell(); void wxDisplaySize(int *OUTPUT, int *OUTPUT); void wxEndBusyCursor(); -long wxExecute(const wxString& command, int sync = FALSE); + long wxGetElapsedTime(bool resetTimer = TRUE); #ifdef __WXMSW__ long wxGetFreeMemory(); @@ -257,10 +328,12 @@ wxString wxNow(); bool wxShell(const wxString& command = wxPyEmptyStr); void wxStartTimer(); int wxGetOsVersion(int *OUTPUT, int *OUTPUT); +wxString wxGetOsDescription(); void wxSleep(int secs); +void wxUsleep(unsigned long milliseconds); bool wxYield(); -bool wxSafeYield(); +bool wxYieldIfNeeded(); void wxEnableTopLevelWindows(bool enable); %inline %{ @@ -273,6 +346,15 @@ void wxEnableTopLevelWindows(bool enable); wxString wxStripMenuCodes(const wxString& in); + +wxString wxGetEmailAddress(); +wxString wxGetHostName(); +wxString wxGetFullHostName(); +wxString wxGetUserId(); +wxString wxGetUserName(); +wxString wxGetHomeDir(); + + //---------------------------------------------------------------------- enum wxEdge { wxLeft, wxTop, wxRight, wxBottom, wxWidth, wxHeight, @@ -333,7 +415,7 @@ enum wxRegionContain { class wxRegion { public: - wxRegion(); + wxRegion(long x=0, long y=0, long width=0, long height=0); ~wxRegion(); void Clear(); @@ -412,6 +494,7 @@ public: }; +wxAcceleratorEntry *wxGetAccelFromString(const wxString& label); %readonly %{ @@ -432,8 +515,7 @@ public: ~wxBusyInfo(); }; - - //--------------------------------------------------------------------------- +