I’m sorry, but that’s not the behavior I’m seeing. To be clear, I’m referring to the purpose of the third “label” argument of the .createAndAddParameter method, whose value as far as I can tell does not appear anywhere in the host application I’m testing in (which is also Logic). What you’re referring to in your example in your previous post is actually accomplished via the second argument of the .createAndAddParameter method, otherwise known as the “parameterName”.
To give this some context, I’m using the JUCE AudioProcessorValueTreeState tutorial as a reference point, and here’s the particular example code snippet from the tutorial which I hope will clarify things:
parameters.createAndAddParameter ("gain", // parameter ID
"Gain", // parameter name
String(), // parameter label (suffix)
NormalisableRange<float> (0.0f, 1.0f), // range
0.5f, // default value
nullptr,
nullptr);
When I build this tutorial it’s actually the second argument (labelled in the comments as “parameter name”) which appears as the parameter name in the automation lane. So then, for example, if I create a parameter and supply a label like this, along with a valueToText function…
parameters.createAndAddParameter ("gain", // parameter ID
"Gain", // parameter name
String("xyz123"), // parameter label (suffix)
NormalisableRange<float> (0.0f, 4.0f, 0.01), // range
0.5f, // default value
myValueToTextFunction,
nullptr);
…the “parameter label” does not get appended as a suffix to the individual automation data points, and it is the String value of the second “parameter name” argument that appears in as the name of the parameter:
And sorry if I didn’t communicate this more clearly, but I am actually wondering exactly how I can access a parameter’s label within a valueToText function. So, when you say:
Is it possible to do this within a static valueToText function and would you mind showing some example code demonstrating this exactly?
From my initial attempts I cannot figure out how to do this. Thanks for all your feedback so far.