'wxTreeCtrl', 'wxSpinButton', 'wxStaticText', 'wxStaticBitmap',
'wxRadioBox', 'wxSlider']),
- ('Window Layout', ['wxLayoutConstraints', 'Sizers']),
+ ('Window Layout', ['wxLayoutConstraints', 'Sizers', 'OldSizers']),
- ('Miscellaneous', ['wxTimer', 'wxGLCanvas', 'DialogUnits', 'wxImage',
- 'PrintFramework', 'wxOGL']),
+ ('Miscellaneous', ['wxTimer', 'wxValidator', 'wxGLCanvas', 'DialogUnits',
+ 'wxImage', 'PrintFramework', 'wxOGL']),
- ('wxPython Library', ['Sizers', 'Layoutf', 'wxScrolledMessageDialog',
- 'wxMultipleChoiceDialog', 'wxPlotCanvas']),
+ ('wxPython Library', ['OldSizers', 'Layoutf', 'wxScrolledMessageDialog',
+ 'wxMultipleChoiceDialog', 'wxPlotCanvas', 'wxFloatBar',
+ 'PyShell']),
('Cool Contribs', ['pyTree', 'hangman', 'SlashDot', 'XMLtreeview']),
class wxPythonDemo(wxFrame):
def __init__(self, parent, id, title):
- wxFrame.__init__(self, parent, -1, title,
- wxDefaultPosition, wxSize(700, 550))
+ wxFrame.__init__(self, parent, -1, title, size = (725, 550))
+
if wxPlatform == '__WXMSW__':
self.icon = wxIcon('bitmaps/mondrian.ico', wxBITMAP_TYPE_ICO)
self.SetIcon(self.icon)
# Make a File menu
self.mainmenu = wxMenuBar()
menu = wxMenu()
- mID = wxNewId()
- menu.Append(mID, 'E&xit', 'Get the heck outta here!')
- EVT_MENU(self, mID, self.OnFileExit)
+ exitID = wxNewId()
+ menu.Append(exitID, 'E&xit\tAlt-X', 'Get the heck outta here!')
+ EVT_MENU(self, exitID, self.OnFileExit)
self.mainmenu.Append(menu, '&File')
# Make a Demo menu
# Make a Help menu
- mID = wxNewId()
+ helpID = wxNewId()
menu = wxMenu()
- menu.Append(mID, '&About', 'wxPython RULES!!!')
- EVT_MENU(self, mID, self.OnHelpAbout)
+ menu.Append(helpID, '&About\tCtrl-H', 'wxPython RULES!!!')
+ EVT_MENU(self, helpID, self.OnHelpAbout)
self.mainmenu.Append(menu, '&Help')
self.SetMenuBar(self.mainmenu)
+ # set the menu accellerator table...
+ aTable = wxAcceleratorTable([(wxACCEL_ALT, ord('X'), exitID),
+ (wxACCEL_CTRL, ord('H'), helpID)])
+ self.SetAcceleratorTable(aTable)
+
# Create a TreeCtrl
tID = wxNewId()
self.log = wxTextCtrl(splitter2, -1,
style = wxTE_MULTILINE|wxTE_READONLY|wxHSCROLL)
(w, self.charHeight) = self.log.GetTextExtent('X')
- #self.WriteText('wxPython Demo Log:\n')
+ self.WriteText('wxPython Demo Log:\n')
# add the windows to the splitter and split it.
w, h = self.log.GetClientSizeTuple()
numLines = h/self.charHeight
x, y = self.log.PositionToXY(self.log.GetLastPosition())
- self.log.ShowPosition(self.log.XYToPosition(x, y-numLines))
- ##self.log.ShowPosition(self.log.GetLastPosition())
+ if y > numLines:
+ self.log.ShowPosition(self.log.XYToPosition(x, y-numLines))
+ ##self.log.ShowPosition(self.log.GetLastPosition())
self.log.SetInsertionPointEnd()
def write(self, txt):
if itemText == 'Overview':
self.GetDemoFile('Main.py')
self.SetOverview('Overview', overview)
- #self.nb.ResizeChildren();
self.nb.Refresh();
- #wxYield()
self.window = None
else:
self.window = module.runTest(self, self.nb, self)
if self.window:
self.nb.AddPage(self.window, 'Demo')
+ self.nb.ResizeChildren()
self.nb.SetSelection(2)
- self.nb.ResizeChildren();
else:
self.ovr.Clear()
self.window = None
+
#---------------------------------------------
# Get the Demo files
def GetDemoFile(self, filename):
# "of wxPython.\n\n"
# " Developed by Robin Dunn",
# "About wxPython", wxOK)
+ from About import MyAboutBox
about = MyAboutBox(self)
about.ShowModal()
about.Destroy()
def OnCloseWindow(self, event):
self.dying = true
self.window = None
+ self.mainmenu = None
self.Destroy()
#---------------------------------------------
#---------------------------------------------
def OnDemoMenu(self, event):
- print event.GetId(), self.mainmenu.GetLabel(event.GetId())
try:
selectedDemo = self.treeMap[self.mainmenu.GetLabel(event.GetId())]
except:
self.tree.EnsureVisible(selectedDemo)
-
-#---------------------------------------------------------------------------
-#---------------------------------------------------------------------------
-
-class MyAboutBox(wxDialog):
- text = '''
-<html>
-<body bgcolor="#AC76DE">
-<center><table bgcolor="#458154" width="100%%" cellspacing="0" cellpadding="0" border="1">
-<tr>
- <td align="center"><h1>wxPython %s</h1></td>
-</tr>
-</table>
-
-<p><b>wxPython</b> is a Python extension module that
-encapsulates the wxWindows GUI classes.</p>
-
-<p>This demo shows off some of the capabilities
-of <b>wxPython</b>. Select items from the menu or tree control,
-sit back and enjoy. Be sure to take a peek at the source code for each
-demo item so you can learn how to use the classes yourself.</p>
-
-<p><b>wxPython</b> is brought to you by <b>Robin Dunn</b> and<br>
-<b>Total Control Software</b>, copyright 1999.</p>
-
-<p><font size="-1">Please see <i>license.txt</i> for licensing information.</font></p>
-</center>
-</body>
-</html>
-'''
- def __init__(self, parent):
- from wxPython.html import *
- wxDialog.__init__(self, parent, -1, 'About wxPython')
- self.html = wxHtmlWindow(self, -1, wxPoint(5,5), wxSize(400, 350))
- self.html.SetPage(self.text % wx.__version__)
- wxButton(self, wxID_OK, 'OK', wxPoint(5, 365)).SetDefault()
- self.Fit()
-
-
#---------------------------------------------------------------------------
#---------------------------------------------------------------------------