Better cleanup of circular references.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@37267 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Robin Dunn
2006-02-03 06:51:34 +00:00
parent 84d08d87eb
commit ab552aa4d7
5 changed files with 24 additions and 4 deletions

View File

@@ -559,6 +559,18 @@ class CompositeShape(RectangleShape):
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.