summaryrefslogtreecommitdiff
path: root/libs/ardour/panner.cc
diff options
context:
space:
mode:
Diffstat (limited to 'libs/ardour/panner.cc')
-rw-r--r--libs/ardour/panner.cc23
1 files changed, 23 insertions, 0 deletions
diff --git a/libs/ardour/panner.cc b/libs/ardour/panner.cc
index b224bf558e..c400199943 100644
--- a/libs/ardour/panner.cc
+++ b/libs/ardour/panner.cc
@@ -29,6 +29,7 @@
#include <locale.h>
#include <unistd.h>
#include <float.h>
+#include <iomanip>
#include <glibmm.h>
@@ -1640,3 +1641,25 @@ Panner::set_mono (bool yn)
(*i)->set_mono (yn);
}
}
+
+string
+Panner::value_as_string (double v)
+{
+ if (Panner::equivalent (v, 0.5)) {
+ return _("C");
+ } else if (equivalent (v, 0)) {
+ return _("L");
+ } else if (equivalent (v, 1)) {
+ return _("R");
+ } else if (v < 0.5) {
+ stringstream s;
+ s << fixed << setprecision (0) << _("L") << ((0.5 - v) * 200) << "%";
+ return s.str();
+ } else {
+ stringstream s;
+ s << fixed << setprecision (0) << _("R") << ((v -0.5) * 200) << "%";
+ return s.str ();
+ }
+
+ return "";
+}