diff options
author | Simon Schampijer <simon@schampijer.de> | 2007-10-11 18:04:04 (GMT) |
---|---|---|
committer | Simon Schampijer <simon@schampijer.de> | 2007-10-11 18:04:04 (GMT) |
commit | ddb400df91672576fe834b5cc0623e8b1df9f630 (patch) | |
tree | 2ad6c04377b8effa2b76a38da09e88deffeeeac3 /sugar/graphics/window.py | |
parent | c9b61d580ea0f262396376bf2c7a869b10344ca4 (diff) |
First implementation of the alert bar #2822
Hooked it up to the activity window as well
Diffstat (limited to 'sugar/graphics/window.py')
-rw-r--r-- | sugar/graphics/window.py | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/sugar/graphics/window.py b/sugar/graphics/window.py index 28fdb35..e6081fe 100644 --- a/sugar/graphics/window.py +++ b/sugar/graphics/window.py @@ -25,10 +25,12 @@ class Window(gtk.Window): self.connect('realize', self._window_realize_cb) self.toolbox = None + self._alerts = [] + self.alert_position = -1 self.canvas = None - + self._vbox = gtk.VBox() - self.add(self._vbox) + self.add(self._vbox) self._vbox.show() def set_canvas(self, canvas): @@ -48,7 +50,21 @@ class Window(gtk.Window): self._vbox.reorder_child(toolbox, 0) self.toolbox = toolbox - + + def add_alert(self, alert): + self._alerts.append(alert) + if len(self._alerts) == 1: + self._vbox.pack_start(alert, False) + self._vbox.reorder_child(alert, self.alert_position) + + def remove_alert(self, alert): + if alert in self._alerts: + self._alerts.remove(alert) + self._vbox.remove(alert) + if len(self._alerts) >= 1: + self._vbox.pack_start(self._alerts[0], False) + self._vbox.reorder_child(self._alerts[0], self.alert_position) + def _window_realize_cb(self, window): group = gtk.Window() group.realize() |