Code: Select all
// create top root unit with kProgramId as id for the programList
addUnit(new Unit(String("Root"), kRootUnitId, kNoParentUnitId, kProgramId));
// create the program list: here kNumProgs entries
ProgramList* prgList2 = new ProgramList(String("program"), kProgramId, kRootUnitId);
addProgramList(prgList2);
for (int32 i = 0; i < kNumPrograms; i++)
{
String title;
title.printf(programs[i].name, i + 1);
prgList2->addProgram(title);
}
//---Program Change parameter---
Parameter* prgParam2 = prgList2->getParameter();
// by default this program change parameter if automatable we can overwrite this:
// prgParam2->getInfo().flags &= ~ParameterInfo::kCanAutomate;
parameters.addParameter(prgParam2);
However when i change the patch number in my plugin the curretly selected patch in the host's plugin browser does not get updated. It still shows the old patch.
In VST 2.4 you simply did call
setProgram (VstInt32 program) { curProgram = program; }
However i can't find this in VST3. How do I notify the host about a program change?
The VST3 SDK really drives me nuts
Thanks,
Markus