iPlug2 - C++ Audio Plug-in Framework
|
A vector knob control drawn using graphics primitives. More...
#include <IControls.h>
Public Member Functions | |
IVKnobControl (const IRECT &bounds, int paramIdx, const char *label="", const IVStyle &style=DEFAULT_STYLE, bool valueIsEditable=false, bool valueInWidget=false, float a1=-135.f, float a2=135.f, float aAnchor=-135.f, EDirection direction=EDirection::Vertical, double gearing=DEFAULT_GEARING, float trackSize=2.f) | |
IVKnobControl (const IRECT &bounds, IActionFunction aF, const char *label="", const IVStyle &style=DEFAULT_STYLE, bool valueIsEditable=false, bool valueInWidget=false, float a1=-135.f, float a2=135.f, float aAnchor=-135.f, EDirection direction=EDirection::Vertical, double gearing=DEFAULT_GEARING, float trackSize=2.f) | |
void | Draw (IGraphics &g) override |
Draw the control to the graphics context. More... | |
virtual void | DrawWidget (IGraphics &g) override |
Draw the IVControl main widget (override) More... | |
virtual void | DrawHandle (IGraphics &g, const IRECT &bounds) |
virtual void | DrawIndicatorTrack (IGraphics &g, float angle, float cx, float cy, float radius) |
virtual void | DrawPointer (IGraphics &g, float angle, float cx, float cy, float radius) |
void | OnMouseDown (float x, float y, const IMouseMod &mod) override |
Implement this method to respond to a mouse down event on this control. More... | |
void | OnMouseDblClick (float x, float y, const IMouseMod &mod) override |
Implement this method to respond to a mouse double click event on this control. More... | |
void | OnMouseUp (float x, float y, const IMouseMod &mod) override |
Implement this method to respond to a mouse up event on this control. More... | |
void | OnMouseOver (float x, float y, const IMouseMod &mod) override |
Implement this method to respond to a mouseover event on this control. More... | |
void | OnMouseOut () override |
Implement this method to respond to a mouseout event on this control. More... | |
void | OnResize () override |
Called when IControl is constructed or resized using SetRect(). More... | |
bool | IsHit (float x, float y) const override |
Hit test the control. More... | |
void | SetDirty (bool push, int valIdx=kNoValIdx) override |
Mark the control as dirty, i.e. More... | |
void | OnInit () override |
Called just prior to when the control is attached, after its delegate and graphics member variable set. More... | |
void | SetInnerPointerFrac (float frac) |
void | SetOuterPointerFrac (float frac) |
void | SetPointerThickness (float thickness) |
float | GetRadius () const |
IRECT | GetTrackBounds () const |
![]() | |
IKnobControlBase (const IRECT &bounds, int paramIdx=kNoParameter, EDirection direction=EDirection::Vertical, double gearing=DEFAULT_GEARING) | |
void | OnMouseDown (float x, float y, const IMouseMod &mod) override |
Implement this method to respond to a mouse down event on this control. More... | |
void | OnMouseUp (float x, float y, const IMouseMod &mod) override |
Implement this method to respond to a mouse up event on this control. More... | |
void | OnMouseDrag (float x, float y, float dX, float dY, const IMouseMod &mod) override |
Implement this method to respond to a mouse drag event on this control. More... | |
void | OnMouseWheel (float x, float y, const IMouseMod &mod, float d) override |
Implement this method to respond to a mouse wheel event on this control. More... | |
void | SetGearing (double gearing) |
bool | IsFineControl (const IMouseMod &mod, bool wheel) const |
![]() | |
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... | |
![]() | |
IVectorBase (const IVStyle &style, bool labelInWidget=false, bool valueInWidget=false) | |
IVectorBase Constructor. More... | |
void | AttachIControl (IControl *pControl, const char *label) |
Call in the constructor of your IVControl to link the IVectorBase and IControl. More... | |
virtual void | OnStyleChanged () |
Implement if extra changes are required in response to style changing. More... | |
void | SetColor (EVColor colorIdx, const IColor &color) |
Set one of the IVColors that style the IVControl. More... | |
void | SetColors (const IVColorSpec &spec) |
Set the colors of this IVControl. More... | |
const IColor & | GetColor (EVColor color) const |
Get value of a specific EVColor in the IVControl. More... | |
void | SetLabelStr (const char *label) |
const char * | GetLabelStr () const |
void | SetValueStr (const char *value) |
void | SetWidgetFrac (float frac) |
void | SetAngle (float angle) |
void | SetShowLabel (bool show) |
void | SetShowValue (bool show) |
void | SetRoundness (float roundness) |
void | SetDrawFrame (bool draw) |
void | SetDrawShadows (bool draw) |
void | SetEmboss (bool draw) |
void | SetShadowOffset (float offset) |
void | SetFrameThickness (float thickness) |
void | SetSplashRadius (float radius) |
void | SetSplashPoint (float x, float y) |
void | SetShape (EVShape shape) |
virtual void | SetStyle (const IVStyle &style) |
Set the Style of this IVControl. More... | |
IVStyle | GetStyle () const |
Get the style of this IVControl. More... | |
IRECT | GetAdjustedHandleBounds (IRECT handleBounds) const |
Get the adjusted bounds for the widget handle, based on the style settings. More... | |
float | GetRoundedCornerRadius (const IRECT &bounds) const |
Get the radius of rounded corners for a rectangle, based on the style roundness factor. More... | |
IRECT | GetWidgetBounds () const |
IRECT | GetLabelBounds () const |
IRECT | GetValueBounds () const |
void | DrawSplash (IGraphics &g, const IRECT &clipRegion=IRECT()) |
Draw a splash effect when a widget handle is clicked (via SplashClickAnimationFunc) More... | |
virtual void | DrawBackground (IGraphics &g, const IRECT &rect) |
Draw the IVControl background (usually transparent) More... | |
virtual void | DrawWidget (IGraphics &g) |
Draw the IVControl main widget (override) More... | |
virtual void | DrawLabel (IGraphics &g) |
Draw the IVControl label text. More... | |
virtual void | DrawValue (IGraphics &g, bool mouseOver) |
Draw the IVControl value text. More... | |
virtual void | DrawPressableShape (IGraphics &g, EVShape shape, const IRECT &bounds, bool pressed, bool mouseOver, bool disabled) |
Call one of the DrawPressableShape methods. More... | |
void | DrawPressableEllipse (IGraphics &g, const IRECT &bounds, bool pressed, bool mouseOver, bool disabled) |
Draw an ellipse-shaped vector button. More... | |
IRECT | DrawPressableRectangle (IGraphics &g, const IRECT &bounds, bool pressed, bool mouseOver, bool disabled, bool rtl=true, bool rtr=true, bool rbl=true, bool rbr=true) |
Draw a rectangle-shaped vector button. More... | |
IRECT | DrawPressableTriangle (IGraphics &g, const IRECT &bounds, bool pressed, bool mouseOver, float angle, bool disabled) |
Draw a triangle-shaped vector button. More... | |
IRECT | MakeRects (const IRECT &parent, bool hasHandle=false) |
Calculate the rectangles for the various areas, depending on the style. More... | |
Protected Member Functions | |
virtual IRECT | GetKnobDragBounds () override |
Get the area for which mouse deltas will be used to calculate the amount dragging changes the control value. More... | |
virtual IRECT | GetKnobDragBounds () |
Get the area for which mouse deltas will be used to calculate the amount dragging changes the control value. More... | |
![]() | |
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 | |
float | mTrackToHandleDistance = 4.f |
float | mInnerPointerFrac = 0.1f |
float | mOuterPointerFrac = 1.f |
float | mPointerThickness = 2.5f |
float | mAngle1 |
float | mAngle2 |
float | mAnchorAngle |
bool | mValueMouseOver = false |
![]() | |
bool | mHideCursorOnDrag = true |
EDirection | mDirection |
double | mGearing |
bool | mMouseDown = false |
double | mMouseDragValue = 0.0 |
![]() | |
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 |
![]() | |
IControl * | mControl = nullptr |
IVStyle | mStyle |
bool | mLabelInWidget = false |
bool | mValueInWidget = false |
float | mSplashRadius = 0.f |
IVec2 | mSplashPoint = {0.f, 0.f} |
float | mMaxSplashRadius = 50.f |
float | mTrackSize = 2.f |
float | mValueDisplayFrac = 0.66f |
IRECT | mWidgetBounds |
IRECT | mLabelBounds |
IRECT | mValueBounds |
WDL_String | mLabelStr |
WDL_String | mValueStr |
EVShape | mShape = EVShape::Rectangle |
A vector knob control drawn using graphics primitives.
Definition at line 258 of file IControls.h.
IVKnobControl::IVKnobControl | ( | const IRECT & | bounds, |
int | paramIdx, | ||
const char * | label = "" , |
||
const IVStyle & | style = DEFAULT_STYLE , |
||
bool | valueIsEditable = false , |
||
bool | valueInWidget = false , |
||
float | a1 = -135.f , |
||
float | a2 = 135.f , |
||
float | aAnchor = -135.f , |
||
EDirection | direction = EDirection::Vertical , |
||
double | gearing = DEFAULT_GEARING , |
||
float | trackSize = 2.f |
||
) |
Definition at line 582 of file IControls.cpp.
IVKnobControl::IVKnobControl | ( | const IRECT & | bounds, |
IActionFunction | aF, | ||
const char * | label = "" , |
||
const IVStyle & | style = DEFAULT_STYLE , |
||
bool | valueIsEditable = false , |
||
bool | valueInWidget = false , |
||
float | a1 = -135.f , |
||
float | a2 = 135.f , |
||
float | aAnchor = -135.f , |
||
EDirection | direction = EDirection::Vertical , |
||
double | gearing = DEFAULT_GEARING , |
||
float | trackSize = 2.f |
||
) |
Definition at line 597 of file IControls.cpp.
|
inlinevirtual |
Definition at line 276 of file IControls.h.
|
overridevirtual |
Draw the control to the graphics context.
g | The graphics context to which this control belongs. |
Implements IControl.
Definition at line 613 of file IControls.cpp.
References IVectorBase::DrawBackground(), IVectorBase::DrawLabel(), IVectorBase::DrawValue(), and DrawWidget().
Definition at line 663 of file IControls.cpp.
|
virtual |
Definition at line 668 of file IControls.cpp.
|
virtual |
Definition at line 676 of file IControls.cpp.
|
overridevirtual |
Draw the IVControl main widget (override)
Reimplemented from IVectorBase.
Definition at line 652 of file IControls.cpp.
References IRECT::GetCentredInside(), IControl::GetValue(), IRECT::MH(), IRECT::MW(), and IRECT::W().
Referenced by Draw().
|
overrideprotectedvirtual |
Get the area for which mouse deltas will be used to calculate the amount dragging changes the control value.
This is usually the area that contains the knob handle, can override if your control contains extra elements such as labels
Reimplemented from IKnobControlBase.
Definition at line 621 of file IControls.cpp.
References IRECT::GetCentredInside(), IRECT::H(), and IRECT::W().
float IVKnobControl::GetRadius | ( | ) | const |
Definition at line 633 of file IControls.cpp.
IRECT IVKnobControl::GetTrackBounds | ( | ) | const |
Definition at line 647 of file IControls.cpp.
|
overridevirtual |
Hit test the control.
Override this method if you want the control to be hit only if a visible part of it is hit, or whatever.
x | The X coordinate within the control to test |
y | The y coordinate within the control to test |
Return
true if the control was hit. Reimplemented from IControl.
Definition at line 726 of file IControls.cpp.
References IRECT::Contains().
|
overridevirtual |
Called just prior to when the control is attached, after its delegate and graphics member variable set.
Reimplemented from IControl.
Definition at line 747 of file IControls.cpp.
References IParam::GetDisplayWithLabel(), IParam::GetName(), and IControl::GetParam().
|
overridevirtual |
Implement this method to respond to a mouse double click event on this control.
x | The X coordinate of the mouse event |
y | The Y coordinate of the mouse event |
mod | A struct indicating which modifier keys are held for the event |
Reimplemented from IControl.
Definition at line 695 of file IControls.cpp.
References IControl::GetValIdxForPos(), IControl::PromptUserInput(), and IControl::SetValueToDefault().
|
overridevirtual |
Implement this method to respond to a mouse down event on this control.
x | The X coordinate of the mouse event |
y | The Y coordinate of the mouse event |
mod | A struct indicating which modifier keys are held for the event |
Reimplemented from IControl.
Definition at line 681 of file IControls.cpp.
References IRECT::Contains(), IKnobControlBase::OnMouseDown(), IControl::PromptUserInput(), and SetDirty().
|
inlineoverridevirtual |
Implement this method to respond to a mouseout event on this control.
Implementations should call base class, if you wish to use mMouseIsOver.
Reimplemented from IControl.
Definition at line 288 of file IControls.h.
References IControl::OnMouseOut().
|
overridevirtual |
Implement this method to respond to a mouseover event on this control.
Implementations should call base class, if you wish to use mMouseIsOver.
x | The X coordinate of the mouse event |
y | The Y coordinate of the mouse event |
mod | A struct indicating which modifier keys are held for the event |
Reimplemented from IControl.
Definition at line 710 of file IControls.cpp.
References IRECT::Contains(), IControl::OnMouseOver(), and SetDirty().
|
overridevirtual |
Implement this method to respond to a mouse up event on this control.
x | The X coordinate of the mouse event |
y | The Y coordinate of the mouse event |
mod | A struct indicating which modifier keys are held for the event |
Reimplemented from IControl.
Definition at line 704 of file IControls.cpp.
References IKnobControlBase::OnMouseUp(), and SetDirty().
|
overridevirtual |
Called when IControl is constructed or resized using SetRect().
NOTE: if you call SetDirty() in this method, you should call SetDirty(false) to avoid triggering parameter changes
Reimplemented from IControl.
Definition at line 720 of file IControls.cpp.
References IVectorBase::MakeRects(), SetDirty(), and IControl::SetTargetRECT().
|
overridevirtual |
Mark the control as dirty, i.e.
it should be redrawn on the next display refresh
triggerAction | If this is true and the control is linked to a parameter notify the class implementing the IEditorDelegate interface that the parameter changed. If this control has an ActionFunction, that can also be triggered. NOTE: it is easy to forget that this method always sets the control dirty, the argument refers to whether a consecutive action should be performed |
Reimplemented from IControl.
Definition at line 737 of file IControls.cpp.
References IParam::GetDisplayWithLabel(), IControl::GetParam(), and IControl::SetDirty().
Referenced by OnMouseDown(), OnMouseOver(), OnMouseUp(), and OnResize().
|
inline |
Definition at line 295 of file IControls.h.
|
inline |
Definition at line 296 of file IControls.h.
|
inline |
Definition at line 297 of file IControls.h.
|
protected |
Definition at line 310 of file IControls.h.
|
protected |
Definition at line 309 of file IControls.h.
|
protected |
Definition at line 309 of file IControls.h.
|
protected |
Definition at line 306 of file IControls.h.
|
protected |
Definition at line 307 of file IControls.h.
|
protected |
Definition at line 308 of file IControls.h.
|
protected |
Definition at line 305 of file IControls.h.
|
protected |
Definition at line 311 of file IControls.h.