X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/01732ba144da03ea8c64b13aae3823e6ea03709b..68fc5c8025e38b9d827383fbfe7ce509ae331c1f:/wxPython/wx/lib/buttons.py diff --git a/wxPython/wx/lib/buttons.py b/wxPython/wx/lib/buttons.py index f1e2f737a8..a7290cbbde 100644 --- a/wxPython/wx/lib/buttons.py +++ b/wxPython/wx/lib/buttons.py @@ -77,7 +77,7 @@ class GenButton(wx.PyControl): self.SetLabel(label) self.InheritAttributes() - self.SetBestFittingSize(size) + self.SetInitialSize(size) self.InitColours() self.Bind(wx.EVT_LEFT_DOWN, self.OnLeftDown) @@ -92,15 +92,16 @@ class GenButton(wx.PyControl): self.Bind(wx.EVT_PAINT, self.OnPaint) - def SetBestSize(self, size=None): + def SetInitialSize(self, size=None): """ Given the current font and bezel width settings, calculate and set a good size. """ if size is None: size = wx.DefaultSize - wx.PyControl.SetBestFittingSize(self, size) - + wx.PyControl.SetInitialSize(self, size) + SetBestSize = SetInitialSize + def DoGetBestSize(self): """ @@ -197,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 """ @@ -578,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 + +#----------------------------------------------------------------------