X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f87dfa063a99be8aae8de5c70c5dce21cf930283..85045dd09eb173f6814c9cc4dae6f259837a2b21:/wxPython/src/controls2.i?ds=sidebyside diff --git a/wxPython/src/controls2.i b/wxPython/src/controls2.i index 29ca4c927e..194a5ddb68 100644 --- a/wxPython/src/controls2.i +++ b/wxPython/src/controls2.i @@ -52,6 +52,11 @@ static const wxString wxPyEmptyString(wxT("")); %} + +%{ + static const long longzero = 0; +%} + //---------------------------------------------------------------------- enum { @@ -353,7 +358,8 @@ public: wxListItem m_item; %readwrite - int GetCode(); + int GetKeyCode(); + %pragma(python) addtoclass = "GetCode = GetKeyCode" long GetIndex(); int GetColumn(); wxPoint GetPoint(); @@ -439,14 +445,15 @@ public: %addmethods { %new wxListItem* GetColumn(int col) { wxListItem item; + item.SetMask(0xFFFF); if (self->GetColumn(col, item)) return new wxListItem(item); else return NULL; } - } // The OOR typemaps don't know what to do with the %new, so fix it up. + } // The OOR typemaps don't know what to do with the %new, so fix it up. %pragma(python) addtoclass = " - def GetItem(self, *_args, **_kwargs): + def GetColumn(self, *_args, **_kwargs): val = apply(controls2c.wxListCtrl_GetColumn,(self,) + _args, _kwargs) if val is not None: val.thisown = 1 return val @@ -487,7 +494,7 @@ public: %pragma(python) addtoclass = " def GetItem(self, *_args, **_kwargs): val = apply(controls2c.wxListCtrl_GetItem,(self,) + _args, _kwargs) - val.thisown = 1 + if val is not None: val.thisown = 1 return val " @@ -733,6 +740,17 @@ public: return self->SortItems(wxPyListCtrl_SortItems, (long)func); } } + + + %addmethods { + wxWindow* GetMainWindow() { + #ifdef __WXMSW__ + return self; + #else + return (wxWindow*)self->m_mainWin; + #endif + } + } }; @@ -1036,8 +1054,10 @@ public: wxTreeItemId GetOldItem(); wxPoint GetPoint(); const wxKeyEvent& GetKeyEvent(); - int GetCode(); + int GetKeyCode(); + %pragma(python) addtoclass = "GetCode = GetKeyCode" const wxString& GetLabel(); + bool IsEditCancelled() const; }; @@ -1070,11 +1090,13 @@ public: int rval = 0; bool found; wxPyBeginBlockThreads(); - if ((found = m_myInst.findCallback("OnCompareItems"))) - rval = m_myInst.callCallback(Py_BuildValue( - "(OO)", - wxPyConstructObject((void*)&item1, "wxTreeItemId"), - wxPyConstructObject((void*)&item2, "wxTreeItemId"))); + if ((found = m_myInst.findCallback("OnCompareItems"))) { + PyObject *o1 = wxPyConstructObject((void*)&item1, "wxTreeItemId"); + PyObject *o2 = wxPyConstructObject((void*)&item2, "wxTreeItemId"); + rval = m_myInst.callCallback(Py_BuildValue("(OO)",o1,o2)); + Py_DECREF(o1); + Py_DECREF(o2); + } wxPyEndBlockThreads(); if (! found) rval = wxTreeCtrl::OnCompareItems(item1, item2); @@ -1213,7 +1235,7 @@ public: size_t GetChildrenCount(const wxTreeItemId& item, bool recursively = TRUE); - wxTreeItemId GetFirstChild(const wxTreeItemId& item, long& INOUT=0); + wxTreeItemId GetFirstChild(const wxTreeItemId& item, long& INOUT = longzero); wxTreeItemId GetNextChild(const wxTreeItemId& item, long& INOUT); wxTreeItemId GetNextSibling(const wxTreeItemId& item); wxTreeItemId GetPrevSibling(const wxTreeItemId& item);