Merged the wxPy_newswig branch into the HEAD branch (main trunk)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@24541 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
36
wxPython/contrib/xrc/_xrc_ex.py
Normal file
36
wxPython/contrib/xrc/_xrc_ex.py
Normal file
@@ -0,0 +1,36 @@
|
||||
#----------------------------------------------------------------------------
|
||||
# The global was removed in favor of static accessor functions. This is for
|
||||
# backwards compatibility:
|
||||
|
||||
TheXmlResource = XmlResource_Get()
|
||||
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Create a factory for handling the subclass property of the object tag.
|
||||
|
||||
|
||||
def _my_import(name):
|
||||
mod = __import__(name)
|
||||
components = name.split('.')
|
||||
for comp in components[1:]:
|
||||
mod = getattr(mod, comp)
|
||||
return mod
|
||||
|
||||
|
||||
class XmlSubclassFactory_Python(XmlSubclassFactory):
|
||||
def __init__(self):
|
||||
XmlSubclassFactory.__init__(self)
|
||||
|
||||
def Create(self, className):
|
||||
assert className.find('.') != -1, "Module name must be specified!"
|
||||
mname = className[:className.rfind('.')]
|
||||
cname = className[className.rfind('.')+1:]
|
||||
module = _my_import(mname)
|
||||
klass = getattr(module, cname)
|
||||
inst = klass()
|
||||
return inst
|
||||
|
||||
|
||||
XmlResource_AddSubclassFactory(XmlSubclassFactory_Python())
|
||||
|
||||
#----------------------------------------------------------------------------
|
Reference in New Issue
Block a user