X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/322913cef36b156a4a9722ce6a68845e3219e615..015fd9ef4833ec3d8b0043a1c7e448c8be4f734a:/wxPython/src/_listctrl.i diff --git a/wxPython/src/_listctrl.i b/wxPython/src/_listctrl.i index 3c6eba561c..c969897f71 100644 --- a/wxPython/src/_listctrl.i +++ b/wxPython/src/_listctrl.i @@ -17,11 +17,10 @@ %{ #include - - const wxChar* wxListCtrlNameStr = _T("wxListCtrl"); - DECLARE_DEF_STRING(ListCtrlNameStr); %} +MAKE_CONST_WXSTRING2(ListCtrlNameStr, _T("wxListCtrl")); + //--------------------------------------------------------------------------- %newgroup @@ -266,7 +265,7 @@ public: long GetIndex(); int GetColumn(); wxPoint GetPoint(); - %pythoncode { GetPostiion = GetPoint } + %pythoncode { GetPosition = GetPoint } const wxString& GetLabel(); const wxString& GetText(); int GetImage(); @@ -342,7 +341,7 @@ EVT_LIST_ITEM_FOCUSED = wx.PyEventBinder(wxEVT_COMMAND_LIST_ITEM_FOCUSED static int wxCALLBACK wxPyListCtrl_SortItems(long item1, long item2, long funcPtr) { int retval = 0; PyObject* func = (PyObject*)funcPtr; - wxPyBeginBlockThreads(); + bool blocked = wxPyBeginBlockThreads(); PyObject* args = Py_BuildValue("(ii)", item1, item2); PyObject* result = PyEval_CallObject(func, args); @@ -352,7 +351,7 @@ EVT_LIST_ITEM_FOCUSED = wx.PyEventBinder(wxEVT_COMMAND_LIST_ITEM_FOCUSED Py_DECREF(result); } - wxPyEndBlockThreads(); + wxPyEndBlockThreads(blocked); return retval; } %} @@ -399,11 +398,13 @@ IMP_PYCALLBACK_LISTATTR_LONG(wxPyListCtrl, wxListCtrl, OnGetItemAttr); +MustHaveApp(wxPyListCtrl); + %name(ListCtrl)class wxPyListCtrl : public wxControl { public: - %addtofunc wxPyListCtrl "self._setOORInfo(self);self._setCallbackInfo(self, ListCtrl)" - %addtofunc wxPyListCtrl() "" + %pythonAppend wxPyListCtrl "self._setOORInfo(self);self._setCallbackInfo(self, ListCtrl)" + %pythonAppend wxPyListCtrl() "" wxPyListCtrl(wxWindow* parent, wxWindowID id = -1, const wxPoint& pos = wxDefaultPosition, @@ -428,7 +429,7 @@ public: bool SetBackgroundColour(const wxColour& col); // Gets information about this column - %addtofunc GetColumn "if val is not None: val.thisown = 1"; // %newobject doesn't work with OOR typemap + %pythonAppend GetColumn "if val is not None: val.thisown = 1"; // %newobject doesn't work with OOR typemap %extend { wxListItem* GetColumn(int col) { wxListItem item; @@ -471,7 +472,7 @@ public: #endif // Gets information about the item - %addtofunc GetItem "if val is not None: val.thisown = 1"; // %newobject doesn't work with OOR typemap + %pythonAppend GetItem "if val is not None: val.thisown = 1"; // %newobject doesn't work with OOR typemap %extend { wxListItem* GetItem(long itemId, int col=0) { wxListItem* info = new wxListItem; @@ -579,9 +580,13 @@ public: // is there a way to tell SWIG to disown this??? - %addtofunc AssignImageList "args[1].thisown = 0"; + %apply SWIGTYPE *DISOWN { wxImageList *imageList }; void AssignImageList(wxImageList *imageList, int which); - + %clear wxImageList *imageList; + + // are we in report mode? + bool InReportView() const; + // returns True if it is a virtual list control bool IsVirtual() const; @@ -636,8 +641,8 @@ public: DocDeclAStr( long, HitTest(const wxPoint& point, int& OUTPUT), "HitTest(Point point) -> (item, where)", - "Determines which item (if any) is at the specified point,\n" - "giving details in the second return value (see wxLIST_HITTEST_... flags.)"); + "Determines which item (if any) is at the specified point, giving +details in the second return value (see wxLIST_HITTEST_... flags.)", ""); // Inserts an item, returning the index of the new item if successful, // -1 otherwise. @@ -764,6 +769,9 @@ public: #endif } } + + static wxVisualAttributes + GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL); }; @@ -772,12 +780,14 @@ public: %newgroup +MustHaveApp(wxListView); + // wxListView: a class which provides a little better API for list control class wxListView : public wxPyListCtrl { public: - %addtofunc wxListView "self._setOORInfo(self)" - %addtofunc wxListView() "" + %pythonAppend wxListView "self._setOORInfo(self)" + %pythonAppend wxListView() "" wxListView( wxWindow *parent, wxWindowID id = -1,