Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/sugar/graphics/combobox.py
diff options
context:
space:
mode:
Diffstat (limited to 'sugar/graphics/combobox.py')
-rw-r--r--sugar/graphics/combobox.py15
1 files changed, 8 insertions, 7 deletions
diff --git a/sugar/graphics/combobox.py b/sugar/graphics/combobox.py
index 3251dc2..5584267 100644
--- a/sugar/graphics/combobox.py
+++ b/sugar/graphics/combobox.py
@@ -61,8 +61,8 @@ class ComboBox(gtk.ComboBox):
del info
return fname
- def append_item(self, action_id, text, icon_name=None):
- if not self._icon_renderer and icon_name:
+ def append_item(self, action_id, text, icon_name=None, file_name=None):
+ if not self._icon_renderer and (icon_name or file_name):
self._icon_renderer = gtk.CellRendererPixbuf()
settings = self.get_settings()
@@ -77,16 +77,17 @@ class ComboBox(gtk.ComboBox):
self.pack_end(self._text_renderer, True)
self.add_attribute(self._text_renderer, 'text', 1)
- if icon_name:
+ if icon_name or file_name:
if text:
size = gtk.ICON_SIZE_MENU
else:
size = gtk.ICON_SIZE_LARGE_TOOLBAR
-
width, height = gtk.icon_size_lookup(size)
- if icon_name[0:6] == "theme:":
- icon_name = self._get_real_name_from_theme(icon_name[6:], size)
- pixbuf = gtk.gdk.pixbuf_new_from_file_at_size(icon_name, width, height)
+
+ if icon_name:
+ file_name = self._get_real_name_from_theme(icon_name, size)
+
+ pixbuf = gtk.gdk.pixbuf_new_from_file_at_size(file_name, width, height)
else:
pixbuf = None