From 17fb5bfb499108b72d2993201b6b78d2fa9009ba Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Fri, 9 Jun 2017 13:41:04 +0200 Subject: 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). --- libs/ardour/ardour/automation_control.h | 2 ++ libs/ardour/automation_control.cc | 7 +++++++ libs/ardour/pannable.cc | 3 ++- 3 files changed, 11 insertions(+), 1 deletion(-) 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 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 ac) const return p->value_as_string (ac); } - return Automatable::value_as_string (ac); + return ARDOUR::value_as_string(ac->desc(), ac->get_value()); } -- cgit v1.2.3