git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_4_BRANCH@18737 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
		
			
				
	
	
		
			39 lines
		
	
	
		
			1011 B
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			39 lines
		
	
	
		
			1011 B
		
	
	
	
		
			Python
		
	
	
	
	
	
| 
 | |
| # The global was removed  in favor of static accessor functions.  This is for
 | |
| # backwards compatibility:
 | |
| wxTheXmlResource = wxXmlResource_Get()
 | |
| 
 | |
| wx.wxXmlNodePtr = wxXmlNodePtr
 | |
| 
 | |
| 
 | |
| 
 | |
| 
 | |
| #----------------------------------------------------------------------
 | |
| #  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())
 | |
| 
 |