]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/demo/ColourDB.py
added missing button state
[wxWidgets.git] / wxPython / demo / ColourDB.py
index 39e35fb296617a50a930a546b0b2808339aeed61..a13d7e13b6fc049b8366462093cc1fdab2c6b0dc 100644 (file)
@@ -1,16 +1,6 @@
-# 11/4/03 - grimmtooth@softhome.net (Jeff Grimmett)
-#
-# o Updated to use wx namespace
-#
-# 11/24/03 - grimmtooth@softhome.net (Jeff Grimmett)
-#
-# o Had to move the call to wx.updateColourDB()
-# o Updated several places to change discrete pos and size parameters
-#   into two-tuples.
-#
 
 import wx
 
 import wx
-import wx.lib.colourdb as cdb
+import wx.lib.colourdb
 
 import images
 
 
 import images
 
@@ -22,16 +12,11 @@ class TestWindow(wx.ScrolledWindow):
         wx.ScrolledWindow.__init__(self, parent, -1)
 
         # Populate our color list
         wx.ScrolledWindow.__init__(self, parent, -1)
 
         # Populate our color list
-        self.clrList = cdb.getColourList()
+        self.clrList = wx.lib.colourdb.getColourInfoList()
 
         # Just for style points, we'll use this as a background image.
 
         # Just for style points, we'll use this as a background image.
-        #self.clrList.sort()
         self.bg_bmp = images.getGridBGBitmap()
 
         self.bg_bmp = images.getGridBGBitmap()
 
-        # Event handlers
-        self.Bind(wx.EVT_PAINT, self.OnPaint)
-        self.Bind(wx.EVT_ERASE_BACKGROUND, self.OnEraseBackground)
-
         # This could also be done by getting the window's default font;
         # either way, we need to have a font loaded for later on.
         #self.SetBackgroundColour("WHITE")
         # This could also be done by getting the window's default font;
         # either way, we need to have a font loaded for later on.
         #self.SetBackgroundColour("WHITE")
@@ -64,6 +49,12 @@ class TestWindow(wx.ScrolledWindow):
         self.SetScrollbars(
             self.cellWidth, self.lineHeight, numCells, len(self.clrList) + 2
             )
         self.SetScrollbars(
             self.cellWidth, self.lineHeight, numCells, len(self.clrList) + 2
             )
+            
+        # Event handlers - moved here so events won't fire before init is 
+        # finished.
+        self.SetBackgroundStyle(wx.BG_STYLE_CUSTOM)
+        self.Bind(wx.EVT_PAINT, self.OnPaint)
+        self.Bind(wx.EVT_ERASE_BACKGROUND, self.OnEraseBackground)
 
 
     # tile the background bitmap loaded in __init__()
 
 
     # tile the background bitmap loaded in __init__()
@@ -82,7 +73,7 @@ class TestWindow(wx.ScrolledWindow):
         while x < sz.width:
             y = -dy
             while y < sz.height:
         while x < sz.width:
             y = -dy
             while y < sz.height:
-                dc.DrawBitmap(self.bg_bmp, (x, y))
+                dc.DrawBitmap(self.bg_bmp, x, y)
                 y = y + h
 
             x = x + w
                 y = y + h
 
             x = x + w
@@ -106,7 +97,6 @@ class TestWindow(wx.ScrolledWindow):
 
 
     def Draw(self, dc, rgn=None, vs=None):
 
 
     def Draw(self, dc, rgn=None, vs=None):
-        dc.BeginDrawing()
         dc.SetTextForeground("BLACK")
         dc.SetPen(wx.Pen("BLACK", 1, wx.SOLID))
         dc.SetFont(self.font)
         dc.SetTextForeground("BLACK")
         dc.SetPen(wx.Pen("BLACK", 1, wx.SOLID))
         dc.SetFont(self.font)
@@ -127,22 +117,22 @@ class TestWindow(wx.ScrolledWindow):
             stop = numColours
 
         for line in range(max(0,start), min(stop,numColours)):
             stop = numColours
 
         for line in range(max(0,start), min(stop,numColours)):
-            clr = colours[line]
+            clr = colours[line][0]
             y = (line+1) * self.lineHeight + 2
 
             y = (line+1) * self.lineHeight + 2
 
-            # Updated for 2.5 - now takes tuple for pos
-            dc.DrawText(clr, (self.cellWidth, y))
+            dc.DrawText(clr, self.cellWidth, y)
 
             brush = wx.Brush(clr, wx.SOLID)
             dc.SetBrush(brush)
 
             brush = wx.Brush(clr, wx.SOLID)
             dc.SetBrush(brush)
-            dc.DrawRectangle((12 * self.cellWidth, y),
-                             (6 * self.cellWidth, self.textHeight))
-
-        dc.EndDrawing()
+            dc.DrawRectangle(10 * self.cellWidth, y,
+                             6 * self.cellWidth, self.textHeight)
+            
+            dc.DrawText(str(tuple(colours[line][1:])),
+                        18 * self.cellWidth, y)
 
 
 
 
-# On wxGTK there needs to be a panel under wxScrolledWindows if they are
-# going to be in a wxNotebook. And, in the demo, we are.
+# On wxGTK there needs to be a panel under wx.ScrolledWindows if they are
+# going to be in a wxNotebook. And, in this demo, we are.
 class TestPanel(wx.Panel):
     def __init__(self, parent):
         wx.Panel.__init__(self, parent, -1)
 class TestPanel(wx.Panel):
     def __init__(self, parent):
         wx.Panel.__init__(self, parent, -1)
@@ -165,7 +155,7 @@ def runTest(frame, nb, log):
     # Note 11/24/03 - jg - I moved this into runTest() because
     # there must be a wx.App existing before this function
     # can be called - this is a change from 2.4 -> 2.5.
     # Note 11/24/03 - jg - I moved this into runTest() because
     # there must be a wx.App existing before this function
     # can be called - this is a change from 2.4 -> 2.5.
-    cdb.updateColourDB()
+    wx.lib.colourdb.updateColourDB()
 
     win = TestPanel(nb)
 
 
     win = TestPanel(nb)
 
@@ -206,5 +196,5 @@ Trying to do otherwise will cause an exception to be raised.
 if __name__ == '__main__':
     import sys,os
     import run
 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:])