From 4ea385af0409c75f590ce7c97aefa98e56f8432c Mon Sep 17 00:00:00 2001 From: Walter Bender Date: Sun, 27 Feb 2011 21:54:36 +0000 Subject: catch IOError when palette icon not found; create palette toolbars *after* loading plugins --- (limited to 'TurtleArt/tawindow.py') 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' -- cgit v0.9.1