Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWalter Bender <walter.bender@gmail.com>2011-07-31 21:20:08 (GMT)
committer Aleksey Lim <alsroot@sugarlabs.org>2011-08-01 00:14:04 (GMT)
commit61ad74a016423a977f82648d9ff5e5fa72bd4dac (patch)
tree4590b95f35930045de6d8a17f1b00ed3e271e0ff
parenta01ad4582bb9afa30865190f3b5567419f09f022 (diff)
add support for new toolbars to Edit
Support for new toolbars. Straightforrward replication of the old-style toolbars. But in a separate patch, I will move the playback buttons to the main toolbar.
-rw-r--r--Edit/EditToolbars.py8
-rw-r--r--Edit/MainWindow.py40
-rw-r--r--TamTamEdit.py44
3 files changed, 75 insertions, 17 deletions
diff --git a/Edit/EditToolbars.py b/Edit/EditToolbars.py
index f9eba12..e2cf5ad 100644
--- a/Edit/EditToolbars.py
+++ b/Edit/EditToolbars.py
@@ -30,7 +30,7 @@ Tooltips = Config.Tooltips()
class mainToolbar(gtk.Toolbar):
- def __init__(self,toolbox, edit):
+ def __init__(self, edit):
gtk.Toolbar.__init__(self)
def _insertSeparator(x = 1):
@@ -41,7 +41,6 @@ class mainToolbar(gtk.Toolbar):
self.insert(self.separator,-1)
self.separator.show()
- self.toolbox = toolbox
self.edit = edit
self.tooltips = gtk.Tooltips()
@@ -174,7 +173,7 @@ class mainToolbar(gtk.Toolbar):
widget.set_active(False)
class generateToolbar(gtk.Toolbar):
- def __init__(self,toolbox, edit):
+ def __init__(self, edit):
gtk.Toolbar.__init__(self)
def _insertSeparator(x = 1):
@@ -185,7 +184,6 @@ class generateToolbar(gtk.Toolbar):
self.insert(self.separator,-1)
self.separator.show()
- self.toolbox = toolbox
self.edit = edit
self.tooltips = gtk.Tooltips()
@@ -1157,7 +1155,7 @@ class propertiesPalette(Palette):
self.reverbSliderAdj.set_value( n.cs.reverbSend )
self.attackDurSliderAdj.set_value( n.cs.attack )
self.decayDurSliderAdj.set_value( n.cs.decay )
- self.filterTypeComboBox.set_active(n.cs.filterType)
+ self.filterTypeComboBox.set_active(int(n.cs.filterType))
self.currentFilterType = n.cs.filterType
self.filterCutoffSliderAdj.set_value( n.cs.filterCutoff )
self.setup = False
diff --git a/Edit/MainWindow.py b/Edit/MainWindow.py
index 14b4f94..6214f4b 100644
--- a/Edit/MainWindow.py
+++ b/Edit/MainWindow.py
@@ -384,13 +384,39 @@ class MainWindow(gtk.EventBox):
self.createNewTune(None)
# Toolbar
- self._mainToolbar = mainToolbar(self.activity.toolbox, self)
- self._generateToolbar = generateToolbar(self.activity.toolbox, self)
- self.activity.toolbox.add_toolbar(_('Compose'), self._mainToolbar)
- self.activity.toolbox.add_toolbar(_('Generate'), self._generateToolbar)
- self.activity.toolbox.set_current_toolbar(1)
- self._mainToolbar.show()
- self._generateToolbar.show()
+ if self.activity.have_toolbox:
+ from sugar.graphics.toolbarbox import ToolbarButton
+
+ self._mainToolbar = mainToolbar(self)
+ self._mainToolbar.show()
+ main_toolbar_button = ToolbarButton(label=_('Compose'),
+ page=self._mainToolbar,
+ icon_name='edit-brush')
+ main_toolbar_button.show()
+ self.activity.toolbox.toolbar.insert(main_toolbar_button, -1)
+
+ self._generateToolbar = generateToolbar(self)
+ self._generateToolbar.show()
+ generate_toolbar_button = ToolbarButton(label=_('Generate'),
+ page=self._generateToolbar,
+ icon_name='diceB')
+ generate_toolbar_button.show()
+ self.activity.toolbox.toolbar.insert(generate_toolbar_button, -1)
+
+ self.activity.add_stop_button()
+
+ main_toolbar_button.set_expanded(True)
+ else:
+ self._mainToolbar = mainToolbar(self)
+ self._mainToolbar.show()
+ self.activity.toolbox.add_toolbar(_('Compose'), self._mainToolbar)
+
+ self._generateToolbar = generateToolbar(self)
+ self._generateToolbar.show()
+ self.activity.toolbox.add_toolbar(_('Generate'),
+ self._generateToolbar)
+
+ self.activity.toolbox.set_current_toolbar(1)
self.show_all() #gtk command
diff --git a/TamTamEdit.py b/TamTamEdit.py
index 13e7dc0..0a5c913 100644
--- a/TamTamEdit.py
+++ b/TamTamEdit.py
@@ -42,6 +42,15 @@ from common.Util.Trackpad import Trackpad
from gettext import gettext as _
import commands
from sugar.activity import activity
+try:
+ from sugar.graphics.toolbarbox import ToolbarBox, ToolbarButton
+ HAVE_TOOLBOX = True
+except ImportError:
+ HAVE_TOOLBOX = False
+
+if HAVE_TOOLBOX:
+ from sugar.activity.widgets import ActivityToolbarButton
+ from sugar.activity.widgets import StopButton
class TamTamEdit(activity.Activity):
@@ -66,12 +75,23 @@ class TamTamEdit(activity.Activity):
self.connect('destroy', self.onDestroy)
#load the sugar toolbar
- toolbox = activity.ActivityToolbox(self)
- self.set_toolbox(toolbox)
+ #load the sugar toolbar
+ self.have_toolbox = HAVE_TOOLBOX
+ if self.have_toolbox:
+ # no sharing
+ self.max_participants = 1
+
+ self.toolbox = ToolbarBox()
+ activity_button = ActivityToolbarButton(self)
+ self.toolbox.toolbar.insert(activity_button, 0)
+ activity_button.show()
+ else:
+ self.toolbox = activity.ActivityToolbox(self)
+ self.set_toolbox(self.toolbox)
- self.activity_toolbar = toolbox.get_activity_toolbar()
+ self.activity_toolbar = self.toolbox.get_activity_toolbar()
- toolbox.show()
+ self.toolbox.show()
self.trackpad.setContext('edit')
self.edit = MainWindow(self)
@@ -84,7 +104,8 @@ class TamTamEdit(activity.Activity):
self.edit.onActivate(arg=None)
self.show()
- self.activity_toolbar.share.hide()
+ if not self.have_toolbox:
+ self.activity_toolbar.share.hide()
def onPreloadTimeout(self):
if Config.DEBUG > 4:
@@ -145,3 +166,16 @@ class TamTamEdit(activity.Activity):
def write_file(self, file_path):
self.edit.handleJournalSave(file_path)
+
+ def add_stop_button(self):
+ ''' Add a stop button if using the new toolbars '''
+ if self.have_toolbox:
+ separator = gtk.SeparatorToolItem()
+ separator.props.draw = False
+ separator.set_expand(True)
+ self.toolbox.toolbar.insert(separator, -1)
+ separator.show()
+ stop_button = StopButton(self)
+ stop_button.props.accelerator = '<Ctrl>q'
+ self.toolbox.toolbar.insert(stop_button, -1)
+ stop_button.show()