Module Gnumed.wxpython.gmShadow
GNUmed widget shadowing.
A module to add shadowing to an arbitrary widget.
Classes
class Shadow (parent, id)
-
Expand source code
class Shadow (wx.Panel): def __init__(self, parent, id): """Create a new shadow. """ wx.Panel.__init__ (self, parent, id) self.sh_width = 100 wx.EVT_SIZE (self, self.OnSize) wx.EVT_PAINT (self, self.OnPaint) #----------------------------------------------------- def SetContents (self, widget): """Marry a widget and a shadow. Widget MUST have parent=Shadow widget, and pos=(0,0) """ self.contents = widget #----------------------------------------------------- def OnSize (self, event): w, h = self.GetClientSize () self.contents.SetClientSizeWH (w-self.sh_width, h-self.sh_width) #----------------------------------------------------- def OnPaint (self, event): dc = wx.PaintDC (self) w, h = self.GetClientSize () dc.SetPen (wx.TRANSPARENT_PEN) #dc.SetBrush (wxWHITE_BRUSH) dc.SetBrush (wx.Brush (wx.Colour (240, 240, 240), wx.SOLID)) # draw white bars dc.DrawRectangle (0, h-self.sh_width, w, self.sh_width) dc.DrawRectangle (w-self.sh_width, 0, self.sh_width, h) r, g, b = (1, 2, 3) dc.SetBrush (wx.Brush (wx.Colour (r, g, b), wx.SOLID)) # draw grey bars half as thick dc.DrawRectangle ( self.sh_width/2, h-self.sh_width, w-self.sh_width, self.sh_width/2 ) dc.DrawRectangle ( w-self.sh_width, self.sh_width/2, self.sh_width/2, h-self.sh_width-self.sh_width/2 )
Panel() Panel(parent, id=ID_ANY, pos=DefaultPosition, size=DefaultSize, style=TAB_TRAVERSAL, name=PanelNameStr)
A panel is a window on which controls are placed.
Create a new shadow.
Ancestors
- wx._core.Panel
- wx._core.Window
- wx._core.WindowBase
- wx._core.EvtHandler
- wx._core.Object
- wx._core.Trackable
- sip.wrapper
- sip.simplewrapper
Methods
def OnPaint(self, event)
-
Expand source code
def OnPaint (self, event): dc = wx.PaintDC (self) w, h = self.GetClientSize () dc.SetPen (wx.TRANSPARENT_PEN) #dc.SetBrush (wxWHITE_BRUSH) dc.SetBrush (wx.Brush (wx.Colour (240, 240, 240), wx.SOLID)) # draw white bars dc.DrawRectangle (0, h-self.sh_width, w, self.sh_width) dc.DrawRectangle (w-self.sh_width, 0, self.sh_width, h) r, g, b = (1, 2, 3) dc.SetBrush (wx.Brush (wx.Colour (r, g, b), wx.SOLID)) # draw grey bars half as thick dc.DrawRectangle ( self.sh_width/2, h-self.sh_width, w-self.sh_width, self.sh_width/2 ) dc.DrawRectangle ( w-self.sh_width, self.sh_width/2, self.sh_width/2, h-self.sh_width-self.sh_width/2 )
def OnSize(self, event)
-
Expand source code
def OnSize (self, event): w, h = self.GetClientSize () self.contents.SetClientSizeWH (w-self.sh_width, h-self.sh_width)
def SetContents(self, widget)
-
Expand source code
def SetContents (self, widget): """Marry a widget and a shadow. Widget MUST have parent=Shadow widget, and pos=(0,0) """ self.contents = widget
Marry a widget and a shadow.
Widget MUST have parent=Shadow widget, and pos=(0,0)