commit 5d95ffef8eed79d8998c6919c6ed9361b175570d parent f4f0c99912fab64975b96c855d8bad4e2adca7e1 Author: Tal Aviram <me@talaviram.com> Date: Thu, 23 Sep 2021 23:00:28 +0300 controller - fix discrete parameters not transitive for defaults. Diffstat:
M | source/jucePlugin/VirusParameter.h | | | 10 | ++++++++-- |
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/source/jucePlugin/VirusParameter.h b/source/jucePlugin/VirusParameter.h @@ -65,8 +65,14 @@ namespace Virus { if (m_desc.textToValueFunction) return convertTo0to1(m_desc.textToValueFunction(text, m_desc)); - else - return convertTo0to1(text.getFloatValue()); + if (m_desc.valueToTextFunction) + { + // brute force but this should be O(1) of 128... + for (auto i = 0; i < 128; i++) + if (m_desc.valueToTextFunction(i, m_desc) == text) + return convertTo0to1(i); + } + return convertTo0to1(text.getFloatValue()); } juce::String getText(float normalisedValue, int /*maximumStringLength*/) const override