]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/demo/XML_Resource.py
Typo fixed
[wxWidgets.git] / wxPython / demo / XML_Resource.py
index ba5350f5396944ec3d6ae7ebe5b4cca5b43fdcd5..2d0aa94768f9de55125f6b083026bbbc26c84284 100644 (file)
@@ -16,13 +16,31 @@ class TestPanel(wxPanel):
         label = wxStaticText(self, -1, "The lower panel was built from this XML:")
         label.SetFont(wxFont(12, wxSWISS, wxNORMAL, wxBOLD))
 
-        text = wxTextCtrl(self, -1, open(RESFILE).read(),
+        resourceText = open(RESFILE).read()
+        text = wxTextCtrl(self, -1, resourceText,
                           style=wxTE_READONLY|wxTE_MULTILINE)
         text.SetInsertionPoint(0)
 
         line = wxStaticLine(self, -1)
 
-        res = wxXmlResource(RESFILE)
+        # This shows a few different ways to load XML Resources
+        if 0:
+            # XML Resources can be loaded from a file like this:
+            res = wxXmlResource(RESFILE)
+
+        elif 1:
+            # or from a Virtual FileSystem:
+            wxFileSystem_AddHandler(wxMemoryFSHandler())
+            wxMemoryFSHandler_AddFile("XRC_Resources/data_file", resourceText)
+            res = wxXmlResource("memory:XRC_Resources/data_file")
+
+        else:
+            # or from a string, like this:
+            res = wxEmptyXmlResource()
+            res.LoadFromString(resourceText)
+
+
+        # Now create a panel from the resource data
         panel = res.LoadPanel(self, "MyPanel")
 
         # and do the layout
@@ -48,3 +66,11 @@ def runTest(frame, nb, log):
 
 overview = """
 """
+
+
+
+if __name__ == '__main__':
+    import sys,os
+    import run
+    run.main(['', os.path.basename(sys.argv[0])])
+