From d34fdb98e358b8d1905b72c3f1cf6a065e4446e2 Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Fri, 23 Jun 2017 15:51:17 +0200 Subject: Improve default parameter display --- libs/ardour/ardour/value_as_string.h | 2 ++ libs/ardour/parameter_descriptor.cc | 9 +++++++++ 2 files changed, 11 insertions(+) (limited to 'libs/ardour') diff --git a/libs/ardour/ardour/value_as_string.h b/libs/ardour/ardour/value_as_string.h index 2a973f374e..dd5780580b 100644 --- a/libs/ardour/ardour/value_as_string.h +++ b/libs/ardour/ardour/value_as_string.h @@ -56,6 +56,8 @@ value_as_string(const ARDOUR::ParameterDescriptor& desc, snprintf(buf, sizeof(buf), "%s", ParameterDescriptor::midi_note_name (rint(v)).c_str()); } else if (desc.type == GainAutomation || desc.type == TrimAutomation || desc.type == EnvelopeAutomation) { snprintf(buf, sizeof(buf), "%.1f dB", accurate_coefficient_to_dB (v)); + } else if (desc.type == PanWidthAutomation) { + snprintf (buf, sizeof (buf), "%d%%", (int) floor (100.0 * v)); } else if (!desc.print_fmt.empty()) { snprintf(buf, sizeof(buf), desc.print_fmt.c_str(), v); } else if (desc.integer_step) { diff --git a/libs/ardour/parameter_descriptor.cc b/libs/ardour/parameter_descriptor.cc index 310ec1a483..740997e725 100644 --- a/libs/ardour/parameter_descriptor.cc +++ b/libs/ardour/parameter_descriptor.cc @@ -100,20 +100,29 @@ ParameterDescriptor::ParameterDescriptor(const Evoral::Parameter& parameter) lower = 0.0; normal = 0.0; upper = 127.0; + print_fmt = "%.0f"; break; case MidiPitchBenderAutomation: lower = 0.0; normal = 8192.0; upper = 16383.0; + print_fmt = "%.0f"; break; case PhaseAutomation: toggled = true; + scale_points = boost::shared_ptr(new ScalePoints()); + scale_points->insert (std::make_pair (_("Normal"), 0)); + scale_points->insert (std::make_pair (_("Invert"), 1)); break; case MonitoringAutomation: enumeration = true; integer_step = true; lower = MonitorAuto; upper = MonitorDisk; /* XXX bump when we add MonitorCue */ + scale_points = boost::shared_ptr(new ScalePoints()); + scale_points->insert (std::make_pair (_("Auto"), MonitorAuto)); + scale_points->insert (std::make_pair (_("Input"), MonitorInput)); + scale_points->insert (std::make_pair (_("Disk"), MonitorDisk)); break; case SoloIsolateAutomation: case SoloSafeAutomation: -- cgit v1.2.3