summaryrefslogtreecommitdiff
path: root/libs/panners/2in2out
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2012-05-31 13:58:59 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2012-05-31 13:58:59 +0000
commit0b958b7f15decdce3ebb8234504014768ac12bba (patch)
tree8ac90c0fdf336b657cc574d17fceb3e6e371cd23 /libs/panners/2in2out
parent78c0811ed7319a87be66c1207d1b01360576977b (diff)
allow alt-drag on stereo panner to move just one side of the stereo field. this wiggles a bit, possibly because of rounding, and that probably needs to be addressed
git-svn-id: svn://localhost/ardour2/branches/3.0@12500 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/panners/2in2out')
-rw-r--r--libs/panners/2in2out/panner_2in2out.cc13
-rw-r--r--libs/panners/2in2out/panner_2in2out.h1
2 files changed, 14 insertions, 0 deletions
diff --git a/libs/panners/2in2out/panner_2in2out.cc b/libs/panners/2in2out/panner_2in2out.cc
index 8e798315d0..57b8836787 100644
--- a/libs/panners/2in2out/panner_2in2out.cc
+++ b/libs/panners/2in2out/panner_2in2out.cc
@@ -124,8 +124,21 @@ Panner2in2out::set_width (double p)
}
void
+Panner2in2out::thaw ()
+{
+ Panner::thaw ();
+ if (_frozen == 0) {
+ update ();
+ }
+}
+
+void
Panner2in2out::update ()
{
+ if (_frozen) {
+ return;
+ }
+
/* it would be very nice to split this out into a virtual function
that can be accessed from BaseStereoPanner and used in do_distribute_automated().
diff --git a/libs/panners/2in2out/panner_2in2out.h b/libs/panners/2in2out/panner_2in2out.h
index 232d63ec62..001d3064e8 100644
--- a/libs/panners/2in2out/panner_2in2out.h
+++ b/libs/panners/2in2out/panner_2in2out.h
@@ -67,6 +67,7 @@ class Panner2in2out : public Panner
void update ();
void reset ();
+ void thaw ();
protected:
float left[2];