ASPiK SDK
VSTGUI::CKickButton Class Reference
Inheritance diagram for VSTGUI::CKickButton:
VSTGUI::CControl VSTGUI::IMultiBitmapControl VSTGUI::CView VSTGUI::IFocusDrawing VSTGUI::IDependency VSTGUI::CBaseObject VSTGUI::ReferenceCounted< T > VSTGUI::IReference VSTGUI::CKickButtonEx

Public Member Functions

 CKickButton (const CRect &size, IControlListener *listener, int32_t tag, CBitmap *background, const CPoint &offset=CPoint(0, 0))
 
 CKickButton (const CRect &size, IControlListener *listener, int32_t tag, CCoord heightOfOneImage, CBitmap *background, const CPoint &offset=CPoint(0, 0))
 
 CKickButton (const CKickButton &kickButton)
 
void draw (CDrawContext *) override
 called if the view should draw itself More...
 
CMouseEventResult onMouseDown (CPoint &where, const CButtonState &buttons) override
 called when a mouse down event occurs More...
 
CMouseEventResult onMouseUp (CPoint &where, const CButtonState &buttons) override
 called when a mouse up event occurs More...
 
CMouseEventResult onMouseMoved (CPoint &where, const CButtonState &buttons) override
 called when a mouse move event occurs More...
 
CMouseEventResult onMouseCancel () override
 called when mouse tracking should be canceled
 
int32_t onKeyDown (VstKeyCode &keyCode) override
 called if a key down event occurs and this view has focus More...
 
int32_t onKeyUp (VstKeyCode &keyCode) override
 called if a key up event occurs and this view has focus More...
 
bool sizeToFit () override
 resize view to optimal size
 
void setNumSubPixmaps (int32_t numSubPixmaps) override
 
- Public Member Functions inherited from VSTGUI::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. Thread Safe !
 
bool drawFocusOnTop () override
 
bool getFocusPath (CGraphicsPath &outPath) override
 
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 (void) const
 
virtual void setDefaultValue (float val)
 
virtual float getDefaultValue (void) const
 
virtual void bounceValue ()
 
virtual bool checkDefaultValue (CButtonState button)
 
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 setBackOffset (const CPoint &offset)
 
virtual const CPointgetBackOffset () const
 
virtual void copyBackOffset ()
 
virtual void setWheelInc (float val)
 
virtual float getWheelInc () const
 
- Public Member Functions inherited from VSTGUI::CView
 CView (const CRect &size)
 
 CView (const CView &view)
 
void setSubviewState (bool state)
 
bool isSubview () const
 
virtual bool wantsWindowActiveStateChangeNotification () const
 
virtual void onWindowActivate (bool state)
 
CGraphicsTransform getGlobalTransform () const
 
template<typename T >
T & translateToGlobal (T &t) const
 translates a local coordinate to a global one using parent transforms
 
template<typename T >
translateToGlobal (const T &t) const
 translates a local coordinate to a global one using parent transforms
 
template<typename T >
T & translateToLocal (T &t) const
 translates a global coordinate to a local one using parent transforms
 
template<typename T >
translateToLocal (const T &t) const
 translates a local coordinate to a global one using parent transforms
 
virtual CViewContainerasViewContainer ()
 
virtual const CViewContainerasViewContainer () const
 
CMessageResult notify (CBaseObject *sender, IdStringPtr message) override
 
void beforeDelete () override
 
virtual CMouseEventResult onMouseEntered (CPoint &where, const CButtonState &buttons)
 called when the mouse enters this view
 
virtual CMouseEventResult onMouseExited (CPoint &where, const CButtonState &buttons)
 called when the mouse leaves this view
 
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)
 called if a mouse wheel event is happening over this view More...
 
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
 
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
 
CRectgetMouseableArea (CRect &rect) const
 get the area in which the view reacts to the mouse
 
const CRectgetMouseableArea () const
 read only access to the mouseable area
 
virtual DragResult doDrag (IDataPackage *source, const CPoint &offset=CPoint(0, 0), CBitmap *dragBitmap=nullptr)
 start a drag operation. See CDropSource to create the source data package More...
 
virtual bool onDrop (IDataPackage *drag, const CPoint &where)
 called if a drag is dropped onto this view
 
virtual void onDragEnter (IDataPackage *drag, const CPoint &where)
 called if a drag is entering this view
 
virtual void onDragLeave (IDataPackage *drag, const CPoint &where)
 called if a drag is leaving this view
 
virtual void onDragMove (IDataPackage *drag, const CPoint &where)
 called if a drag is moved inside this view
 
CCoord getHeight () const
 get the height of the view
 
CCoord getWidth () const
 get the width of the view
 
virtual void setViewSize (const CRect &rect, bool invalid=true)
 set views size More...
 
const CRectgetViewSize () const
 read only access to view size
 
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
 
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
 
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 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
 
virtual void setBackground (CBitmap *background)
 set the background image of this view More...
 
CBitmapgetBackground () const
 get the background image of this view
 
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
 
CBitmapgetDrawBackground () const
 
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 More...
 
virtual bool attached (CView *parent)
 view is attached to a parent view More...
 
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=nullptr)
 
void addAnimation (IdStringPtr name, Animation::IAnimationTarget *target, Animation::ITimingFunction *timingFunction, const Animation::DoneFunction &doneFunc)
 
void removeAnimation (IdStringPtr name)
 
void removeAllAnimations ()
 
void registerViewListener (IViewListener *listener)
 
void unregisterViewListener (IViewListener *listener)
 
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 More...
 
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 VSTGUI::CBaseObject
 CBaseObject (const CBaseObject &o)
 
CBaseObjectoperator= (const CBaseObject &obj)
 
- Public Member Functions inherited from VSTGUI::ReferenceCounted< T >
 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 VSTGUI::IDependency
virtual void addDependency (CBaseObject *obj)
 
virtual void removeDependency (CBaseObject *obj)
 
virtual void changed (IdStringPtr message)
 
virtual void deferChanges (bool state)
 
- Public Member Functions inherited from VSTGUI::IMultiBitmapControl
virtual void setHeightOfOneImage (const CCoord &height)
 
virtual CCoord getHeightOfOneImage () const
 
virtual int32_t getNumSubPixmaps () const
 
virtual void autoComputeHeightOfOneImage ()
 

Protected Attributes

CPoint offset
 
- Protected Attributes inherited from VSTGUI::CControl
IControlListenerlistener
 
SubListenerDispatcher subListeners
 
int32_t tag
 
float oldValue
 
float defaultValue
 
float value
 
float vmin
 
float vmax
 
float wheelInc
 
int32_t editing
 
CPoint backOffset
 
- Protected Attributes inherited from VSTGUI::IDependency
int32_t deferChangeCount {0}
 
DeferedChangesSet deferedChanges
 
DependentList dependents
 
- Protected Attributes inherited from VSTGUI::IMultiBitmapControl
CCoord heightOfOneImage
 
int32_t subPixmaps
 

Additional Inherited Members

- Static Public Attributes inherited from VSTGUI::CControl
static int32_t kZoomModifier = kShift
 zoom modifier key, per default is the shift key
 
static int32_t kDefaultValueModifier = kControl
 default value modifier key, per default is the control key
 
static IdStringPtr kMessageTagWillChange = "kMessageTagWillChange"
 
static IdStringPtr kMessageTagDidChange = "kMessageTagDidChange"
 
static IdStringPtr kMessageValueChanged = "kMessageValueChanged"
 
static IdStringPtr kMessageBeginEdit = "kMessageBeginEdit"
 
static IdStringPtr kMessageEndEdit = "kMessageEndEdit"
 
- Static Public Attributes inherited from VSTGUI::CView
static bool kDirtyCallAlwaysOnMainThread = false
 if this is true, setting a view dirty will call invalid() instead of checking it in idle. Default value is false.
 
static uint32_t idleRate
 global idle rate in Hz, defaults to 30 Hz
 
- Protected Types inherited from VSTGUI::CControl
using SubListenerDispatcher = DispatchList< IControlListener * >
 
- Protected Types inherited from VSTGUI::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,
  kLastCViewFlag = 7
}
 
- Protected Types inherited from VSTGUI::IDependency
using DeferedChangesSet = std::set< IdStringPtr >
 
using DependentList = std::list< CBaseObject * >
 
- Protected Member Functions inherited from VSTGUI::CView
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)
 
- Static Protected Member Functions inherited from VSTGUI::CControl
static int32_t mapVstKeyModifier (int32_t vstModifier)
 
- Static Protected Member Functions inherited from VSTGUI::IDependency
static void rememberObject (CBaseObject *obj)
 
static void forgetObject (CBaseObject *obj)
 

Detailed Description

Define a button with 2 states using 2 subbitmaps. One click on it, then the second subbitmap is displayed. When the mouse button is relaxed, the first subbitmap is framed.

Constructor & Destructor Documentation

◆ CKickButton() [1/2]

VSTGUI::CKickButton::CKickButton ( const CRect size,
IControlListener listener,
int32_t  tag,
CBitmap background,
const CPoint offset = CPoint (0, 0) 
)

CKickButton constructor.

Parameters
sizethe size of this view
listenerthe listener
tagthe control tag
backgroundthe bitmap
offsetunused

◆ CKickButton() [2/2]

VSTGUI::CKickButton::CKickButton ( const CRect size,
IControlListener listener,
int32_t  tag,
CCoord  heightOfOneImage,
CBitmap background,
const CPoint offset = CPoint (0, 0) 
)

CKickButton constructor.

Parameters
sizethe size of this view
listenerthe listener
tagthe control tag
heightOfOneImageheight of one sub bitmap in background
backgroundthe bitmap
offsetof background

Member Function Documentation

◆ draw()

void VSTGUI::CKickButton::draw ( CDrawContext pContext)
overridevirtual

called if the view should draw itself

Parameters
pContextdraw context in which to draw

Implements VSTGUI::CControl.

◆ onKeyDown()

int32_t VSTGUI::CKickButton::onKeyDown ( VstKeyCode keyCode)
overridevirtual

called if a key down event occurs and this view has focus

Parameters
keyCodekey code of pressed key
Returns
-1 if not handled and 1 if handled

Reimplemented from VSTGUI::CView.

◆ onKeyUp()

int32_t VSTGUI::CKickButton::onKeyUp ( VstKeyCode keyCode)
overridevirtual

called if a key up event occurs and this view has focus

Parameters
keyCodekey code of pressed key
Returns
-1 if not handled and 1 if handled

Reimplemented from VSTGUI::CView.

◆ onMouseDown()

CMouseEventResult VSTGUI::CKickButton::onMouseDown ( CPoint where,
const CButtonState buttons 
)
overridevirtual

called when a mouse down event occurs

Parameters
wheremouse location of mouse down
buttonsbutton and modifier state
Returns
event result. see #CMouseEventResult

Reimplemented from VSTGUI::CView.

◆ onMouseMoved()

CMouseEventResult VSTGUI::CKickButton::onMouseMoved ( CPoint where,
const CButtonState buttons 
)
overridevirtual

called when a mouse move event occurs

Parameters
wheremouse location of mouse move
buttonsbutton and modifier state
Returns
event result. see #CMouseEventResult

Reimplemented from VSTGUI::CView.

◆ onMouseUp()

CMouseEventResult VSTGUI::CKickButton::onMouseUp ( CPoint where,
const CButtonState buttons 
)
overridevirtual

called when a mouse up event occurs

Parameters
wheremouse location of mouse up
buttonsbutton and modifier state
Returns
event result. see #CMouseEventResult

Reimplemented from VSTGUI::CView.


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