Updated the AnalogClockWindow with many enhancements from from

E. A. Tacão.




git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@25887 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robin Dunn
2004-02-21 01:52:33 +00:00
parent a27d1f42e2
commit f04ad14aa1
4 changed files with 1253 additions and 140 deletions

View File

@@ -1,6 +1,9 @@
import wx
import wx.lib.analogclock as aclock
import wx
from wx.lib import analogclock as ac
#----------------------------------------------------------------------
@@ -9,36 +12,56 @@ class TestPanel(wx.Panel):
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")
c1.SetHandColours("BLUE")
c1.SetTickColours("WHITE")
c1.SetTickSizes(h=5, m=2)
# A white background with red hands and blue markings
c2 = aclock.AnalogClockWindow(self)
# 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")
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 blue background with white hands and red markings
c3 = aclock.AnalogClockWindow(self)
# 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)
@@ -49,7 +72,7 @@ class TestPanel(wx.Panel):
# 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)
@@ -69,10 +92,13 @@ overview = """<html><body>
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