22 #include <public.sdk/source/vst/vsteditcontroller.h> 23 #include <vstgui4/vstgui/lib/cframe.h> 29 #include <vstgui4/vstgui/plugin-bindings/vst3editor.h> 35 using namespace Params;
46 explicit GUIController(
char const *iXmlFileName =
"Views.uidesc",
47 char const *iMainViewName =
"view");
61 IUIDescription
const *iDescription,
62 IController *iBaseController) {
return nullptr; };
66 tresult PLUGIN_API initialize(FUnknown *context)
override;
69 tresult PLUGIN_API terminate()
override;
72 IPlugView *PLUGIN_API createView(
const char *name)
override;
75 void didOpen(VST3Editor *editor)
override;
78 void willClose(VST3Editor *editor)
override;
82 tresult PLUGIN_API setComponentState(IBStream *state)
override;
85 tresult PLUGIN_API setState(IBStream *state)
override;
88 tresult PLUGIN_API getState(IBStream *state)
override;
91 tresult PLUGIN_API notify(IMessage *message) SMTG_OVERRIDE;
94 IController *createSubController(UTF8StringPtr iName,
95 const IUIDescription *iDescription,
96 VST3Editor *iEditor)
override;
117 virtual bool switchToView(
char const *iViewName);
126 IPtr<IMessage> allocateMessage()
override;
129 tresult sendMessage(IPtr<IMessage> iMessage)
override;
136 VSTGUI::CKnobMode fDefaultKnobMode{VSTGUI::CKnobMode::kLinearMode};
149 VSTGUI::VST3Editor *fVST3Editor{};
std::string fCurrentViewName
Definition: GUIController.h:146
Definition: GUIState.h:39
Definition: GUIController.h:42
Definition: MessageProducer.h:33
virtual IController * createCustomController(UTF8StringPtr iName, IUIDescription const *iDescription, IController *iBaseController)
Definition: GUIController.h:60
virtual bool switchToMainView()
Definition: GUIController.h:122
std::string fMainViewName
Definition: GUIController.h:143
Definition: CustomViewFactory.h:33
Definition: GUIParamCxAware.h:38
char const *const fXmlFileName
Definition: GUIController.h:133