From d965c466848bce04692d66fc7bfc3c28e39890e2 Mon Sep 17 00:00:00 2001 From: Walter Bender Date: Tue, 02 Mar 2010 17:02:14 +0000 Subject: add save picture menu item for non-Sugar use --- diff --git a/tawindow.py b/tawindow.py index ed4c6e4..9530692 100644 --- a/tawindow.py +++ b/tawindow.py @@ -2601,22 +2601,42 @@ class TurtleArtWindow(): Grab the current canvas and save it. """ def save_as_image(self, name="", svg=False): - if svg: - if len(name) == 0: - filename = "ta.svg" - else: - filename = name+".svg" - else: - if len(name) == 0: - filename = "ta.png" - else: - filename = name+".png" if self.running_sugar: + if svg: + if len(name) == 0: + filename = "ta.svg" + else: + filename = name+".svg" + else: + if len(name) == 0: + filename = "ta.png" + else: + filename = name+".png" datapath = os.path.join(self.activity.get_activity_root(), "instance") + elif len(name) == 0: + name = "ta" + if self.save_folder is not None: + self.load_save_folder = self.save_folder + if svg: + filename, self.load_save_folder = get_save_name('.svg', + self.load_save_folder, + name) + else: + filename, self.load_save_folder = get_save_name('.png', + self.load_save_folder, + name) + datapath = self.load_save_folder else: datapath = os.getcwd() + if svg: + filename = name+".svg" + else: + filename = name+".png" + if filename is None: + return + file_path = os.path.join(datapath, filename) if svg: if self.svg_string == '': diff --git a/turtleart.py b/turtleart.py index 93030a6..1de9d04 100755 --- a/turtleart.py +++ b/turtleart.py @@ -86,6 +86,10 @@ class TurtleMain(): menu.append(menu_items) menu_items.connect("activate", self._do_save_cb) menu_items.show() + menu_items = gtk.MenuItem(_("Save Picture")) + menu.append(menu_items) + menu_items.connect("activate", self._do_save_picture_cb) + menu_items.show() activity_menu = gtk.MenuItem(_("File")) activity_menu.show() @@ -212,6 +216,9 @@ class TurtleMain(): def _do_save_cb(self, widget): self.tw.save_file() + def _do_save_picture_cb(self, widget): + self.tw.save_as_image() + def _do_resize_cb(self, widget, factor): if factor == -1: self.tw.block_scale = 2.0 -- cgit v0.9.1