]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/demo/Main.py
A way to make the DC classes in wxPython look like the ones in 2.5, so
[wxWidgets.git] / wxPython / demo / Main.py
index 6a2146104b437cce2f03ac2e431be41ec64f6912..349a1a67122d4fe34b89f7e03cfc6c1f88f6c4cb 100644 (file)
@@ -20,8 +20,9 @@ import images
 
 # For debugging
 ##wx.Trap();
 
 # For debugging
 ##wx.Trap();
+##print "wx.VERSION_STRING = ", wx.VERSION_STRING
 ##print os.getpid();
 ##print os.getpid();
-##raw_input("Press a key...")
+##raw_input("Press Enter...")
 
 
 #---------------------------------------------------------------------------
 
 
 #---------------------------------------------------------------------------
@@ -39,6 +40,9 @@ _treeList = [
         'Cursor',
         'PyPlot',
         'ImageAlpha',
         'Cursor',
         'PyPlot',
         'ImageAlpha',
+        'ActiveX_FlashWindow',
+        'ActiveX_IEHtmlWindow',
+        'ActiveX_PDFWindow',
         ]),
 
     # managed windows == things with a (optional) caption you can close
         ]),
 
     # managed windows == things with a (optional) caption you can close
@@ -68,7 +72,6 @@ _treeList = [
 
     # dialogs from libraries
     ('More Dialogs', [
 
     # dialogs from libraries
     ('More Dialogs', [
-        'ErrorDialogs',
         'ImageBrowser',
         'MultipleChoiceDialog',
         'ScrolledMessageDialog',
         'ImageBrowser',
         'MultipleChoiceDialog',
         'ScrolledMessageDialog',
@@ -76,6 +79,7 @@ _treeList = [
 
     # core controls
     ('Core Windows/Controls', [
 
     # core controls
     ('Core Windows/Controls', [
+        'BitmapButton',
         'Button',
         'CheckBox',
         'CheckListBox',
         'Button',
         'CheckBox',
         'CheckListBox',
@@ -125,6 +129,9 @@ _treeList = [
     
     # controls coming from other libraries
     ('More Windows/Controls', [
     
     # controls coming from other libraries
     ('More Windows/Controls', [
+        'ActiveX_FlashWindow',
+        'ActiveX_IEHtmlWindow',
+        'ActiveX_PDFWindow',
         #'RightTextCtrl',     deprecated as we have wxTE_RIGHT now.
         'Calendar',
         'CalendarCtrl',
         #'RightTextCtrl',     deprecated as we have wxTE_RIGHT now.
         'Calendar',
         'CalendarCtrl',
@@ -136,7 +143,6 @@ _treeList = [
         'FloatBar',  
         'FloatCanvas',
         'HtmlWindow',
         'FloatBar',  
         'FloatCanvas',
         'HtmlWindow',
-        'IEHtmlWin',
         'IntCtrl',
         'MVCTree',   
         'MaskedEditControls',
         'IntCtrl',
         'MVCTree',   
         'MaskedEditControls',
@@ -173,7 +179,6 @@ _treeList = [
     ('Process and Events', [
         'EventManager',
         'KeyEvents',
     ('Process and Events', [
         'EventManager',
         'KeyEvents',
-        'OOR',
         'Process',
         'PythonEvents',
         'Threads',
         'Process',
         'PythonEvents',
         'Threads',
@@ -208,7 +213,6 @@ _treeList = [
         'FileHistory',
         'FontEnumerator',
         'Joystick',
         'FileHistory',
         'FontEnumerator',
         'Joystick',
-        'NewNamespace',
         'OGL',
         'PrintFramework',
         'ShapedWindow',
         'OGL',
         'PrintFramework',
         'ShapedWindow',
@@ -218,10 +222,7 @@ _treeList = [
 
     # need libs not coming with the demo
     ('Objects using an external library', [
 
     # need libs not coming with the demo
     ('Objects using an external library', [
-        'ActiveXWrapper_Acrobat',
-        'ActiveXWrapper_IE',
         'GLCanvas',
         'GLCanvas',
-        #'PlotCanvas', # deprecated, use PyPlot
         ]),
 
 
         ]),
 
 
@@ -464,13 +465,13 @@ class wxPythonDemo(wx.Frame):
         self.Centre(wx.BOTH)
         self.CreateStatusBar(1, wx.ST_SIZEGRIP)
 
         self.Centre(wx.BOTH)
         self.CreateStatusBar(1, wx.ST_SIZEGRIP)
 
-        splitter = wx.SplitterWindow(self, -1)
-        splitter2 = wx.SplitterWindow(splitter, -1) ##, size=(20,20))
+        splitter = wx.SplitterWindow(self, -1, style=wx.CLIP_CHILDREN)
+        splitter2 = wx.SplitterWindow(splitter, -1, style=wx.CLIP_CHILDREN)
 
         # Set up a log on the View Log Notebook page
         self.log = wx.TextCtrl(splitter2, -1,
                               style = wx.TE_MULTILINE|wx.TE_READONLY|wx.HSCROLL)
 
         # Set up a log on the View Log Notebook page
         self.log = wx.TextCtrl(splitter2, -1,
                               style = wx.TE_MULTILINE|wx.TE_READONLY|wx.HSCROLL)
-
+        
         # Set the wxWindows log target to be this textctrl
         #wx.Log_SetActiveTarget(wx.LogTextCtrl(self.log))
 
         # Set the wxWindows log target to be this textctrl
         #wx.Log_SetActiveTarget(wx.LogTextCtrl(self.log))
 
@@ -493,9 +494,15 @@ class wxPythonDemo(wx.Frame):
         # Make a File menu
         self.mainmenu = wx.MenuBar()
         menu = wx.Menu()
         # Make a File menu
         self.mainmenu = wx.MenuBar()
         menu = wx.Menu()
+        item = menu.Append(-1, '&Redirect Output',
+                           'Redirect print statements to a window',
+                           wx.ITEM_CHECK)
+        self.Bind(wx.EVT_MENU, self.OnToggleRedirect, item)
+        
         item = menu.Append(-1, 'E&xit\tAlt-X', 'Get the heck outta here!')
         self.Bind(wx.EVT_MENU, self.OnFileExit, item)
         wx.App_SetMacExitMenuItemId(item.GetId())
         item = menu.Append(-1, 'E&xit\tAlt-X', 'Get the heck outta here!')
         self.Bind(wx.EVT_MENU, self.OnFileExit, item)
         wx.App_SetMacExitMenuItemId(item.GetId())
+
         self.mainmenu.Append(menu, '&File')
 
         # Make a Demo menu
         self.mainmenu.Append(menu, '&File')
 
         # Make a Demo menu
@@ -628,7 +635,7 @@ class wxPythonDemo(wx.Frame):
                 self.tree.EnsureVisible(selectedDemo)
 
 
                 self.tree.EnsureVisible(selectedDemo)
 
 
-        wx.LogMessage('window handle: %s' % self.GetHandle())
+##        wx.LogMessage('window handle: %s' % self.GetHandle())
 
 
     #---------------------------------------------
 
 
     #---------------------------------------------
@@ -715,6 +722,7 @@ class wxPythonDemo(wx.Frame):
                 self.txt.Clear()
                 self.window = None
 
                 self.txt.Clear()
                 self.window = None
 
+        self.tree.SetFocus()
 
 
     #---------------------------------------------
 
 
     #---------------------------------------------
@@ -743,6 +751,15 @@ class wxPythonDemo(wx.Frame):
     def OnFileExit(self, *event):
         self.Close()
 
     def OnFileExit(self, *event):
         self.Close()
 
+    def OnToggleRedirect(self, event):
+        app = wx.GetApp()
+        if event.Checked():
+            app.RedirectStdio()
+            print "Print statements and other standard output will now be directed to this window."
+        else:
+            app.RestoreStdio()
+            print "Print statements and other standard output will now be sent to the usual location."
+        
     def OnHelpAbout(self, event):
         from About import MyAboutBox
         about = MyAboutBox(self)
     def OnHelpAbout(self, event):
         from About import MyAboutBox
         about = MyAboutBox(self)
@@ -800,8 +817,6 @@ class wxPythonDemo(wx.Frame):
         self.dying = True
         self.window = None
         self.mainmenu = None
         self.dying = True
         self.window = None
         self.mainmenu = None
-        if hasattr(self, "tbicon"):
-            del self.tbicon
         self.Destroy()
 
 
         self.Destroy()