VSTGUI  4.10
Graphical User Interface Framework not only for VST plugins
CParamDisplay Class Reference

a parameter display More...

+ Inheritance diagram for CParamDisplay:

Public Member Functions

 CParamDisplay (const CRect &size, CBitmap *background=nullptr, int32_t style=0)
 
 CParamDisplay (const CParamDisplay &paramDisplay)
 
void draw (CDrawContext *pContext) override
 called if the view should draw itself More...
 
bool getFocusPath (CGraphicsPath &outPath) override
 the graphics path will be drawn filled with the evenodd method and the color set in CFrame::setFocusColor() More...
 
bool removed (CView *parent) override
 view is removed from parent view More...
 
CBaseObjectnewCopy () const override
 
- Public Member Functions inherited from CControl
 CControl (const CRect &size, IControlListener *listener=nullptr, int32_t tag=0, CBitmap *pBackground=nullptr)
 
 CControl (const CControl &c)
 
bool isDirty () const override
 check if view is dirty More...
 
void setDirty (bool val=true) override
 set the view to dirty so that it is redrawn in the next idle. More...
 
bool drawFocusOnTop () override
 draw focus before view will be drawn or afterwards More...
 
virtual void setValue (float val)
 
virtual float getValue () const
 
virtual void setValueNormalized (float val)
 
virtual float getValueNormalized () const
 
virtual void setMin (float val)
 
virtual float getMin () const
 
virtual void setMax (float val)
 
virtual float getMax () const
 
float getRange () const
 
virtual void setOldValue (float val)
 
virtual float getOldValue () const
 
virtual void setDefaultValue (float val)
 
virtual float getDefaultValue () const
 
virtual void bounceValue ()
 
virtual bool checkDefaultValue (CButtonState button)
 
virtual void valueChanged ()
 notifies listener and dependent objects More...
 
virtual void setTag (int32_t val)
 
virtual int32_t getTag () const
 
virtual void beginEdit ()
 
virtual void endEdit ()
 
bool isEditing () const
 
virtual IControlListenergetListener () const
 get main listener More...
 
virtual void setListener (IControlListener *l)
 set main listener More...
 
void registerControlListener (IControlListener *listener)
 register a sub listener More...
 
void unregisterControlListener (IControlListener *listener)
 unregister a sub listener More...
 
virtual void setWheelInc (float val)
 
virtual float getWheelInc () const
 
- Public Member Functions inherited from CView
 CView (const CRect &size)
 
 CView (const CView &view)
 
void setSubviewState (bool state)
 
bool isSubview () const
 
virtual bool wantsWindowActiveStateChangeNotification () const
 whether this view wants to be informed if the window's active state changes More...
 
virtual void onWindowActivate (bool state)
 called when the active state of the window changes More...
 
void setTooltipText (UTF8StringPtr text)
 
virtual CViewContainerasViewContainer ()
 
virtual const CViewContainerasViewContainer () const
 
CMouseEventResult callMouseListener (MouseListenerCall type, CPoint pos, CButtonState buttons)
 
void callMouseListenerEnteredExited (bool mouseEntered)
 
CMessageResult notify (CBaseObject *sender, IdStringPtr message) override
 
void beforeDelete () override
 
CBaseObjectnewCopy () const override
 
virtual CMouseEventResult onMouseDown (CPoint &where, const CButtonState &buttons)
 called when a mouse down event occurs More...
 
virtual CMouseEventResult onMouseUp (CPoint &where, const CButtonState &buttons)
 called when a mouse up event occurs More...
 
virtual CMouseEventResult onMouseMoved (CPoint &where, const CButtonState &buttons)
 called when a mouse move event occurs More...
 
virtual CMouseEventResult onMouseCancel ()
 called when mouse tracking should be canceled More...
 
virtual CMouseEventResult onMouseEntered (CPoint &where, const CButtonState &buttons)
 called when the mouse enters this view More...
 
virtual CMouseEventResult onMouseExited (CPoint &where, const CButtonState &buttons)
 called when the mouse leaves this view More...
 
void setHitTestPath (CGraphicsPath *path)
 
virtual bool hitTest (const CPoint &where, const CButtonState &buttons=-1)
 check if where hits this view More...
 
virtual bool onWheel (const CPoint &where, const float &distance, const CButtonState &buttons) final
 
virtual bool onWheel (const CPoint &where, const CMouseWheelAxis &axis, const float &distance, const CButtonState &buttons)
 called if a mouse wheel event is happening over this view More...
 
virtual void setMouseEnabled (bool bEnable=true)
 turn on/off mouse usage for this view More...
 
bool getMouseEnabled () const
 get the state of wheather this view uses the mouse or not More...
 
void setMouseableArea (const CRect &rect)
 set the area in which the view reacts to the mouse More...
 
CRectgetMouseableArea (CRect &rect) const
 get the area in which the view reacts to the mouse More...
 
CRect getMouseableArea () const
 get the area in which the view reacts to the mouse More...
 
bool doDrag (const DragDescription &dragDescription, const SharedPointer< IDragCallback > &callback={})
 start a drag operation More...
 
virtual SharedPointer< IDropTargetgetDropTarget ()
 get the drag target for drag and drop handling More...
 
void setDropTarget (const SharedPointer< IDropTarget > &dt)
 set a custom drop target More...
 
DragResult doDrag (IDataPackage *source, const CPoint &offset=CPoint(0, 0), CBitmap *dragBitmap=nullptr)
 a drag can only be started from within onMouseDown More...
 
virtual int32_t onKeyDown (VstKeyCode &keyCode)
 called if a key down event occurs and this view has focus More...
 
virtual int32_t onKeyUp (VstKeyCode &keyCode)
 called if a key up event occurs and this view has focus More...
 
CCoord getHeight () const
 get the height of the view More...
 
CCoord getWidth () const
 get the width of the view More...
 
virtual void setViewSize (const CRect &rect, bool invalid=true)
 set views size More...
 
const CRectgetViewSize () const
 read only access to view size More...
 
virtual CRect getVisibleViewSize () const
 returns the visible size of the view More...
 
virtual void parentSizeChanged ()
 notification that one of the views parent has changed its size More...
 
virtual CPointframeToLocal (CPoint &point) const
 conversion from frame coordinates to local view coordinates More...
 
virtual CPointlocalToFrame (CPoint &point) const
 conversion from local view coordinates to frame coordinates More...
 
virtual void setAutosizeFlags (int32_t flags)
 set autosize flags More...
 
int32_t getAutosizeFlags () const
 get autosize flags More...
 
virtual bool sizeToFit ()
 resize view to optimal size More...
 
virtual void looseFocus ()
 called if view should loose focus More...
 
virtual void takeFocus ()
 called if view should take focus More...
 
virtual bool wantsFocus () const
 check if view supports focus More...
 
virtual void setWantsFocus (bool state)
 set focus support on/off More...
 
bool getAttributeSize (const CViewAttributeID id, uint32_t &outSize) const
 get the size of an attribute More...
 
bool getAttribute (const CViewAttributeID id, const uint32_t inSize, void *outData, uint32_t &outSize) const
 get an attribute More...
 
bool setAttribute (const CViewAttributeID id, const uint32_t inSize, const void *inData)
 set an attribute More...
 
bool removeAttribute (const CViewAttributeID id)
 remove an attribute More...
 
template<typename T >
bool setAttribute (const CViewAttributeID id, const T &data)
 set an attribute More...
 
template<typename T >
bool getAttribute (const CViewAttributeID id, T &data) const
 get an attribute More...
 
virtual void setBackground (CBitmap *background)
 set the background image of this view More...
 
CBitmapgetBackground () const
 get the background image of this view More...
 
virtual void setDisabledBackground (CBitmap *background)
 set background image used when the mouse is not enabled More...
 
CBitmapgetDisabledBackground () const
 get background image used when the mouse is not enabled More...
 
CBitmapgetDrawBackground () const
 get the bitmap which is drawn depending on the enabled state. More...
 
virtual void setTransparency (bool val)
 set views transparent state More...
 
bool getTransparency () const
 get views transparent state More...
 
virtual void setAlphaValue (float alpha)
 set alpha value which will be applied when drawing this view More...
 
float getAlphaValue () const
 get alpha value More...
 
virtual bool attached (CView *parent)
 view is attached to a parent view More...
 
bool isAttached () const
 is view attached to a parentView More...
 
CViewgetParentView () const
 get parent view More...
 
CFramegetFrame () const
 get frame More...
 
virtual VSTGUIEditorInterfacegetEditor () const
 get editor More...
 
void addAnimation (IdStringPtr name, Animation::IAnimationTarget *target, Animation::ITimingFunction *timingFunction, CBaseObject *notificationObject)
 
void addAnimation (IdStringPtr name, Animation::IAnimationTarget *target, Animation::ITimingFunction *timingFunction, const Animation::DoneFunction &doneFunc=nullptr)
 
void removeAnimation (IdStringPtr name)
 
void removeAllAnimations ()
 
void registerViewListener (IViewListener *listener)
 
void unregisterViewListener (IViewListener *listener)
 
void registerViewMouseListener (IViewMouseListener *listener)
 
void unregisterViewMouseListener (IViewMouseListener *listener)
 
CGraphicsTransform getGlobalTransform (bool ignoreFrame=false) const
 get the active global transform for this view More...
 
template<typename T >
T & translateToGlobal (T &t, bool ignoreFrame=false) const
 translates a local coordinate to a global one using parent transforms More...
 
template<typename T >
translateToGlobal (const T &t, bool ignoreFrame=false) const
 translates a local coordinate to a global one using parent transforms More...
 
template<typename T >
T & translateToLocal (T &t, bool ignoreFrame=false) const
 translates a global coordinate to a local one using parent transforms More...
 
template<typename T >
translateToLocal (const T &t, bool ignoreFrame=false) const
 translates a local coordinate to a global one using parent transforms More...
 
virtual void drawRect (CDrawContext *pContext, const CRect &updateRect)
 called if the view should draw itself More...
 
virtual bool checkUpdate (const CRect &updateRect) const
 
virtual void invalidRect (const CRect &rect)
 mark rect as invalid More...
 
virtual void invalid ()
 mark whole view as invalid More...
 
virtual void setVisible (bool state)
 set visibility state More...
 
bool isVisible () const
 get visibility state More...
 
virtual void onIdle ()
 called on idle when view wants idle More...
 
void setWantsIdle (bool state)
 enable/disable onIdle() callback More...
 
bool wantsIdle () const
 returns if the view wants idle callback or not More...
 
- Public Member Functions inherited from CBaseObject
 CBaseObject ()=default
 
 ~CBaseObject () noexcept override=default
 
 CBaseObject (const CBaseObject &o)
 
CBaseObjectoperator= (const CBaseObject &obj)
 
- Public Member Functions inherited from ReferenceCounted< T >
 ReferenceCounted ()=default
 
virtual ~ReferenceCounted () noexcept=default
 
 ReferenceCounted (const ReferenceCounted &)
 
ReferenceCountedoperator= (const ReferenceCounted &)
 
void forget () override
 decrease refcount and delete object if refcount == 0 More...
 
void remember () override
 increase refcount More...
 
virtual int32_t getNbReference () const
 get refcount More...
 
- Public Member Functions inherited from IFocusDrawing
virtual ~IFocusDrawing () noexcept=default
 

Protected Types

enum  StyleEnum {
  StyleShadowText = 0, Style3DIn, Style3DOut, StyleNoText,
  StyleNoDraw, StyleRoundRect, StyleNoFrame, StyleAntialias,
  LastStyle
}
 
enum  StylePrivate { kAntialias = 1 << StyleAntialias }
 
- Protected Types inherited from CView
enum  {
  kMouseEnabled = 1 << 0, kTransparencyEnabled = 1 << 1, kWantsFocus = 1 << 2, kIsAttached = 1 << 3,
  kVisible = 1 << 4, kDirty = 1 << 5, kWantsIdle = 1 << 6, kIsSubview = 1 << 7,
  kHasAlpha = 1 << 8, kHasBackground = 1 << 9, kHasDisabledBackground = 1 << 10, kHasMouseableArea = 1 << 11,
  kLastCViewFlag = 11
}
 

Protected Member Functions

 ~CParamDisplay () noexcept override
 
virtual void drawBack (CDrawContext *pContext, CBitmap *newBack=nullptr)
 
virtual void drawPlatformText (CDrawContext *pContext, IPlatformString *string)
 
virtual void drawPlatformText (CDrawContext *pContext, IPlatformString *string, const CRect &size)
 
virtual void drawStyleChanged ()
 
- Protected Member Functions inherited from CControl
 ~CControl () noexcept override
 
- Protected Member Functions inherited from CView
 ~CView () noexcept override
 
CGraphicsPathgetHitTestPath () const
 
bool hasViewFlag (int32_t bit) const
 
void setViewFlag (int32_t bit, bool state)
 
void setAlphaValueNoInvalidate (float value)
 
void setParentFrame (CFrame *frame)
 
void setParentView (CView *parent)
 

Protected Attributes

ValueToStringFunction2 valueToStringFunction
 
CHoriTxtAlign horiTxtAlign
 
int32_t style
 
uint8_t valuePrecision
 
CFontRef fontID
 
CColor fontColor
 
CColor backColor
 
CColor frameColor
 
CColor shadowColor
 
CPoint textInset
 
CPoint shadowTextOffset {1., 1.}
 
CPoint backOffset
 
CCoord roundRectRadius
 
CCoord frameWidth
 
double textRotation
 
- Protected Attributes inherited from CControl
IControlListenerlistener
 
int32_t tag
 
float value
 

CParamDisplay Methods

enum  Style {
  kShadowText = 1 << StyleShadowText, k3DIn = 1 << Style3DIn, k3DOut = 1 << Style3DOut, kNoTextStyle = 1 << StyleNoText,
  kNoDrawStyle = 1 << StyleNoDraw, kRoundRectStyle = 1 << StyleRoundRect, kNoFrame = 1 << StyleNoFrame
}
 
using ValueToStringUserData = CParamDisplay
 
using ValueToStringFunction = std::function< bool(float value, char utf8String[256], CParamDisplay *display)>
 
using ValueToStringFunction2 = std::function< bool(float value, std::string &result, CParamDisplay *display)>
 
virtual void setFont (CFontRef fontID)
 
const CFontRef getFont () const
 
virtual void setFontColor (CColor color)
 
CColor getFontColor () const
 
virtual void setBackColor (CColor color)
 
CColor getBackColor () const
 
virtual void setFrameColor (CColor color)
 
CColor getFrameColor () const
 
virtual void setShadowColor (CColor color)
 
CColor getShadowColor () const
 
virtual void setShadowTextOffset (const CPoint &offset)
 
CPoint getShadowTextOffset () const
 
virtual void setAntialias (bool state)
 
bool getAntialias () const
 
virtual void setHoriAlign (CHoriTxtAlign hAlign)
 
CHoriTxtAlign getHoriAlign () const
 
virtual void setTextInset (const CPoint &p)
 
CPoint getTextInset () const
 
virtual void setTextRotation (double angle)
 
double getTextRotation () const
 
virtual void setRoundRectRadius (const CCoord &radius)
 
CCoord getRoundRectRadius () const
 
virtual void setFrameWidth (const CCoord &width)
 
CCoord getFrameWidth () const
 
void setValueToStringFunction (const ValueToStringFunction &valueToStringFunc)
 
void setValueToStringFunction (ValueToStringFunction &&valueToStringFunc)
 
void setValueToStringFunction2 (const ValueToStringFunction2 &valueToStringFunc)
 
void setValueToStringFunction2 (ValueToStringFunction2 &&valueToStringFunc)
 
virtual void setStyle (int32_t val)
 
int32_t getStyle () const
 
virtual void setPrecision (uint8_t precision)
 
uint8_t getPrecision () const
 
virtual void setBackOffset (const CPoint &offset)
 
const CPointgetBackOffset () const
 
void copyBackOffset ()
 

Additional Inherited Members

- Public Types inherited from CControl
using CheckDefaultValueFuncT = bool(*)(CControl *, CButtonState)
 
- Public Types inherited from CView
enum  MouseListenerCall { MouseDown, MouseMoved, MouseUp, MouseCancel }
 
- Static Public Attributes inherited from CControl
static int32_t kZoomModifier = kShift
 zoom modifier key, per default is the shift key More...
 
static int32_t kDefaultValueModifier = kControl
 default value modifier key, per default is the control key More...
 
static CheckDefaultValueFuncT CheckDefaultValueFunc
 Function to check if the button state is the state to set the control value to its default value. More...
 
- Static Public Attributes inherited from CView
static bool kDirtyCallAlwaysOnMainThread = false
 if this is true, setting a view dirty will call invalid() instead of checking it in idle. More...
 
static uint32_t idleRate
 global idle rate in Hz, defaults to 30 Hz More...
 
- Static Protected Member Functions inherited from CControl
static int32_t mapVstKeyModifier (int32_t vstModifier)
 

Detailed Description

a parameter display

Define a rectangle view where a text-value can be displayed with a given font and color. The user can specify its convert function (from float to char) by default the string format is "%2.2f". The text-value is centered in the given rect.

Member Typedef Documentation

◆ ValueToStringFunction

using ValueToStringFunction = std::function<bool (float value, char utf8String[256], CParamDisplay* display)>

◆ ValueToStringFunction2

using ValueToStringFunction2 = std::function<bool (float value, std::string& result, CParamDisplay* display)>

◆ ValueToStringUserData

Member Enumeration Documentation

◆ Style

enum Style
Enumerator
kShadowText 
k3DIn 
k3DOut 
kNoTextStyle 
kNoDrawStyle 
kRoundRectStyle 
kNoFrame 

◆ StyleEnum

enum StyleEnum
protected
Enumerator
StyleShadowText 
Style3DIn 
Style3DOut 
StyleNoText 
StyleNoDraw 
StyleRoundRect 
StyleNoFrame 
StyleAntialias 
LastStyle 

◆ StylePrivate

enum StylePrivate
protected
Enumerator
kAntialias 

Constructor & Destructor Documentation

◆ CParamDisplay() [1/2]

CParamDisplay ( const CRect size,
CBitmap background = nullptr,
int32_t  style = 0 
)

◆ CParamDisplay() [2/2]

CParamDisplay ( const CParamDisplay paramDisplay)

◆ ~CParamDisplay()

~CParamDisplay ( )
overrideprotectednoexcept

Member Function Documentation

◆ copyBackOffset()

void copyBackOffset ( )

◆ draw()

void draw ( CDrawContext pContext)
overridevirtual

called if the view should draw itself

Parameters
pContextdraw context in which to draw

Implements CControl.

Reimplemented in CTextEdit, CTextLabel, CSearchTextEdit, and CXYPad.

◆ drawBack()

void drawBack ( CDrawContext pContext,
CBitmap newBack = nullptr 
)
protectedvirtual

Reimplemented in CXYPad.

◆ drawPlatformText() [1/2]

void drawPlatformText ( CDrawContext pContext,
IPlatformString *  string 
)
protectedvirtual

◆ drawPlatformText() [2/2]

void drawPlatformText ( CDrawContext pContext,
IPlatformString *  string,
const CRect size 
)
protectedvirtual

◆ drawStyleChanged()

void drawStyleChanged ( )
protectedvirtual

Reimplemented in CTextLabel.

◆ getAntialias()

bool getAntialias ( ) const
inline

◆ getBackColor()

CColor getBackColor ( ) const
inline

◆ getBackOffset()

const CPoint& getBackOffset ( ) const
inline

◆ getFocusPath()

bool getFocusPath ( CGraphicsPath outPath)
overridevirtual

the graphics path will be drawn filled with the evenodd method and the color set in CFrame::setFocusColor()

Reimplemented from CControl.

◆ getFont()

const CFontRef getFont ( ) const
inline

◆ getFontColor()

CColor getFontColor ( ) const
inline

◆ getFrameColor()

CColor getFrameColor ( ) const
inline

◆ getFrameWidth()

CCoord getFrameWidth ( ) const
inline

◆ getHoriAlign()

CHoriTxtAlign getHoriAlign ( ) const
inline

◆ getPrecision()

uint8_t getPrecision ( ) const
inline

◆ getRoundRectRadius()

CCoord getRoundRectRadius ( ) const
inline

◆ getShadowColor()

CColor getShadowColor ( ) const
inline

◆ getShadowTextOffset()

CPoint getShadowTextOffset ( ) const
inline

◆ getStyle()

int32_t getStyle ( ) const

◆ getTextInset()

CPoint getTextInset ( ) const
inline

◆ getTextRotation()

double getTextRotation ( ) const
inline

◆ newCopy()

CBaseObject* newCopy ( ) const
inlineoverridevirtual

Implements CControl.

Reimplemented in CTextEdit, and CTextLabel.

◆ removed()

bool removed ( CView parent)
overridevirtual

view is removed from parent view

Parameters
parentparent view
Returns
true if view successfully removed from parent

Reimplemented from CView.

◆ setAntialias()

virtual void setAntialias ( bool  state)
inlinevirtual

◆ setBackColor()

void setBackColor ( CColor  color)
virtual

◆ setBackOffset()

void setBackOffset ( const CPoint offset)
virtual

◆ setFont()

void setFont ( CFontRef  fontID)
virtual

◆ setFontColor()

void setFontColor ( CColor  color)
virtual

◆ setFrameColor()

void setFrameColor ( CColor  color)
virtual

◆ setFrameWidth()

void setFrameWidth ( const CCoord width)
virtual

◆ setHoriAlign()

void setHoriAlign ( CHoriTxtAlign  hAlign)
virtual

◆ setPrecision()

void setPrecision ( uint8_t  precision)
virtual

◆ setRoundRectRadius()

void setRoundRectRadius ( const CCoord radius)
virtual

◆ setShadowColor()

void setShadowColor ( CColor  color)
virtual

◆ setShadowTextOffset()

void setShadowTextOffset ( const CPoint offset)
virtual

◆ setStyle()

void setStyle ( int32_t  val)
virtual

◆ setTextInset()

void setTextInset ( const CPoint p)
virtual

◆ setTextRotation()

void setTextRotation ( double  angle)
virtual

Reimplemented in CTextEdit.

◆ setValueToStringFunction() [1/2]

void setValueToStringFunction ( const ValueToStringFunction valueToStringFunc)

◆ setValueToStringFunction() [2/2]

void setValueToStringFunction ( ValueToStringFunction &&  valueToStringFunc)

◆ setValueToStringFunction2() [1/2]

void setValueToStringFunction2 ( const ValueToStringFunction2 valueToStringFunc)

◆ setValueToStringFunction2() [2/2]

void setValueToStringFunction2 ( ValueToStringFunction2 &&  valueToStringFunc)

Member Data Documentation

◆ backColor

CColor backColor
protected

◆ backOffset

CPoint backOffset
protected

◆ fontColor

CColor fontColor
protected

◆ fontID

CFontRef fontID
protected

◆ frameColor

CColor frameColor
protected

◆ frameWidth

CCoord frameWidth
protected

◆ horiTxtAlign

CHoriTxtAlign horiTxtAlign
protected

◆ roundRectRadius

CCoord roundRectRadius
protected

◆ shadowColor

CColor shadowColor
protected

◆ shadowTextOffset

CPoint shadowTextOffset {1., 1.}
protected

◆ style

int32_t style
protected

◆ textInset

CPoint textInset
protected

◆ textRotation

double textRotation
protected

◆ valuePrecision

uint8_t valuePrecision
protected

◆ valueToStringFunction

ValueToStringFunction2 valueToStringFunction
protected

The documentation for this class was generated from the following files: