aboutsummaryrefslogtreecommitdiff
path: root/guile/starlet/midi-control/faders.scm
diff options
context:
space:
mode:
Diffstat (limited to 'guile/starlet/midi-control/faders.scm')
-rw-r--r--guile/starlet/midi-control/faders.scm9
1 files changed, 8 insertions, 1 deletions
diff --git a/guile/starlet/midi-control/faders.scm b/guile/starlet/midi-control/faders.scm
index 912d9f7..d0363d7 100644
--- a/guile/starlet/midi-control/faders.scm
+++ b/guile/starlet/midi-control/faders.scm
@@ -213,6 +213,13 @@
;; Stuff to clear up when we're done with selected fixtures
(define midi-callbacks '())
+(define (flatten-sublists l)
+ (fold (lambda (a prev)
+ (if (list? a)
+ (append a prev)
+ (cons a prev)))
+ '() l))
+
(define (sel . fixture-list)
@@ -235,5 +242,5 @@
(set! midi-callbacks
(map (lambda (control-spec)
(midi-control-attr control-spec
- fixture-list))
+ (flatten-sublists fixture-list)))
control-map))))