|
iPlug2 - C++ Audio Plug-in Framework
|
Control to display the graphics backend. More...
#include <TestGFXLabel.h>
Public Member Functions | |
| GFXLabelControl (const IRECT &rect) | |
| void | Draw (IGraphics &g) override |
| Draw the control to the graphics context. More... | |
Public Member Functions inherited from IControl | |
| IControl (const IRECT &bounds, int paramIdx=kNoParameter, IActionFunction actionFunc=nullptr) | |
| Constructor. More... | |
| IControl (const IRECT &bounds, const std::initializer_list< int > ¶ms, IActionFunction actionFunc=nullptr) | |
| Constructor (range of parameters) More... | |
| IControl (const IRECT &bounds, IActionFunction actionFunc) | |
| Constructor (no paramIdx) More... | |
| IControl (const IControl &)=delete | |
| void | operator= (const IControl &)=delete |
| virtual | ~IControl () |
| Destructor. More... | |
| virtual void | OnMouseDown (float x, float y, const IMouseMod &mod) |
| Implement this method to respond to a mouse down event on this control. More... | |
| virtual void | OnMouseUp (float x, float y, const IMouseMod &mod) |
| Implement this method to respond to a mouse up event on this control. More... | |
| virtual void | OnMouseDrag (float x, float y, float dX, float dY, const IMouseMod &mod) |
| Implement this method to respond to a mouse drag event on this control. More... | |
| virtual void | OnMouseDblClick (float x, float y, const IMouseMod &mod) |
| Implement this method to respond to a mouse double click event on this control. More... | |
| virtual void | OnMouseWheel (float x, float y, const IMouseMod &mod, float d) |
| Implement this method to respond to a mouse wheel event on this control. More... | |
| virtual bool | OnKeyDown (float x, float y, const IKeyPress &key) |
| Implement this method to respond to a key down event on this control. More... | |
| virtual bool | OnKeyUp (float x, float y, const IKeyPress &key) |
| Implement this method to respond to a key up event on this control. More... | |
| virtual void | OnMouseOver (float x, float y, const IMouseMod &mod) |
| Implement this method to respond to a mouseover event on this control. More... | |
| virtual void | OnMouseOut () |
| Implement this method to respond to a mouseout event on this control. More... | |
| virtual void | OnTouchCancelled (float x, float y, const IMouseMod &mod) |
| Implement this method to respond to a touch cancel event on this control. More... | |
| virtual void | OnDrop (const char *str) |
| Implement to do something when something was drag 'n dropped onto this control. More... | |
| virtual void | OnDropMultiple (const std::vector< const char * > &paths) |
| Implement to handle multiple items drag 'n dropped onto this control. More... | |
| virtual void | OnRescale () |
| Implement to do something when graphics is scaled globally (e.g. More... | |
| virtual void | OnResize () |
| Called when IControl is constructed or resized using SetRect(). More... | |
| virtual void | OnInit () |
| Called just prior to when the control is attached, after its delegate and graphics member variable set. More... | |
| virtual void | OnAttached () |
| Called after the control has been attached, and its delegate and graphics member variable set. More... | |
| virtual void | OnMsgFromDelegate (int msgTag, int dataSize, const void *pData) |
| Implement to receive messages sent to the control, see IEditorDelegate:SendControlMsgFromDelegate() More... | |
| virtual void | OnMidi (const IMidiMsg &msg) |
| Implement to receive MIDI messages sent to the control if mWantsMidi == true, see IEditorDelegate:SendMidiMsgFromDelegate() More... | |
| virtual bool | OnGesture (const IGestureInfo &info) |
| virtual void | CreateContextMenu (IPopupMenu &contextMenu) |
| Called by default when the user right clicks a control. More... | |
| virtual void | OnPopupMenuSelection (IPopupMenu *pSelectedMenu, int valIdx) |
| Implement this method to handle popup menu selection after IGraphics::CreatePopupMenu/IControlPromptUserInput. More... | |
| virtual void | OnDeleteFromPopupMenu (IPopupMenu *pMenu, int itemIdx) |
| Implement this method to handle popup menu deletion interactions (on IOS) after IGraphics::CreatePopupMenu/IControlPromptUserInput. More... | |
| virtual void | OnTextEntryCompletion (const char *str, int valIdx) |
| Implement this method to handle text input after IGraphics::CreateTextEntry/IControlPromptUserInput. More... | |
| virtual void | OnContextSelection (int itemSelected) |
| Implement this to respond to a menu selection from CreateContextMenu();. More... | |
| virtual void | Draw (IGraphics &g)=0 |
| Draw the control to the graphics context. More... | |
| virtual void | DrawPTHighlight (IGraphics &g) |
| Implement this to customise how a colored highlight is drawn on the control in ProTools (AAX format only), when a control is linked to a parameter that is automated. More... | |
| void | PromptUserInput (int valIdx=0) |
| Call this method in response to a mouse event to create an edit box so the user can enter a value, or pop up a pop-up menu, if the control is linked to a parameter (mParamIdx > kNoParameter) More... | |
| void | PromptUserInput (const IRECT &bounds, int valIdx=0) |
| Create a text entry box so the user can enter a value, or pop up a pop-up menu, if the control is linked to a parameter (mParamIdx > kNoParameter) specifying the bounds. More... | |
| IControl * | SetActionFunction (IActionFunction actionFunc) |
| Set an Action Function for this control. More... | |
| IControl * | SetAnimationEndActionFunction (IActionFunction actionFunc) |
| Set an Action Function to be called at the end of an animation. More... | |
| IControl * | SetTooltip (const char *str) |
| Set a tooltip for the control. More... | |
| const char * | GetTooltip () const |
| int | GetParamIdx (int valIdx=0) const |
| Get the index of a parameter that the control is linked to Normaly controls are either linked to a single parameter or no parameter but some may be linked to multiple parameters. More... | |
| virtual void | SetParamIdx (int paramIdx, int valIdx=0) |
| Set the index of a parameter that the control is linked to If you are calling this "manually" to reuse a control for multiple parameters, you probably want to call IEditorDelegate::SendCurrentParamValuesFromDelegate() afterward, to update the control values. More... | |
| int | LinkedToParam (int paramIdx) const |
| Check if the control is linked to a particular parameter. More... | |
| int | NVals () const |
| virtual int | GetValIdxForPos (float x, float y) const |
| Check to see which of the control's values relates to this x and y coordinate. More... | |
| const IParam * | GetParam (int valIdx=0) const |
| Get a const pointer to the IParam object (owned by the editor delegate class), associated with this control. More... | |
| virtual void | SetValueFromDelegate (double value, int valIdx=0) |
| Set the control's value from the delegate This method is called from the class implementing the IEditorDelegate interface in order to update a control's value members and set it to be marked dirty for redraw. More... | |
| virtual void | SetValueFromUserInput (double value, int valIdx=0) |
| Set the control's value after user input. More... | |
| virtual void | SetValueToDefault (int valIdx=kNoValIdx) |
| Set one or all of the control's values to the default value of the associated parameter. More... | |
| virtual void | SetValue (double value, int valIdx=0) |
| Set one of the control's values. More... | |
| double | GetValue (int valIdx=0) const |
| Get the control's value. More... | |
| void | SetGroup (const char *groupName) |
| Assign the control to a control group. More... | |
| const char * | GetGroup () const |
| Get the group that the control belongs to, if any. More... | |
| const IText & | GetText () const |
| Get the Text object for the control. More... | |
| virtual void | SetText (const IText &txt) |
| Set the Text object typically used to determine font/layout/size etc of the main text in a control. More... | |
| void | SetBlend (const IBlend &blend) |
| Set the Blend for this control. More... | |
| IBlend | GetBlend () const |
| Get the Blend for this control. More... | |
| int | GetTextEntryLength () const |
| Get the max number of characters that are allowed in text entry. More... | |
| void | SetTextEntryLength (int len) |
| Set the max number of characters that are allowed in text entry. More... | |
| const IRECT & | GetRECT () const |
| Get the rectangular draw area for this control, within the graphics context. More... | |
| void | SetRECT (const IRECT &bounds) |
| Set the rectangular draw area for this control, within the graphics context. More... | |
| const IRECT & | GetTargetRECT () const |
| Get the rectangular mouse tracking target area, within the graphics context for this control. More... | |
| void | SetTargetRECT (const IRECT &bounds) |
| Set the rectangular mouse tracking target area, within the graphics context for this control. More... | |
| void | SetTargetAndDrawRECTs (const IRECT &bounds) |
| Set BOTH the draw rect and the target area, within the graphics context for this control. More... | |
| virtual void | SetPosition (float x, float y) |
| Set the position of the control, preserving the width and height. More... | |
| virtual void | SetSize (float w, float h) |
| Set the size of the control, preserving the current position. More... | |
| void | SetPTParameterHighlight (bool isHighlighted, int color) |
| Used internally by the AAX wrapper view interface to set the control parmeter highlight. More... | |
| bool | GetMouseDblAsSingleClick () const |
| Get double click as single click By default, mouse double click has its own handler. More... | |
| virtual void | Hide (bool hide) |
| Shows or hides the IControl. More... | |
| bool | IsHidden () const |
| virtual void | SetDisabled (bool disable) |
| Sets disabled mode for the control, the default implementation modifies the mBlend member. More... | |
| bool | IsDisabled () const |
| void | SetMouseOverWhenDisabled (bool allow) |
| Specify whether the control should respond to mouse overs when disabled. More... | |
| void | SetMouseEventsWhenDisabled (bool allow) |
| Specify whether the control should respond to other mouse events when disabled. More... | |
| bool | GetMouseOverWhenDisabled () const |
| bool | GetMouseEventsWhenDisabled () const |
| bool | GetIgnoreMouse () const |
| virtual void | SetIgnoreMouse (bool ignore) |
| Specify whether the control should respond to mouse events. More... | |
| bool | GetPromptShowsParamLabel () const |
| void | SetPromptShowsParamLabel (bool enable) |
| Set if the control should show parameter labels/units e.g. More... | |
| virtual bool | IsHit (float x, float y) const |
| Hit test the control. More... | |
| virtual void | SetDirty (bool triggerAction=true, int valIdx=kNoValIdx) |
| Mark the control as dirty, i.e. More... | |
| virtual void | SetClean () |
| void | Animate () |
| virtual bool | IsDirty () |
| Called at each display refresh by the IGraphics draw loop, after IControl::Animate(), to determine if the control is marked as dirty. More... | |
| void | DisablePrompt (bool disable) |
| Disable/enable default prompt for user input. More... | |
| virtual void | OnGUIIdle () |
| This is an idle timer tick call on the GUI thread, only active if USE_IDLE_CALLS is defined. More... | |
| int | GetTag () const |
| Get the control's tag. More... | |
| void | SetWantsMidi (bool enable=true) |
| Specify whether this control wants to know about MIDI messages sent to the UI. More... | |
| bool | GetWantsMidi () const |
| void | SetWantsMultiTouch (bool enable=true) |
| Specify whether this control supports multiple touches. More... | |
| bool | GetWantsMultiTouch () const |
| IControl * | AttachGestureRecognizer (EGestureType type, IGestureFunc func) |
| Add a IGestureFunc that should be triggered in response to a certain type of gesture. More... | |
| virtual bool | GetWantsGestures () const |
| EGestureType | GetLastGesture () const |
| IGEditorDelegate * | GetDelegate () |
| Gets a pointer to the class implementing the IEditorDelegate interface that handles parameter changes from this IGraphics instance. More... | |
| void | SetDelegate (IGEditorDelegate &dlg) |
| Used internally to set the mDelegate (and mGraphics) variables. More... | |
| IContainerBase * | GetParent () const |
| void | SetParent (IContainerBase *pParent) |
| IGraphics * | GetUI () |
| const IGraphics * | GetUI () const |
| bool | GetMouseIsOver () const |
| This can be used in IControl::Draw() to check if the mouse is over the control, without implementing mouse over methods. More... | |
| virtual void | SnapToMouse (float x, float y, EDirection direction, const IRECT &bounds, int valIdx=-1, double minClip=0., double maxClip=1.) |
| Set control value based on x, y position within a rectangle. More... | |
| virtual void | OnEndAnimation () |
| void | StartAnimation (int duration) |
| void | SetAnimation (IAnimationFunction func) |
| Set the animation function. More... | |
| void | SetAnimation (IAnimationFunction func, int duration) |
| Set the animation function and starts it. More... | |
| IAnimationFunction | GetAnimationFunction () |
| Get the control's animation function, if it exists. More... | |
| IActionFunction | GetActionFunction () |
| Get the control's action function, if it exists. More... | |
| double | GetAnimationProgress () const |
| Get the progress in a control's animation, in the range 0-1. More... | |
| Milliseconds | GetAnimationDuration () const |
| Get the duration of animations applied to the control. More... | |
| template<class T > | |
| T * | As () |
| Helper function to dynamic cast an IControl to a subclass. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from IControl | |
| template<typename T , typename... Args> | |
| void | ForValIdx (int valIdx, T func, Args... args) |
| A helper template function to call a method for an individual value, or for all values. More... | |
| void | SetNVals (int nVals) |
Protected Attributes inherited from IControl | |
| IRECT | mRECT |
| IRECT | mTargetRECT |
| WDL_String | mGroup |
| Controls can be grouped for hiding and showing panels. More... | |
| IText | mText |
| IBlend | mBlend |
| int | mTextEntryLength = DEFAULT_TEXT_ENTRY_LEN |
| bool | mDirty = true |
| bool | mHide = false |
| bool | mDisabled = false |
| bool | mDisablePrompt = true |
| bool | mDblAsSingleClick = false |
| bool | mMouseOverWhenDisabled = false |
| bool | mMouseEventsWhenDisabled = false |
| bool | mIgnoreMouse = false |
| bool | mWantsMidi = false |
| bool | mWantsMultiTouch = false |
| bool | mPromptShowsParamLabel = false |
| bool | mMouseIsOver = false |
| if mGraphics::mHandleMouseOver = true, this will be true when the mouse is over control. More... | |
| WDL_String | mTooltip |
| IColor | mPTHighlightColor = COLOR_RED |
| bool | mPTisHighlighted = false |
Control to display the graphics backend.
Definition at line 22 of file TestGFXLabel.h.
|
inline |
Definition at line 25 of file TestGFXLabel.h.
|
inlineoverridevirtual |
Draw the control to the graphics context.
| g | The graphics context to which this control belongs. |
Implements IControl.
Definition at line 31 of file TestGFXLabel.h.
References IGraphics::ApplyLayerDropShadow(), IGraphics::CheckLayer(), IGraphics::DrawLayer(), IGraphics::DrawText(), IGraphics::EndLayer(), IGraphics::FillRect(), IGraphics::GetDrawingAPIStr(), IGraphics::MeasureText(), IRECT::Pad(), and IGraphics::StartLayer().