_treeList = [
# new stuff
('Recent Additions/Updates', [
- 'StandardPaths',
+ 'FoldPanelBar',
+ 'GIFAnimationCtrl',
+ 'HyperLinkCtrl',
+ 'MultiSplitterWindow',
]),
# managed windows == things with a (optional) caption you can close
'FindReplaceDialog',
'FontDialog',
'MessageDialog',
+ 'MultiChoiceDialog',
'PageSetupDialog',
'PrintDialog',
'ProgressDialog',
'SpinCtrl',
'SplitterWindow',
'StaticBitmap',
+ 'StaticBox',
'StaticText',
'StatusBar',
'StockButtons',
'Calendar',
'CalendarCtrl',
'ContextHelp',
+ 'DatePickerCtrl',
'DynamicSashWindow',
'EditableListBox',
'FancyText',
'FileBrowseButton',
'FloatBar',
'FloatCanvas',
+ 'FoldPanelBar',
+ 'GIFAnimationCtrl',
'HtmlWindow',
+ 'HyperLinkCtrl',
'IntCtrl',
+ 'MediaCtrl',
+ 'MultiSplitterWindow',
'MVCTree',
'MaskedEditControls',
'MaskedNumCtrl',
'PythonEvents',
'Threads',
'Timer',
- ##'infoframe', # needs better explaination and some fixing
+ ##'infoframe', # needs better explanation and some fixing
]),
# Clipboard and DnD
'ArtProvider',
'Cursor',
'DragImage',
+ 'GIFAnimationCtrl',
'Image',
'ImageAlpha',
'ImageFromStream',
# Other stuff
('Miscellaneous', [
'ColourDB',
- ##'DialogUnits', # needs more explainations
+ ##'DialogUnits', # needs more explanations
'DrawXXXList',
'FileHistory',
'FontEnumerator',
'Joystick',
+ 'MouseGestures',
'OGL',
'PrintFramework',
'ShapedWindow',
box.Add((10,10), 2)
self.SetSizer(box)
-
+ self.Fit()
#---------------------------------------------------------------------------
try:
os.makedirs(GetModifiedDirectory())
if not os.path.exists(GetModifiedDirectory()):
- wx.LogMessage("BUG: Created demo directory but it still doesn't exit")
+ wx.LogMessage("BUG: Created demo directory but it still doesn't exist")
raise AssetionError
except:
wx.LogMessage("Error creating demo directory: %s" % GetModifiedDirectory())
self.box = wx.BoxSizer(wx.VERTICAL)
# Main Label
- self.box.Add(wx.StaticText(self, -1, "An error has occured while trying to run the demo")
+ self.box.Add(wx.StaticText(self, -1, "An error has occurred while trying to run the demo")
, 0, wx.ALIGN_CENTER | wx.TOP, 10)
# Exception Information
def OnTaskBarChange(self, evt):
- names = [ "WXPdemo", "WXP", "Mondrian", "Test2m",
- "Blom08m", "Blom10m", "Blom15m" ]
+ names = [ "WXPdemo", "Mondrian", "Pencil", "Carrot" ]
name = names[self.imgidx]
getFunc = getattr(images, "get%sImage" % name)
self.codePage = None
self.shell = None
self.firstTime = True
+ self.finddlg = None
icon = images.getWXPdemoIcon()
self.SetIcon(icon)
self.Bind(wx.EVT_MENU, self.OnHelpAbout, helpItem)
self.Bind(wx.EVT_MENU, self.OnHelpFind, findItem)
self.Bind(wx.EVT_MENU, self.OnFindNext, findnextItem)
- self.Bind(wx.EVT_COMMAND_FIND, self.OnFind)
- self.Bind(wx.EVT_COMMAND_FIND_NEXT, self.OnFind)
- self.Bind(wx.EVT_COMMAND_FIND_CLOSE, self.OnFindClose)
+ self.Bind(wx.EVT_FIND, self.OnFind)
+ self.Bind(wx.EVT_FIND_NEXT, self.OnFind)
+ self.Bind(wx.EVT_FIND_CLOSE, self.OnFindClose)
+ self.Bind(wx.EVT_UPDATE_UI, self.OnUpdateFindItems, findItem)
+ self.Bind(wx.EVT_UPDATE_UI, self.OnUpdateFindItems, findnextItem)
self.mainmenu.Append(menu, '&Help')
self.SetMenuBar(self.mainmenu)
# o The RunTest() for all samples must now return a window that can
# be palced in a tab in the main notebook.
- # o If an error occurs (or has occured before) an error tab is created.
+ # o If an error occurs (or has occurred before) an error tab is created.
if module is not None:
wx.LogMessage("Running demo module...")
about.Destroy()
def OnHelpFind(self, event):
+ if self.finddlg != None:
+ return
+
self.nb.SetSelection(1)
self.finddlg = wx.FindReplaceDialog(self, self.finddata, "Find",
wx.FR_NOUPDOWN |
wx.FR_NOWHOLEWORD)
self.finddlg.Show(True)
+
+ def OnUpdateFindItems(self, evt):
+ evt.Enable(self.finddlg == None)
+
+
def OnFind(self, event):
editor = self.codePage.editor
self.nb.SetSelection(1)
return
else:
self.finddlg.Destroy()
+ self.finddlg = None
editor.ShowPosition(loc)
editor.SetSelection(loc, loc + len(findstring))
def OnFindClose(self, event):
event.GetDialog().Destroy()
+ self.finddlg = None
def OnOpenShellWindow(self, evt):
class MySplashScreen(wx.SplashScreen):
def __init__(self):
- bmp = wx.Image(opj("bitmaps/splash.gif")).ConvertToBitmap()
+ bmp = wx.Image(opj("bitmaps/splash.png")).ConvertToBitmap()
wx.SplashScreen.__init__(self, bmp,
wx.SPLASH_CENTRE_ON_SCREEN | wx.SPLASH_TIMEOUT,
- 3000, None, -1)
+ 5000, None, -1)
self.Bind(wx.EVT_CLOSE, self.OnClose)
+ self.fc = wx.FutureCall(2000, self.ShowMain)
+
def OnClose(self, evt):
+ # Make sure the default handler runs too so this window gets
+ # destroyed
+ evt.Skip()
self.Hide()
+
+ # if the timer is still running then go ahead and show the
+ # main frame now
+ if self.fc.IsRunning():
+ self.fc.Stop()
+ self.ShowMain()
+
+
+ def ShowMain(self):
frame = wxPythonDemo(None, "wxPython: (A Demonstration)")
frame.Show()
- evt.Skip() # Make sure the default handler runs too...
-
+ if self.fc.IsRunning():
+ self.Raise()
+
class MyApp(wx.App):
def OnInit(self):
the main frame when it is time to do so.
"""
+ wx.SystemOptions.SetOptionInt("mac.window-plain-transition", 1)
+
# For debugging
#self.SetAssertMode(wx.PYAPP_ASSERT_DIALOG)
# initialization, finally creating and showing the main
# application window(s). In this case we have nothing else to
# do so we'll delay showing the main frame until later (see
- # OnClose above) so the users can see the SplashScreen effect.
+ # ShowMain above) so the users can see the SplashScreen effect.
splash = MySplashScreen()
splash.Show()