]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/tests/test_stepColours.py
Added stepColour utility function
[wxWidgets.git] / wxPython / tests / test_stepColours.py
diff --git a/wxPython/tests/test_stepColours.py b/wxPython/tests/test_stepColours.py
new file mode 100644 (file)
index 0000000..52bb72f
--- /dev/null
@@ -0,0 +1,56 @@
+import wx
+import wx.lib.colourselect as cs
+import wx.lib.imageutils as iu
+
+class TestPanel(wx.Panel):
+    def __init__(self, *args, **kw):
+        wx.Panel.__init__(self, *args, **kw)
+
+        self.colour = wx.NamedColour("purple")
+        
+        self.cpnl = wx.Panel(self, size=(100,100), style=wx.SIMPLE_BORDER)
+        self.slider = wx.Slider(self,
+                                minValue=0,
+                                value=100,
+                                maxValue=200,
+                                size=(300, -1),
+                                style=wx.SL_HORIZONTAL | wx.SL_LABELS)
+        csel = cs.ColourSelect(self, colour=self.colour)
+
+        sizer = wx.BoxSizer(wx.VERTICAL)
+        sizer.Add(self.cpnl, 0, wx.ALL, 20)
+        sizer.Add(self.slider, 0, wx.LEFT, 20)
+        sizer.Add(csel, 0, wx.ALL, 20)
+        self.SetSizer(sizer)
+
+        self.slider.Bind(wx.EVT_SCROLL, self.OnSliderChanged)
+        self.Bind(cs.EVT_COLOURSELECT, self.OnColourSelect)
+
+        self.UpdatePanel()
+
+
+    def UpdatePanel(self):
+        val = self.slider.GetValue()
+
+        colour = iu.stepColour(self.colour, val)
+
+        self.cpnl.SetBackgroundColour(colour)
+        self.cpnl.Refresh()
+        
+
+    def OnSliderChanged(self, evt):
+        self.UpdatePanel()
+
+
+    def OnColourSelect(self, evt):
+        self.colour = evt.GetValue()
+        self.UpdatePanel()
+
+
+
+app = wx.App()
+frm = wx.Frame(None, title="Stepping Colours")
+pnl = TestPanel(frm)
+frm.Show()
+app.MainLoop()
+