From 7399ed8ea8037548ca51309f7405751b035e0e7f Mon Sep 17 00:00:00 2001 From: hogliux Date: Thu, 16 Nov 2017 14:52:57 +0000 Subject: [PATCH] Added a category support for parameters created with the AudioProcessorValueTree --- .../utilities/juce_AudioProcessorValueTreeState.cpp | 10 ++++++---- .../utilities/juce_AudioProcessorValueTreeState.h | 6 +++++- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/modules/juce_audio_processors/utilities/juce_AudioProcessorValueTreeState.cpp b/modules/juce_audio_processors/utilities/juce_AudioProcessorValueTreeState.cpp index 986719154c..0d8438c1b7 100644 --- a/modules/juce_audio_processors/utilities/juce_AudioProcessorValueTreeState.cpp +++ b/modules/juce_audio_processors/utilities/juce_AudioProcessorValueTreeState.cpp @@ -37,8 +37,9 @@ struct AudioProcessorValueTreeState::Parameter : public AudioProcessorParamete std::function textToValue, bool meta, bool automatable, - bool discrete) - : AudioProcessorParameterWithID (parameterID, paramName, labelText), + bool discrete, + AudioProcessorParameter::Category category) + : AudioProcessorParameterWithID (parameterID, paramName, labelText, category), owner (s), valueToTextFunction (valueToText), textToValueFunction (textToValue), range (r), value (defaultVal), defaultValue (defaultVal), listenersNeedCalling (true), @@ -191,7 +192,8 @@ AudioProcessorParameterWithID* AudioProcessorValueTreeState::createAndAddParamet std::function textToValueFunction, bool isMetaParameter, bool isAutomatableParameter, - bool isDiscreteParameter) + bool isDiscreteParameter, + AudioProcessorParameter::Category category) { // All parameters must be created before giving this manager a ValueTree state! jassert (! state.isValid()); @@ -199,7 +201,7 @@ AudioProcessorParameterWithID* AudioProcessorValueTreeState::createAndAddParamet Parameter* p = new Parameter (*this, paramID, paramName, labelText, r, defaultVal, valueToTextFunction, textToValueFunction, isMetaParameter, isAutomatableParameter, - isDiscreteParameter); + isDiscreteParameter, category); processor.addParameter (p); return p; } diff --git a/modules/juce_audio_processors/utilities/juce_AudioProcessorValueTreeState.h b/modules/juce_audio_processors/utilities/juce_AudioProcessorValueTreeState.h index 13ace95955..1fc8b2dcd9 100644 --- a/modules/juce_audio_processors/utilities/juce_AudioProcessorValueTreeState.h +++ b/modules/juce_audio_processors/utilities/juce_AudioProcessorValueTreeState.h @@ -80,6 +80,8 @@ public: @param isAutomatableParameter Set this value to false if this parameter should not be automatable @param isDiscrete Set this value to true to make this parameter take discrete values in a host. @see AudioProcessorParameter::isDiscrete + @param category Which category the parameter should use. + @see AudioProcessorParameter::Category @returns the parameter object that was created */ @@ -92,7 +94,9 @@ public: std::function textToValueFunction, bool isMetaParameter = false, bool isAutomatableParameter = true, - bool isDiscrete = false); + bool isDiscrete = false, + AudioProcessorParameter::Category category + = AudioProcessorParameter::genericParameter); /** Returns a parameter by its ID string. */ AudioProcessorParameterWithID* getParameter (StringRef parameterID) const noexcept;