wxWidgets/wxPython/demo/wxToolBar.py
Robin Dunn d56cebe7a4 Added ability to use xml resource files. Still need to add ability to
subclass wxXmlResourceHandler, etc...

Added wxGridAutoEditMixin to the mixins library package.

Made ColourSelect be derived from wxButton.

Fixed a few bugs here and there, added some missing methods, etc.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10588 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2001-06-15 21:43:26 +00:00

124 lines
3.5 KiB
Python

from wxPython.wx import *
import images
#---------------------------------------------------------------------------
class TestToolBar(wxFrame):
def __init__(self, parent, log):
wxFrame.__init__(self, parent, -1, 'Test ToolBar',
wxPoint(0,0), wxSize(500, 300))
self.log = log
self.timer = None
EVT_CLOSE(self, self.OnCloseWindow)
wxWindow(self, -1).SetBackgroundColour(wxNamedColour("WHITE"))
tb = self.CreateToolBar(wxTB_HORIZONTAL|wxNO_BORDER|wxTB_FLAT)
# wxTB_VERTICAL
#tb = wxToolBarSimple(self, -1, wxDefaultPosition, wxDefaultSize,
# wxTB_HORIZONTAL | wxNO_BORDER | wxTB_FLAT)
#self.SetToolBar(tb)
self.CreateStatusBar()
tb.AddSimpleTool(10, images.getNewBitmap(), "New", "Long help for 'New'")
EVT_TOOL(self, 10, self.OnToolClick)
EVT_TOOL_RCLICKED(self, 10, self.OnToolRClick)
tb.AddSimpleTool(20, images.getOpenBitmap(), "Open", "Long help for 'Open'")
EVT_TOOL(self, 20, self.OnToolClick)
EVT_TOOL_RCLICKED(self, 20, self.OnToolRClick)
tb.AddSeparator()
tb.AddSimpleTool(30, images.getCopyBitmap(), "Copy", "Long help for 'Copy'")
EVT_TOOL(self, 30, self.OnToolClick)
EVT_TOOL_RCLICKED(self, 30, self.OnToolRClick)
tb.AddSimpleTool(40, images.getPasteBitmap(), "Paste", "Long help for 'Paste'")
EVT_TOOL(self, 40, self.OnToolClick)
EVT_TOOL_RCLICKED(self, 40, self.OnToolRClick)
tb.AddSeparator()
tool = tb.AddTool(50, images.getTog1Bitmap(),
shortHelpString="Toggle this", isToggle=true)
EVT_TOOL(self, 50, self.OnToolClick)
tb.AddTool(60, images.getTog1Bitmap(), images.getTog2Bitmap(),
shortHelpString="Toggle with 2 bitmaps", isToggle=true)
EVT_TOOL(self, 60, self.OnToolClick)
EVT_TOOL_ENTER(self, -1, self.OnToolEnter)
EVT_TOOL_RCLICKED(self, -1, self.OnToolRClick) # Match all
EVT_TIMER(self, -1, self.OnClearSB)
tb.AddSeparator()
cbID = wxNewId()
tb.AddControl(wxComboBox(tb, cbID, "", choices=["", "This", "is a", "wxComboBox"],
size=(150,-1), style=wxCB_DROPDOWN))
EVT_COMBOBOX(self, cbID, self.OnCombo)
tb.Realize()
def OnToolClick(self, event):
self.log.WriteText("tool %s clicked\n" % event.GetId())
def OnToolRClick(self, event):
self.log.WriteText("tool %s right-clicked\n" % event.GetId())
def OnCombo(self, event):
self.log.WriteText("combobox item selected: %s\n" % event.GetString())
def OnToolEnter(self, event):
self.log.WriteText('OnToolEnter: %s, %s\n' % (event.GetId(), event.GetInt()))
if self.timer is None:
self.timer = wxTimer(self)
if self.timer.IsRunning():
self.timer.Stop()
self.timer.Start(2000)
event.Skip()
def OnClearSB(self, event): # called for the timer event handler
self.SetStatusText("")
self.timer.Stop()
self.timer = None
def OnCloseWindow(self, event):
if self.timer is not None:
self.timer.Stop()
self.timer = None
self.Destroy()
#---------------------------------------------------------------------------
def runTest(frame, nb, log):
win = TestToolBar(frame, log)
frame.otherWin = win
win.Show(true)
#---------------------------------------------------------------------------
overview = """\
"""