Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/src/sugar/activity/activity.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/sugar/activity/activity.py')
-rw-r--r--src/sugar/activity/activity.py50
1 files changed, 24 insertions, 26 deletions
diff --git a/src/sugar/activity/activity.py b/src/sugar/activity/activity.py
index 3e2d3d4..fd6f4ab 100644
--- a/src/sugar/activity/activity.py
+++ b/src/sugar/activity/activity.py
@@ -76,8 +76,9 @@ from sugar.graphics.xocolor import XoColor
from sugar.datastore import datastore
from sugar.session import XSMPClient
from sugar import wm
+from sugar.tutorius.creator import Creator
from sugar.tutorius.services import ObjectStore
-from sugar.tutorius.tutoserialize import TutoSerializer
+from sugar.tutorius.bundler import TutorialStore, XMLSerializer
_ = lambda msg: gettext.dgettext('sugar-toolkit', msg)
@@ -124,17 +125,23 @@ class ActivityToolbar(gtk.Toolbar):
self.insert(separator, -1)
separator.show()
+ self.creator_button = ToolButton("tutortool")
+ self.creator_button.set_tooltip(_('Start tutorial creator'))
+ self.creator_button.connect("clicked", Creator.launch)
+ self.insert(self.creator_button, -1)
+ self.creator_button.show()
+
if hasattr(self._activity,"get_tutorials") and hasattr(self._activity.get_tutorials,"__call__"):
self.tutorials = ToolComboBox(label_text=_('Tutorials:'))
self.tutorials.combo.connect('changed', self.__tutorial_changed_cb)
# Get tutorial list by file
- logging.debug("************************************ before creating serialize")
- serialize = TutoSerializer()
- logging.debug("************************************ before calling load_tuto_list()")
+ store = TutorialStore()
#tutorials = self._activity.get_tutorials()
if getattr(self._activity,"_tutorials",None) is None:
- tutorials = serialize.load_tuto_list()
+ tutorials = store.list_available_tutorials(
+ get_bundle_name(),
+ os.environ['SUGAR_BUNDLE_VERSION'])
self._current_tutorial = None
if tutorials:
@@ -207,32 +214,23 @@ class ActivityToolbar(gtk.Toolbar):
"""
Callback for tutorial combobox item change
"""
- logging.debug("************ function __tutorial_changed_cb called")
- serialize = TutoSerializer()
-
+ store = TutorialStore()
+
if self._current_tutorial:
self._current_tutorial.detach()
model = self.tutorials.combo.get_model()
it = self.tutorials.combo.get_active_iter()
- (key,) = model.get(it, 0)
-
- #Load and build chosen tutorial from Pickle file
- logging.debug("****************** before tuto build")
-## tutorials = self._activity.get_tutorials()
- tuto = serialize.build_tutorial(key)
- self._activity._tutorials = tuto
- logging.debug("****************** after tuto build")
-## tutorial = self._activity.get_tutorials().get(key,None)
- tutorial = tuto.get(key, None)
-
- if not getattr(self._activity,"_tutorials",None) is None:
- if not self._current_tutorial is None:
- self._current_tutorial.detach()
-
- self._current_tutorial = tutorial
- logging.debug(" *************** try to attach tuto")
- self._current_tutorial.attach(self._activity)
+ (guid,) = model.get(it, 0)
+
+ tutorial = store.load_tutorial(guid)
+
+ if not self._current_tutorial is None:
+ self._current_tutorial.detach()
+
+ self._current_tutorial = tutorial
+ logging.debug(" *************** try to attach tuto")
+ self._current_tutorial.attach(self._activity)
def __keep_clicked_cb(self, button):