From bd046a05c89c527742af541fdbf339c121a003b4 Mon Sep 17 00:00:00 2001 From: Walter Bender Date: Sat, 16 Nov 2013 19:46:34 +0000 Subject: resync to master --- diff --git a/TurtleArt/tawindow.py b/TurtleArt/tawindow.py index 10867dc..c5ab0c6 100644 --- a/TurtleArt/tawindow.py +++ b/TurtleArt/tawindow.py @@ -349,6 +349,7 @@ class TurtleArtWindow(): if self.running_sugar: self.activity.check_buttons_for_fit() + self.activity.update_palette_from_metadata() def _set_screen_dpi(self): dpi = get_screen_dpi() @@ -1895,17 +1896,21 @@ before making changes to your program')) elif spr.name == _('shift'): self._shift_toolbar_palette(self.selected_palette) else: - self.orientation = 1 - self.orientation - self.palette_button[self.orientation].set_layer(TAB_LAYER) - self.palette_button[1 - self.orientation].hide() - self.palette_sprs[self.selected_palette][ - 1 - self.orientation].hide() - self._layout_palette(self.selected_palette) - self.show_palette(self.selected_palette) + self.set_orientation(1 - self.orientation) elif spr.type == 'toolbar': self._select_toolbar_button(spr) return False + def set_orientation(self, orientation): + self.orientation = orientation + self.palette_button[self.orientation].set_layer(TAB_LAYER) + self.palette_button[1 - self.orientation].hide() + spr = self.palette_sprs[self.selected_palette][1 - self.orientation] + if spr is not None: + spr.hide() + self._layout_palette(self.selected_palette) + self.show_palette(self.selected_palette) + def _update_action_names(self, name): ''' change the label on action blocks of the same name ''' if isinstance(name, (float, int)): @@ -3643,7 +3648,7 @@ before making changes to your program')) i += 1 while(not p[i].get_visibility()): i += 1 - if i == len(p) - 1: + if i >= len(p) - 1: i = 0 if i < len(p): self._highlighted_blk = p[i] @@ -4001,8 +4006,6 @@ before making changes to your program')) self.new_project() self.process_data(data_from_file(ta_file)) self._loaded_project = ta_file - # Always start on the Turtle palette - self.show_toolbar_palette(palette_name_to_index('turtle')) def load_file_from_chooser(self, create_new_project=True): ''' Load a project from file chooser ''' diff --git a/TurtleArtActivity.py b/TurtleArtActivity.py index e96c8fb..47627ef 100644 --- a/TurtleArtActivity.py +++ b/TurtleArtActivity.py @@ -165,6 +165,21 @@ class TurtleArtActivity(activity.Activity): self.init_complete = True + def update_palette_from_metadata(self): + if 'palette' in self.metadata: + n = int(self.metadata['palette']) + if n == -1: + self.tw.hideshow_palette(False) + else: + # Set radio button to active + if n < len(self.palette_buttons): + self.palette_buttons[n].set_active(True) + if 'orientation' in self.metadata: + self.tw.set_orientation(int(self.metadata['orientation'])) + else: + # Else start on the Turtle palette + self.tw.show_palette(n=0) + def check_buttons_for_fit(self): ''' Check to see which set of buttons to display ''' if not self.has_toolbarbox: @@ -359,7 +374,7 @@ class TurtleArtActivity(activity.Activity): if self.tw.palette: self.tw.hideshow_palette(False) self.do_hidepalette() - if self.has_toolbarbox and self.tw.selected_palette is not None: + if not self.has_toolbarbox and self.tw.selected_palette is not None: self.palette_buttons[self.tw.selected_palette].set_icon( palette_names[self.tw.selected_palette] + 'off') else: @@ -1297,8 +1312,14 @@ class TurtleArtActivity(activity.Activity): data_to_file(self.tw.assemble_data_to_save(), file_path) self.metadata['mime_type'] = MIMETYPE[0] self.metadata['turtle blocks'] = ''.join(self.tw.used_block_list) - self.metadata['public'] = data_to_string(['activity count', - 'turtle blocks']) + # Deprecated + # self.metadata['public'] = data_to_string(['activity count', + # 'turtle blocks']) + if self.tw.palette: + self.metadata['palette'] = str(self.tw.selected_palette) + else: + self.metadata['palette'] = '-1' + self.metadata['orientation'] = str(self.tw.orientation) if len(self.error_list) > 0: errors = [] if 'error_list' in self.metadata: diff --git a/images/Cartesian.svg b/images/Cartesian.svg index 7a29e22..b34751f 100644 --- a/images/Cartesian.svg +++ b/images/Cartesian.svg @@ -1,211 +1,213 @@ + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + -25 + -20 + -15 + -10 + -5 + 5 + 10 + 0 + 15 + 20 + 25 + -15 + -10 + -5 + 5 + 10 + 15 -- cgit v0.9.1