void SetRow(int row);
void SetCol(int col);
-// %extend {
-// bool __eq__(const wxGBPosition* other) { return other ? (*self == *other) : false; }
-// bool __ne__(const wxGBPosition* other) { return other ? (*self != *other) : true; }
-// }
- bool operator==(const wxGBPosition& other);
- bool operator!=(const wxGBPosition& other);
-
+ %extend {
+ KeepGIL(__eq__);
+ DocStr(__eq__, "Compare GBPosition for equality.", "");
+ bool __eq__(PyObject* other) {
+ wxGBPosition temp, *obj = &temp;
+ if ( other == Py_None ) return false;
+ if ( ! wxGBPosition_helper(other, &obj) ) {
+ PyErr_Clear();
+ return false;
+ }
+ return self->operator==(*obj);
+ }
+
+
+ KeepGIL(__ne__);
+ DocStr(__ne__, "Compare GBPosition for inequality.", "");
+ bool __ne__(PyObject* other) {
+ wxGBPosition temp, *obj = &temp;
+ if ( other == Py_None ) return true;
+ if ( ! wxGBPosition_helper(other, &obj)) {
+ PyErr_Clear();
+ return true;
+ }
+ return self->operator!=(*obj);
+ }
+ }
+
+
%extend {
void Set(int row=0, int col=0) {
self->SetRow(row);
int GetColspan() const;
void SetRowspan(int rowspan);
void SetColspan(int colspan);
+
-// %extend {
-// bool __eq__(const wxGBSpan* other) { return other ? (*self == *other) : false; }
-// bool __ne__(const wxGBSpan* other) { return other ? (*self != *other) : true; }
-// }
- bool operator==(const wxGBSpan& other);
- bool operator!=(const wxGBSpan& other);
-
+ %extend {
+ KeepGIL(__eq__);
+ DocStr(__eq__, "Compare wxGBSpan for equality.", "");
+ bool __eq__(PyObject* other) {
+ wxGBSpan temp, *obj = &temp;
+ if ( other == Py_None ) return false;
+ if ( ! wxGBSpan_helper(other, &obj) ) {
+ PyErr_Clear();
+ return false;
+ }
+ return self->operator==(*obj);
+ }
+
+
+ KeepGIL(__ne__);
+ DocStr(__ne__, "Compare GBSpan for inequality.", "");
+ bool __ne__(PyObject* other) {
+ wxGBSpan temp, *obj = &temp;
+ if ( other == Py_None ) return true;
+ if ( ! wxGBSpan_helper(other, &obj)) {
+ PyErr_Clear();
+ return true;
+ }
+ return self->operator!=(*obj);
+ }
+ }
+
%extend {
void Set(int rowspan=1, int colspan=1) {
void , SetGBSizer(wxGridBagSizer* sizer),
"Set the sizer this item is a member of.", "");
+ %property(EndPos, GetEndPos, doc="See `GetEndPos`");
+ %property(GBSizer, GetGBSizer, SetGBSizer, doc="See `GetGBSizer` and `SetGBSizer`");
+ %property(Pos, GetPos, SetPos, doc="See `GetPos` and `SetPos`");
+ %property(Span, GetSpan, SetSpan, doc="See `GetSpan` and `SetSpan`");
};
not found. (non-recursive)", "");
wxGBSizerItem* FindItem(wxWindow* window);
wxGBSizerItem* FindItem(wxSizer* sizer);
-
+ %pythoncode {
+ def GetItem(self, item):
+ gbsi = None
+ si = wx.FlexGridSizer.GetItem(self, item)
+ if not si:
+ return None
+ if type(item) is not int:
+ gbsi = self.FindItem(item)
+ if gbsi: return gbsi
+ return si
+ }
DocDeclStr(
wxGBSizerItem* , FindItemAtPosition(const wxGBPosition& pos),
position of.", "",
CheckForIntersectionPos);
-
};