1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89
|
#----------------------------------------------------------------------
# Name: wx.lib.statbmp
# Purpose: A generic StaticBitmap class.
#
# Author: Robin Dunn
#
# Created: 12-May-2004
# RCS-ID: $Id$
# Copyright: (c) 2004 by Total Control Software
# Licence: wxWindows license
#----------------------------------------------------------------------
import wx
#----------------------------------------------------------------------
class GenStaticBitmap(wx.PyControl):
labelDelta = 1
def __init__(self, parent, ID, bitmap,
pos = wx.DefaultPosition, size = wx.DefaultSize,
style = 0,
name = "genstatbmp"):
if not style & wx.BORDER_MASK:
style = style | wx.BORDER_NONE
wx.PyControl.__init__(self, parent, ID, pos, size, style,
wx.DefaultValidator, name)
self._bitmap = bitmap
self.InheritAttributes()
self.SetInitialSize(size)
self.Bind(wx.EVT_ERASE_BACKGROUND, self.OnEraseBackground)
self.Bind(wx.EVT_PAINT, self.OnPaint)
def SetBitmap(self, bitmap):
self._bitmap = bitmap
self.SetInitialSize( (bitmap.GetWidth(), bitmap.GetHeight()) )
self.Refresh()
def GetBitmap(self):
return self._bitmap
def DoGetBestSize(self):
"""
Overridden base class virtual. Determines the best size of the
control based on the bitmap size.
"""
return wx.Size(self._bitmap.GetWidth(), self._bitmap.GetHeight())
def AcceptsFocus(self):
"""Overridden base class virtual."""
return False
def GetDefaultAttributes(self):
"""
Overridden base class virtual. By default we should use
the same font/colour attributes as the native StaticBitmap.
"""
return wx.StaticBitmap.GetClassDefaultAttributes()
def ShouldInheritColours(self):
"""
Overridden base class virtual. If the parent has non-default
colours then we want this control to inherit them.
"""
return True
def OnPaint(self, event):
dc = wx.PaintDC(self)
if self._bitmap:
dc.DrawBitmap(self._bitmap, 0, 0, True)
def OnEraseBackground(self, event):
pass
#----------------------------------------------------------------------
|