//---------------------------------------------------------------------------
-class wxShapeRegion {
+class wxShapeRegion : public wxObject {
public:
wxShapeRegion();
//~wxShapeRegion();
%}
-class wxPyShapeEvtHandler {
+class wxPyShapeEvtHandler : public wxObject {
public:
wxPyShapeEvtHandler(wxPyShapeEvtHandler *prev = NULL,
wxPyShape *shape = NULL);
- void _setSelf(PyObject* self, PyObject* _class);
- %pragma(python) addtomethod = "__init__:self._setSelf(self, wxPyShapeEvtHandler)"
+ void _setCallbackInfo(PyObject* self, PyObject* _class);
+ %pragma(python) addtomethod = "__init__:self._setCallbackInfo(self, wxPyShapeEvtHandler)"
+ %pragma(python) addtomethod = "__init__:self._setOORInfo(self)"
+ %addmethods { void Destroy() { delete self; } }
%addmethods {
- void Destroy() { delete self; }
+ void _setOORInfo(PyObject* _self) {
+ self->SetClientObject(new wxPyClientData(_self));
+ }
}
+
void SetShape(wxPyShape *sh);
wxPyShape *GetShape();
void SetPreviousHandler(wxPyShapeEvtHandler* handler);
public:
// wxPyShape(wxPyShapeCanvas *can = NULL); abstract base class...
- void _setSelf(PyObject* self, PyObject* _class);
- %pragma(python) addtomethod = "__init__:self._setSelf(self, wxPyShape)"
-
- %addmethods {
- void Destroy() { delete self; }
- }
+ void _setCallbackInfo(PyObject* self, PyObject* _class);
+ %pragma(python) addtomethod = "__init__:self._setCallbackInfo(self, wxPyShape)"
+ %pragma(python) addtomethod = "__init__:self._setOORInfo(self)"
void GetBoundingBoxMax(double *OUTPUT, double *OUTPUT);
void GetBoundingBoxMin(double *OUTPUT, double *OUTPUT);
int GetAttachmentMode();
void SetId(long i);
long GetId();
+
void SetPen(wxPen *pen);
void SetBrush(wxBrush *brush);
+
// void SetClientData(wxObject *client_data);
// wxObject *GetClientData();
%addmethods {
void ClearAttachments();
void Recentre(wxDC& dc);
void ClearPointList(wxList& list);
+ wxPen GetBackgroundPen();
+ wxBrush GetBackgroundBrush();
void base_OnDelete();
void base_OnDraw(wxDC& dc);