Reorganized the tree in the wxPython demo, hooked the MDI demos into

the main demo.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@15198 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robin Dunn 2002-04-18 05:43:08 +00:00
parent d394edcac8
commit 9c67cbec02
4 changed files with 300 additions and 71 deletions

View File

@ -38,16 +38,17 @@ class MyParentFrame(wxMDIParentFrame):
#---------------------------------------------------------------------- #----------------------------------------------------------------------
class MyApp(wxApp): if __name__ == '__main__':
def OnInit(self): class MyApp(wxApp):
frame = MyParentFrame() def OnInit(self):
frame.Show(true) frame = MyParentFrame()
self.SetTopWindow(frame) frame.Show(true)
return true self.SetTopWindow(frame)
return true
app = MyApp(0) app = MyApp(0)
app.MainLoop() app.MainLoop()

View File

@ -125,16 +125,17 @@ class MyParentFrame(wxMDIParentFrame):
#---------------------------------------------------------------------- #----------------------------------------------------------------------
class MyApp(wxApp): if __name__ == '__main__':
def OnInit(self): class MyApp(wxApp):
frame = MyParentFrame() def OnInit(self):
frame.Show(true) frame = MyParentFrame()
self.SetTopWindow(frame) frame.Show(true)
return true self.SetTopWindow(frame)
return true
app = MyApp(0) app = MyApp(0)
app.MainLoop() app.MainLoop()

View File

@ -20,70 +20,243 @@ import images
#--------------------------------------------------------------------------- #---------------------------------------------------------------------------
## _treeList = [
## ('New since last release', ['wxGenericDirCtrl',
## 'wxImageFromStream',
## 'RowColSizer',
## 'Unicode',
## 'wxFileHistory',
## ]),
## ('Windows', ['wxFrame', 'wxDialog', 'wxMiniFrame',
## 'wxGrid', 'wxSashWindow',
## 'wxScrolledWindow', 'wxSplitterWindow',
## 'wxStatusBar', 'wxNotebook',
## 'wxHtmlWindow',
## 'wxStyledTextCtrl_1', 'wxStyledTextCtrl_2',
## 'wxPopupWindow',
## 'wxDynamicSashWindow',
## ]),
## ('Common Dialogs', ['wxColourDialog', 'wxDirDialog', 'wxFileDialog',
## 'wxSingleChoiceDialog', 'wxTextEntryDialog',
## 'wxFontDialog', 'wxPageSetupDialog', 'wxPrintDialog',
## 'wxMessageDialog', 'wxProgressDialog', 'wxFindReplaceDialog',
## ]),
## ('Controls', ['wxButton', 'wxCheckBox', 'wxCheckListBox', 'wxChoice',
## 'wxComboBox', 'wxGauge', 'wxListBox', 'wxListCtrl', 'VirtualListCtrl',
## 'wxTextCtrl',
## 'wxTreeCtrl', 'wxSpinButton', 'wxSpinCtrl', 'wxStaticText',
## 'wxStaticBitmap', 'wxRadioBox', 'wxSlider', 'wxToolBar',
## 'wxCalendarCtrl', 'wxToggleButton',
## 'wxEditableListBox', 'wxLEDNumberCtrl',
## ]),
## ('Window Layout', ['wxLayoutConstraints', 'LayoutAnchors', 'Sizers', 'XML_Resource',
## 'RowColSizer',
## ]),
## ('Miscellaneous', [ 'DragAndDrop', 'CustomDragAndDrop', 'URLDragAndDrop',
## 'FontEnumerator',
## 'wxTimer', 'wxValidator', 'wxGLCanvas', 'DialogUnits',
## 'wxImage', 'wxMask', 'PrintFramework', 'wxOGL',
## 'PythonEvents', 'Threads',
## 'ActiveXWrapper_Acrobat', 'ActiveXWrapper_IE',
## 'wxDragImage', "wxProcess", "FancyText", "OOR", "wxWave",
## 'wxJoystick', 'DrawXXXList', 'ErrorDialogs', 'wxMimeTypesManager',
## 'ContextHelp', 'SplitTree', 'Unicode', 'wxFileHistory',
## ]),
## ('wxPython Library', ['Layoutf', 'wxScrolledMessageDialog',
## 'wxMultipleChoiceDialog', 'wxPlotCanvas', 'wxFloatBar',
## 'wxCalendar', 'wxMVCTree', 'wxVTKRenderWindow',
## 'FileBrowseButton', 'GenericButtons', 'wxEditor',
## 'ColourSelect', 'ImageBrowser',
## 'infoframe', 'ColourDB', 'PyCrust', 'PyCrustWithFilling',
## 'TablePrint',
## 'wxRightTextCtrl',
## ]),
## ('Cool Contribs', ['pyTree', 'hangman',
## #'SlashDot',
## 'XMLtreeview'
## ]),
## ]
_treeList = [ _treeList = [
('New since last release', ['wxGenericDirCtrl', # new stuff
'wxImageFromStream', ('New since last release', [
'RowColSizer', 'RowColSizer',
'Unicode', 'Unicode',
'wxFileHistory', 'wxFileHistory',
]), 'wxGenericDirCtrl',
'wxImageFromStream',
]),
('Windows', ['wxFrame', 'wxDialog', 'wxMiniFrame', # managed windows == things with a caption you can close
'wxGrid', 'wxSashWindow', ('Base Frames and Dialogs', [
'wxScrolledWindow', 'wxSplitterWindow', 'wxDialog',
'wxStatusBar', 'wxNotebook', 'wxFrame',
'wxHtmlWindow', 'wxMDIWindows',
'wxStyledTextCtrl_1', 'wxStyledTextCtrl_2', 'wxMiniFrame',
'wxPopupWindow', ]),
'wxDynamicSashWindow',
]),
('Common Dialogs', ['wxColourDialog', 'wxDirDialog', 'wxFileDialog', # the common dialogs
'wxSingleChoiceDialog', 'wxTextEntryDialog', ('Common Dialogs', [
'wxFontDialog', 'wxPageSetupDialog', 'wxPrintDialog', 'wxColourDialog',
'wxMessageDialog', 'wxProgressDialog', 'wxFindReplaceDialog', 'wxDirDialog',
]), 'wxFileDialog',
'wxFindReplaceDialog',
'wxFontDialog',
'wxMessageDialog',
'wxPageSetupDialog',
'wxPrintDialog',
'wxProgressDialog',
'wxSingleChoiceDialog',
'wxTextEntryDialog',
]),
('Controls', ['wxButton', 'wxCheckBox', 'wxCheckListBox', 'wxChoice', # dialogs form libraries
'wxComboBox', 'wxGauge', 'wxListBox', 'wxListCtrl', 'VirtualListCtrl', ('More Dialogs', [
'wxTextCtrl', 'ErrorDialogs',
'wxTreeCtrl', 'wxSpinButton', 'wxSpinCtrl', 'wxStaticText', 'ImageBrowser',
'wxStaticBitmap', 'wxRadioBox', 'wxSlider', 'wxToolBar', 'wxMultipleChoiceDialog',
'wxCalendarCtrl', 'wxToggleButton', 'wxScrolledMessageDialog',
'wxEditableListBox', 'wxLEDNumberCtrl', ]),
]),
('Window Layout', ['wxLayoutConstraints', 'LayoutAnchors', 'Sizers', 'XML_Resource', # core controls
'RowColSizer', ('Core Windows/Controls', [
]), 'VirtualListCtrl',
'wxButton',
'wxCheckBox',
'wxCheckListBox',
'wxChoice',
'wxComboBox',
'wxGauge',
'wxGenericDirCtrl',
'wxGrid',
'wxListBox',
'wxListCtrl',
'wxNotebook',
'wxPopupWindow',
'wxRadioBox',
'wxSashWindow',
'wxSlider',
'wxScrolledWindow',
'wxSplitterWindow',
'wxSpinButton',
'wxSpinCtrl',
'wxStaticText',
'wxStaticBitmap',
'wxStatusBar',
'wxTextCtrl',
'wxTimer',
'wxToggleButton',
'wxToolBar',
'wxTreeCtrl',
'wxValidator',
]),
('Miscellaneous', [ 'DragAndDrop', 'CustomDragAndDrop', 'URLDragAndDrop', # controls coming from other librairies
'FontEnumerator', ('More Windows/Controls', [
'wxTimer', 'wxValidator', 'wxGLCanvas', 'DialogUnits', 'ColourSelect',
'wxImage', 'wxMask', 'PrintFramework', 'wxOGL', 'ContextHelp',
'PythonEvents', 'Threads', 'FancyText',
'ActiveXWrapper_Acrobat', 'ActiveXWrapper_IE', 'FileBrowseButton',
'wxDragImage', "wxProcess", "FancyText", "OOR", "wxWave", 'GenericButtons',
'wxJoystick', 'DrawXXXList', 'ErrorDialogs', 'wxMimeTypesManager', 'PyCrust',
'ContextHelp', 'SplitTree', 'Unicode', 'wxFileHistory', 'PyCrustWithFilling',
]), 'SplitTree',
'TablePrint',
'wxCalendar',
'wxCalendarCtrl',
'wxDynamicSashWindow',
'wxEditableListBox',
'wxEditor',
'wxFloatBar',
'wxHtmlWindow',
'wxLEDNumberCtrl',
'wxMimeTypesManager',
'wxMVCTree',
'wxStyledTextCtrl_1',
'wxStyledTextCtrl_2',
'wxRightTextCtrl',
]),
('wxPython Library', ['Layoutf', 'wxScrolledMessageDialog', # How to lay out the controls in a frame/dialog
'wxMultipleChoiceDialog', 'wxPlotCanvas', 'wxFloatBar', ('Window Layout', [
'wxCalendar', 'wxMVCTree', 'wxVTKRenderWindow', 'LayoutAnchors',
'FileBrowseButton', 'GenericButtons', 'wxEditor', 'Layoutf',
'ColourSelect', 'ImageBrowser', 'RowColSizer',
'infoframe', 'ColourDB', 'PyCrust', 'PyCrustWithFilling', 'Sizers',
'TablePrint', 'wxLayoutConstraints',
'wxRightTextCtrl', 'XML_Resource',
]), ]),
# ditto
('Process and Events', [
'infoframe',
'OOR',
'PythonEvents',
'Threads',
'wxProcess',
'wxTimer',
]),
# Clipboard and DnD
('Clipboard and DnD', [
'CustomDragAndDrop',
'DragAndDrop',
'URLDragAndDrop',
]),
# Images
('Images', [
'wxDragImage',
'wxImage',
'wxImageFromStream',
'wxMask',
]),
# Other stuff
('Miscellaneous', [
'ColourDB',
'DialogUnits',
'DrawXXXList',
'FontEnumerator',
'PrintFramework',
'Unicode',
'wxFileHistory',
'wxJoystick',
'wxOGL',
'wxWave',
]),
# need libs not coming with the demo
('Objects using an external library', [
'ActiveXWrapper_Acrobat',
'ActiveXWrapper_IE',
'wxGLCanvas',
'wxPlotCanvas',
'wxVTKRenderWindow',
]),
# pyTree, hangman, ... in the samples dir
('Check out the samples dir too', [
]),
#~ ('Cool Contribs', [
#~ 'pyTree',
#~ 'hangman',
#'SlashDot',
#~ 'XMLtreeview'
#~ ]),
]
('Cool Contribs', ['pyTree', 'hangman',
#'SlashDot',
'XMLtreeview'
]),
]
#--------------------------------------------------------------------------- #---------------------------------------------------------------------------

View File

@ -0,0 +1,54 @@
from wxPython.wx import *
#----------------------------------------------------------------------
class TestPanel(wxPanel):
def __init__(self, parent, log):
self.log = log
wxPanel.__init__(self, parent, -1)
b1 = wxButton(self, -1, "MDI demo")
EVT_BUTTON(self, b1.GetId(), self.ShowMDIDemo)
b2 = wxButton(self, -1, "MDI with SashWindows demo")
EVT_BUTTON(self, b2.GetId(), self.ShowMDISashDemo)
box = wxBoxSizer(wxVERTICAL)
box.Add(20, 30)
box.Add(b1, 0, wxALIGN_CENTER|wxALL, 15)
box.Add(b2, 0, wxALIGN_CENTER|wxALL, 15)
self.SetAutoLayout(true)
self.SetSizer(box)
def ShowMDIDemo(self, evt):
import MDIDemo
frame = MDIDemo.MyParentFrame()
frame.Show()
def ShowMDISashDemo(self, evt):
import MDISashDemo
frame = MDISashDemo.MyParentFrame()
frame.Show()
#----------------------------------------------------------------------
def runTest(frame, nb, log):
win = TestPanel(nb, log)
return win
#----------------------------------------------------------------------
overview = """<html><body>
<h2><center>Multiple Document Interface</center></h2>
Although Microsoft has deprecated the MDI model, wxWindows still supports
it. Here are a couple samples of how to use it.
</body></html>
"""