diff options
author | Walter Bender <walter.bender@gmail.com> | 2011-02-27 21:54:36 (GMT) |
---|---|---|
committer | Walter Bender <walter.bender@gmail.com> | 2011-02-27 21:54:36 (GMT) |
commit | 4ea385af0409c75f590ce7c97aefa98e56f8432c (patch) | |
tree | eaf67ecf990a6dfc3a531a299016a3661442ffc1 | |
parent | 071077470caf28dde2e7033f16b7431e594c13ec (diff) |
catch IOError when palette icon not found; create palette toolbars *after* loading plugins
-rw-r--r-- | TurtleArt/tawindow.py | 29 |
1 files changed, 21 insertions, 8 deletions
diff --git a/TurtleArt/tawindow.py b/TurtleArt/tawindow.py index d7eb390..2ab9b6b 100644 --- a/TurtleArt/tawindow.py +++ b/TurtleArt/tawindow.py @@ -252,16 +252,16 @@ class TurtleArtWindow(): CONSTANTS['width'] = int(self.canvas.width / self.coord_scale) CONSTANTS['height'] = int(self.canvas.height / self.coord_scale) - if self.interactive_mode: - self._setup_misc() - self._show_toolbar_palette(0, False) - self._plugins = [] self._init_plugins() self.lc = LogoCode(self) self._setup_plugins() + if self.interactive_mode: + self._setup_misc() + self._show_toolbar_palette(0, False) + self.saved_pictures = [] self.block_operation = '' @@ -608,10 +608,23 @@ class TurtleArtWindow(): svg = SVG() x, y = 50, 0 for i, name in enumerate(PALETTE_NAMES): - a = svg_str_to_pixbuf(svg_from_file("%s/icons/%soff.svg" % ( - self.path, name))) - b = svg_str_to_pixbuf(svg_from_file("%s/icons/%son.svg" % ( - self.path, name))) + try: + a = svg_str_to_pixbuf(svg_from_file( + '%s/icons/%soff.svg' % (self.path, name))) + except IOError: + a = svg_str_to_pixbuf(svg_from_file( + '%s/icons/extrasoff.svg' % (self.path))) + error_output('Unable to open %s/icons/%soff.svg' % \ + (self.path, name), self.running_sugar) + try: + b = svg_str_to_pixbuf(svg_from_file( + '%s/icons/%son.svg' % (self.path, name))) + except IOError: + b = svg_str_to_pixbuf(svg_from_file( + '%s/icons/extrason.svg' % (self.path))) + error_output('Unable to open %s/icons/%son.svg' % \ + (self.path, name), self.running_sugar) + self.selector_shapes.append([a, b]) self.selectors.append(Sprite(self.sprite_list, x, y, a)) self.selectors[i].type = 'selector' |