Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/src/sugar/graphics/icon.py
diff options
context:
space:
mode:
authorTomeu Vizoso <tomeu@sugarlabs.org>2009-06-07 11:41:40 (GMT)
committer Tomeu Vizoso <tomeu@sugarlabs.org>2009-06-13 19:24:48 (GMT)
commit07c2b025f1855b14247d79803ad7cdd76ab9751c (patch)
tree433ee77ac7f0d60c21a1c6bc25d2e89d604f0d0f /src/sugar/graphics/icon.py
parenta634ecfe149e41c869469c7b0c59cf4303fa8740 (diff)
Add CellRendererInvoker
Diffstat (limited to 'src/sugar/graphics/icon.py')
-rw-r--r--src/sugar/graphics/icon.py23
1 files changed, 21 insertions, 2 deletions
diff --git a/src/sugar/graphics/icon.py b/src/sugar/graphics/icon.py
index 5d47fc5..1f2d3af 100644
--- a/src/sugar/graphics/icon.py
+++ b/src/sugar/graphics/icon.py
@@ -926,9 +926,28 @@ class CellRendererIcon(gtk.CellRendererPixbuf):
'activate': (gobject.SIGNAL_RUN_FIRST, gobject.TYPE_NONE, [object])
}
- def __init__(self):
- gobject.GObject.__init__(self)
+ def __init__(self, tree_view):
+ from sugar.graphics.palette import CellRendererInvoker
+
self._buffer = _IconBuffer()
+ self._palette_invoker = CellRendererInvoker()
+
+ gobject.GObject.__init__(self)
+
+ self._palette_invoker.attach_cell_renderer(tree_view, self)
+
+ self.connect('destroy', self.__destroy_cb)
+
+ def __destroy_cb(self, icon):
+ self._palette_invoker.detach()
+
+ def create_palette(self):
+ return None
+
+ def get_palette_invoker(self):
+ return self._palette_invoker
+
+ palette_invoker = gobject.property(type=object, getter=get_palette_invoker)
def set_file_name(self, value):
if self._buffer.file_name != value: