summaryrefslogtreecommitdiff
path: root/libs/ardour/plugin_insert.cc
diff options
context:
space:
mode:
authorCarl Hetherington <carl@carlh.net>2011-02-12 14:10:15 +0000
committerCarl Hetherington <carl@carlh.net>2011-02-12 14:10:15 +0000
commit825cb4ce18891f9c1f0a063c93262e19025c331d (patch)
tree264df032262390f55d368f9d39810aba032b2c89 /libs/ardour/plugin_insert.cc
parent27cbe72d969e16a16dd60c4d86c018a2d2cec78f (diff)
Label logarithmic plugin controls correctly. Should fix #3767.
git-svn-id: svn://localhost/ardour2/branches/3.0@8832 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/plugin_insert.cc')
-rw-r--r--libs/ardour/plugin_insert.cc16
1 files changed, 16 insertions, 0 deletions
diff --git a/libs/ardour/plugin_insert.cc b/libs/ardour/plugin_insert.cc
index 8a5919ab5a..a690cce5cc 100644
--- a/libs/ardour/plugin_insert.cc
+++ b/libs/ardour/plugin_insert.cc
@@ -1164,3 +1164,19 @@ PluginInsert::set_splitting (bool s)
_splitting = s;
SplittingChanged (); /* EMIT SIGNAL */
}
+
+string
+PluginInsert::value_as_string (boost::shared_ptr<AutomationControl> ac) const
+{
+ boost::shared_ptr<PluginControl> pc = boost::dynamic_pointer_cast<PluginControl> (ac);
+ assert (pc);
+
+ stringstream s;
+ if (pc->logarithmic ()) {
+ s << exp (pc->get_value ());
+ } else {
+ s << pc->get_value ();
+ }
+
+ return s.str ();
+}