aboutsummaryrefslogtreecommitdiff
path: root/guile/starlet/midi-control/faders.scm
diff options
context:
space:
mode:
authorThomas White <taw@physics.org>2021-08-08 17:24:09 +0200
committerThomas White <taw@physics.org>2021-08-08 17:24:09 +0200
commitd79c75b3db76e242e0299d5d324191e3133de235 (patch)
tree4f2372906e5daaed42575b2972eafaad606e9d1b /guile/starlet/midi-control/faders.scm
parentbc6dccd1fa53644f81274a5b660749ced7d9d8a5 (diff)
Add hook for state updates
This includes a "source", intended to be used for avoiding hook users from responding to their own changes.
Diffstat (limited to 'guile/starlet/midi-control/faders.scm')
-rw-r--r--guile/starlet/midi-control/faders.scm15
1 files changed, 10 insertions, 5 deletions
diff --git a/guile/starlet/midi-control/faders.scm b/guile/starlet/midi-control/faders.scm
index 8745688..dbd2a0f 100644
--- a/guile/starlet/midi-control/faders.scm
+++ b/guile/starlet/midi-control/faders.scm
@@ -128,7 +128,8 @@
attr
(clamp-to-attr-range
attr-obj
- (+ old-val offset))))))
+ (+ old-val offset))
+ controller))))
fixtures old-vals)))))))
@@ -177,13 +178,15 @@
attr-name
gradients
initial-vals
- fixtures)
+ fixtures
+ controller)
(for-each (lambda (fix initial-val gradient)
(set-in-state! programmer-state
fix
attr-name
(+ initial-val
- (* gradient cc-offset))))
+ (* gradient cc-offset))
+ controller))
fixtures
initial-vals
gradients))
@@ -225,13 +228,15 @@
attr-name
up-gradients
initial-vals
- fixtures))
+ fixtures
+ controller))
((<= new-cc-value congruent-val)
(apply-fader (- new-cc-value congruent-val)
attr-name
dn-gradients
initial-vals
- fixtures)))
+ fixtures
+ controller)))
(when (or (and (not prev-cc-val)
(= new-cc-value congruent-val))