Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/OficinaActivity.py
diff options
context:
space:
mode:
Diffstat (limited to 'OficinaActivity.py')
-rw-r--r--OficinaActivity.py12
1 files changed, 12 insertions, 0 deletions
diff --git a/OficinaActivity.py b/OficinaActivity.py
index b30b203..02fb13c 100644
--- a/OficinaActivity.py
+++ b/OficinaActivity.py
@@ -65,6 +65,7 @@ from gi.repository import Gtk
from gi.repository import Gdk
from gi.repository import GObject
import logging
+import json
from sugar3.activity import activity
from sugar3.graphics import style
@@ -108,6 +109,8 @@ class OficinaActivity(activity.Activity):
self._sw.set_policy(Gtk.PolicyType.NEVER, Gtk.PolicyType.AUTOMATIC)
self.set_canvas(self._sw)
+ self.toolset_intialize_from_journal()
+
toolbar_box = DrawToolbarBox(self)
toolbar_box.show_all()
@@ -209,6 +212,8 @@ class OficinaActivity(activity.Activity):
self.area.getout()
self.area.drawing_canvas.write_to_png(file_path)
self.metadata['mime_type'] = 'image/png'
+ self.metadata['state'] = json.dumps(self.area.tool)
+ logging.debug('Wrote metadata[\'state\']: %s', self.metadata['state'])
def _get_area_displacement(self):
"""Return the point to use as top left corner in order to move
@@ -231,3 +236,10 @@ class OficinaActivity(activity.Activity):
def move_textview(self, dx, dy):
x, y = self._get_area_displacement()
self.fixed.move(self.textview, x + dx, y + dy)
+
+ def toolset_intialize_from_journal(self):
+ try:
+ self.area.tool = json.loads(self.metadata['state'])
+ logging.debug('self.area.tool %s', self.area.tool)
+ except Exception as e:
+ logging.error("exception %s", e)