Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/SynthLab
diff options
context:
space:
mode:
authorOli <olpc@localhost.localdomain>2007-02-17 23:21:09 (GMT)
committer Oli <olpc@localhost.localdomain>2007-02-17 23:21:09 (GMT)
commit0ed64a99c5d2b139f50ac0eb1eff515d2519c343 (patch)
tree1d07df08c5d2d6389dd9dd1021a5cd77e36b1e34 /SynthLab
parent1d4a7de608cba27fa533fa20e2f75fe48cbc5f8f (diff)
new controls in synthLab
Diffstat (limited to 'SynthLab')
-rwxr-xr-xSynthLab/SynthLabConstants.py8
-rw-r--r--SynthLab/SynthLabParametersWindow.py9
-rw-r--r--SynthLab/SynthLabWindow.py5
3 files changed, 13 insertions, 9 deletions
diff --git a/SynthLab/SynthLabConstants.py b/SynthLab/SynthLabConstants.py
index 0f8d23c..dfecb89 100755
--- a/SynthLab/SynthLabConstants.py
+++ b/SynthLab/SynthLabConstants.py
@@ -42,6 +42,8 @@ class SynthLabConstants:
TYPES = { 'lfo': [.5, 1, 0, 0, 0, 1, 0, 20, 0, 5, 0, 1, FLOAT, FLOAT, INTEGER],
'rand': [.5, 1.5, 2, 0, 0, 2, 0, 2, 0, 20, 0, 1, FLOAT, FLOAT, FLOAT],
'adsr': [.02, .05, .8, .1, 0, 1, 0, 1, 0, 1, 0, 1, FLOAT, FLOAT, FLOAT],
+ 'trackpadX': [0, 1, 0, 0, -1, 1, 0, 2, 0, 1, 0, 1, FLOAT, FLOAT, FLOAT],
+ 'trackpadY': [0, 1, 0, 0, -1, 1, 0, 2, 0, 1, 0, 1, FLOAT, FLOAT, FLOAT],
'fm': [1, .5, 5, 1, 0, 2, 0, 2, 0, 10, 0, 2, FLOAT, FLOAT, FLOAT],
'buzz': [1, 30, .85, 1, 0, 2, 0, 40, 0, 1, 0, 2, FLOAT, INTEGER, FLOAT],
'vco': [1, 1, .2, 1, 0, 2, 0, 2, 0, .5, 0, 2, FLOAT, INTEGER, FLOAT],
@@ -57,9 +59,9 @@ class SynthLabConstants:
'reverb': [1.5, 3000, .5, 1, 0, 4, 100, 7000, 0, 1, 0, 2, FLOAT, FLOAT, FLOAT],
'harmon': [1.25, .04, .5, 1, 0, 2, 0, 1, 0, 1, 0, 2, FLOAT, FLOAT, FLOAT]}
- CONTROL_TYPES = ['lfo', 'rand', 'adsr']
- CONTROL_TYPES_SEL = ['lfosel', 'randsel', 'adsrsel']
- CONTROL_TYPES_PLUS = ['lfo+', 'rand+', 'adsr+']
+ CONTROL_TYPES = ['lfo', 'rand', 'adsr', 'trackpadX', 'trackpadY']
+ CONTROL_TYPES_SEL = ['lfosel', 'randsel', 'adsrsel', 'trackpadXsel', 'trackpadYsel']
+ CONTROL_TYPES_PLUS = ['lfo+', 'rand+', 'adsr+', 'trackpadX+', 'trackpadY+']
SOURCE_TYPES = ['fm', 'buzz', 'vco', 'pluck', 'noise', 'sample', 'voice', 'grain']
SOURCE_TYPES_SEL = ['fmsel', 'buzzsel', 'vcosel', 'plucksel', 'noisesel', 'samplesel', 'voicesel', 'grainsel']
SOURCE_TYPES_PLUS = ['fm+', 'buzz+', 'vco+', 'pluck+', 'noise+', 'sample+', 'voice+', 'grain+']
diff --git a/SynthLab/SynthLabParametersWindow.py b/SynthLab/SynthLabParametersWindow.py
index bfdb351..79fd371 100644
--- a/SynthLab/SynthLabParametersWindow.py
+++ b/SynthLab/SynthLabParametersWindow.py
@@ -6,11 +6,12 @@ import Config
from Util.ThemeWidgets import *
from SynthLab.SynthLabConstants import SynthLabConstants
from SynthLab.Parameter import Parameter
+from Util.Trackpad import Trackpad
Tooltips = Config.Tooltips
class SynthLabParametersWindow( gtk.Window ):
- def __init__( self, instanceID, synthObjectsParameters, writeTables, playNoteFunction ):
+ def __init__( self, instanceID, synthObjectsParameters, writeTables, playNoteFunction, client ):
gtk.Window.__init__( self, gtk.WINDOW_TOPLEVEL )
self.set_type_hint(gtk.gdk.WINDOW_TYPE_HINT_DIALOG)
self.set_title("SynthLab Parameters")
@@ -32,6 +33,8 @@ class SynthLabParametersWindow( gtk.Window ):
self.synthObjectsParameters = synthObjectsParameters
self.writeTables = writeTables
self.playNoteFunction = playNoteFunction
+ self.csnd = client
+ self.trackpad = Trackpad( self, self.csnd )
self.playingPitch = []
self.parameterOpen = 0
self.clockStart = 0
@@ -55,7 +58,7 @@ class SynthLabParametersWindow( gtk.Window ):
self.initRadioButton( types, types2, typesLabelList, self.typeCallback, self.typeBox, self.choosenType )
self.mainBox.pack_start(self.typeBox)
- typeText = Tooltips.SYNTHTYPES[self.objectType][self.choosenType]
+ typeText = Tooltips.SYNTHTYPES[self.objectType][self.choosenType]
self.text = gtk.Label(typeText)
self.mainBox.pack_start(self.text)
@@ -138,7 +141,6 @@ class SynthLabParametersWindow( gtk.Window ):
def onKeyPress(self,widget,event):
key = event.hardware_keycode
- print 'from slider window: %ld' % key
if key not in Config.KEY_MAP:
return
midiPitch = Config.KEY_MAP[key]
@@ -156,7 +158,6 @@ class SynthLabParametersWindow( gtk.Window ):
def resize( self ):
selectedType = SynthLabConstants.CHOOSE_TYPE[self.objectType][self.choosenType]
-
slider1Init = SynthLabConstants.TYPES[selectedType][0]
slider2Init = SynthLabConstants.TYPES[selectedType][1]
slider3Init = SynthLabConstants.TYPES[selectedType][2]
diff --git a/SynthLab/SynthLabWindow.py b/SynthLab/SynthLabWindow.py
index 4686915..979aba7 100644
--- a/SynthLab/SynthLabWindow.py
+++ b/SynthLab/SynthLabWindow.py
@@ -16,7 +16,7 @@ from SynthLab.SynthLabParametersWindow import SynthLabParametersWindow
from SynthLab.SynthObjectsParameters import SynthObjectsParameters
from SynthLab.SynthLabConstants import SynthLabConstants
from SynthLab.Parameter import Parameter
-
+from Util.Trackpad import Trackpad
Tooltips = Config.Tooltips
class SynthLabWindow( gtk.Window ):
@@ -27,6 +27,7 @@ class SynthLabWindow( gtk.Window ):
self.set_border_width(Config.MAIN_WINDOW_PADDING)
self.set_keep_above(False)
self.csnd = client
+ self.trackpad = Trackpad( self, self.csnd )
self.table = table
self.closeCallback = closeCallback
self.set_decorated(False)
@@ -343,7 +344,7 @@ class SynthLabWindow( gtk.Window ):
if self.bounds[i][0] < event.x < self.bounds[i][2] and self.bounds[i][1] < event.y < self.bounds[i][3]:
if self.instanceOpen:
self.synthLabParametersWindow.destroy()
- self.synthLabParametersWindow = SynthLabParametersWindow( i, self.synthObjectsParameters, self.writeTables, self.playNote )
+ self.synthLabParametersWindow = SynthLabParametersWindow( i, self.synthObjectsParameters, self.writeTables, self.playNote, self.csnd )
self.instanceOpen = 1
def handleMotion( self, widget, event ):