]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/demo/run.py
Script updates
[wxWidgets.git] / wxPython / demo / run.py
index fcf5bd902992fc9e2af202921870ef4492fbae11..0e238b55fc55744859aa2b362f690e9baf13df00 100755 (executable)
@@ -17,9 +17,17 @@ directory within its own frame window.  Just specify the module name
 on the command line.
 """
 
-
+import wx                  # This module uses the new wx namespace
 import sys, os
-from wxPython.wx import *
+
+# stuff for debugging
+print "wx.VERSION_STRING = ", wx.VERSION_STRING
+print "pid:", os.getpid()
+##raw_input("Press a key...")
+
+assertMode = wx.PYAPP_ASSERT_DIALOG
+##assertMode = wx.PYAPP_ASSERT_EXCEPTION
+
 
 #----------------------------------------------------------------------------
 
@@ -27,32 +35,36 @@ class Log:
     def WriteText(self, text):
         if text[-1:] == '\n':
             text = text[:-1]
-        wxLogMessage(text)
+        wx.LogMessage(text)
     write = WriteText
 
 
-class RunDemoApp(wxApp):
+class RunDemoApp(wx.App):
     def __init__(self, name, module):
         self.name = name
         self.demoModule = module
-        wxApp.__init__(self, 0) ##wxPlatform == "__WXMAC__")
+        wx.App.__init__(self, 0)
 
 
     def OnInit(self):
-        wxInitAllImageHandlers()
-        wxLog_SetActiveTarget(wxLogStderr())
+        wx.InitAllImageHandlers()
+        wx.Log_SetActiveTarget(wx.LogStderr())
 
-        frame = wxFrame(None, -1, "RunDemo: " + self.name, pos=(50,50), size=(0,0),
-                        style=wxNO_FULL_REPAINT_ON_RESIZE|wxDEFAULT_FRAME_STYLE)
+        self.SetAssertMode(assertMode)
+
+        frame = wx.Frame(None, -1, "RunDemo: " + self.name, pos=(50,50), size=(200,100),
+                        style=wx.NO_FULL_REPAINT_ON_RESIZE|wx.DEFAULT_FRAME_STYLE)
         frame.CreateStatusBar()
-        menuBar = wxMenuBar()
-        menu = wxMenu()
-        menu.Append(101, "E&xit\tAlt-X", "Exit demo")
-        EVT_MENU(self, 101, self.OnButton)
+
+        menuBar = wx.MenuBar()
+        menu = wx.Menu()
+        item = menu.Append(-1, "E&xit\tAlt-X", "Exit demo")
+        self.Bind(wx.EVT_MENU, self.OnButton, item)
         menuBar.Append(menu, "&File")
+
         frame.SetMenuBar(menuBar)
         frame.Show(True)
-        EVT_CLOSE(frame, self.OnCloseFrame)
+        frame.Bind(wx.EVT_CLOSE, self.OnCloseFrame)
 
         win = self.demoModule.runTest(frame, frame, Log())
 
@@ -68,9 +80,12 @@ class RunDemoApp(wxApp):
             # otherwise the demo made its own frame, so just put a
             # button in this one
             if hasattr(frame, 'otherWin'):
-                b = wxButton(frame, -1, " Exit ")
-                frame.SetSize((200, 100))
-                EVT_BUTTON(frame, b.GetId(), self.OnButton)
+                p = wx.Panel(frame, -1)
+                b = wx.Button(p, -1, " Exit ", (10,10))
+                p.Fit()
+                frame.SetClientSize(p.GetSize())
+                #frame.SetSize((200, 100))
+                frame.Bind(wx.EVT_BUTTON, self.OnButton, b)
             else:
                 # It was probably a dialog or something that is already
                 # gone, so we're done.
@@ -79,8 +94,8 @@ class RunDemoApp(wxApp):
 
         self.SetTopWindow(frame)
         self.frame = frame
-        #wxLog_SetActiveTarget(wxLogStderr())
-        #wxLog_SetTraceMask(wxTraceMessages)
+        #wx.Log_SetActiveTarget(wx.LogStderr())
+        #wx.Log_SetTraceMask(wx.TraceMessages)
         return True
 
 
@@ -102,9 +117,7 @@ def main(argv):
         print "Please specify a demo module name on the command-line"
         raise SystemExit
 
-    name = argv[1]
-    if name[-3:] == '.py':
-        name = name[:-3]
+    name, ext  = os.path.splitext(argv[1])
     module = __import__(name)