diff options
author | David Robillard <d@drobilla.net> | 2014-11-02 01:59:18 -0500 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2014-11-02 02:10:24 -0500 |
commit | d02d8337a91358bed481ee9ffa637b825d40748f (patch) | |
tree | a73c0e80e1ef33dc4b64825c6bda24e196527377 /libs/ardour/ardour | |
parent | 47c4929bc285da6d752e68aa5a32cf73f20b9f22 (diff) |
Support pretty display of arbitrary plugin parameter units.
Try e.g. fomp:cs_chorus1 which has Hz and ms controls.
Diffstat (limited to 'libs/ardour/ardour')
-rw-r--r-- | libs/ardour/ardour/parameter_descriptor.h | 1 | ||||
-rw-r--r-- | libs/ardour/ardour/value_as_string.h | 2 |
2 files changed, 3 insertions, 0 deletions
diff --git a/libs/ardour/ardour/parameter_descriptor.h b/libs/ardour/ardour/parameter_descriptor.h index 1576230b8f..379d97ef3e 100644 --- a/libs/ardour/ardour/parameter_descriptor.h +++ b/libs/ardour/ardour/parameter_descriptor.h @@ -101,6 +101,7 @@ struct ParameterDescriptor } std::string label; + std::string print_fmt; ///< format string for pretty printing boost::shared_ptr<ScalePoints> scale_points; uint32_t key; ///< for properties Variant::Type datatype; ///< for properties diff --git a/libs/ardour/ardour/value_as_string.h b/libs/ardour/ardour/value_as_string.h index 6c17ace5d3..e8361bf117 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, // Odd, invalid range, just print the number snprintf(buf, sizeof(buf), "%.0f", v); } + } else if (!desc.print_fmt.empty()) { + snprintf(buf, sizeof(buf), desc.print_fmt.c_str(), v); } else if (desc.integer_step) { snprintf(buf, sizeof(buf), "%d", (int)v); } else { |