return str(self.__class__).split(".")[-1][:-2]
def Delete(self):
+ """
+ Fully disconnect this shape from parents, children, the
+ canvas, etc.
+ """
if self._parent:
self._parent.GetChildren().remove(self)
+ for child in self.GetChildren():
+ child.Delete()
+
self.ClearText()
self.ClearRegions()
self.ClearAttachments()
return None
if self._penColour=="Invisible":
return None
- self._actualPenObject = wx.ThePenList.FindOrCreatePen(self._penColour, 1, self._penStyle)
+ self._actualPenObject = wx.Pen(self._penColour, 1, self._penStyle)
return self._actualPenObject
def SetText(self, s):
self.RemoveChildFromConstraints(child)
child.SetParent(None)
+ def Delete(self):
+ """
+ Fully disconnect this shape from parents, children, the
+ canvas, etc.
+ """
+ for child in self.GetChildren():
+ self.RemoveChild(child)
+ child.Delete()
+ RectangleShape.Delete(self)
+ self._constraints = []
+ self._divisions = []
+
def DeleteConstraintsInvolvingChild(self, child):
"""This function deletes constraints which mention the given child.
for shape in self._shapeList[:]:
if not shape.GetParent():
self.RemoveShape(shape)
+ shape.Delete()
def ShowAll(self, show):
"""Call Show for each shape in the diagram."""
if self._gdiIndex in self._image._outlineColours:
# Need to construct a brush to match the outline pen's colour
if self._image._outlinePen:
- br = wx.TheBrushList.FindOrCreateBrush(self._image._outlinePen, wx.SOLID)
+ br = wx.Brush(self._image._outlinePen, wx.SOLID)
if br:
dc.SetBrush(br)
elif self._gdiIndex in self._image._fillColours:
RectangleShape.__init__(self, w, h)
self._lineShape = parent
self._shapeRegion = region
- self.SetPen(wx.ThePenList.FindOrCreatePen(wx.Colour(0, 0, 0), 1, wx.DOT))
+ self.SetPen(wx.Pen(wx.Colour(0, 0, 0), 1, wx.DOT))
def OnDraw(self, dc):
if self._lineShape and not self._lineShape.GetDrawHandles():
# Problem with pen - if not a solid pen, does strange things
# to the arrowhead. So make (get) a new pen that's solid.
if self._pen and self._pen.GetStyle() != wx.SOLID:
- solid_pen = wx.ThePenList.FindOrCreatePen(self._pen.GetColour(), 1, wx.SOLID)
+ solid_pen = wx.Pen(self._pen.GetColour(), 1, wx.SOLID)
if solid_pen:
dc.SetPen(solid_pen)