class GenButtonEvent(wx.PyCommandEvent):
"""Event sent from the generic buttons when the button is activated. """
- def __init__(self, eventType, ID):
- wx.PyCommandEvent.__init__(self, eventType, ID)
+ def __init__(self, eventType, id):
+ wx.PyCommandEvent.__init__(self, eventType, id)
self.isDown = False
self.theButton = None
labelDelta = 1
- def __init__(self, parent, ID, label,
+ def __init__(self, parent, id=-1, label='',
pos = wx.DefaultPosition, size = wx.DefaultSize,
style = 0, validator = wx.DefaultValidator,
name = "genbutton"):
cstyle = style
if cstyle == 0:
cstyle = wx.BORDER_NONE
- wx.PyControl.__init__(self, parent, ID, pos, size, cstyle, validator, name)
+ wx.PyControl.__init__(self, parent, id, pos, size, cstyle, validator, name)
self.up = True
self.hasFocus = False
x2 = width-1
y2 = height-1
- dc = wx.BufferedPaintDC(self)
+ dc = wx.PaintDC(self)
brush = None
if self.up:
if not self.up: # if the button was down when the mouse was released...
self.Notify()
self.up = True
- self.Refresh()
- event.Skip()
+ if self: # in case the button was destroyed in the eventhandler
+ self.Refresh()
+ event.Skip()
def OnMotion(self, event):
def OnGainFocus(self, event):
self.hasFocus = True
- dc = wx.ClientDC(self)
- w, h = self.GetClientSizeTuple()
- if self.useFocusInd:
- self.DrawFocusIndicator(dc, w, h)
+ self.Refresh()
+ self.Update()
def OnLoseFocus(self, event):
self.hasFocus = False
- dc = wx.ClientDC(self)
- w, h = self.GetClientSizeTuple()
- if self.useFocusInd:
- self.DrawFocusIndicator(dc, w, h)
+ self.Refresh()
+ self.Update()
def OnKeyDown(self, event):
- if self.hasFocus and event.KeyCode() == ord(" "):
+ if self.hasFocus and event.GetKeyCode() == ord(" "):
self.up = False
self.Refresh()
event.Skip()
def OnKeyUp(self, event):
- if self.hasFocus and event.KeyCode() == ord(" "):
+ if self.hasFocus and event.GetKeyCode() == ord(" "):
self.up = True
self.Notify()
self.Refresh()
class GenBitmapButton(GenButton):
"""A generic bitmap button."""
- def __init__(self, parent, ID, bitmap,
+ def __init__(self, parent, id=-1, bitmap=wx.NullBitmap,
pos = wx.DefaultPosition, size = wx.DefaultSize,
style = 0, validator = wx.DefaultValidator,
name = "genbutton"):
self.bmpFocus = None
self.bmpSelected = None
self.SetBitmapLabel(bitmap)
- GenButton.__init__(self, parent, ID, "", pos, size, style, validator, name)
+ GenButton.__init__(self, parent, id, "", pos, size, style, validator, name)
def GetBitmapLabel(self):
class GenBitmapTextButton(GenBitmapButton):
"""A generic bitmapped button with text label"""
- def __init__(self, parent, ID, bitmap, label,
+ def __init__(self, parent, id=-1, bitmap=wx.NullBitmap, label='',
pos = wx.DefaultPosition, size = wx.DefaultSize,
style = 0, validator = wx.DefaultValidator,
name = "genbutton"):
- GenBitmapButton.__init__(self, parent, ID, bitmap, pos, size, style, validator, name)
+ GenBitmapButton.__init__(self, parent, id, bitmap, pos, size, style, validator, name)
self.SetLabel(label)
if not self.IsEnabled() or not self.HasCapture():
return
if self.HasCapture():
- if self.up != self.saveUp:
- self.Notify()
self.ReleaseMouse()
self.Refresh()
+ if self.up != self.saveUp:
+ self.Notify()
def OnKeyDown(self, event):
event.Skip()
event.Skip()
def OnKeyUp(self, event):
- if self.hasFocus and event.KeyCode() == ord(" "):
+ if self.hasFocus and event.GetKeyCode() == ord(" "):
self.up = not self.up
self.Notify()
self.Refresh()