#----------------------------------------------------------------------
-class wxGenButton(wxWindow):
+class wxGenButton(wxControl):
def __init__(self, parent, ID, label,
pos = wxDefaultPosition, size = wxDefaultSize,
style = 0, validator = wxDefaultValidator,
name = "genbutton"):
- wxWindow.__init__(self, parent, ID, pos, size, style, name)
- self.SetValidator(validator)
+ if style == 0:
+ style = wxNO_BORDER
+ wxControl.__init__(self, parent, ID, pos, size, style, validator, name)
self.up = true
self.bezelWidth = 2
highlightClr = wxSystemSettings_GetSystemColour(wxSYS_COLOUR_BTNHIGHLIGHT)
self.shadowPen = wxPen(shadowClr, 1, wxSOLID)
self.highlightPen = wxPen(highlightClr, 1, wxSOLID)
- self.focusIndPen = wxPen(textClr, 1, wxUSER_DASH)
+ ##self.focusIndPen = wxPen(textClr, 1, wxUSER_DASH)
+ self.focusIndPen = wxPen(textClr, 1, wxDOT)
def SetBackgroundColour(self, colour):
bw = self.bezelWidth
dc.SetLogicalFunction(wxINVERT)
self.focusIndPen.SetColour(self.GetForegroundColour())
- self.focusIndPen.SetDashes([1,2,1,2]) # This isn't quite working the way I expected...
+ ##self.focusIndPen.SetDashes([1,2,1,2]) # This isn't quite working the way I expected...
dc.SetPen(self.focusIndPen)
dc.SetBrush(wxTRANSPARENT_BRUSH)
dc.DrawRectangle(bw+2,bw+2, w-bw*2-4, h-bw*2-4)
if self.hasFocus and self.useFocusInd:
self.DrawFocusIndicator(dc, width, height)
+
def OnEraseBackground(self, event):
pass
self.Refresh()
event.Skip()
+
def OnKeyUp(self, event):
if self.hasFocus and event.KeyCode() == ord(" "):
self.up = true
bw,bh = bmp.GetWidth(), bmp.GetHeight()
if not self.up:
dw = dy = 1
- dc.DrawBitmap(bmp, (width-bw)/2+dw, (height-bh)/2+dy, true)
+ hasMask = bmp.GetMask() != None
+ dc.DrawBitmap(bmp, (width-bw)/2+dw, (height-bh)/2+dy, hasMask)