-# 11/4/03 - grimmtooth@softhome.net (Jeff Grimmett)
-#
-# o wx Namespace
-#
-import wx
-import wx.lib.analogclock as aclock
+
+
+import wx
+from wx.lib import analogclock as ac
+
#----------------------------------------------------------------------
self.log = log
wx.Panel.__init__(self, parent, -1)
- # A red background with blue hands and white markings
- c1 = aclock.AnalogClockWindow(self)
+ # A mostly default clock
+ c1 = ac.AnalogClockWindow(self)
c1.SetBackgroundColour("RED")
- c1.SetHandsColour("BLUE")
- c1.SetTickMarkColours("WHITE")
-
- # A white background with red hands and blue markings
- c2 = aclock.AnalogClockWindow(self)
+ c1.SetHandColours("BLUE")
+ c1.SetTickColours("WHITE")
+ c1.SetTickSizes(h=5, m=2)
+
+
+ # A clock with roman numerals, shown only at the quarter
+ # marks, and a separatly coloured watch face.
+ c2 = ac.AnalogClockWindow(self)
c2.SetBackgroundColour("WHITE")
- c2.SetHandsColour("RED")
- c2.SetTickMarkColours("BLUE")
-
- # A blue background with white hands and red markings
- c3 = aclock.AnalogClockWindow(self)
+ c2.SetHandColours("RED")
+ c2.SetTickColours("BLUE")
+ c2.SetTickStyles(ac.TICKS_ROMAN)
+ c2.SetClockStyle(ac.SHOW_QUARTERS_TICKS | ac.SHOW_SHADOWS)
+ c2.SetWatchPenBrush(p=wx.Pen((238, 238, 227), 1, wx.SOLID),
+ b=wx.Brush("CADET BLUE", wx.SOLID))
+ c2.SetTickSizes(h=12)
+
+ # A clock with rotated decimal numbers, shown at all twelve
+ # hour marks
+ c3 = ac.AnalogClockWindow(self)
c3.SetBackgroundColour("BLUE")
- c3.SetHandsColour("WHITE")
- c3.SetTickMarkColours("RED")
+ c3.SetHandColours("WHITE")
+ c3.SetTickColours("RED")
+ c3.SetTickStyles(h=ac.TICKS_DECIMAL)
+ c3.SetClockStyle(ac.SHOW_HOURS_TICKS | ac.ROTATE_TICKS)
+ c3.SetTickSizes(h=14)
- # Raised border, circular tick marks.
- c4 = aclock.AnalogClockWindow(self, style=wx.RAISED_BORDER)
- c4.SetTickMarkStyle(aclock.AnalogClockWindow.TICKS_CIRCLE)
+ # a plain clock, with square hour and round minute marks, no
+ # shadow raised border
+ c4 = ac.AnalogClockWindow(self, style=wx.RAISED_BORDER)
+ c4.SetTickStyles(h=ac.TICKS_SQUARE, m=ac.TICKS_CIRCLE)
+ c4.SetClockStyle(ac.SHOW_HOURS_TICKS | ac.SHOW_MINUTES_TICKS)
+ c4.SetTickSizes(h=5, m=2)
- # No tick marks
- c5 = aclock.AnalogClockWindow(self)
- c5.SetTickMarkStyle(aclock.AnalogClockWindow.TICKS_NONE)
- # Sunken into window
- c6 = aclock.AnalogClockWindow(self, style=wx.SUNKEN_BORDER)
+ # no minute tick marks
+ c5 = ac.AnalogClockWindow(self)
+ c5.SetTickStyles(h=ac.TICKS_CIRCLE)
+ c5.SetClockStyle(ac.SHOW_HOURS_TICKS | ac.SHOW_SHADOWS | ac.ROTATE_TICKS)
+ c5.SetTickSizes(h=5, m=2)
- # layout the clocks in a grid sizer
+ # sunken border
+ c6 = ac.AnalogClockWindow(self, style=wx.SUNKEN_BORDER)
+ c6.SetTickSizes(h=5, m=2)
+
+
+ # layout the clocks in a grid
gs = wx.GridSizer(2, 3, 4, 4)
gs.Add(c1, 0, wx.EXPAND)
gs.Add(c2, 0, wx.EXPAND)
# put it in another sizer for a border
sizer = wx.BoxSizer(wx.VERTICAL)
- sizer.Add(gs, 1, wx.EXPAND|wx.ALL, 10)
+ sizer.Add(gs, 1, wx.EXPAND | wx.ALL, 10)
self.SetSizer(sizer)
This is a nice little clock class that was contributed to by several
members of the wxPython-users group.
-
+<p>
+Check the options available by right-clicking the clock.
</body></html>
"""
+
+
if __name__ == '__main__':
import sys,os
import run
- run.main(['', os.path.basename(sys.argv[0])])
+ run.main(['', os.path.basename(sys.argv[0])] + sys.argv[1:])