summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2017-06-09 13:41:04 +0200
committerRobin Gareus <robin@gareus.org>2017-06-09 16:54:21 +0200
commit17fb5bfb499108b72d2993201b6b78d2fa9009ba (patch)
tree4c02ebfab938b355499de400f7a969c93f69803b
parentb0f68a0f5c8ee0cba1c9c2b2319c3369d5650a87 (diff)
Prepare to eventually drop Automatable::value_as_string()
Probably due to historical reasons, there are two APIs to format a control's value. In all both variants end up calling either ARDOUR::value_as_string() or the Controllable's formatting function (except for panners).
-rw-r--r--libs/ardour/ardour/automation_control.h2
-rw-r--r--libs/ardour/automation_control.cc7
-rw-r--r--libs/ardour/pannable.cc3
3 files changed, 11 insertions, 1 deletions
diff --git a/libs/ardour/ardour/automation_control.h b/libs/ardour/ardour/automation_control.h
index 299b7d1d97..cb3b6085f4 100644
--- a/libs/ardour/ardour/automation_control.h
+++ b/libs/ardour/ardour/automation_control.h
@@ -116,6 +116,8 @@ class LIBARDOUR_API AutomationControl
double internal_to_interface (double i) const;
double interface_to_internal (double i) const;
+ virtual std::string get_user_string() const;
+
const ParameterDescriptor& desc() const { return _desc; }
const ARDOUR::Session& session() const { return _session; }
diff --git a/libs/ardour/automation_control.cc b/libs/ardour/automation_control.cc
index ffff120a23..7e74ce7cf7 100644
--- a/libs/ardour/automation_control.cc
+++ b/libs/ardour/automation_control.cc
@@ -31,6 +31,7 @@
#include "ardour/event_type_map.h"
#include "ardour/session.h"
#include "ardour/selection.h"
+#include "ardour/value_as_string.h"
#include "pbd/i18n.h"
@@ -338,6 +339,12 @@ AutomationControl::interface_to_internal (double val) const
return val;
}
+std::string
+AutomationControl::get_user_string () const
+{
+ return ARDOUR::value_as_string (_desc, get_value());
+}
+
void
AutomationControl::set_group (boost::shared_ptr<ControlGroup> cg)
{
diff --git a/libs/ardour/pannable.cc b/libs/ardour/pannable.cc
index e91eb43429..a32efc74aa 100644
--- a/libs/ardour/pannable.cc
+++ b/libs/ardour/pannable.cc
@@ -28,6 +28,7 @@
#include "ardour/panner.h"
#include "ardour/pan_controllable.h"
#include "ardour/session.h"
+#include "ardour/value_as_string.h"
#include "pbd/i18n.h"
@@ -282,5 +283,5 @@ Pannable::value_as_string (boost::shared_ptr<const AutomationControl> ac) const
return p->value_as_string (ac);
}
- return Automatable::value_as_string (ac);
+ return ARDOUR::value_as_string(ac->desc(), ac->get_value());
}