Changed wxSWIG to not generate Python code using apply, (since it will
be deprecated in the future) wxSWIG will use spam(*args, **kw) syntax instead. Also changed the generated __repr__ methods to be a bit more informative. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_4_BRANCH@19911 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -2,11 +2,19 @@ CHANGES.txt for wxPython
|
||||
|
||||
----------------------------------------------------------------------
|
||||
|
||||
?????
|
||||
2.4.0.8
|
||||
-------
|
||||
|
||||
Added wxScrolledPanel from Wil Sadkin
|
||||
|
||||
Added SetShape method to top level windows (e.g. wxFrame.)
|
||||
|
||||
Changed wxSWIG to not generate Python code using apply, (since it will
|
||||
be deprecated in the future) wxSWIG will use spam(*args, **kw) syntax
|
||||
instead. Also changed the generated __repr__ methods to be a bit more
|
||||
informative.
|
||||
|
||||
|
||||
|
||||
|
||||
2.4.0.7
|
||||
|
@@ -732,7 +732,7 @@ def wxCallAfter(callable, *args, **kw):
|
||||
if _wxCallAfterId is None:
|
||||
_wxCallAfterId = wxNewEventType()
|
||||
app.Connect(-1, -1, _wxCallAfterId,
|
||||
lambda event: apply(event.callable, event.args, event.kw) )
|
||||
lambda event: event.callable(*event.args, **event.kw) )
|
||||
evt = wxPyEvent()
|
||||
evt.SetEventType(_wxCallAfterId)
|
||||
evt.callable = callable
|
||||
@@ -904,7 +904,7 @@ class wxPyWidgetTester(wxApp):
|
||||
return True
|
||||
|
||||
def SetWidget(self, widgetClass, *args):
|
||||
w = apply(widgetClass, (self.frame,) + args)
|
||||
w = widgetClass(self.frame, *args)
|
||||
self.frame.Show(True)
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
|
@@ -454,7 +454,7 @@ public:
|
||||
} // The OOR typemaps don't know what to do with the %new, so fix it up.
|
||||
%pragma(python) addtoclass = "
|
||||
def GetColumn(self, *_args, **_kwargs):
|
||||
val = apply(controls2c.wxListCtrl_GetColumn,(self,) + _args, _kwargs)
|
||||
val = ontrols2c.wxListCtrl_GetColumn(self, *_args, **_kwargs)
|
||||
if val is not None: val.thisown = 1
|
||||
return val
|
||||
"
|
||||
@@ -493,7 +493,7 @@ public:
|
||||
} // The OOR typemaps don't know what to do with the %new, so fix it up.
|
||||
%pragma(python) addtoclass = "
|
||||
def GetItem(self, *_args, **_kwargs):
|
||||
val = apply(controls2c.wxListCtrl_GetItem,(self,) + _args, _kwargs)
|
||||
val = controls2c.wxListCtrl_GetItem(self, *_args, **_kwargs)
|
||||
if val is not None: val.thisown = 1
|
||||
return val
|
||||
"
|
||||
@@ -1355,17 +1355,17 @@ public:
|
||||
%pragma(python) addtoclass = "
|
||||
# Redefine some methods that SWIG gets a bit confused on...
|
||||
def GetFirstChild(self, *_args, **_kwargs):
|
||||
val1,val2 = apply(controls2c.wxTreeCtrl_GetFirstChild,(self,) + _args, _kwargs)
|
||||
val1,val2 = controls2c.wxTreeCtrl_GetFirstChild(self, *_args, **_kwargs)
|
||||
val1 = wxTreeItemIdPtr(val1)
|
||||
val1.thisown = 1
|
||||
return (val1,val2)
|
||||
def GetNextChild(self, *_args, **_kwargs):
|
||||
val1,val2 = apply(controls2c.wxTreeCtrl_GetNextChild,(self,) + _args, _kwargs)
|
||||
val1,val2 = controls2c.wxTreeCtrl_GetNextChild(self, *_args, **_kwargs)
|
||||
val1 = wxTreeItemIdPtr(val1)
|
||||
val1.thisown = 1
|
||||
return (val1,val2)
|
||||
def HitTest(self, *_args, **_kwargs):
|
||||
val1, val2 = apply(controls2c.wxTreeCtrl_HitTest,(self,) + _args, _kwargs)
|
||||
val1, val2 = controls2c.wxTreeCtrl_HitTest(self, *_args, **_kwargs)
|
||||
val1 = wxTreeItemIdPtr(val1)
|
||||
val1.thisown = 1
|
||||
return (val1,val2)
|
||||
@@ -1458,6 +1458,9 @@ public:
|
||||
wxTreeCtrl* GetTreeCtrl() const;
|
||||
wxDirFilterListCtrl* GetFilterListCtrl() const;
|
||||
|
||||
// Collapse & expand the tree, thus re-creating it from scratch:
|
||||
void ReCreateTree();
|
||||
|
||||
// //// Helpers
|
||||
// void SetupSections();
|
||||
// // Parse the filter into an array of filters and an array of descriptions
|
||||
|
@@ -739,9 +739,9 @@ public:
|
||||
%pragma(python) addtoclass = "
|
||||
def Init(self, *_args, **_kwargs):
|
||||
if type(_args[0]) in [type(''), type(u'')]:
|
||||
val = apply(self.Init1, _args, _kwargs)
|
||||
val = self.Init1(*_args, **_kwargs)
|
||||
else:
|
||||
val = apply(self.Init2, _args, _kwargs)
|
||||
val = self.Init2(*_args, **_kwargs)
|
||||
return val
|
||||
"
|
||||
|
||||
|
@@ -173,41 +173,41 @@ public:
|
||||
%pragma(python) addtoclass = "
|
||||
def Add(self, *args, **kw):
|
||||
if type(args[0]) == type(1):
|
||||
apply(self.AddSpacer, args, kw)
|
||||
self.AddSpacer(*args, **kw)
|
||||
elif isinstance(args[0], wxSizerPtr):
|
||||
apply(self.AddSizer, args, kw)
|
||||
self.AddSizer(*args, **kw)
|
||||
elif isinstance(args[0], wxWindowPtr):
|
||||
apply(self.AddWindow, args, kw)
|
||||
self.AddWindow(*args, **kw)
|
||||
else:
|
||||
raise TypeError, 'Expected int, wxSizer or wxWindow parameter'
|
||||
|
||||
def Insert(self, *args, **kw):
|
||||
if type(args[1]) == type(1):
|
||||
apply(self.InsertSpacer, args, kw)
|
||||
self.InsertSpacer(*args, **kw)
|
||||
elif isinstance(args[1], wxSizerPtr):
|
||||
apply(self.InsertSizer, args, kw)
|
||||
self.InsertSizer(*args, **kw)
|
||||
elif isinstance(args[1], wxWindowPtr):
|
||||
apply(self.InsertWindow, args, kw)
|
||||
self.InsertWindow(*args, **kw)
|
||||
else:
|
||||
raise TypeError, 'Expected int, wxSizer or wxWindow parameter'
|
||||
|
||||
def Prepend(self, *args, **kw):
|
||||
if type(args[0]) == type(1):
|
||||
apply(self.PrependSpacer, args, kw)
|
||||
self.PrependSpacer(*args, **kw)
|
||||
elif isinstance(args[0], wxSizerPtr):
|
||||
apply(self.PrependSizer, args, kw)
|
||||
self.PrependSizer(*args, **kw)
|
||||
elif isinstance(args[0], wxWindowPtr):
|
||||
apply(self.PrependWindow, args, kw)
|
||||
self.PrependWindow(*args, **kw)
|
||||
else:
|
||||
raise TypeError, 'Expected int, wxSizer or wxWindow parameter'
|
||||
|
||||
def Remove(self, *args, **kw):
|
||||
if type(args[0]) == type(1):
|
||||
return apply(self.RemovePos, args, kw)
|
||||
return self.RemovePos(*args, **kw)
|
||||
elif isinstance(args[0], wxSizerPtr):
|
||||
return apply(self.RemoveSizer, args, kw)
|
||||
return self.RemoveSizer(*args, **kw)
|
||||
elif isinstance(args[0], wxWindowPtr):
|
||||
return apply(self.RemoveWindow, args, kw)
|
||||
return self.RemoveWindow(*args, **kw)
|
||||
else:
|
||||
raise TypeError, 'Expected int, wxSizer or wxWindow parameter'
|
||||
|
||||
@@ -215,7 +215,7 @@ public:
|
||||
for childinfo in widgets:
|
||||
if type(childinfo) != type(()):
|
||||
childinfo = (childinfo, )
|
||||
apply(self.Add, childinfo)
|
||||
self.Add(*childinfo)
|
||||
"
|
||||
|
||||
|
||||
@@ -229,11 +229,11 @@ public:
|
||||
%pragma(python) addtoclass = "
|
||||
def SetItemMinSize(self, *args):
|
||||
if type(args[0]) == type(1):
|
||||
apply(self.SetItemMinSizePos, args)
|
||||
self.SetItemMinSizePos(*args)
|
||||
elif isinstance(args[0], wxSizerPtr):
|
||||
apply(self.SetItemMinSizeSizer, args)
|
||||
self.SetItemMinSizeSizer(*args)
|
||||
elif isinstance(args[0], wxWindowPtr):
|
||||
apply(self.SetItemMinSizeWindow, args)
|
||||
self.SetItemMinSizeWindow(*args)
|
||||
else:
|
||||
raise TypeError, 'Expected int, wxSizer or wxWindow parameter'
|
||||
"
|
||||
@@ -287,25 +287,25 @@ public:
|
||||
%pragma(python) addtoclass = "
|
||||
def Show(self, *args):
|
||||
if isinstance(args[0], wxSizerPtr):
|
||||
apply(self.ShowSizer, args)
|
||||
self.ShowSizer(*args)
|
||||
elif isinstance(args[0], wxWindowPtr):
|
||||
apply(self.ShowWindow, args)
|
||||
self.ShowWindow(*args)
|
||||
else:
|
||||
raise TypeError, 'Expected wxSizer or wxWindow parameter'
|
||||
|
||||
def Hide(self, *args):
|
||||
if isinstance(args[0], wxSizerPtr):
|
||||
apply(self.HideSizer, args)
|
||||
self.HideSizer(*args)
|
||||
elif isinstance(args[0], wxWindowPtr):
|
||||
apply(self.HideWindow, args)
|
||||
self.HideWindow(*args)
|
||||
else:
|
||||
raise TypeError, 'Expected wxSizer or wxWindow parameter'
|
||||
|
||||
def IsShown(self, *args):
|
||||
if isinstance(args[0], wxSizerPtr):
|
||||
return apply(self.IsShownSizer, args)
|
||||
return self.IsShownSizer(*args)
|
||||
elif isinstance(args[0], wxWindowPtr):
|
||||
return apply(self.IsShownWindow, args)
|
||||
return self.IsShownWindow(*args)
|
||||
else:
|
||||
raise TypeError, 'Expected wxSizer or wxWindow parameter'
|
||||
"
|
||||
|
@@ -431,7 +431,7 @@ public:
|
||||
%pragma(python) addtoclass = "# replaces broken shadow method
|
||||
def GetCaret(self, *_args, **_kwargs):
|
||||
from misc2 import wxCaretPtr
|
||||
val = apply(windowsc.wxWindow_GetCaret,(self,) + _args, _kwargs)
|
||||
val = windowsc.wxWindow_GetCaret(self, *_args, **_kwargs)
|
||||
if val: val = wxCaretPtr(val)
|
||||
return val
|
||||
"
|
||||
@@ -613,17 +613,17 @@ public:
|
||||
%pragma(python) addtoclass = "
|
||||
def CalcScrolledPosition(self, *args):
|
||||
if len(args) == 1:
|
||||
return apply(self.CalcScrolledPosition1, args)
|
||||
return self.CalcScrolledPosition1(*args)
|
||||
elif len(args) == 2:
|
||||
return apply(self.CalcScrolledPosition2, args)
|
||||
return self.CalcScrolledPosition2(*args)
|
||||
else:
|
||||
raise TypeError, 'Invalid parameters: only (x,y) or (point) allowed'
|
||||
|
||||
def CalcUnscrolledPosition(self, *args):
|
||||
if len(args) == 1:
|
||||
return apply(self.CalcUnscrolledPosition1, args)
|
||||
return self.CalcUnscrolledPosition1(*args)
|
||||
elif len(args) == 2:
|
||||
return apply(self.CalcUnscrolledPosition2, args)
|
||||
return self.CalcUnscrolledPosition2(*args)
|
||||
else:
|
||||
raise TypeError, 'Invalid parameters: only (x,y) or (point) allowed'
|
||||
"
|
||||
|
@@ -146,7 +146,7 @@ void PYTHON::cpp_member_func(char *name, char *iname, DataType *t, ParmList *l)
|
||||
if (docstring && doc_entry) {
|
||||
*pyclass << tab8 << "\"\"\"" << add_docstring(doc_entry) << "\"\"\"\n";
|
||||
}
|
||||
*pyclass << tab8 << "val = apply(" << module << "." << name_member(realname,class_name) << ",(self,) + _args, _kwargs)\n";
|
||||
*pyclass << tab8 << "val = " << module << "." << name_member(realname,class_name) << "(self, *_args, **_kwargs)\n";
|
||||
|
||||
// Check to see if the return type is an object
|
||||
if ((hash.lookup(t->name)) && (t->is_pointer <= 1)) {
|
||||
@@ -216,7 +216,7 @@ void PYTHON::cpp_constructor(char *name, char *iname, ParmList *l) {
|
||||
if (docstring && doc_entry)
|
||||
*construct << tab8 << "\"\"\"" << add_docstring(doc_entry) << "\"\"\"\n";
|
||||
|
||||
*construct << tab8 << "self.this = apply(" << module << "." << name_construct(realname) << ",_args,_kwargs)\n";
|
||||
*construct << tab8 << "self.this = " << module << "." << name_construct(realname) << "(*_args,**_kwargs)\n";
|
||||
*construct << tab8 << "self.thisown = 1\n";
|
||||
emitAddPragmas(*construct,"__init__",tab8);
|
||||
have_constructor = 1;
|
||||
@@ -226,8 +226,8 @@ void PYTHON::cpp_constructor(char *name, char *iname, ParmList *l) {
|
||||
// function for it.
|
||||
|
||||
*additional << "def " << realname << "(*_args,**_kwargs):\n";
|
||||
*additional << tab4 << "val = " << class_name << "Ptr(apply("
|
||||
<< module << "." << name_construct(realname) << ",_args,_kwargs))\n"
|
||||
*additional << tab4 << "val = " << class_name << "Ptr("
|
||||
<< module << "." << name_construct(realname) << "(*_args,**_kwargs))\n"
|
||||
<< tab4 << "val.thisown = 1\n";
|
||||
emitAddPragmas(*additional, realname, tab4);
|
||||
*additional << tab4 << "return val\n\n";
|
||||
@@ -322,7 +322,7 @@ void PYTHON::cpp_close_class() {
|
||||
if (!have_repr) {
|
||||
// Supply a repr method for this class
|
||||
repr << tab4 << "def __repr__(self):\n"
|
||||
<< tab8 << "return \"<C " << class_name <<" instance at %s>\" % (self.this,)\n";
|
||||
<< tab8 << "return \"<%s.%s instance; proxy of C++ " << class_name <<" instance at %s>\" % (self.__class__.__module__, self.__class__.__name__, self.this)\n";
|
||||
|
||||
classes << repr;
|
||||
emitAddPragmas(classes,"__class__",tab4);
|
||||
|
@@ -1071,7 +1071,7 @@ void PYTHON::create_function(char *name, char *iname, DataType *d, ParmList *l)
|
||||
func << tab4 << "\"\"\"" << add_docstring(doc_entry) << "\"\"\"\n";
|
||||
}
|
||||
|
||||
func << tab4 << "val = apply(" << module << "." << iname << ",_args,_kwargs)\n";
|
||||
func << tab4 << "val = " << module << "." << iname << "(*_args,**_kwargs)\n";
|
||||
|
||||
if (munge_return) {
|
||||
// If the output of this object has been remapped in any way, we're
|
||||
|
Reference in New Issue
Block a user