// deleting it!)
%newobject Remove;
wxMenuItem *Remove(int id);
- %Rename(RemoveItem, wxMenuItem*, Remove(wxMenuItem *item));
+ %feature("shadow") Remove(wxMenuItem *item) %{
+ def RemoveItem(self, item):
+ """RemoveItem(self, MenuItem item) -> MenuItem"""
+ #// The return object is always the parameter, so return that
+ #// proxy instead of the new one
+ val = _core_.Menu_RemoveItem(self, item)
+ item.this.own(val.this.own())
+ val.this.disown()
+ return item
+ %}
+ %Rename(RemoveItem, wxMenuItem*, Remove(wxMenuItem *item));
+
// delete an item from the menu (submenus are not destroyed by this
// function, see Destroy)
bool Delete(int id);
// turn off this typemap
%typemap(out) wxMenuItem*;
- wxMenuItem(wxMenu* parentMenu=NULL, int id=wxID_ANY,
+ wxMenuItem(wxMenu* parentMenu=NULL, int id=wxID_SEPARATOR,
const wxString& text = wxPyEmptyString,
const wxString& help = wxPyEmptyString,
wxItemKind kind = wxITEM_NORMAL,
~wxMenuItem();
// Turn it back on again
- %typemap(out) wxEvtHandler* { $result = wxPyMake_wxObject($1, $owner); }
+ %typemap(out) wxMenuItem* { $result = wxPyMake_wxObject($1, $owner); }
+
+ // Make Destroy a NOP. The destruction will be handled by SWIG.
+ %pythoncode { def Destroy(self): pass }
// the menu we're in