]> git.saurik.com Git - wxWidgets.git/commitdiff
Added a set of button classes to wx.lib.buttons from David Hughes that
authorRobin Dunn <robin@alldunn.com>
Tue, 12 Dec 2006 01:51:18 +0000 (01:51 +0000)
committerRobin Dunn <robin@alldunn.com>
Tue, 12 Dec 2006 01:51:18 +0000 (01:51 +0000)
uses the native renderer to draw the button.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43947 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

wxPython/demo/GenericButtons.py
wxPython/docs/CHANGES.txt
wxPython/wx/lib/buttons.py

index 7a08befcffa76514d1f96ea3c8f737df277f7fe9..a142d5c2342dc260b714d8a6dd608d4ebc0ecb53 100644 (file)
@@ -128,6 +128,10 @@ class TestPanel(wx.Panel):
         ##b.SetBackgroundColour("sky blue")
         ##b.SetBackgroundColour("pink")
 
+        b = buttons.ThemedGenButton(self, -1, 'Drawn with native renderer')
+        self.Bind(wx.EVT_BUTTON, self.OnButton, b)
+        sizer.Add(b)
+        
 
         border = wx.BoxSizer(wx.VERTICAL)
         border.Add(sizer, 0, wx.ALL, 25)
index ad953adefd3fc1306cc4796ebceee06792836fbb..150779f304369eb4a6e5f702cca592f173d16292 100644 (file)
@@ -53,11 +53,13 @@ without intervening fixed characters.
 Added wx.SearchCtrl, which is a composite of a wx.TextCtrl with optional
 bitmap buttons and a drop-down menu.  Controls like this can typically
 be found on a toolbar of applications that support some form of search
-functionality.  On the Mac this control is implemneted using the
+functionality.  On the Mac this control is implemented using the
 native HISearchField control, on the other platforms a generic control
 is used, although that may change in the future as more platforms
 introduce native search widgets.
 
+Added a set of button classes to wx.lib.buttons from David Hughes that
+uses the native renderer to draw the button.
 
 
 
index f4b9d7b4fbf6db9a7a67f0188a2c8b05a6ad509c..a7290cbbde15e1b258725eed6a71dd84ba89325c 100644 (file)
@@ -198,7 +198,9 @@ class GenButton(wx.PyControl):
         self.InitColours()
 
     def SetDefault(self):
-        self.GetParent().SetDefaultItem(self)
+        tlw = wx.GetTopLevelParent(self)
+        if hasattr(tlw, 'SetDefaultItem'):
+            tlw.SetDefaultItem(self)
         
     def _GetLabelSize(self):
         """ used internally """
@@ -579,4 +581,35 @@ class GenBitmapTextToggleButton(__ToggleMixin, GenBitmapTextButton):
 
 #----------------------------------------------------------------------
 
+class ThemedGenButton(GenButton):
+    " A themed generic button, and base class for the other themed buttons "
+    def DrawBezel(self, dc, x1, y1, x2, y2):
+        rect = wx.Rect(x1, y1, x2, y2)
+        if self.up:
+            state = 0
+        else:
+            state = wx.CONTROL_PRESSED
+        wx.RendererNative.Get().DrawPushButton(self, dc, rect, state)
+class ThemedGenBitmapButton(ThemedGenButton, GenBitmapButton):
+    """A themed generic bitmap button."""
+    pass
+
+class ThemedGenBitmapTextButton(ThemedGenButton, GenBitmapTextButton):
+    """A themed generic bitmapped button with text label"""
+    pass
+    
+class ThemedGenToggleButton(ThemedGenButton, GenToggleButton):
+    """A themed generic toggle button"""
+    pass
+
+class ThemedGenBitmapToggleButton(ThemedGenButton, GenBitmapToggleButton):
+    """A themed generic toggle bitmap button"""
+    pass
 
+class ThemedGenBitmapTextToggleButton(ThemedGenButton, GenBitmapTextToggleButton):
+    """A themed generic toggle bitmap button with text label"""
+    pass
+
+
+#----------------------------------------------------------------------