From aa2d1d42f01f87b5a0a7e533bb6a93d3720b9d1a Mon Sep 17 00:00:00 2001 From: Walter Bender Date: Mon, 21 Feb 2011 23:00:50 +0000 Subject: Merge git.sugarlabs.org:~walter/turtleart/collaboration-refactoring Conflicts: NEWS TurtleArt/talogo.py --- (limited to 'TurtleArtActivity.py') diff --git a/TurtleArtActivity.py b/TurtleArtActivity.py index 98968a8..aa8d5bd 100644 --- a/TurtleArtActivity.py +++ b/TurtleArtActivity.py @@ -43,7 +43,8 @@ from gettext import gettext as _ import os.path import tarfile -from TurtleArt.taconstants import PALETTE_NAMES, OVERLAY_LAYER, HELP_STRINGS +from TurtleArt.taconstants import PALETTE_NAMES, OVERLAY_LAYER, HELP_STRINGS, \ + ICON_SIZE from TurtleArt.taexporthtml import save_html from TurtleArt.taexportlogo import save_logo from TurtleArt.tautils import data_to_file, data_to_string, data_from_string, \ @@ -164,7 +165,7 @@ class TurtleArtActivity(activity.Activity): def do_load_ta_project_cb(self, button): """ Load a project from the Journal """ - chooser(self, SERVICE, self._load_ta_project) + chooser(self, 'org.laptop.TurtleArtActivity', self._load_ta_project) def _load_ta_project(self, dsobject): """ Load a ta project from the datastore """ @@ -258,7 +259,7 @@ class TurtleArtActivity(activity.Activity): def do_hideshow_cb(self, button): """ Toggle visibility. """ self.tw.hideshow_button() - if self.tw.hide == True: # we just hid the blocks + if self.tw.hide == True: # we just hid the blocks self.blocks_button.set_icon("hideshowon") self.blocks_button.set_tooltip(_('Show blocks')) else: @@ -428,10 +429,10 @@ class TurtleArtActivity(activity.Activity): def __visibility_notify_cb(self, window, event): """ Callback method for when the activity's visibility changes. """ if event.state == gtk.gdk.VISIBILITY_FULLY_OBSCURED: - self.tw.lc.ag = None + self.tw.background_plugins() elif event.state in \ [gtk.gdk.VISIBILITY_UNOBSCURED, gtk.gdk.VISIBILITY_PARTIAL]: - pass + self.tw.foreground_plugins() def update_title_cb(self, widget, event, toolbox): """ Update the title. """ @@ -531,14 +532,16 @@ class TurtleArtActivity(activity.Activity): self.save_as_logo = self._add_button('logo-saveoff', _("Save as Logo"), self.do_save_as_logo_cb, journal_toolbar_button) - self.save_as_image = self._add_button('image-saveoff', _("Save as image"), + self.save_as_image = self._add_button('image-saveoff', _( + "Save as image"), self.do_save_as_image_cb, journal_toolbar_button) self.load_ta_project = self._add_button('load-from-journal', _("Import project from the Journal"), self.do_load_ta_project_cb, journal_toolbar_button) self._add_separator(journal_toolbar) - self.load_python = self._add_button('pippy-openoff', _("Load Python block"), + self.load_python = self._add_button('pippy-openoff', _( + "Load Python block"), self.do_load_python_cb, journal_toolbar_button) self.samples_button = self._add_button("ta-open", _('Load example'), @@ -547,8 +550,8 @@ class TurtleArtActivity(activity.Activity): edit_toolbar_button, 'c') paste = self._add_button('edit-paste', _('Paste'), self._paste_cb, edit_toolbar_button, 'v') - fullscreen_button = self._add_button('view-fullscreen', _("Fullscreen"), - self.do_fullscreen_cb, + fullscreen_button = self._add_button('view-fullscreen', + _("Fullscreen"), self.do_fullscreen_cb, view_toolbar_button, 'Return') cartesian_button = self._add_button('view-Cartesian', _("Cartesian coordinates"), @@ -566,11 +569,11 @@ class TurtleArtActivity(activity.Activity): view_toolbar_button) self.resize_up_button = self._add_button('resize+', _("Grow blocks"), self.do_grow_blocks_cb, view_toolbar_button) - self.resize_down_button = self._add_button('resize-', _("Shrink blocks"), - self.do_shrink_blocks_cb, view_toolbar_button) + self.resize_down_button = self._add_button('resize-', + _("Shrink blocks"), self.do_shrink_blocks_cb, view_toolbar_button) self.hover_help_label = self._add_label( _("Move the cursor over the orange palette for help."), - help_toolbar) + help_toolbar, gtk.gdk.screen_width() - 2 * ICON_SIZE) # The palette toolbar is only used with 0.86+ if self.new_sugar_system: @@ -607,7 +610,8 @@ class TurtleArtActivity(activity.Activity): def _make_palette_buttons(self, toolbar, palette_button=False): """ Creates the palette and block buttons for both toolbar types""" if palette_button: # old-style toolbars need this button - self.palette_button = self._add_button("paletteoff", _('Hide palette'), + self.palette_button = self._add_button("paletteoff", _( + 'Hide palette'), self.do_palette_cb, toolbar, _('p')) self.blocks_button = self._add_button("hideshowoff", _('Hide blocks'), self.do_hideshow_cb, toolbar, _('b')) @@ -616,14 +620,14 @@ class TurtleArtActivity(activity.Activity): """ Creates the turtle buttons for both toolbar types""" self.eraser_button = self._add_button("eraseron", _('Clean'), self.do_eraser_cb, toolbar, _('e')) - self.run_button = self._add_button("run-fastoff", _('Run'), self.do_run_cb, - toolbar, _('r')) + self.run_button = self._add_button("run-fastoff", _('Run'), + self.do_run_cb, toolbar, _('r')) self.step_button = self._add_button("run-slowoff", _('Step'), self.do_step_cb, toolbar, _('w')) self.debug_button = self._add_button("debugoff", _('Debug'), self.do_debug_cb, toolbar, _('d')) - self.stop_turtle_button = self._add_button("stopitoff", _('Stop turtle'), - self.do_stop_cb, toolbar, _('s')) + self.stop_turtle_button = self._add_button("stopitoff", + _('Stop turtle'), self.do_stop_cb, toolbar, _('s')) def _setup_scrolled_window(self): """ Create a scrolled window to contain the turtle canvas. """ @@ -681,7 +685,7 @@ class TurtleArtActivity(activity.Activity): if self._jobject and self._jobject.file_path: self.read_file(self._jobject.file_path) - else: # if new, load a start brick onto the canvas + else: # if new, load a start brick onto the canvas self.tw.load_start() def _setup_sharing(self): @@ -717,7 +721,7 @@ class TurtleArtActivity(activity.Activity): # If run_it is True, we want to create a new project tar_fd.extractall(tmpdir) self.tw.load_files(os.path.join(tmpdir, 'ta_code.ta'), \ - run_it) # create a new project flag + run_it) # create a new project flag finally: shutil.rmtree(tmpdir) tar_fd.close() @@ -777,10 +781,12 @@ class TurtleArtActivity(activity.Activity): self.tw.paste_offset) self.tw.paste_offset += 20 - def _add_label(self, string, toolbar): + def _add_label(self, string, toolbar, width=None): """ add a label to a toolbar """ label = gtk.Label(string) label.set_line_wrap(True) + if width is not None: + label.set_size_request(width, -1) label.show() toolitem = gtk.ToolItem() toolitem.add(label) @@ -796,7 +802,8 @@ class TurtleArtActivity(activity.Activity): toolbar.insert(separator, -1) separator.show() - def _add_button(self, name, tooltip, callback, toolbar, accelerator=None, arg=None): + def _add_button(self, name, tooltip, callback, toolbar, accelerator=None, + arg=None): """ add a button to a toolbar """ button = ToolButton(name) button.set_tooltip(tooltip) @@ -810,7 +817,7 @@ class TurtleArtActivity(activity.Activity): except AttributeError: pass button.show() - if hasattr(toolbar, 'insert'): # the main toolbar + if hasattr(toolbar, 'insert'): # the main toolbar toolbar.insert(button, -1) else: # or a secondary toolbar toolbar.props.page.insert(button, -1) -- cgit v0.9.1