From 2bba12a1f733b975e7f9a6bc48698ad101af5443 Mon Sep 17 00:00:00 2001 From: Walter Bender Date: Mon, 18 Nov 2013 17:37:12 +0000 Subject: save during screen rotate; generate preview --- (limited to 'activity.py') diff --git a/activity.py b/activity.py index f3d6b4b..d7a3d76 100644 --- a/activity.py +++ b/activity.py @@ -17,6 +17,8 @@ # You should have received a copy of the GNU General Public License # along with this program. If not, see . +import os + import gtk from gettext import gettext as _ import logging @@ -50,21 +52,26 @@ class PhysicsActivity(activity.Activity): self._canvas = sugargame.canvas.PygameCanvas(self) self.game = physics.main(self) + self.preview = None self.build_toolbar() self.set_canvas(self._canvas) gtk.gdk.screen_get_default().connect('size-changed', self.__configure_cb) + logging.debug(os.path.join( + activity.get_activity_root(), 'data', 'data')) self._canvas.run_pygame(self.game.run) def __configure_cb(self, event): ''' Screen size has changed ''' - if self.game.opening_queue is not None: - self.write_file(self.game.opening_queue) + self.write_file(os.path.join( + activity.get_activity_root(), 'data', 'data')) pygame.display.set_mode((gtk.gdk.screen_width(), gtk.gdk.screen_height() - 2 * GRID_CELL_SIZE), pygame.RESIZABLE) + self.read_file(os.path.join( + activity.get_activity_root(), 'data', 'data')) self.game.run(True) def read_file(self, file_path): @@ -75,6 +82,8 @@ class PhysicsActivity(activity.Activity): def get_preview(self): """ Custom preview code to get image from pygame. """ + if self.preview: + return self.preview surface = pygame.display.get_surface() width, height = surface.get_width(), surface.get_height() pixbuf = gtk.gdk.pixbuf_new_from_data(pygame.image.tostring(surface, -- cgit v0.9.1