X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e70b4d2db930a297f0625b7d43109f793fd3338a..9e477492e29e03c02827b1e42a16cb09a13f5149:/wxPython/src/grid.i diff --git a/wxPython/src/grid.i b/wxPython/src/grid.i index 0c7718da11..225f899087 100644 --- a/wxPython/src/grid.i +++ b/wxPython/src/grid.i @@ -523,16 +523,19 @@ public: class wxGridCellRenderer : public wxGridCellWorker { +public: virtual void Draw(wxGrid& grid, wxGridCellAttr& attr, wxDC& dc, const wxRect& rect, int row, int col, bool isSelected); + virtual wxSize GetBestSize(wxGrid& grid, wxGridCellAttr& attr, wxDC& dc, int row, int col); + virtual wxGridCellRenderer *Clone() const; }; @@ -640,7 +643,7 @@ IMP_PYCALLBACK__STRING( wxPyGridCellRenderer, wxGridCellRenderer, SetParameters) // Let SWIG know about it so it can create the Python version class wxPyGridCellRenderer : public wxGridCellRenderer { public: - %pythonAppend wxPyGridCellRenderer "self._setCallbackInfo(self, PyGridCellRenderer);self._setOORInfo(self)" + %pythonAppend wxPyGridCellRenderer "self._setOORInfo(self);" setCallbackInfo(PyGridCellRenderer); wxPyGridCellRenderer(); void _setCallbackInfo(PyObject* self, PyObject* _class); @@ -747,7 +750,7 @@ public: virtual void StartingClick(); virtual void HandleReturn(wxKeyEvent& event); - %pythonAppend Destroy "args[0].thisown = 0" + %pythonPrepend Destroy "args[0].this.own(False)" virtual void Destroy(); %property(CellAttr, GetCellAttr, SetCellAttr, doc="See `GetCellAttr` and `SetCellAttr`"); @@ -880,7 +883,7 @@ IMP_PYCALLBACK_STRING__constpure(wxPyGridCellEditor, wxGridCellEditor, GetValue) // Let SWIG know about it so it can create the Python version class wxPyGridCellEditor : public wxGridCellEditor { public: - %pythonAppend wxPyGridCellEditor "self._setCallbackInfo(self, PyGridCellEditor);self._setOORInfo(self)" + %pythonAppend wxPyGridCellEditor "self._setOORInfo(self);" setCallbackInfo(PyGridCellEditor) wxPyGridCellEditor(); void _setCallbackInfo(PyObject* self, PyObject* _class); @@ -936,11 +939,22 @@ public: }; +MAKE_CONST_WXSTRING2(OneString, _T("1")); class wxGridCellBoolEditor : public wxGridCellEditor { public: %pythonAppend wxGridCellBoolEditor "self._setOORInfo(self)" wxGridCellBoolEditor(); + + // set the string values returned by GetValue() for the true and false + // states, respectively + static void UseStringValues(const wxString& valueTrue = wxPyOneString, + const wxString& valueFalse = wxPyEmptyString); + + // return true if the given string is equal to the string representation of + // true value which we currently use + static bool IsTrueValue(const wxString& value); + }; class wxGridCellChoiceEditor : public wxGridCellEditor @@ -1109,7 +1123,7 @@ public: class wxPyGridCellAttrProvider : public wxGridCellAttrProvider { public: - %pythonAppend wxPyGridCellAttrProvider "self._setCallbackInfo(self, PyGridCellAttrProvider)" + %pythonAppend wxPyGridCellAttrProvider setCallbackInfo(PyGridCellAttrProvider) wxPyGridCellAttrProvider(); void _setCallbackInfo(PyObject* self, PyObject* _class); @@ -1338,11 +1352,11 @@ public: class wxPyGridTableBase : public wxGridTableBase { public: - %pythonAppend wxPyGridTableBase "self._setCallbackInfo(self, PyGridTableBase);self._setOORInfo(self)" + %pythonAppend wxPyGridTableBase "self._setOORInfo(self);" setCallbackInfo(PyGridTableBase) wxPyGridTableBase(); void _setCallbackInfo(PyObject* self, PyObject* _class); - %pythonAppend Destroy "args[0].thisown = 0" + %pythonPrepend Destroy "args[0].this.own(False)" %extend { void Destroy() { delete self; } } wxString GetTypeName( int row, int col );