Renamed demo modules to be wx-less.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@25064 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
112
wxPython/demo/MultiSash.py
Normal file
112
wxPython/demo/MultiSash.py
Normal file
@@ -0,0 +1,112 @@
|
||||
# 11/20/2003 - Jeff Grimmett (grimmtooth@softhome.net)
|
||||
#
|
||||
# o Updated for wx namespace
|
||||
#
|
||||
# 11/30/2003 - Jeff Grimmett (grimmtooth@softhome.net)
|
||||
#
|
||||
# o wx renamer needs to be applied to multisash lib.
|
||||
# o There appears to be a problem with the image that
|
||||
# the library is trying to use for the alternate cursor
|
||||
#
|
||||
# 12/09/2003 - Jeff Grimmett (grimmtooth@softhome.net)
|
||||
#
|
||||
# o renamer issue shelved.
|
||||
#
|
||||
# 12/20/2003 - Jeff Grimmett (grimmtooth@softhome.net)
|
||||
#
|
||||
# o wxMultiSash -> MultiSash
|
||||
#
|
||||
|
||||
import wx
|
||||
import wx.lib.multisash as sash
|
||||
import wx.stc as stc
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
sampleText="""\
|
||||
You can drag the little tab on the vertical sash left to create another view,
|
||||
or you can drag the tab on the horizontal sash to the top to create another
|
||||
horizontal view.
|
||||
|
||||
The red blocks on the sashes will destroy the view (bottom,left) this block
|
||||
belongs to.
|
||||
|
||||
A yellow rectangle also highlights the current selected view.
|
||||
|
||||
By calling GetSaveData on the multiSash control the control will return its
|
||||
contents and the positions of each sash as a dictionary.
|
||||
Calling SetSaveData with such a dictionary will restore the control to the
|
||||
state it was in when it was saved.
|
||||
|
||||
If the class, that is used as a view, has GetSaveData/SetSaveData implemented,
|
||||
these will also be called to save/restore their state. Any object can be
|
||||
returned by GetSaveData, as it is just another object in the dictionary.
|
||||
"""
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
class TestWindow(stc.StyledTextCtrl):
|
||||
|
||||
# shared document reference
|
||||
doc = None
|
||||
|
||||
def __init__(self, parent):
|
||||
stc.StyledTextCtrl.__init__(self, parent, -1, style=wx.NO_BORDER)
|
||||
self.SetMarginWidth(1,0)
|
||||
|
||||
if wx.Platform == '__WXMSW__':
|
||||
fSize = 10
|
||||
else:
|
||||
fSize = 12
|
||||
|
||||
self.StyleSetFont(
|
||||
stc.STC_STYLE_DEFAULT,
|
||||
wx.Font(fSize, wx.MODERN, wx.NORMAL, wx.NORMAL)
|
||||
)
|
||||
|
||||
if self.doc:
|
||||
self.SetDocPointer(self.doc)
|
||||
else:
|
||||
self.SetText(sampleText)
|
||||
TestWindow.doc = self.GetDocPointer()
|
||||
|
||||
|
||||
def SutdownDemo(self):
|
||||
# Reset doc reference in case this demo is run again
|
||||
TestWindow.doc = None
|
||||
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
|
||||
|
||||
def runTest(frame, nb, log):
|
||||
multi = sash.MultiSash(nb, -1, pos = (0,0), size = (640,480))
|
||||
|
||||
# Use this method to set the default class that will be created when
|
||||
# a new sash is created. The class's constructor needs 1 parameter
|
||||
# which is the parent of the window
|
||||
multi.SetDefaultChildClass(TestWindow)
|
||||
|
||||
return multi
|
||||
|
||||
#----------------------------------------------------------------------
|
||||
|
||||
|
||||
|
||||
overview = """<html><body>
|
||||
<h2><center>MultiSash</center></h2>
|
||||
|
||||
MultiSash allows the user to split a window any number of times
|
||||
either horizontally or vertically, and to close the split off windows
|
||||
when desired.
|
||||
|
||||
</body></html>
|
||||
"""
|
||||
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
import sys,os
|
||||
import run
|
||||
run.main(['', os.path.basename(sys.argv[0])])
|
||||
|
Reference in New Issue
Block a user