Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/Edit
diff options
context:
space:
mode:
authorOli <olivier.belanger@umontreal.ca>2007-08-17 19:21:02 (GMT)
committer Oli <olivier.belanger@umontreal.ca>2007-08-17 19:21:02 (GMT)
commitcb2b5e3cccea039c8c4bba83037de56a3ea8d0c9 (patch)
tree7b8ce543a991ea2d76703c8c1349913752c6c6a4 /Edit
parentac428f50a0cbcd05c5b76163ec095544888988fc (diff)
parentdcc14c2fec23abe044d7bc1b9ed13426354c6163 (diff)
Merge branch 'master' of git+ssh://olipet@dev.laptop.org/git/projects/tamtam
Diffstat (limited to 'Edit')
-rw-r--r--Edit/EditToolbars.py142
-rw-r--r--Edit/MainWindow.py2
2 files changed, 102 insertions, 42 deletions
diff --git a/Edit/EditToolbars.py b/Edit/EditToolbars.py
index 0c1ac6d..64cae7e 100644
--- a/Edit/EditToolbars.py
+++ b/Edit/EditToolbars.py
@@ -4,6 +4,7 @@ import gtk
import Config
from sugar.graphics.toolbutton import ToolButton
from sugar.graphics.toggletoolbutton import ToggleToolButton
+from sugar.graphics.radiotoolbutton import RadioToolButton
from sugar.graphics.palette import Palette
from sugar.graphics.icon import Icon
from Util.ThemeWidgets import *
@@ -69,15 +70,33 @@ class mainToolbar(gtk.Toolbar):
self.insert(self.recordButton, -1)
self.recordButton.show()
- _insertSeparator(13)
-
- #Pencil button
- self._pencilPalette = pencilPalette(_('Draw Tool'), self.edit, self)
- self.pencilButton = ToggleToolButton('pencil')
- self.pencilButton.set_palette(self._pencilPalette)
- self.pencilButton.connect('toggled', self.handlePencil)
- self.insert(self.pencilButton, -1)
- self.pencilButton.show()
+ _insertSeparator(5)
+
+ #Pointer button
+ self._pointerPalette = pointerPalette(_('Select Tool'), self.edit)
+ self.pointerButton = RadioToolButton('edit-pointer', group = None)
+ self.pointerButton.set_palette(self._pointerPalette)
+ self.pointerButton.connect('toggled', self.edit.handleToolClick, 'default')
+ self.insert(self.pointerButton, -1)
+ self.pointerButton.show()
+
+ #Draw button
+ self._drawPalette = drawPalette(_('Draw Tool'), self.edit)
+ self.drawButton = RadioToolButton('edit-pencil', group = self.pointerButton)
+ self.drawButton.set_palette(self._drawPalette)
+ self.drawButton.connect('toggled', self.edit.handleToolClick, 'draw')
+ self.insert(self.drawButton, -1)
+ self.drawButton.show()
+
+ #Paint button
+ self._paintPalette = paintPalette(_('Paint Tool'), self.edit)
+ self.paintButton = RadioToolButton('edit-brush', group = self.pointerButton)
+ self.paintButton.set_palette(self._paintPalette)
+ self.paintButton.connect('toggled', self.edit.handleToolClick, 'paint')
+ self.insert(self.paintButton, -1)
+ self.paintButton.show()
+
+ _insertSeparator(4)
#Duplicate button
self.duplicateButton = ToggleToolButton('duplicate')
@@ -85,7 +104,7 @@ class mainToolbar(gtk.Toolbar):
self.insert(self.duplicateButton, -1)
self.duplicateButton.show()
- _insertSeparator(18)
+ _insertSeparator(4)
#Volume / Tempo button
self._volumeTempoPalette = volumeTempoPalette(_('Volume / Tempo'), self.edit)
@@ -124,15 +143,6 @@ class mainToolbar(gtk.Toolbar):
self.edit.handleStop(widget, False)
self.playButton.set_active(False)
- def handlePencil(self, widget, data = None):
- if widget.get_active():
- if self._pencilPalette.checkbox.get_active():
- self.edit.handleToolClick(widget, 'paint')
- else:
- self.edit.handleToolClick(widget, 'draw')
- else:
- self.edit.handleToolClick(widget, 'default')
-
def handleDuplicate(self, widget):
if widget.get_active():
if self.edit.getContext() == 0: #Page
@@ -160,17 +170,79 @@ class recordPalette(Palette):
self.recordOggButton.show()
self.set_content(self.recordOggButton)
-class pencilPalette(Palette):
- def __init__(self, label, edit, _mainToolbar):
+class pointerPalette(Palette):
+ def __init__(self, label, edit):
+ Palette.__init__(self, label)
+
+ self.edit = edit
+
+ self.pointerBox = gtk.VBox()
+
+ self.snapGridHBox = gtk.HBox()
+ self.snapGridImage = gtk.Image()
+ self.snapGridImage.set_from_file(Config.TAM_TAM_ROOT + '/icons/grid.svg')
+ self.snapGridBox = BigComboBox()
+ self.snapGridBox.connect('changed', self.handleSnapGrid)
+ durs = [_('3'), _('6'), _('12'), _('24'), _('48')]
+ for dur in durs:
+ self.snapGridBox.append_item(durs.index(dur),dur)
+ self.snapGridBox.set_active(0)
+ self.snapGridHBox.pack_start(self.snapGridImage, False, False, padding = 5)
+ self.snapGridHBox.pack_start(self.snapGridBox, False, False, padding = 5)
+
+ self.pointerBox.pack_start(self.snapGridHBox, False, False, padding = 5)
+ self.pointerBox.show_all()
+
+ self.set_content(self.pointerBox)
+
+ def handleNoteDur(self, widget):
+ pass
+ #self.noteDur = widget.props.value
+
+ def handleSnapGrid(self, widget):
+ pass
+ #self.edit.trackInterface.setGrid(int(widget.props.value))
+
+class drawPalette(Palette):
+ def __init__(self, label, edit):
Palette.__init__(self, label)
self.edit = edit
- self._mainToolbar = _mainToolbar
- self.pencilBox = gtk.VBox()
+ self.drawBox = gtk.VBox()
+
+ self.snapGridHBox = gtk.HBox()
+ self.snapGridImage = gtk.Image()
+ self.snapGridImage.set_from_file(Config.TAM_TAM_ROOT + '/icons/grid.svg')
+ self.snapGridBox = BigComboBox()
+ self.snapGridBox.connect('changed', self.handleSnapGrid)
+ durs = [_('3'), _('6'), _('12'), _('24'), _('48')]
+ for dur in durs:
+ self.snapGridBox.append_item(durs.index(dur),dur)
+ self.snapGridBox.set_active(0)
+ self.snapGridHBox.pack_start(self.snapGridImage, False, False, padding = 5)
+ self.snapGridHBox.pack_start(self.snapGridBox, False, False, padding = 5)
+
+ self.drawBox.pack_start(self.snapGridHBox, False, False, padding = 5)
+ self.drawBox.show_all()
+
+ self.set_content(self.drawBox)
+
+ def handleNoteDur(self, widget):
+ pass
+ #self.noteDur = widget.props.value
+
+ def handleSnapGrid(self, widget):
+ pass
+ #self.edit.trackInterface.setGrid(int(widget.props.value))
+
+class paintPalette(Palette):
+ def __init__(self, label, edit):
+ Palette.__init__(self, label)
+
+ self.edit = edit
- self.checkbox = gtk.CheckButton(label = _('Continuous'))
- self.checkbox.connect('toggled',self.handleCheckBox)
+ self.paintBox = gtk.VBox()
self.noteDurHBox = gtk.HBox()
self.noteDurImage = gtk.Image()
@@ -196,22 +268,11 @@ class pencilPalette(Palette):
self.snapGridHBox.pack_start(self.snapGridImage, False, False, padding = 5)
self.snapGridHBox.pack_start(self.snapGridBox, False, False, padding = 5)
- self.pencilBox.pack_start(self.checkbox, False, False, padding = 5)
- self.pencilBox.pack_start(self.noteDurHBox, False, False, padding = 5)
- self.pencilBox.pack_start(self.snapGridHBox, False, False, padding = 5)
- self.pencilBox.show_all()
-
- self.set_content(self.pencilBox)
+ self.paintBox.pack_start(self.noteDurHBox, False, False, padding = 5)
+ self.paintBox.pack_start(self.snapGridHBox, False, False, padding = 5)
+ self.paintBox.show_all()
- def handleCheckBox(self, widget, data = None):
- if widget.get_active():
- if self._mainToolbar.pencilButton.get_active():
- self.edit.handleToolClick(widget, 'paint')
- else:
- if self._mainToolbar.pencilButton.get_active():
- self.edit.handleToolClick(widget, 'draw')
- else:
- self.edit.handleToolClick(widget, 'default')
+ self.set_content(self.paintBox)
def handleNoteDur(self, widget):
pass
@@ -221,7 +282,6 @@ class pencilPalette(Palette):
pass
#self.edit.trackInterface.setGrid(int(widget.props.value))
-
class volumeTempoPalette(Palette):
def __init__(self, label, edit):
Palette.__init__(self, label)
diff --git a/Edit/MainWindow.py b/Edit/MainWindow.py
index f005f39..556daf8 100644
--- a/Edit/MainWindow.py
+++ b/Edit/MainWindow.py
@@ -941,7 +941,7 @@ class MainWindow( SubActivity ):
self.csnd.loopSetTempo(self._data['tempo'])
def handleToolClick( self, widget, mode ):
- self.trackInterface.setInterfaceMode( mode )
+ if widget.get_active(): self.trackInterface.setInterfaceMode( mode )
def getTool( self ):
if self.GUI["2toolPointerButton"].get_active(): return "default"