]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/demo/Main.py
After adding check to wx/mgl/chkconf.h for UNIV flag, our regex needs this flag deliv...
[wxWidgets.git] / wxPython / demo / Main.py
index c951870a3b3752d80b42d9e53c471cb620041a61..b67361889d20cdbc6e58e28fe62cc99075035bc5 100644 (file)
@@ -36,8 +36,8 @@ import images
 
 # For debugging
 ##wx.Trap();
-##print "wx.VERSION_STRING = ", wx.VERSION_STRING
-##print os.getpid();
+##print "wx.VERSION_STRING = %s (%s)" % (wx.VERSION_STRING, wx.USE_UNICODE and 'unicode' or 'ansi')
+##print "pid:", os.getpid()
 ##raw_input("Press Enter...")
 
 
@@ -47,13 +47,22 @@ import images
 _treeList = [
     # new stuff
     ('Recent Additions/Updates', [
-        'FoldPanelBar',
-        'GIFAnimationCtrl',
-        'HyperLinkCtrl',
+        'AnalogClock',
+        'AUI_DockingWindowMgr',
+        'AUI_Notebook',
+        'BitmapFromBuffer',
+        'CheckListCtrlMixin',
+        'ComboTreeBox',
+        'Pickers',
+        'PseudoDC',
+        'RichTextCtrl',
+        'Treebook',
+        'Toolbook',
         ]),
 
     # managed windows == things with a (optional) caption you can close
     ('Frames and Dialogs', [
+        'AUI_DockingWindowMgr',
         'Dialog',
         'Frame',
         'MDIWindows',
@@ -80,7 +89,6 @@ _treeList = [
     # dialogs from libraries
     ('More Dialogs', [
         'ImageBrowser',
-        'MultipleChoiceDialog',
         'ScrolledMessageDialog',
         ]),
 
@@ -91,7 +99,6 @@ _treeList = [
         'CheckBox',
         'CheckListBox',
         'Choice',
-        'Choicebook',
         'ComboBox',
         'Gauge',
         'Grid',
@@ -100,9 +107,7 @@ _treeList = [
         'ListCtrl',
         'ListCtrl_virtual',
         'ListCtrl_edit',
-        'Listbook',
         'Menu',
-        'Notebook',
         'PopupMenu',
         'PopupWindow',
         'RadioBox',
@@ -124,10 +129,20 @@ _treeList = [
         'TreeCtrl',
         'Validator',
         ]),
+    
+    ('"Book" Controls', [
+        'AUI_Notebook',
+        'Choicebook',
+        'Listbook',
+        'Notebook',
+        'Toolbook',
+        'Treebook',
+        ]),
 
     ('Custom Controls', [
-        'AnalogClockWindow',
+        'AnalogClock',
         'ColourSelect',
+        'ComboTreeBox',
         'Editor',
         'GenericButtons',
         'GenericDirCtrl',
@@ -146,6 +161,7 @@ _treeList = [
         #'RightTextCtrl',     deprecated as we have wxTE_RIGHT now.
         'Calendar',
         'CalendarCtrl',
+        'CheckListCtrlMixin',
         'ContextHelp',
         'DatePickerCtrl',
         'DynamicSashWindow',
@@ -159,14 +175,16 @@ _treeList = [
         'HtmlWindow',
         'HyperLinkCtrl',
         'IntCtrl',
-        'MediaCtrl',
         'MVCTree',   
         'MaskedEditControls',
         'MaskedNumCtrl',
-        'MimeTypesManager',
+        'MediaCtrl',
+        'MultiSplitterWindow',
+        'Pickers',
         'PyCrust',
         'PyPlot',
         'PyShell',
+        'RichTextCtrl',
         'ScrolledPanel',
         'SplitTree',
         'StyledTextCtrl_1',
@@ -213,6 +231,7 @@ _treeList = [
     # Images
     ('Using Images', [
         'ArtProvider',
+        'BitmapFromBuffer',
         'Cursor',
         'DragImage',
         'GIFAnimationCtrl',
@@ -230,21 +249,19 @@ _treeList = [
         'DrawXXXList',
         'FileHistory',
         'FontEnumerator',
+        'GLCanvas',
         'Joystick',
+        'MimeTypesManager',
         'MouseGestures',
         'OGL',
         'PrintFramework',
+        'PseudoDC',
         'ShapedWindow',
         'Sound',
         'StandardPaths',
         'Unicode',
         ]),
 
-    # need libs not coming with the demo
-    ('Samples using an external library', [
-        'GLCanvas',
-        ]),
-
 
     ('Check out the samples dir too', [
         ]),
@@ -455,7 +472,7 @@ try:
                                   'fore:#000000,back:#FFFFFF,face:Courier New,size:9')
             else:
                 self.StyleSetSpec(stc.STC_STYLE_DEFAULT, 
-                                  'fore:#000000,back:#FFFFFF,face:Courier,size:12')
+                                  'fore:#000000,back:#FFFFFF,face:Courier,size:9')
     
             # Clear styles and revert to default.
             self.StyleClearAll()
@@ -801,7 +818,8 @@ class DemoModules:
     def LoadDict(self, modID):
         if self.name != __name__:
             source = self.modules[modID][1]
-            description = self.modules[modID][3]
+            #description = self.modules[modID][3]
+            description = self.modules[modID][2]
 
             try:
                 self.modules[modID][0] = {}
@@ -1167,22 +1185,6 @@ class wxPythonDemo(wx.Frame):
             menu.AppendMenu(wx.NewId(), item[0], submenu)
         self.mainmenu.Append(menu, '&Demo')
 
-        # Make a Demo Code menu
-        #TODO: Add new menu items
-        #       Like the option-enabled entries to select the
-        #       active module
-        #TODO: should we bother?
-
-        #menu = wx.Menu()
-        #saveID = wx.NewId()
-        #restoreID = wx.NewId()
-       # 
-        #menu.Append(saveID, '&Save\tCtrl-S', 'Save edited demo')
-        #menu.Append(restoreID, '&Delete Modified\tCtrl-R', 'Delete modified copy')
-        #self.Bind(wx.EVT_MENU, self.codePage.OnSave, id=saveID)
-        #self.Bind(wx.EVT_MENU, self.codePage.OnRestore, id=restoreID)
-        #self.mainmenu.Append(menu, 'Demo &Code')
-       # 
 
         # Make a Help menu
         menu = wx.Menu()
@@ -1193,7 +1195,7 @@ class wxPythonDemo(wx.Frame):
         shellItem = menu.Append(-1, 'Open Py&Shell Window\tF5',
                                 'An interactive interpreter window with the demo app and frame objects in the namesapce')
         menu.AppendSeparator()
-        helpItem = menu.Append(-1, '&About\tCtrl-H', 'wxPython RULES!!!')
+        helpItem = menu.Append(-1, '&About wxPython Demo', 'wxPython RULES!!!')
         wx.App.SetMacAboutMenuItemId(helpItem.GetId())
 
         self.Bind(wx.EVT_MENU, self.OnOpenShellWindow, shellItem)
@@ -1209,6 +1211,7 @@ class wxPythonDemo(wx.Frame):
         self.SetMenuBar(self.mainmenu)
 
         self.finddata = wx.FindReplaceData()
+        self.finddata.SetFlags(wx.FR_DOWN)
 
         if 0:
             # This is another way to set Accelerators, in addition to
@@ -1526,9 +1529,7 @@ class wxPythonDemo(wx.Frame):
         
         self.nb.SetSelection(1)
         self.finddlg = wx.FindReplaceDialog(self, self.finddata, "Find",
-                        wx.FR_NOUPDOWN |
-                        wx.FR_NOMATCHCASE |
-                        wx.FR_NOWHOLEWORD)
+                        wx.FR_NOMATCHCASE | wx.FR_NOWHOLEWORD)
         self.finddlg.Show(True)
 
 
@@ -1541,13 +1542,22 @@ class wxPythonDemo(wx.Frame):
         self.nb.SetSelection(1)
         end = editor.GetLastPosition()
         textstring = editor.GetRange(0, end).lower()
-        start = editor.GetSelection()[1]
         findstring = self.finddata.GetFindString().lower()
-        loc = textstring.find(findstring, start)
+        backward = not (self.finddata.GetFlags() & wx.FR_DOWN)
+        if backward:
+            start = editor.GetSelection()[0]
+            loc = textstring.rfind(findstring, 0, start)
+        else:
+            start = editor.GetSelection()[1]
+            loc = textstring.find(findstring, start)
         if loc == -1 and start != 0:
             # string not found, start at beginning
-            start = 0
-            loc = textstring.find(findstring, start)
+            if backward:
+                start = end
+                loc = textstring.rfind(findstring, 0, start)
+            else:
+                start = 0
+                loc = textstring.find(findstring, start)
         if loc == -1:
             dlg = wx.MessageDialog(self, 'Find String Not Found',
                           'Find String Not Found in Demo File',