diff --git a/jucewrapper/CardinalWrapper.cpp b/jucewrapper/CardinalWrapper.cpp index 8503c06..d093389 100644 --- a/jucewrapper/CardinalWrapper.cpp +++ b/jucewrapper/CardinalWrapper.cpp @@ -69,7 +69,8 @@ protected: juce::String getName(const int maximumStringLength) const override { - DISTRHO_SAFE_ASSERT_RETURN(maximumStringLength > 0, {}); + if (maximumStringLength <= 0) + return juce::String(plugin.getParameterName(index).buffer()); return juce::String(plugin.getParameterName(index).buffer(), static_cast(maximumStringLength)); } @@ -111,8 +112,6 @@ protected: juce::String getText(const float normalizedValue, const int maximumStringLength) const override { - DISTRHO_SAFE_ASSERT_RETURN(maximumStringLength > 0, {}); - float value = ranges.getUnnormalizedValue(normalizedValue); if (hints & kParameterIsBoolean) @@ -130,7 +129,12 @@ protected: for (uint32_t i=0; i < enumValues.count; ++i) { if (d_isEqual(enumValues.values[i].value, value)) + { + if (maximumStringLength <= 0) + return juce::String(enumValues.values[i].label); + return juce::String(enumValues.values[i].label, static_cast(maximumStringLength)); + } } } @@ -140,6 +144,9 @@ protected: else text = juce::String(value); + if (maximumStringLength <= 0) + return text; + return juce::String(text.toRawUTF8(), static_cast(maximumStringLength)); }