diff options
author | Walter Bender <walter@sugarlabs.org> | 2013-11-18 17:37:12 (GMT) |
---|---|---|
committer | Walter Bender <walter@sugarlabs.org> | 2013-11-18 17:37:12 (GMT) |
commit | 2bba12a1f733b975e7f9a6bc48698ad101af5443 (patch) | |
tree | 398aa73ac68f16ffe1ef0d2d01418939fc33f040 /activity.py | |
parent | 1f8b84304e8978ada495be019eac50768bf49da5 (diff) |
save during screen rotate; generate preview
Diffstat (limited to 'activity.py')
-rw-r--r-- | activity.py | 13 |
1 files changed, 11 insertions, 2 deletions
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 <http://www.gnu.org/licenses/>. +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, |