Greetings,
I am trying to find help in building a simple customizable options menu for a VST3 plugin. I have all the documentation but can’t put the pieces together or find a worked example that is complete.
Much appreciated.
Greetings,
I am trying to find help in building a simple customizable options menu for a VST3 plugin. I have all the documentation but can’t put the pieces together or find a worked example that is complete.
Much appreciated.
Here is a code example for a context menu:
You also should take a look at GetMenuItemInfoW, SetMenuItemInfoW, AppendMenuW and InsertMenuItemW, which you can use to modify the menu.
As VST development mostly is happening on more than one platform, I suggest to use a dedicated UI framework for these stuff like VSTGUI instead of working with native API’s like the one mentioned by SunshineDreaming.
So answering the question needs a little more information from @laecornell: what framework do you use and what is the purpose of the menu (because there is special context menu support in VST3 when it comes to parameters)?
I have the basic how to define and hookup a parameter outline. I used the x86 project generator. I am thinking I use CControl for the buttons and then when that parameter changes, cause a COptionMenu to pop up at the spot I want. But I can’t see any way to add list items to the COptionMenu class? I can easily drag in components from the WYSIWUG Editor and then translate the saved json into XML to place in the uidesc file. I am preferring to design the gui using the xml in the uidesc file. I have all the snippets I need to define the enum and hook it up to the gui item in the controller and processor scripts. I have my own cview that I can draw to. Just don’t see how to do the COptionMenu. I could add a mouse listener, put a bitmap in a view and then interpret the clicks for x-value. Kind of hard wiring that, but I thought the purpose of the editor was to give us some prepackaged interface?
Thanks for your replies.
How do you create the COptionMenu class?
I am about to sit down and work on a that today. I am thinking I will create an xml entry one for each CControl button and have it hidden at the place I want it to pop-up then make it visible when -people click the buttons. It at least seems a reasonable plan?
But how do you create the view you describe in the xml?