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:
parent
d394edcac8
commit
9c67cbec02
@ -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()
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -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()
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -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'
|
|
||||||
]),
|
|
||||||
|
|
||||||
]
|
|
||||||
|
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
|
|
||||||
|
54
wxPython/demo/wxMDIWindows.py
Normal file
54
wxPython/demo/wxMDIWindows.py
Normal 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>
|
||||||
|
"""
|
Loading…
Reference in New Issue
Block a user