Mercurial > mamba
changeset 179:79fdae806ca5
Add remove method to containers
author | Neil Muller <drnlmuller@gmail.com> |
---|---|
date | Wed, 14 Sep 2011 14:08:14 +0200 |
parents | 74f8d8cbc51d |
children | d9ee0e50a78f |
files | mamba/widgets/base.py |
diffstat | 1 files changed, 12 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/mamba/widgets/base.py Wed Sep 14 01:54:21 2011 +0200 +++ b/mamba/widgets/base.py Wed Sep 14 14:08:14 2011 +0200 @@ -90,6 +90,18 @@ self.children.append(widget) self.rect = self.rect.union(widget.rect) + def remove(self, widget): + widget.parent = None + if self.focussed_child is not None: + child = self.children[self.focussed_child] + self.children.remove(widget) + # We don't update the rect, for reasons of simplificty and laziness + if self.focussed_child is not None and child in self.children: + # Fix focus index + self.focussed_child = self.children.index(child) + else: + self.focussed_child = None + def defocus(self): if self.focussed_child is not None: child = self.children[self.focussed_child]