| VSTGUI 4.10
    Graphical User Interface Framework not only for VST plugins | 
a vertical switch control More...
#include <cswitch.h>
 Inheritance diagram for CVerticalSwitch:
 Inheritance diagram for CVerticalSwitch:| Public Member Functions | |
| CVerticalSwitch (const CRect &size, IControlListener *listener, int32_t tag, CBitmap *background) | |
| CVerticalSwitch constructor.  More... | |
| CVerticalSwitch (const CVerticalSwitch &vswitch) | |
| void | onKeyboardEvent (KeyboardEvent &event) override | 
| called when a keyboard event is dispatched to this view  More... | |
| CVerticalSwitch (const CRect &size, IControlListener *listener, int32_t tag, int32_t subPixmaps, CCoord heightOfOneImage, int32_t iMaxPositions, CBitmap *background, const CPoint &offset=CPoint(0, 0)) | |
| CVerticalSwitch constructor.  More... | |
| CBaseObject * | newCopy () const override | 
|  Public Member Functions inherited from CSwitchBase | |
| void | setInverseBitmap (bool state) | 
| bool | getInverseBitmap () const | 
|  Public Member Functions inherited from CControl | |
| CControl (const CRect &size, IControlListener *listener=nullptr, int32_t tag=0, CBitmap *pBackground=nullptr) | |
| CControl (const CControl &c) | |
| 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  More... | |
| virtual void | setTag (int32_t val) | 
| virtual int32_t | getTag () const | 
| virtual void | beginEdit () | 
| virtual void | endEdit () | 
| bool | isEditing () const | 
| virtual IControlListener * | getListener () 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 | 
| 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... | |
| bool | getFocusPath (CGraphicsPath &outPath) override | 
| the graphics path will be drawn filled with the evenodd method and the color set in CFrame::setFocusColor()  More... | |
|  Public Member Functions inherited from CView | |
| CView (const CRect &size) | |
| CView (const CView &view) | |
| virtual void | dispatchEvent (Event &event) | 
| dispatch an event  More... | |
| virtual void | onMouseDownEvent (MouseDownEvent &event) | 
| called when a mouse down event occurs  More... | |
| virtual void | onMouseMoveEvent (MouseMoveEvent &event) | 
| called when a mouse move event occurs  More... | |
| virtual void | onMouseUpEvent (MouseUpEvent &event) | 
| called when a mouse up event occurs  More... | |
| virtual void | onMouseCancelEvent (MouseCancelEvent &event) | 
| called when mouse tracking should be canceled  More... | |
| virtual void | onMouseEnterEvent (MouseEnterEvent &event) | 
| called when the mouse enters this view  More... | |
| virtual void | onMouseExitEvent (MouseExitEvent &event) | 
| called when the mouse leaves this view  More... | |
| virtual void | onMouseWheelEvent (MouseWheelEvent &event) | 
| called when a mouse wheel event occurs  More... | |
| virtual void | onZoomGestureEvent (ZoomGestureEvent &event) | 
| called when a zoom gesture event occurs  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... | |
| virtual void | setMouseableArea (const CRect &rect) | 
| set 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... | |
| virtual CMouseEventResult | onMouseEntered (CPoint &where, const CButtonState &buttons) | 
| do not use any longer.  More... | |
| virtual CMouseEventResult | onMouseExited (CPoint &where, const CButtonState &buttons) | 
| do not use any longer.  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) | 
| CRect & | getMouseableArea (CRect &rect) const | 
| get the area in which the view reacts to the mouse  More... | |
| void | setHitTestPath (CGraphicsPath *path) | 
| virtual bool | hitTest (const CPoint &where, const Event &event=noEvent()) | 
| check if where hits this view  More... | |
| virtual bool | hitTest (const CPoint &where, const CButtonState &buttons) | 
| bool | doDrag (const DragDescription &dragDescription, const SharedPointer< IDragCallback > &callback={}) | 
| start a drag operation  More... | |
| virtual SharedPointer< IDropTarget > | getDropTarget () | 
| 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 CRect & | getViewSize () 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 CPoint & | frameToLocal (CPoint &point) const | 
| conversion from frame coordinates to local view coordinates  More... | |
| virtual CPoint & | localToFrame (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 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... | |
| CBitmap * | getBackground () 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... | |
| CBitmap * | getDisabledBackground () const | 
| get background image used when the mouse is not enabled  More... | |
| CBitmap * | getDrawBackground () 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 | removed (CView *parent) | 
| view is removed from parent view  More... | |
| virtual bool | attached (CView *parent) | 
| view is attached to a parent view  More... | |
| bool | isAttached () const | 
| is view attached to a parentView  More... | |
| void | setSubviewState (bool state) | 
| bool | isSubview () const | 
| CView * | getParentView () const | 
| get parent view  More... | |
| CFrame * | getFrame () const | 
| get frame  More... | |
| virtual VSTGUIEditorInterface * | getEditor () 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, 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  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 > | |
| 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 > | |
| T | translateToLocal (const T &t, bool ignoreFrame=false) const | 
| translates a local coordinate to a global one using parent transforms  More... | |
| virtual CViewContainer * | asViewContainer () | 
| virtual const CViewContainer * | asViewContainer () const | 
| CMouseEventResult | callMouseListener (MouseListenerCall type, CPoint pos, CButtonState buttons) | 
| void | callMouseListenerEnteredExited (bool mouseEntered) | 
| CMessageResult | notify (CBaseObject *sender, IdStringPtr message) override | 
| void | beforeDelete () override | 
| CBaseObject * | newCopy () const override | 
| 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... | |
| 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) | 
|  Public Member Functions inherited from CBaseObject | |
| CBaseObject ()=default | |
| ~CBaseObject () noexcept override=default | |
| CBaseObject (const CBaseObject &) | |
| CBaseObject & | operator= (const CBaseObject &) | 
|  Public Member Functions inherited from ReferenceCounted< T > | |
| ReferenceCounted ()=default | |
| virtual | ~ReferenceCounted () noexcept=default | 
| ReferenceCounted (const ReferenceCounted &) | |
| ReferenceCounted & | operator= (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... | |
| virtual void | forget ()=0 | 
| decrease refcount and delete object if refcount == 0  More... | |
| virtual void | remember ()=0 | 
| increase refcount  More... | |
|  Public Member Functions inherited from IFocusDrawing | |
| virtual | ~IFocusDrawing () noexcept=default | 
| virtual bool | drawFocusOnTop ()=0 | 
| draw focus before view will be drawn or afterwards  More... | |
| virtual bool | getFocusPath (CGraphicsPath &outPath)=0 | 
| the graphics path will be drawn filled with the evenodd method and the color set in CFrame::setFocusColor()  More... | |
|  Public Member Functions inherited from MultiFrameBitmapView< CSwitchBase > | |
| void | setMultiFrameBitmapRange (int32_t startIndex, int32_t endIndex) | 
| set the range of the CMultiBitmapFrame this view will use for drawing  More... | |
| std::pair< int32_t, int32_t > | getMultiFrameBitmapRange () const | 
| get the range of the CMulitBitmapFrame this view will use for drawing  More... | |
| uint16_t | getMultiFrameBitmapRangeLength (const CMultiFrameBitmap &mfb) const | 
| get the number of frames this view will use for drawing  More... | |
| uint16_t | getInverseIndex (const CMultiFrameBitmap &mfb, uint16_t index) const | 
| get the inverse index  More... | |
| uint16_t | getMultiFrameBitmapIndex (const CMultiFrameBitmap &mfb, float normValue) const | 
| get the frame index for a normalized value  More... | |
| float | getNormValueFromMultiFrameBitmapIndex (const CMultiFrameBitmap &mfb, uint16_t index) const | 
| get the normalized value for a frame index  More... | |
|  Public Member Functions inherited from IMultiBitmapControl | |
| virtual | ~IMultiBitmapControl () | 
| virtual void | setHeightOfOneImage (const CCoord &height) | 
| virtual CCoord | getHeightOfOneImage () const | 
| virtual void | setNumSubPixmaps (int32_t numSubPixmaps) | 
| virtual int32_t | getNumSubPixmaps () const | 
| virtual void | autoComputeHeightOfOneImage () | 
| Protected Member Functions | |
| ~CVerticalSwitch () noexcept override=default | |
| double | calculateCoef () const override | 
| float | calcNormFromPoint (const CPoint &where) const override | 
|  Protected Member Functions inherited from CSwitchBase | |
| CSwitchBase (const CRect &size, IControlListener *listener, int32_t tag, CBitmap *background) | |
| CSwitchBase (const CSwitchBase &other) | |
| ~CSwitchBase () noexcept override=default | |
| void | draw (CDrawContext *) override | 
| called if the view should draw itself  More... | |
| CMouseEventResult | onMouseDown (CPoint &where, const CButtonState &buttons) override | 
| do not use any longer.  More... | |
| CMouseEventResult | onMouseUp (CPoint &where, const CButtonState &buttons) override | 
| do not use any longer.  More... | |
| CMouseEventResult | onMouseMoved (CPoint &where, const CButtonState &buttons) override | 
| do not use any longer.  More... | |
| CMouseEventResult | onMouseCancel () override | 
| do not use any longer.  More... | |
| bool | sizeToFit () override | 
| resize view to optimal size  More... | |
| CSwitchBase (const CRect &size, IControlListener *listener, int32_t tag, int32_t subPixmaps, CCoord heightOfOneImage, int32_t iMaxPositions, CBitmap *background, const CPoint &offset=CPoint(0, 0)) | |
| void | setNumSubPixmaps (int32_t numSubPixmaps) override | 
| const CPoint & | getOffset () const | 
| double | getCoef () const | 
| int32_t | normalizedToIndex (float norm) const | 
| float | indexToNormalized (int32_t index) const | 
| virtual double | calculateCoef () const =0 | 
| virtual float | calcNormFromPoint (const CPoint &where) const =0 | 
|  Protected Member Functions inherited from CControl | |
| ~CControl () noexcept override | |
|  Protected Member Functions inherited from CView | |
| ~CView () noexcept override | |
| CGraphicsPath * | getHitTestPath () 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 Member Functions inherited from IMultiBitmapControl | |
| IMultiBitmapControl () | |
| Additional Inherited Members | |
|  Public Types inherited from CControl | |
| using | CheckDefaultValueEventFuncT = bool(*)(CControl *, MouseDownEvent &) | 
| using | CheckDefaultValueFuncT = bool(*)(CControl *, CButtonState) | 
|  Public Types inherited from CView | |
| enum class | MouseListenerCall { MouseDown , MouseMoved , MouseUp , MouseCancel } | 
|  Static Public Attributes inherited from CControl | |
| static CheckDefaultValueEventFuncT | CheckDefaultValueEventFunc | 
| Function to check if a mouse down event should reset the value to its default value for a control.  More... | |
| static int32_t | kZoomModifier = kShift | 
| zoom modifier key, per default is the shift key  More... | |
| static int32_t | kDefaultValueModifier = kControl | 
| static CheckDefaultValueFuncT | CheckDefaultValueFunc | 
|  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 = 30 | 
| global idle rate in Hz, defaults to 30 Hz  More... | |
|  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) | 
|  Protected Attributes inherited from CControl | |
| IControlListener * | listener | 
| int32_t | tag | 
| float | value | 
|  Protected Attributes inherited from IMultiBitmapControl | |
| CCoord | heightOfOneImage | 
| int32_t | subPixmaps | 
|  Static Protected Attributes inherited from CSwitchBase | |
| static bool | useLegacyIndexCalculation = false | 
a vertical switch control
Define a switch with a given number of positions, the current position is defined by the position of the last click on this object (the object is divided in its height by the number of position). Each position has its subbitmap, each subbitmap is stacked in the given handle bitmap. By clicking Alt+Left Mouse the default value is used. Use a CMultiFrameBitmap for its background bitmap.
| CVerticalSwitch | ( | const CRect & | size, | 
| IControlListener * | listener, | ||
| int32_t | tag, | ||
| CBitmap * | background | ||
| ) | 
CVerticalSwitch constructor.
| size | the size of this view | 
| listener | the listener | 
| tag | the control tag | 
| background | the switch bitmap | 
| offset | unused | 
| CVerticalSwitch | ( | const CVerticalSwitch & | vswitch | ) | 
| CVerticalSwitch | ( | const CRect & | size, | 
| IControlListener * | listener, | ||
| int32_t | tag, | ||
| int32_t | subPixmaps, | ||
| CCoord | heightOfOneImage, | ||
| int32_t | iMaxPositions, | ||
| CBitmap * | background, | ||
| const CPoint & | offset = CPoint (0, 0) | ||
| ) | 
CVerticalSwitch constructor.
| size | the size of this view | 
| listener | the listener | 
| tag | the control tag | 
| subPixmaps | number of sub bitmaps in background | 
| heightOfOneImage | height of one sub bitmap | 
| iMaxPositions | TODO | 
| background | the switch bitmap | 
| offset | unused | 
| 
 | overrideprotecteddefaultnoexcept | 
| 
 | overrideprotectedvirtual | 
Implements CSwitchBase.
| 
 | overrideprotectedvirtual | 
Implements CSwitchBase.
| 
 | inlineoverridevirtual | 
Implements CControl.
| 
 | overridevirtual | 
called when a keyboard event is dispatched to this view
This happens normally only if the view is the focus view.
Reimplemented from CView.