X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3dd9536f2e362870ed52d7a1e5cfd6e6abc1ee23..7e08d4efc7e111d6389d5c00b5bd2b5e5afa657e:/wxPython/wx/lib/ogl/_basic.py diff --git a/wxPython/wx/lib/ogl/_basic.py b/wxPython/wx/lib/ogl/_basic.py index 9a999093d3..441862b7d0 100644 --- a/wxPython/wx/lib/ogl/_basic.py +++ b/wxPython/wx/lib/ogl/_basic.py @@ -289,8 +289,7 @@ class Shape(ShapeEvtHandler): def Delete(self): if self._parent: - i = self._parent.GetChildren().index(self) - self._parent.GetChildren(i).remove(self) + self._parent.GetChildren().remove(self) self.ClearText() self.ClearRegions() @@ -301,7 +300,8 @@ class Shape(ShapeEvtHandler): if self._canvas: self.RemoveFromCanvas(self._canvas) - self.GetEventHandler().OnDelete() + if self.GetEventHandler(): + self.GetEventHandler().OnDelete() self._eventHandler = None def __del__(self): @@ -395,6 +395,10 @@ class Shape(ShapeEvtHandler): else: self._shadowMode = mode + def GetShadowMode(self): + """Return the current shadow mode setting""" + return self._shadowMode + def SetCanvas(self, theCanvas): """Identical to Shape.Attach.""" self._canvas = theCanvas @@ -644,7 +648,7 @@ class Shape(ShapeEvtHandler): """Get the colour for the specified text region.""" if regionId >= len(self._regions): return "" - return self._regions[regionId].GetTextColour() + return self._regions[regionId].GetColour() def SetRegionName(self, name, regionId = 0): """Set the name for this region. @@ -745,18 +749,18 @@ class Shape(ShapeEvtHandler): if self._pen: dc.SetPen(self._pen) - region = self._regions[0] - if region.GetFont(): - dc.SetFont(region.GetFont()) + for region in self._regions: + if region.GetFont(): + dc.SetFont(region.GetFont()) - dc.SetTextForeground(region.GetActualColourObject()) - dc.SetBackgroundMode(wx.TRANSPARENT) - if not self._formatted: - CentreText(dc, region.GetFormattedText(), self._xpos, self._ypos, bound_x - 2 * self._textMarginX, bound_y - 2 * self._textMarginY, region.GetFormatMode()) - self._formatted = True + dc.SetTextForeground(region.GetActualColourObject()) + dc.SetBackgroundMode(wx.TRANSPARENT) + if not self._formatted: + CentreText(dc, region.GetFormattedText(), self._xpos, self._ypos, bound_x - 2 * self._textMarginX, bound_y - 2 * self._textMarginY, region.GetFormatMode()) + self._formatted = True - if not self.GetDisableLabel(): - DrawFormattedText(dc, region.GetFormattedText(), self._xpos, self._ypos, bound_x - 2 * self._textMarginX, bound_y - 2 * self._textMarginY, region.GetFormatMode()) + if not self.GetDisableLabel(): + DrawFormattedText(dc, region.GetFormattedText(), self._xpos, self._ypos, bound_x - 2 * self._textMarginX, bound_y - 2 * self._textMarginY, region.GetFormatMode()) def DrawContents(self, dc):