2002-01-21 22:22:03 -05:00
|
|
|
|
|
|
|
# The global was removed in favor of static accessor functions. This is for
|
|
|
|
# backwards compatibility:
|
|
|
|
wxTheXmlResource = wxXmlResource_Get()
|
2002-08-23 22:29:34 -04:00
|
|
|
|
|
|
|
wx.wxXmlNodePtr = wxXmlNodePtr
|
2003-03-25 01:35:27 -05:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#----------------------------------------------------------------------
|
|
|
|
# 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 wxXmlSubclassFactory_Python(wxXmlSubclassFactory):
|
|
|
|
def __init__(self):
|
|
|
|
wxXmlSubclassFactory.__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
|
|
|
|
|
|
|
|
|
|
|
|
wxXmlResource_AddSubclassFactory(wxXmlSubclassFactory_Python())
|
|
|
|
|