diff options
Diffstat (limited to 'libs/ardour/panner.cc')
-rw-r--r-- | libs/ardour/panner.cc | 23 |
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 ""; +} |