From 705719ac263248d0fe5861efffc9a50e7b53a5b5 Mon Sep 17 00:00:00 2001 From: Gonzalo Odiard Date: Thu, 13 Feb 2014 14:30:59 +0000 Subject: Add a run activity button --- diff --git a/develop-activity/develop_app.py b/develop-activity/develop_app.py index 6a55884..e7940a8 100644 --- a/develop-activity/develop_app.py +++ b/develop-activity/develop_app.py @@ -42,6 +42,9 @@ from sugar3.graphics import style from sugar3.datastore import datastore from sugar3.bundle.activitybundle import ActivityBundle +from jarabe.model import bundleregistry +from sugar3.activity import activityfactory + import logviewer import sourceview_editor S_WHERE = sourceview_editor.S_WHERE @@ -148,6 +151,13 @@ class DevelopActivity(activity.Activity): erase_btn.show() erase_btn.connect('clicked', self.__remove_file_cb) + toolbarbox.toolbar.insert(Gtk.SeparatorToolItem(), -1) + + run_btn = ToolButton('activity-start') + run_btn.set_tooltip(_('Run activity')) + toolbarbox.toolbar.insert(run_btn, -1) + run_btn.connect('clicked', self.__run_actvity_cb) + separator = Gtk.SeparatorToolItem() separator.set_draw(False) separator.set_expand(True) @@ -316,6 +326,14 @@ class DevelopActivity(activity.Activity): self.editor.append_page(vbox, Gtk.Label(label=_('Start'))) return False + def __run_actvity_cb(self, run_button): + if self.save_unchanged: + self.editor.save_all() + + registry = bundleregistry.get_registry() + bundle = registry.get_bundle(self.bundle.get_bundle_id()) + activityfactory.create(bundle) + def _load_activities_installed_combo(self, activities_combo): activities_path = os.path.join(os.path.expanduser("~"), "Activities") for dir_name in sorted(os.listdir(activities_path)): -- cgit v0.9.1