VSTGUI  4.10
Graphical User Interface Framework not only for VST plugins
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
CSlider Class Reference

a slider control More...

+ Inheritance diagram for CSlider:

Classes

struct  Impl
 

Public Member Functions

 CSlider (const CRect &size, IControlListener *listener, int32_t tag, int32_t iMinPos, int32_t iMaxPos, CBitmap *handle, CBitmap *background, const CPoint &offset=CPoint(0, 0), const int32_t style=kLeft|kHorizontal)
 CSlider constructor.
 
 CSlider (const CRect &rect, IControlListener *listener, int32_t tag, const CPoint &offsetHandle, int32_t rangeHandle, CBitmap *handle, CBitmap *background, const CPoint &offset=CPoint(0, 0), const int32_t style=kLeft|kHorizontal)
 CSlider constructor.
 
 CSlider (const CSlider &slider)
 
void draw (CDrawContext *) override
 called if the view should draw itself
 
bool sizeToFit () override
 resize view to optimal size
 
CBaseObjectnewCopy () const override
 
CSlider Methods
virtual void setOffset (const CPoint &val)
 
virtual CPoint getOffset () const
 
void setBackgroundOffset (const CPoint &offset)
 set background draw offset
 
CPoint getBackgroundOffset () const
 get background draw offset
 
virtual void setHandle (CBitmap *pHandle)
 
virtual CBitmapgetHandle () const
 
- Public Member Functions inherited from CSliderBase
 CSliderBase (const CRect &size, IControlListener *listener, int32_t tag)
 
 CSliderBase (const CSliderBase &slider)
 
void setOffsetHandle (const CPoint &val)
 
CPoint getOffsetHandle () const
 
void setStyle (int32_t style)
 
int32_t getStyle () const
 
bool isStyleHorizontal () const
 
bool isStyleRight () const
 
bool isStyleBottom () const
 
bool isInverseStyle () const
 
void setZoomFactor (float val)
 
float getZoomFactor () const
 
void setSliderMode (CSliderMode mode)
 
CSliderMode getSliderMode () const
 
CSliderMode getEffectiveSliderMode () const
 
CMouseEventResult onMouseDown (CPoint &where, const CButtonState &buttons) override
 do not use any longer.
 
CMouseEventResult onMouseUp (CPoint &where, const CButtonState &buttons) override
 do not use any longer.
 
CMouseEventResult onMouseMoved (CPoint &where, const CButtonState &buttons) override
 do not use any longer.
 
CMouseEventResult onMouseCancel () override
 do not use any longer.
 
void onMouseWheelEvent (MouseWheelEvent &event) override
 called when a mouse wheel event occurs
 
void onKeyboardEvent (KeyboardEvent &event) override
 called when a keyboard event is dispatched to this view
 
void setViewSize (const CRect &rect, bool invalid) override
 set views size
 
- 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
 
void setDirty (bool val=true) override
 set the view to dirty so that it is redrawn in the next idle.
 
bool drawFocusOnTop () override
 draw focus before view will be drawn or afterwards
 
bool getFocusPath (CGraphicsPath &outPath) override
 the graphics path will be drawn filled with the evenodd method and the color set in CFrame::setFocusColor()
 
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 void valueChanged ()
 notifies listener and dependent objects
 
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
 
virtual void setListener (IControlListener *l)
 set main listener
 
void registerControlListener (IControlListener *listener)
 register a sub listener
 
void unregisterControlListener (IControlListener *listener)
 unregister a sub listener
 
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
 
virtual void onWindowActivate (bool state)
 called when the active state of the window changes
 
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 void dispatchEvent (Event &event)
 dispatch an event
 
virtual void onMouseDownEvent (MouseDownEvent &event)
 called when a mouse down event occurs
 
virtual void onMouseMoveEvent (MouseMoveEvent &event)
 called when a mouse move event occurs
 
virtual void onMouseUpEvent (MouseUpEvent &event)
 called when a mouse up event occurs
 
virtual void onMouseCancelEvent (MouseCancelEvent &event)
 called when mouse tracking should be canceled
 
virtual void onMouseEnterEvent (MouseEnterEvent &event)
 called when the mouse enters this view
 
virtual void onMouseExitEvent (MouseExitEvent &event)
 called when the mouse leaves this view
 
virtual void onZoomGestureEvent (ZoomGestureEvent &event)
 called when a zoom gesture event occurs
 
virtual void setMouseEnabled (bool bEnable=true)
 turn on/off mouse usage for this view
 
bool getMouseEnabled () const
 get the state of wheather this view uses the mouse or not
 
virtual void setMouseableArea (const CRect &rect)
 set the area in which the view reacts to the mouse
 
CRect getMouseableArea () const
 get the area in which the view reacts to the mouse
 
virtual CMouseEventResult onMouseEntered (CPoint &where, const CButtonState &buttons)
 do not use any longer.
 
virtual CMouseEventResult onMouseExited (CPoint &where, const CButtonState &buttons)
 do not use any longer.
 
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)
 
CRectgetMouseableArea (CRect &rect) const
 get the area in which the view reacts to the mouse
 
void setHitTestPath (CGraphicsPath *path)
 
virtual bool hitTest (const CPoint &where, const Event &event=noEvent())
 check if where hits this view
 
bool doDrag (const DragDescription &dragDescription, const SharedPointer< IDragCallback > &callback={})
 A drag can only be started from within onMouseDown or onMouseMove.
 
virtual SharedPointer
< IDropTarget
getDropTarget ()
 get the drag target for drag and drop handling
 
void setDropTarget (const SharedPointer< IDropTarget > &dt)
 set a custom drop target
 
DragResult doDrag (IDataPackage *source, const CPoint &offset=CPoint(0, 0), CBitmap *dragBitmap=nullptr)
 a drag can only be started from within onMouseDown
 
virtual int32_t onKeyDown (VstKeyCode &keyCode)
 called if a key down event occurs and this view has focus
 
virtual int32_t onKeyUp (VstKeyCode &keyCode)
 called if a key up event occurs and this view has focus
 
CCoord getHeight () const
 get the height of the view
 
CCoord getWidth () const
 get the width of the view
 
const CRectgetViewSize () const
 read only access to view size
 
virtual CRect getVisibleViewSize () const
 returns the visible size of the view
 
virtual void parentSizeChanged ()
 notification that one of the views parent has changed its size
 
virtual CPointframeToLocal (CPoint &point) const
 conversion from frame coordinates to local view coordinates
 
virtual CPointlocalToFrame (CPoint &point) const
 conversion from local view coordinates to frame coordinates
 
virtual void setAutosizeFlags (int32_t flags)
 set autosize flags
 
int32_t getAutosizeFlags () const
 get autosize flags
 
virtual void looseFocus ()
 called if view should loose focus
 
virtual void takeFocus ()
 called if view should take focus
 
virtual bool wantsFocus () const
 check if view supports focus
 
virtual void setWantsFocus (bool state)
 set focus support on/off
 
bool getAttributeSize (const CViewAttributeID id, uint32_t &outSize) const
 get the size of an attribute
 
bool getAttribute (const CViewAttributeID id, const uint32_t inSize, void *outData, uint32_t &outSize) const
 get an attribute
 
bool setAttribute (const CViewAttributeID id, const uint32_t inSize, const void *inData)
 set an attribute
 
bool removeAttribute (const CViewAttributeID id)
 remove an attribute
 
template<typename T >
bool setAttribute (const CViewAttributeID id, const T &data)
 set an attribute
 
template<typename T >
bool getAttribute (const CViewAttributeID id, T &data) const
 get an attribute
 
virtual void setBackground (CBitmap *background)
 set the background image of this view
 
CBitmapgetBackground () const
 get the background image of this view
 
virtual void setDisabledBackground (CBitmap *background)
 set background image used when the mouse is not enabled
 
CBitmapgetDisabledBackground () const
 get background image used when the mouse is not enabled
 
CBitmapgetDrawBackground () const
 get the bitmap which is drawn depending on the enabled state.
 
virtual void setTransparency (bool val)
 set views transparent state
 
bool getTransparency () const
 get views transparent state
 
virtual void setAlphaValue (float alpha)
 set alpha value which will be applied when drawing this view
 
float getAlphaValue () const
 get alpha value
 
virtual bool removed (CView *parent)
 view is removed from parent view
 
virtual bool attached (CView *parent)
 view is attached to a parent view
 
bool isAttached () const
 is view attached to a parentView
 
CViewgetParentView () const
 get parent view
 
CFramegetFrame () const
 get frame
 
virtual VSTGUIEditorInterfacegetEditor () const
 get editor
 
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, bool callDoneOnCancel=false)
 
void removeAnimation (IdStringPtr name)
 
void removeAllAnimations ()
 
void registerViewListener (IViewListener *listener)
 
void unregisterViewListener (IViewListener *listener)
 
void registerViewEventListener (IViewEventListener *listener)
 
void unregisterViewEventListener (IViewEventListener *listener)
 
void registerViewMouseListener (IViewMouseListener *listener)
 
void unregisterViewMouseListener (IViewMouseListener *listener)
 
CGraphicsTransform getGlobalTransform (bool ignoreFrame=false) const
 get the active global transform for this view
 
template<typename T >
T & translateToGlobal (T &t, bool ignoreFrame=false) const
 translates a local coordinate to a global one using parent transforms
 
template<typename T >
translateToGlobal (const T &t, bool ignoreFrame=false) const
 translates a local coordinate to a global one using parent transforms
 
template<typename T >
T & translateToLocal (T &t, bool ignoreFrame=false) const
 translates a global coordinate to a local one using parent transforms
 
template<typename T >
translateToLocal (const T &t, bool ignoreFrame=false) const
 translates a local coordinate to a global one using parent transforms
 
virtual void drawRect (CDrawContext *pContext, const CRect &updateRect)
 called if the view should draw itself
 
virtual bool checkUpdate (const CRect &updateRect) const
 
virtual void invalidRect (const CRect &rect)
 mark rect as invalid
 
virtual void invalid ()
 mark whole view as invalid
 
virtual void setVisible (bool state)
 set visibility state
 
bool isVisible () const
 get visibility state
 
virtual void onIdle ()
 called on idle when view wants idle
 
void setWantsIdle (bool state)
 enable/disable onIdle() callback
 
bool wantsIdle () const
 returns if the view wants idle callback or not
 
- Public Member Functions inherited from CBaseObject
 CBaseObject ()=default
 
 ~CBaseObject () noexceptoverride=default
 
 CBaseObject (const CBaseObject &)
 
CBaseObjectoperator= (const CBaseObject &)
 
virtual CMessageResult notify ([[maybe_unused]] CBaseObject *sender,[[maybe_unused]] IdStringPtr message)
 
- 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
 
void remember () override
 increase refcount
 
virtual int32_t getNbReference () const
 get refcount
 
- Public Member Functions inherited from IFocusDrawing
virtual ~IFocusDrawing () noexcept=default
 

Protected Member Functions

 ~CSlider () noexceptoverride
 
- Protected Member Functions inherited from CSliderBase
 ~CSliderBase () noexcept
 
CRect calculateHandleRect (float normValue) const
 
void setHandleSizePrivate (CCoord width, CCoord height)
 
CPoint getHandleSizePrivate () const
 
CPoint getControlSizePrivate () const
 
void setHandleRangePrivate (CCoord range)
 
void setHandleMinPosPrivate (CCoord pos)
 
CCoord getHandleMinPosPrivate () const
 
- Protected Member Functions inherited from CControl
 ~CControl () noexceptoverride
 
- Protected Member Functions inherited from CView
 ~CView () noexceptoverride
 
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

std::unique_ptr< Implimpl
 

Draw Style Methods

enum  DrawStyle {
  kDrawFrame = 1 << 0, kDrawBack = 1 << 1, kDrawValue = 1 << 2, kDrawValueFromCenter = 1 << 3,
  kDrawInverted = 1 << 4
}
 
virtual void setDrawStyle (int32_t style)
 
virtual void setFrameWidth (CCoord width)
 
virtual void setFrameColor (CColor color)
 
virtual void setBackColor (CColor color)
 
virtual void setValueColor (CColor color)
 
int32_t getDrawStyle () const
 
CCoord getFrameWidth () const
 
CColor getFrameColor () const
 
CColor getBackColor () const
 
CColor getValueColor () const
 

Additional Inherited Members

- Public Types inherited from CSliderBase
enum  Style {
  kHorizontal = 1 << StyleHorizontal, kVertical = 1 << StyleVertical, kLeft = 1 << StyleLeft, kRight = 1 << StyleRight,
  kTop = 1 << StyleTop, kBottom = 1 << StyleBottom
}
 
- Static Public Member Functions inherited from CSliderBase
static void setGlobalMode (CSliderMode mode)
 
static CSliderMode getGlobalMode ()
 
- Static Public Attributes inherited from CSliderBase
static bool kAlwaysUseZoomFactor = false
 
- 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
}
 
- Static Protected Member Functions inherited from CControl
static int32_t mapVstKeyModifier (int32_t vstModifier)
 

Detailed Description

a slider control

Define a slider with a given background and handle. The range of variation of the handle should be defined. By default the handler is drawn with transparency. By clicking Alt+Left Mouse the default value is used.

Member Enumeration Documentation

enum DrawStyle
Enumerator
kDrawFrame 
kDrawBack 
kDrawValue 
kDrawValueFromCenter 
kDrawInverted 

Constructor & Destructor Documentation

CSlider ( const CRect rect,
IControlListener listener,
int32_t  tag,
int32_t  iMinPos,
int32_t  iMaxPos,
CBitmap handle,
CBitmap background,
const CPoint offset = CPoint (0, 0),
const int32_t  style = kLeft | kHorizontal 
)

CSlider constructor.

Parameters
rectthe size of this view
listenerthe listener
tagthe control tag
iMinPosmin position in pixel
iMaxPosmax position in pixel
handlebitmap of the slider
backgroundbitmap of the background
offsetoffset of the background
stylestyle (kBottom,kRight,kTop,kLeft,kHorizontal,kVertical)
CSlider ( const CRect rect,
IControlListener listener,
int32_t  tag,
const CPoint offsetHandle,
int32_t  _rangeHandle,
CBitmap handle,
CBitmap background,
const CPoint offset = CPoint (0, 0),
const int32_t  style = kLeft | kHorizontal 
)

CSlider constructor.

Parameters
rectthe size of this view
listenerthe listener
tagthe control tag
offsetHandlehandle offset
_rangeHandlesize of handle range
handlebitmap of the slider
backgroundbitmap of the background
offsetoffset of the background
stylestyle (kBottom,kRight,kTop,kLeft,kHorizontal,kVertical)
CSlider ( const CSlider slider)
~CSlider ( )
overrideprotectednoexcept

Member Function Documentation

void draw ( CDrawContext pContext)
overridevirtual

called if the view should draw itself

Parameters
pContextdraw context in which to draw

Implements CControl.

CColor getBackColor ( ) const
CPoint getBackgroundOffset ( ) const

get background draw offset

int32_t getDrawStyle ( ) const
CColor getFrameColor ( ) const
CCoord getFrameWidth ( ) const
CBitmap * getHandle ( ) const
virtual
CPoint getOffset ( ) const
virtual
Deprecated:
use getBackgroundOffset
CColor getValueColor ( ) const
CBaseObject* newCopy ( ) const
inlineoverridevirtual

Implements CControl.

void setBackColor ( CColor  color)
virtual
void setBackgroundOffset ( const CPoint offset)

set background draw offset

void setDrawStyle ( int32_t  style)
virtual
void setFrameColor ( CColor  color)
virtual
void setFrameWidth ( CCoord  width)
virtual
void setHandle ( CBitmap pHandle)
virtual
void setOffset ( const CPoint val)
virtual
Deprecated:
use setBackgroundOffset
void setValueColor ( CColor  color)
virtual
bool sizeToFit ( )
overridevirtual

resize view to optimal size

Reimplemented from CView.

Member Data Documentation

std::unique_ptr<Impl> impl
protected

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