X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/1b62f00d8e3ec5437ab780cb3d73d299cc61e20c..6c41903ced78c0b4115785aa80a934833abbc1ef:/wxPython/src/misc.i diff --git a/wxPython/src/misc.i b/wxPython/src/misc.i index 74b104185d..ddf5e91558 100644 --- a/wxPython/src/misc.i +++ b/wxPython/src/misc.i @@ -35,6 +35,22 @@ //--------------------------------------------------------------------------- +class wxObject { +public: + + %addmethods { + const char* GetClassName() { + return self->GetClassInfo()->GetClassName(); + } + + void Destroy() { + delete self; + } + } +}; + +//--------------------------------------------------------------------------- + class wxSize { public: long x; @@ -59,12 +75,18 @@ public: PyTuple_SET_ITEM(tup, 1, PyInt_FromLong(self->y)); return tup; } + + int __cmp__(const wxSize* sz) { + if (! sz) return 1; + if (*self == *sz) return 0; + return -1; + } } %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 __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 @@ -106,14 +128,15 @@ public: } int __cmp__(const wxRealPoint* p) { - if (! p) return 0; - return *self == *p; + if (! p) return 1; + if (*self == *p) return 0; + return -1; } } %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 __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 @@ -153,14 +176,15 @@ public: } int __cmp__(const wxPoint* p) { - if (! p) return 0; - return *self == *p; + if (! p) return 1; + if (*self == *p) return 0; + return -1; } } %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 __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 @@ -221,15 +245,16 @@ public: } int __cmp__(const wxRect* rect) { - if (! rect) return 0; - return *self == *rect; + if (! rect) return 1; + if (*self == *rect) return 0; + return -1; } } %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 __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 @@ -312,9 +337,9 @@ 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 wxGetElapsedTime(bool resetTimer = TRUE); @@ -332,6 +357,7 @@ wxString wxGetOsDescription(); void wxSleep(int secs); void wxUsleep(unsigned long milliseconds); bool wxYield(); +bool wxYieldIfNeeded(); void wxEnableTopLevelWindows(bool enable); %inline %{ @@ -368,7 +394,7 @@ enum wxRelationship { wxUnconstrained = 0, wxAbsolute }; -class wxIndividualLayoutConstraint { +class wxIndividualLayoutConstraint : public wxObject { public: // wxIndividualLayoutConstraint(); // ~wxIndividualLayoutConstraint(); @@ -386,7 +412,7 @@ public: }; -class wxLayoutConstraints { +class wxLayoutConstraints : public wxObject { public: wxLayoutConstraints(); @@ -403,71 +429,6 @@ public: } -//--------------------------------------------------------------------------- -// Regions, etc. - -enum wxRegionContain { - wxOutRegion, wxPartRegion, wxInRegion -}; - - -class wxRegion { -public: - wxRegion(long x=0, long y=0, long width=0, long height=0); - ~wxRegion(); - - void Clear(); - wxRegionContain Contains(long x, long y); - %name(ContainsPoint)wxRegionContain Contains(const wxPoint& pt); - %name(ContainsRect)wxRegionContain Contains(const wxRect& rect); - %name(ContainsRectDim)wxRegionContain Contains(long x, long y, long w, long h); - - wxRect GetBox(); - - bool Intersect(long x, long y, long width, long height); - %name(IntersectRect)bool Intersect(const wxRect& rect); - %name(IntersectRegion)bool Intersect(const wxRegion& region); - - bool IsEmpty(); - - bool Union(long x, long y, long width, long height); - %name(UnionRect)bool Union(const wxRect& rect); - %name(UnionRegion)bool Union(const wxRegion& region); - - bool Subtract(long x, long y, long width, long height); - %name(SubtractRect)bool Subtract(const wxRect& rect); - %name(SubtractRegion)bool Subtract(const wxRegion& region); - - bool Xor(long x, long y, long width, long height); - %name(XorRect)bool Xor(const wxRect& rect); - %name(XorRegion)bool Xor(const wxRegion& region); -}; - - - -class wxRegionIterator { -public: - wxRegionIterator(const wxRegion& region); - ~wxRegionIterator(); - - long GetX(); - long GetY(); - long GetW(); - long GetWidth(); - long GetH(); - long GetHeight(); - wxRect GetRect(); - bool HaveRects(); - void Reset(); - - %addmethods { - void Next() { - (*self) ++; - } - }; -}; - - //--------------------------------------------------------------------------- // Accelerator Entry and Table @@ -484,7 +445,7 @@ public: }; -class wxAcceleratorTable { +class wxAcceleratorTable : public wxObject { public: // Can also accept a list of 3-tuples wxAcceleratorTable(int LCOUNT, wxAcceleratorEntry* choices); @@ -507,7 +468,7 @@ extern wxAcceleratorTable wxNullAcceleratorTable; //--------------------------------------------------------------------------- -class wxBusyInfo { +class wxBusyInfo : public wxObject { public: wxBusyInfo(const wxString& message); ~wxBusyInfo();