ASPiK SDK
|
The PluginGUI object that maintains the entire GUI operation and has #defines to use with AAX, AU, VST3 and RAFX2 plugins. Note the multiple inheritance inolved with this very complex object. The IGUIView interface is the only non-VSTGUI4 base class. It allows for GUI resizing and manipulation, if and only if the host DAW allows and provides the mechanism for it. More...
#include <plugingui.h>
Public Member Functions | |
PluginGUI (UTF8StringPtr _xmlFile) | |
virtual | ~PluginGUI () |
bool | open (UTF8StringPtr _viewName, void *parent, const std::vector< PluginParameter *> *pluginParameterPtr, const PlatformType &platformType=kDefaultNative, IGUIPluginConnector *_guiPluginConnector=nullptr, void *data=nullptr) |
void | close () |
void | syncGUIControl (uint32_t controlID) |
void | getSize (float &width, float &height) |
void | scaleGUISize (uint32_t controlValue) |
void | writeToPresetFile () |
void | setAAXViewContainer (AAX_IViewContainer *_aaxViewContainer) |
AAX ONLY: plugin shell GUI object sets this after creation. More... | |
void | setAAXParameterFromGUIControl (CControl *control, int tag, float actualValue, float normalizedValue) |
set the plugin shelll parameter from GUI control using thread-safe mechanism More... | |
void | updateGUIControlAAX (int tag, float actualPluginValue, float normalizedValue=0.f, bool useNormalized=false) |
set the GUI control from the plugin shell GUI object (thread-safe) More... | |
void | dispatchAUControlChange (int tag, float actualPluginValue, int message=-1, bool fromEventListener=false) |
set the GUI control from the AU event generator; this is part of the thread-safe event system. This gets called when automation is running. More... | |
void | setAU (AudioUnit inAU) |
CMessageResult | notify (CBaseObject *sender, IdStringPtr message) override |
virtual void | valueChanged (VSTGUI::CControl *pControl) override |
virtual int32_t | controlModifierClicked (VSTGUI::CControl *pControl, VSTGUI::CButtonState button) override |
return 1 if you want the control to not handle it, otherwise 0 More... | |
virtual void | controlBeginEdit (VSTGUI::CControl *pControl) override |
virtual void | controlEndEdit (VSTGUI::CControl *pControl) override |
virtual void | controlTagWillChange (VSTGUI::CControl *pControl) override |
virtual void | controlTagDidChange (VSTGUI::CControl *pControl) override |
CView * | createUserCustomView (std::string viewname, const CRect rect, IControlListener *listener, int32_t tag) |
CView * | createView (const UIAttributes &attributes, const IUIDescription *description) override |
IController * | createSubController (UTF8StringPtr name, const IUIDescription *description) override |
ControlUpdateReceiver * | getControlUpdateReceiver (int32_t tag) const |
void | onViewAdded (CFrame *frame, CView *view) override |
void | onViewRemoved (CFrame *frame, CView *view) override |
void | onMouseEntered (CView *view, CFrame *frame) override |
void | onMouseExited (CView *view, CFrame *frame) override |
CMouseEventResult | onMouseDown (CFrame *frame, const CPoint &where, const CButtonState &buttons) override |
CMouseEventResult | onMouseMoved (CFrame *frame, const CPoint &where, const CButtonState &buttons) override |
int32_t | onKeyDown (const VstKeyCode &code, CFrame *frame) override |
int32_t | onKeyUp (const VstKeyCode &code, CFrame *frame) override |
virtual bool | validateCommandMenuItem (CCommandMenuItem *item) |
virtual bool | onCommandMenuItemSelected (CCommandMenuItem *item) |
virtual void | setGUIWindowFrame (IGUIWindowFrame *frame) override |
set the interface pointer for resizing from the GUI More... | |
bool | hasWriteableControl (CControl *control) |
check to see if we already store this meter control More... | |
void | checkAddWriteableControl (PluginParameter *piParam, CControl *control) |
check to see if we already store this meter control and add it if we don't More... | |
void | checkRemoveWriteableControl (CControl *control) |
check to see if we already store this meter control and remove it if we do More... | |
void | deleteControlUpdateReceivers () |
delete all reciever objects | |
void | forgetWriteableControls () |
forget all writeable (neter) controls | |
bool | hasICustomView (CView *view) |
simple helper function to test view for ICustomView More... | |
bool | hasICustomView (IController *subController) |
simple helper function to test sub-controller for ICustomView More... | |
PluginGUI (UTF8StringPtr _xmlFile) | |
PluginGUI constructor; note that this maintains both Mac and Windows contexts, the bundle ref for Mac and the external void* for Windows. More... | |
virtual | ~PluginGUI () |
PluginGUI destructor. More... | |
bool | open (UTF8StringPtr _viewName, void *parent, const std::vector< PluginParameter *> *pluginParameterPtr, const PlatformType &platformType=kDefaultNative, IGUIPluginConnector *_guiPluginConnector=nullptr, void *data=nullptr) |
void | close () |
prepares the GUI control objects for destruction, cleans up More... | |
void | syncGUIControl (uint32_t controlID) |
safely sets the GUI control value based on the plugin parameter value More... | |
void | getSize (float &width, float &height) |
returns the size into the pass-by-reference variables More... | |
void | scaleGUISize (uint32_t controlValue) |
scales the GUI; this is the handler for the special scaling GUI control More... | |
void | writeToPresetFile () |
writes the current state of all GUI controls into a text file so that yuu can simply cut and paste the C++ code into the core object file. More... | |
CMessageResult | notify (CBaseObject *sender, IdStringPtr message) override |
virtual void | valueChanged (VSTGUI::CControl *pControl) override |
virtual int32_t | controlModifierClicked (VSTGUI::CControl *pControl, VSTGUI::CButtonState button) override |
return 1 if you want the control to not handle it, otherwise 0 More... | |
virtual void | controlBeginEdit (VSTGUI::CControl *pControl) override |
virtual void | controlEndEdit (VSTGUI::CControl *pControl) override |
virtual void | controlTagWillChange (VSTGUI::CControl *pControl) override |
virtual void | controlTagDidChange (VSTGUI::CControl *pControl) override |
CView * | createUserCustomView (std::string viewname, const CRect rect, IControlListener *listener, int32_t tag) |
add your custom views here; this is where you can create and register the views outside of the createView( ) method below. More... | |
CView * | createView (const UIAttributes &attributes, const IUIDescription *description) override |
IController * | createSubController (UTF8StringPtr name, const IUIDescription *description) override |
ControlUpdateReceiver * | getControlUpdateReceiver (int32_t tag) const |
find the receiver for a given tag; there can be only one receiver for any tag More... | |
void | onViewAdded (CFrame *frame, CView *view) override |
void | onViewRemoved (CFrame *frame, CView *view) override |
void | onMouseEntered (CView *view, CFrame *frame) override |
void | onMouseExited (CView *view, CFrame *frame) override |
CMouseEventResult | onMouseDown (CFrame *frame, const CPoint &where, const CButtonState &buttons) override |
CMouseEventResult | onMouseMoved (CFrame *frame, const CPoint &where, const CButtonState &buttons) override |
int32_t | onKeyDown (const VstKeyCode &code, CFrame *frame) override |
int32_t | onKeyUp (const VstKeyCode &code, CFrame *frame) override |
virtual bool | validateCommandMenuItem (CCommandMenuItem *item) |
validates menu item selections to prevent crashing More... | |
virtual bool | onCommandMenuItemSelected (CCommandMenuItem *item) |
message handler for GUI Designer menu More... | |
virtual void | setGUIWindowFrame (IGUIWindowFrame *frame) override |
set the interface pointer for resizing from the GUI More... | |
bool | hasWriteableControl (CControl *control) |
check to see if we already store this meter control More... | |
void | checkAddWriteableControl (PluginParameter *piParam, CControl *control) |
check to see if we already store this meter control and add it if we don't More... | |
void | checkRemoveWriteableControl (CControl *control) |
check to see if we already store this meter control and remove it if we do More... | |
void | deleteControlUpdateReceivers () |
delete all reciever objects | |
void | forgetWriteableControls () |
forget all writeable (neter) controls | |
bool | hasICustomView (CView *view) |
simple helper function to test view for ICustomView More... | |
bool | hasICustomView (IController *subController) |
simple helper function to test sub-controller for ICustomView More... | |
Static Public Member Functions | |
static bool | parseSize (const std::string &str, CPoint &point) |
simple helper function to get size from string More... | |
static bool | parseSize (const std::string &str, CPoint &point) |
simple helper function to get size from string More... | |
Protected Member Functions | |
virtual void | idle () |
void | preCreateGUI () |
bool | createGUI (bool bShowGUIEditor) |
void | save (bool saveAs=false) |
virtual int32_t | getKnobMode () const override |
void | deleteGUIControlList () |
PluginParameter * | getGuiControlWithTag (int tag) |
find the local PluginParameter that is connected to the same control ID More... | |
std::string | getGUIDesignerSize () |
int | getControlID_WithMouseCoords (const CPoint &where) |
CControl * | getControl_WithMouseCoords (const CPoint &where) |
CMouseEventResult | sendAAXMouseDown (int controlID, const CButtonState &buttons) |
CMouseEventResult | sendAAXMouseMoved (int controlID, const CButtonState &buttons, const CPoint &where) |
CMouseEventResult | sendAUMouseDown (CControl *control, const CButtonState &buttons) |
CMouseEventResult | sendAUMouseMoved (CControl *control, const CButtonState &buttons, const CPoint &where) |
void | setPluginParameterFromGUIControl (CControl *control, int tag, float actualValue, float normalizedValue) |
safely set a plugin shell parameter with a GUI control More... | |
void | setAUEventFromGUIControl (CControl *control, int tag, float normalizedValue) |
set the AU event from the GUI congrol; this is part of the thread-safe event system. This is called to safely set the GUI control value on the plugin shell's parameter list. More... | |
void | setVSTParameterFromGUIControl (CControl *control, int tag, float actualValue, float normalizedValue) |
set the VST parameter from the GUI control More... | |
void | updateGUIControlVST (int tag, float normalizedValue) |
set the GUI control from the VST parameter More... | |
void | setRAFXParameterFromGUIControl (CControl *control, int tag, float actualValue, float normalizedValue) |
set the RAFX2 parameter from the GUI control More... | |
void | updateGUIControlRAFX (int tag, float normalizedValue) |
set the GUI control from the RAFX2 parameter More... | |
virtual void | idle () |
perform idling operation; called directly from timer thread More... | |
void | preCreateGUI () |
one-time pre-create init, currently used for AU only More... | |
bool | createGUI (bool bShowGUIEditor) |
creates either the GUI or the GUI Designer More... | |
void | save (bool saveAs=false) |
virtual int32_t | getKnobMode () const override |
void | deleteGUIControlList () |
PluginParameter * | getGuiControlWithTag (int tag) |
find the local PluginParameter that is connected to the same control ID More... | |
std::string | getGUIDesignerSize () |
get size string More... | |
int | getControlID_WithMouseCoords (const CPoint &where) |
control finder, for AAX only, part of Pro Tools automation keyboard shortcut More... | |
CControl * | getControl_WithMouseCoords (const CPoint &where) |
control finder, for AAX only, part of Pro Tools automation keyboard shortcut More... | |
CMouseEventResult | sendAAXMouseDown (int controlID, const CButtonState &buttons) |
mouse down handler for Pro Tools keyboard shortcuts More... | |
CMouseEventResult | sendAAXMouseMoved (int controlID, const CButtonState &buttons, const CPoint &where) |
mouse moved handler for Pro Tools keyboard shortcuts More... | |
CMouseEventResult | sendAUMouseDown (CControl *control, const CButtonState &buttons) |
mouse down handler for AU automation More... | |
CMouseEventResult | sendAUMouseMoved (CControl *control, const CButtonState &buttons, const CPoint &where) |
void | setPluginParameterFromGUIControl (CControl *control, int tag, float actualValue, float normalizedValue) |
safely set a plugin shell parameter with a GUI control More... | |
Protected Attributes | |
IGUIPluginConnector * | guiPluginConnector = nullptr |
the plugin shell interface that arrives with the open( ) function; OK if NULL for standalone GUIs | |
UIDescription * | description = nullptr |
the description version of the XML file | |
std::string | viewName |
name | |
std::string | xmlFile |
the XML file name | |
uint32_t | numUIControls = 0 |
control counter | |
double | zoomFactor = 1.0 |
scaling factor for built-in scaling | |
CVSTGUITimer * | timer |
timer object (this is platform dependent) | |
CPoint | minSize |
the min size of the GUI window | |
CPoint | maxSize |
the max size of the GUI window | |
CRect | nonEditRect |
non-edit area for GUI designer | |
bool | showGUIEditor = false |
show the GUI designer | |
bool | createNewView = true |
show the normal GUI | |
double | guiDesignerWidth |
GUI Designer's frame size. | |
double | guiDesignerHeight |
GUI Designer's frame size. | |
float | guiWidth |
embedded GUI size | |
float | guiHeight |
embedded GUI size | |
IGUIWindowFrame * | guiWindowFrame = nullptr |
interface to allow plugin shell to resize our window | |
CFrame * | guiEditorFrame = nullptr |
pointer to our frame | |
uint32_t | knobAction = kLinearMode |
knob mode | |
AudioUnit | m_AU |
AU ONLY: the AU plugin reference. | |
AUEventListenerRef | AUEventListener |
AU ONLY: the event listener token. | |
The PluginGUI object that maintains the entire GUI operation and has #defines to use with AAX, AU, VST3 and RAFX2 plugins. Note the multiple inheritance inolved with this very complex object. The IGUIView interface is the only non-VSTGUI4 base class. It allows for GUI resizing and manipulation, if and only if the host DAW allows and provides the mechanism for it.
Features:
VSTGUI::PluginGUI::PluginGUI | ( | UTF8StringPtr | _xmlFile | ) |
construction with XML file
|
virtual |
destruction
PluginGUI::PluginGUI | ( | UTF8StringPtr | _xmlFile | ) |
PluginGUI constructor; note that this maintains both Mac and Windows contexts, the bundle ref for Mac and the external void* for Windows.
construction with XML file
Operation:
|
virtual |
|
inline |
check to see if we already store this meter control and add it if we don't
control | the control object |
piParam | the parameter object associated with the control |
|
inline |
check to see if we already store this meter control and add it if we don't
control | the control object |
piParam | the parameter object associated with the control |
|
inline |
check to see if we already store this meter control and remove it if we do
control | the control object |
|
inline |
check to see if we already store this meter control and remove it if we do
control | the control object |
void PluginGUI::close | ( | ) |
prepares the GUI control objects for destruction, cleans up
destroy the GUI guts before frame is destoyed
Operation:
void VSTGUI::PluginGUI::close | ( | ) |
destroy the GUI guts before frame is destoyed
|
overridevirtual |
the user has started to change the GUI control
|
overridevirtual |
the user has started to change the GUI control
|
overridevirtual |
the user has finished changing the GUI control
|
overridevirtual |
the user has finished changing the GUI control
|
inlineoverridevirtual |
return 1 if you want the control to not handle it, otherwise 0
unused override
|
inlineoverridevirtual |
return 1 if you want the control to not handle it, otherwise 0
unused override
|
overridevirtual |
the GUI control's tag did change (end of creation)
|
overridevirtual |
the GUI control's tag did change (end of creation)
|
overridevirtual |
the GUI control's tag will change (start of creation)
|
overridevirtual |
the GUI control's tag will change (start of creation)
|
protected |
creates either the GUI or the GUI Designer
create the GUI, or the GUI Designer if user is launching it
Operation:
bShowGUIEditor | create the drag-and-drop GUI designer |
|
protected |
create the GUI, or the GUI Designer if user is launching it
|
override |
create a custom sub-controller
|
override |
create a custom sub-controller
CView * PluginGUI::createUserCustomView | ( | std::string | viewname, |
const CRect | rect, | ||
IControlListener * | listener, | ||
int32_t | tag | ||
) |
add your custom views here; this is where you can create and register the views outside of the createView( ) method below.
first chance is for you to create and register a custom view
Operation:
viewname | customm view name string (as defined in XML file) |
rect | size of control |
listener | parent listener |
tag | the control ID value |
CView* VSTGUI::PluginGUI::createUserCustomView | ( | std::string | viewname, |
const CRect | rect, | ||
IControlListener * | listener, | ||
int32_t | tag | ||
) |
first chance is for you to create and register a custom view
|
override |
create a custom view
|
override |
create a custom view
|
inlineprotected |
destroy the parameter list
|
inlineprotected |
destroy the parameter list
void PluginGUI::dispatchAUControlChange | ( | int | tag, |
float | actualPluginValue, | ||
int | message = -1 , |
||
bool | fromEventListener = false |
||
) |
set the GUI control from the AU event generator; this is part of the thread-safe event system. This gets called when automation is running.
AU ONLY:au event dispatcher to GUI (see FX book)
tag | the control ID |
actualPluginValue | parameter value in actual (plain) form |
message | not used |
fromEventListener | not used |
|
protected |
control finder, for AAX only, part of Pro Tools automation keyboard shortcut
get the control pointer value using current mouse location
where | mouse coordinates |
|
protected |
get the control pointer value using current mouse location
|
protected |
control finder, for AAX only, part of Pro Tools automation keyboard shortcut
get the control ID value using current mouse location
where | mouse coordinates |
|
protected |
get the control ID value using current mouse location
ControlUpdateReceiver * PluginGUI::getControlUpdateReceiver | ( | int32_t | tag | ) | const |
find the receiver for a given tag; there can be only one receiver for any tag
tag | the control ID value |
ControlUpdateReceiver* VSTGUI::PluginGUI::getControlUpdateReceiver | ( | int32_t | tag | ) | const |
|
inlineprotected |
find the local PluginParameter that is connected to the same control ID
tag | the control ID |
|
inlineprotected |
find the local PluginParameter that is connected to the same control ID
tag | the control ID |
|
protected |
get size string
get size as string
|
protected |
get size as string
|
overrideprotectedvirtual |
get the current knob behavior (important - users are very aware of this)
|
overrideprotectedvirtual |
get the current knob behavior (important - users are very aware of this)
void PluginGUI::getSize | ( | float & | width, |
float & | height | ||
) |
returns the size into the pass-by-reference variables
get current GUI size
width | return value of width |
height | return value of height |
void VSTGUI::PluginGUI::getSize | ( | float & | width, |
float & | height | ||
) |
get current GUI size
|
inline |
simple helper function to test view for ICustomView
view | the view to test |
|
inline |
simple helper function to test view for ICustomView
view | the view to test |
|
inline |
simple helper function to test sub-controller for ICustomView
view | the view to test |
|
inline |
simple helper function to test sub-controller for ICustomView
view | the view to test |
|
inline |
check to see if we already store this meter control
control | the control object |
|
inline |
check to see if we already store this meter control
control | the control object |
|
protectedvirtual |
perform idling operation; called directly from timer thread
the udpate and repaint function
Operation:
|
protectedvirtual |
the udpate and repaint function
|
override |
VSTGUI4 message notification
|
override |
VSTGUI4 message notification
|
virtual |
message handler for GUI Designer menu
ICommandMenuItemTarget called when the item was selected
Operation:
item | the menu item to decode |
|
virtual |
ICommandMenuItemTarget called when the item was selected
|
inlineoverride |
IKeyboardHook key down handler, not used
|
inlineoverride |
IKeyboardHook key down handler, not used
|
inlineoverride |
IKeyboardHook key up handler, not used
|
inlineoverride |
IKeyboardHook key up handler, not used
|
override |
IMouseObserver mouse moved handler
|
override |
IMouseObserver mouse moved handler
|
inlineoverride |
IMouseObserver override not used
|
inlineoverride |
IMouseObserver override not used
|
inlineoverride |
IMouseObserver override not used
|
inlineoverride |
IMouseObserver override not used
|
override |
IMouseObserver mouse moved handler
|
override |
IMouseObserver mouse moved handler
|
inlineoverride |
IViewAddedRemovedObserver view added: unused
|
inlineoverride |
IViewAddedRemovedObserver view added: unused
|
override |
IViewAddedRemovedObserver view removed
|
override |
IViewAddedRemovedObserver view removed
bool VSTGUI::PluginGUI::open | ( | UTF8StringPtr | _viewName, |
void * | parent, | ||
const std::vector< PluginParameter *> * | pluginParameterPtr, | ||
const PlatformType & | platformType = kDefaultNative , |
||
IGUIPluginConnector * | _guiPluginConnector = nullptr , |
||
void * | data = nullptr |
||
) |
create the GUI inside of a host-supplied window frame
bool VSTGUI::PluginGUI::open | ( | UTF8StringPtr | _viewName, |
void * | parent, | ||
const std::vector< PluginParameter *> * | pluginParameterPtr, | ||
const PlatformType & | platformType = kDefaultNative , |
||
IGUIPluginConnector * | _guiPluginConnector = nullptr , |
||
void * | data = nullptr |
||
) |
create the GUI inside of a host-supplied window frame
|
inlinestatic |
simple helper function to get size from string
str | the string |
point | the CPoint version of the string data |
|
inlinestatic |
simple helper function to get size from string
str | the string |
point | the CPoint version of the string data |
|
protected |
one-time pre-create init, currently used for AU only
do any API specific stuff that is required prior to the GUI creation
Operation:
|
protected |
do any API specific stuff that is required prior to the GUI creation
|
protected |
save the current state in XML
|
protected |
save the current state in XML
void PluginGUI::scaleGUISize | ( | uint32_t | controlValue | ) |
scales the GUI; this is the handler for the special scaling GUI control
scale the GUI
controlValue | the scaling value from the secret control |
void VSTGUI::PluginGUI::scaleGUISize | ( | uint32_t | controlValue | ) |
scale the GUI
|
protected |
mouse down handler for Pro Tools keyboard shortcuts
Pro Tools: mouse down
Operation:
controlID | ID tag for control that will receive mouse down message |
buttons | button state flags |
|
protected |
Pro Tools: mouse down
|
protected |
mouse moved handler for Pro Tools keyboard shortcuts
Pro Tools: mouse moved
Operation:
controlID | ID tag for control that will receive mouse move message |
buttons | button state flags |
where | the mouse coordinates |
|
protected |
Pro Tools: mouse moved
|
protected |
mouse down handler for AU automation
AU: mouse down
Operation:
control | control that receives message |
buttons | button state flags |
|
protected |
AU: mouse down
|
inlineprotected |
AU: mouse moved (not used)
|
inlineprotected |
AU: mouse moved (not used)
void PluginGUI::setAAXParameterFromGUIControl | ( | CControl * | control, |
int | tag, | ||
float | actualValue, | ||
float | normalizedValue | ||
) |
set the plugin shelll parameter from GUI control using thread-safe mechanism
AAX ONLY: thread-safe parameter set for AAX
control | the GUI control issuing the change |
tag | the control ID |
actualValue | parameter value in actual (plain) form |
normalizedValue | parameter value in normalized form |
|
inline |
AAX ONLY: plugin shell GUI object sets this after creation.
_aaxViewContainer | the AAX_IViewContainer* that the parent object exposes |
|
inline |
AU ONLY: store the parent AU reference; part of AU event lisener system
inAU | reference to the AU plugin (can not be used to call functions) |
|
protected |
set the AU event from the GUI congrol; this is part of the thread-safe event system. This is called to safely set the GUI control value on the plugin shell's parameter list.
AU ONLY: GUI to au event listener (see FX book)
control | the control issuing the change |
tag | the control ID |
actualValue | actual control value (AU is always actual value) |
|
inlineoverridevirtual |
|
inlineoverridevirtual |
|
inlineprotected |
safely set a plugin shell parameter with a GUI control
NOTE:
control | pointer to the control that generated the notification |
tag | the control ID |
actualValue | the actual (aka plain) parameter value |
normalizedValue | the normalied version of the parameter value |
|
inlineprotected |
safely set a plugin shell parameter with a GUI control
NOTE:
control | pointer to the control that generated the notification |
tag | the control ID |
actualValue | the actual (aka plain) parameter value |
normalizedValue | the normalied version of the parameter value |
|
protected |
set the RAFX2 parameter from the GUI control
RAFX2 ONLY: GUI to RAFX2 shell (see FX book)
control | the control issuing the change |
tag | the control ID |
actualValue | actual control value |
normalizedValue | normalized control value |
|
protected |
set the VST parameter from the GUI control
VST3 ONLY: GUI to VST3 shell (see FX book)
control | the control issuing the change |
tag | the control ID |
actualValue | actual control value |
normalizedValue | normalized control value |
void PluginGUI::syncGUIControl | ( | uint32_t | controlID | ) |
safely sets the GUI control value based on the plugin parameter value
sync GUI control to current plugin value, thread-safe
Notes:
controlID | the ID value of the control to sync |
void VSTGUI::PluginGUI::syncGUIControl | ( | uint32_t | controlID | ) |
sync GUI control to current plugin value, thread-safe
void PluginGUI::updateGUIControlAAX | ( | int | tag, |
float | actualPluginValue, | ||
float | normalizedValue = 0.f , |
||
bool | useNormalized = false |
||
) |
set the GUI control from the plugin shell GUI object (thread-safe)
AAX ONLY: update GUI control for AAX
tag | the control ID |
actualPluginValue | parameter value in actual (plain) form |
normalizedValue | parameter value in normalized form |
useNormalized | force normalized value |
|
protected |
set the GUI control from the RAFX2 parameter
RAFX2 ONLY: RAXF2 shell to GUI (see FX book)
tag | the control ID |
normalizedValue | normalized control value |
|
protected |
set the GUI control from the VST parameter
VST3 ONLY: VST3 shell to GUI (see FX book)
tag | the control ID |
normalizedValue | normalized control value |
|
virtual |
validates menu item selections to prevent crashing
ICommandMenuItemTarget called before the item is shown to validate its state
Operation:
item | the menu item to test |
|
virtual |
ICommandMenuItemTarget called before the item is shown to validate its state
|
overridevirtual |
IControlListener:: required override
|
overridevirtual |
IControlListener:: required override
void PluginGUI::writeToPresetFile | ( | ) |
writes the current state of all GUI controls into a text file so that yuu can simply cut and paste the C++ code into the core object file.
for preset saving helper which writes preset code for you
void VSTGUI::PluginGUI::writeToPresetFile | ( | ) |
for preset saving helper which writes preset code for you