summaryrefslogtreecommitdiff
path: root/libs/panners/vbap
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2011-02-22 21:55:25 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2011-02-22 21:55:25 +0000
commit2daa616e02aeaf40d898b0c61e4993c3952235e5 (patch)
tree0790c4f8898b8fd047f8bf951973203b518373ce /libs/panners/vbap
parent7b8a76de25e55a585b0f4375c155aa0c2ad98da2 (diff)
add scroll event handling to the vbap panner GUI; clamp vbap pos+width values (but not via clamp_*())
git-svn-id: svn://localhost/ardour2/branches/3.0@8932 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/panners/vbap')
-rw-r--r--libs/panners/vbap/vbap.cc13
1 files changed, 10 insertions, 3 deletions
diff --git a/libs/panners/vbap/vbap.cc b/libs/panners/vbap/vbap.cc
index 67e225b8aa..99a83d4106 100644
--- a/libs/panners/vbap/vbap.cc
+++ b/libs/panners/vbap/vbap.cc
@@ -436,12 +436,19 @@ VBAPanner::get_speakers () const
void
VBAPanner::set_position (double p)
{
+ if (p < 0.0) {
+ p = 1.0 + p;
+ }
+
+ if (p > 1.0) {
+ p = fmod (p, 1.0);
+ }
+
_pannable->pan_azimuth_control->set_value (p);
}
void
-VBAPanner::set_width (double p)
+VBAPanner::set_width (double w)
{
- _pannable->pan_width_control->set_value (p);
+ _pannable->pan_width_control->set_value (min (1.0, max (-1.0, w)));
}
-