VSTGUI 4.10 Graphical User Interface Framework not only for VST plugins

Classes | Public Member Functions | List of all members
CView Class Reference
Views

Base Class of all view objects. More...

`#include <cview.h>`

Inheritance diagram for CView:

## Classes
struct | Impl

## Public Member Functions
| CView (const CRect &size)
| CView (const CView &view)
Event Handling Methods
virtual void | dispatchEvent (Event &event)
| dispatch an event More...
Mouse Methods
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 | onMouseDown (CPoint &where, const CButtonState &buttons)
| do not use any longer. More...
virtual CMouseEventResult | onMouseUp (CPoint &where, const CButtonState &buttons)
| do not use any longer. More...
virtual CMouseEventResult | onMouseMoved (CPoint &where, const CButtonState &buttons)
| do not use any longer. More...
virtual CMouseEventResult | onMouseCancel ()
| do not use any longer. 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...
Hit testing Methods
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)
Drag & Drop Methods
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...
Keyboard Methods
virtual void | onKeyboardEvent (KeyboardEvent &event)
| called when a keyboard event is dispatched to this view 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...
View Size Methods
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 bool | sizeToFit ()
| resize view to optimal size More...
Focus Methods
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...
Attribute Methods
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...
Background Methods
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...
Transparency Methods
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...
Attaching Methods
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
Parent Methods
CView * | getParentView () const
| get parent view More...
CFrame * | getFrame () const
| get frame More...
virtual VSTGUIEditorInterface * | getEditor () const
| get editor More...
Animation Methods
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 ()
View Listener Methods
void | registerViewListener (IViewListener *listener)
void | unregisterViewListener (IViewListener *listener)
void | registerViewEventListener (IViewEventListener *listener)
void | unregisterViewEventListener (IViewEventListener *listener)
void | registerViewMouseListener (IViewMouseListener *listener)
void | unregisterViewMouseListener (IViewMouseListener *listener)
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...

## Coordinate translation Methods
enum class | MouseListenerCall { MouseDown , MouseMoved , MouseUp , MouseCancel }
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 }
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
| ~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)

## Draw and Update Methods
static bool | kDirtyCallAlwaysOnMainThread = false
| if this is true, setting a view dirty will call invalid() instead of checking it in idle. More...
virtual void | draw (CDrawContext *pContext)
| called if the view should draw itself 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 bool | isDirty () const
| check if view is dirty More...
virtual void | setDirty (bool val=true)
| set the view to dirty so that it is redrawn in the next idle. More...
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...

## Idle Methods
Should be used when a view needs to do a task periodically. The onIdle() method will be called only if the view is attached.
static uint32_t | idleRate = 30
| global idle rate in Hz, defaults to 30 Hz 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)

## Detailed Description

Base Class of all view objects.

## Member Enumeration Documentation

## ◆ anonymous enum

anonymous enum
| protected

Enumerator
kMouseEnabled |
kTransparencyEnabled |
kWantsFocus |
kIsAttached |
kVisible |
kDirty |
kWantsIdle |
kIsSubview |
kHasAlpha |
kHasBackground |
kHasDisabledBackground |
kHasMouseableArea |
kLastCViewFlag |

## ◆ MouseListenerCall

enum class MouseListenerCall
| strong

Enumerator
MouseDown |
MouseMoved |
MouseUp |
MouseCancel |

## Constructor & Destructor Documentation

## ◆ CView() [1/2]

CView | ( | const CRect & | size | ) |
| explicit

## ◆ CView() [2/2]

CView | ( | const CView & | view | ) |

## ◆ ~CView()

~CView | ( |  | ) |
| override protected default noexcept

## Member Function Documentation

## ◆ addAnimation() [1/2]

void addAnimation | ( | IdStringPtr | name,
|  | Animation::IAnimationTarget * | target,
|  | Animation::ITimingFunction * | timingFunction,
|  | CBaseObject * | notificationObject
| ) |  |

## ◆ addAnimation() [2/2]

void addAnimation | ( | IdStringPtr | name,
|  | Animation::IAnimationTarget * | target,
|  | Animation::ITimingFunction * | timingFunction,
|  | const Animation::DoneFunction & | doneFunc = `nullptr`,
|  | bool | callDoneOnCancel = `false`
| ) |  |

## ◆ asViewContainer() [1/2]

virtual CViewContainer * asViewContainer | ( |  | ) |
| inline virtual

Reimplemented in CViewContainer.

## ◆ asViewContainer() [2/2]

virtual const CViewContainer * asViewContainer | ( |  | ) | const
| inline virtual

Reimplemented in CViewContainer.

## ◆ attached()

bool attached | ( | CView * | parent | ) |
| virtual

view is attached to a parent view

Parameters

  parent | parent view

Returns
  true if view successfully attached to parent

Reimplemented in CDataBrowser, CExternalView, CExternalControl, CFrame, CLayeredViewContainer, CAutoAnimation, CFontChooser, CListControl, CSegmentButton, COpenGLView, CAutoLayoutContainerView, CShadowViewContainer, CSplitView, CViewContainer, and UIViewSwitchContainer.

## ◆ beforeDelete()

void beforeDelete | ( |  | ) |
| override virtual

Reimplemented from ReferenceCounted< T >.

Reimplemented in CViewContainer.

## ◆ callMouseListener()

CMouseEventResult callMouseListener | ( | MouseListenerCall | type,
|  | CPoint | pos,
|  | CButtonState | buttons
| ) |  |

## ◆ callMouseListenerEnteredExited()

void callMouseListenerEnteredExited | ( | bool | mouseEntered | ) |

## ◆ checkUpdate()

virtual bool checkUpdate | ( | const CRect & | updateRect | ) | const
| inline virtual

## ◆ dispatchEvent()

void dispatchEvent | ( | Event & | event | ) |
| virtual

dispatch an event

the event is then dispatched to the event listeners and then to one of the event methods.

Reimplemented in CFrame.

## ◆ doDrag() [1/2]

bool doDrag | ( | const DragDescription & | dragDescription,
|  | const SharedPointer< IDragCallback > & | callback = `{}`
| ) |  |

start a drag operation

A drag can only be started from within onMouseDown or onMouseMove.

This method may return immediately before the drop occurs, if you want to be notified about the result you have to provide a callback object.

Parameters

  dragDescription | drag description
  callback | callback

Returns
  true if the drag was started, otherwise false

## ◆ doDrag() [2/2]

DragResult doDrag | ( | IDataPackage * | source,
|  | const CPoint & | offset = `CPoint (0, 0)`,
|  | CBitmap * | dragBitmap = `nullptr`
| ) |  |

a drag can only be started from within onMouseDown

Deprecated:
  start a drag operation. See CDropSource to create the source data package

Parameters

  source | source drop
  offset | bitmap offset
  dragBitmap | bitmap to drag

Returns
  see DragResult

## ◆ draw()

void draw | ( | CDrawContext * | pContext | ) |
| virtual

called if the view should draw itself

Parameters

  pContext | draw context in which to draw

Reimplemented in CAutoAnimation, COnOffButton, CKickButton, CMovieBitmap, CMovieButton, CSlider, CSpecialDigit, CSplashScreen, CAnimationSplashScreen, CSwitchBase, CRockerSwitch, CGradientView, CCheckBox, CTextButton, CListControl, CXYPad, CFrame, CKnob, CAnimKnob, COptionMenu, CParamDisplay, CScrollbar, CSearchTextEdit, CSegmentButton, CTextEdit, CTextLabel, CVuMeter, CViewContainer, CControlCreatorDummyControl, and CControl.

## ◆ drawRect()

virtual void drawRect | ( | CDrawContext * | pContext,
|  | const CRect & | updateRect
| ) |  |
| inline virtual

called if the view should draw itself

Reimplemented in CListControl, CSegmentButton, CFrame, CLayeredViewContainer, CMultiLineTextLabel, CShadowViewContainer, and CViewContainer.

## ◆ frameToLocal()

CPoint & frameToLocal | ( | CPoint & | point | ) | const
| virtual

conversion from frame coordinates to local view coordinates

Parameters

  point | location

Returns
  converted point

Reimplemented in CFrame, and CViewContainer.

## ◆ getAlphaValue()

float getAlphaValue | ( |  | ) | const

get alpha value

## ◆ getAttribute() [1/2]

bool getAttribute | ( | const CViewAttributeID | aId,
|  | const uint32_t | inSize,
|  | void * | outData,
|  | uint32_t & | outSize
| ) |  | const

get an attribute

Parameters

  aId | the ID of the Attribute
  inSize | the size of the outData pointer
  outData | a pointer where to copy the attribute data
  outSize | the size in bytes which was copied into outData

Returns
  true if attribute exists and outData was big enough. outSize and outData is valid then.

## ◆ getAttribute() [2/2]

bool getAttribute | ( | const CViewAttributeID | id,
|  | T & | data
| ) |  | const
| inline

get an attribute

## ◆ getAttributeSize()

bool getAttributeSize | ( | const CViewAttributeID | aId,
|  | uint32_t & | outSize
| ) |  | const

get the size of an attribute

Parameters

  aId | the ID of the Attribute
  outSize | on return the size of the attribute

Returns
  true if attribute exists. outSize is valid then.

## ◆ getAutosizeFlags()

int32_t getAutosizeFlags | ( |  | ) | const

get autosize flags

## ◆ getBackground()

CBitmap * getBackground | ( |  | ) | const

get the background image of this view

## ◆ getDisabledBackground()

CBitmap * getDisabledBackground | ( |  | ) | const

get background image used when the mouse is not enabled

## ◆ getDrawBackground()

CBitmap * getDrawBackground | ( |  | ) | const

get the bitmap which is drawn depending on the enabled state.

## ◆ getDropTarget()

SharedPointer< IDropTarget > getDropTarget | ( |  | ) |
| virtual

get the drag target for drag and drop handling

Reimplemented in CViewContainer.

## ◆ getEditor()

VSTGUIEditorInterface * getEditor | ( |  | ) | const
| virtual

get editor

Reimplemented in CFrame.

## ◆ getFrame()

CFrame * getFrame | ( |  | ) | const

get frame

## ◆ getGlobalTransform()

CGraphicsTransform getGlobalTransform | ( | bool | ignoreFrame = `false` | ) | const

get the active global transform for this view

## ◆ getHeight()

CCoord getHeight | ( |  | ) | const
| inline

get the height of the view

## ◆ getHitTestPath()

CGraphicsPath * getHitTestPath | ( |  | ) | const
| protected

## ◆ getMouseableArea() [1/2]

CRect getMouseableArea | ( |  | ) | const

get the area in which the view reacts to the mouse

## ◆ getMouseableArea() [2/2]

CRect & getMouseableArea | ( | CRect & | rect | ) | const

get the area in which the view reacts to the mouse

## ◆ getMouseEnabled()

bool getMouseEnabled | ( |  | ) | const
| inline

get the state of wheather this view uses the mouse or not

## ◆ getParentView()

CView * getParentView | ( |  | ) | const

get parent view

## ◆ getTransparency()

bool getTransparency | ( |  | ) | const
| inline

get views transparent state

## ◆ getViewSize()

const CRect & getViewSize | ( |  | ) | const

read only access to view size

## ◆ getVisibleViewSize()

CRect getVisibleViewSize | ( |  | ) | const
| virtual

returns the visible size of the view

Returns
  visible size of view

## ◆ getWidth()

CCoord getWidth | ( |  | ) | const
| inline

get the width of the view

## ◆ hasViewFlag()

bool hasViewFlag | ( | int32_t | bit | ) | const
| protected

## ◆ hitTest() [1/2]

bool hitTest | ( | const CPoint & | where,
|  | const CButtonState & | buttons
| ) |  |
| virtual

Deprecated:
  check if where hits this view * * the default behaviour is to return true if where is inside the view size of this view, but if you set a hit test path * the path is checked if the point lies in its boundaries.

Parameters

  where | location
  buttons | button and modifier state

Returns
  true if point hits this view

## ◆ hitTest() [2/2]

bool hitTest | ( | const CPoint & | where,
|  | const Event & | event = `noEvent ()`
| ) |  |
| virtual

check if where hits this view

the default behaviour is to return true if where is inside the view size of this view, but if you set a hit test path the path is checked if the point lies in its boundaries.

Reimplemented in CSplashScreen.

## ◆ invalid()

virtual void invalid | ( |  | ) |
| inline virtual

mark whole view as invalid

Reimplemented in CFrame, CLayeredViewContainer, and CViewContainer.

## ◆ invalidRect()

void invalidRect | ( | const CRect & | rect | ) |
| virtual

mark rect as invalid

Parameters

  rect | rect to invalidate

Reimplemented in CFrame, CLayeredViewContainer, COpenGLView, and CViewContainer.

## ◆ isAttached()

bool isAttached | ( |  | ) | const
| inline

is view attached to a parentView

## ◆ isDirty()

virtual bool isDirty | ( |  | ) | const
| inline virtual

check if view is dirty

Reimplemented in CControl, and CViewContainer.

## ◆ isSubview()

bool isSubview | ( |  | ) | const
| inline

## ◆ isVisible()

bool isVisible | ( |  | ) | const
| inline

get visibility state

## ◆ localToFrame()

CPoint & localToFrame | ( | CPoint & | point | ) | const
| virtual

conversion from local view coordinates to frame coordinates

Parameters

  point | location

Returns
  converted point

Reimplemented in CFrame, and CViewContainer.

## ◆ looseFocus()

void looseFocus | ( |  | ) |
| virtual

called if view should loose focus

Reimplemented in CExternalView, CExternalControl, COptionMenu, CTextEdit, and CViewContainer.

## ◆ newCopy()

CBaseObject * newCopy | ( |  | ) | const
| inline override

## ◆ notify()

CMessageResult notify | ( | CBaseObject * | sender,
|  | IdStringPtr | message
| ) |  |
| override virtual

Parameters

  sender | message sender
  message | message text

Returns
  message handled or not. See CMessageResult

Reimplemented from CBaseObject.

Reimplemented in CViewContainer.

## ◆ onIdle()

virtual void onIdle | ( |  | ) |
| inline virtual

called on idle when view wants idle

Reimplemented in CVuMeter.

## ◆ onKeyboardEvent()

void onKeyboardEvent | ( | KeyboardEvent & | event | ) |
| virtual

called when a keyboard event is dispatched to this view

This happens normally only if the view is the focus view.

Reimplemented in CDataBrowser, COnOffButton, CCheckBox, CKickButton, CTextButton, CFontChooser, CKnobBase, CListControl, CMovieButton, COptionMenu, CSegmentButton, CSliderBase, CVerticalSwitch, CHorizontalSwitch, CRockerSwitch, CTextEdit, and CXYPad.

## ◆ onKeyDown()

int32_t onKeyDown | ( | VstKeyCode & | keyCode | ) |
| virtual

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

Parameters

  keyCode | key code of pressed key

Returns
  -1 if not handled and 1 if handled

## ◆ onKeyUp()

int32_t onKeyUp | ( | VstKeyCode & | keyCode | ) |
| virtual

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

Parameters

  keyCode | key code of pressed key

Returns
  -1 if not handled and 1 if handled

## ◆ onMouseCancel()

CMouseEventResult onMouseCancel | ( |  | ) |
| virtual

do not use any longer.

if possible refactor your classes to use the newer mouse event methods above.

Reimplemented in COnOffButton, CCheckBox, CKickButton, CTextButton, CKnobBase, CMovieButton, CScrollbar, CSliderBase, CSwitchBase, and CRockerSwitch.

## ◆ onMouseCancelEvent()

void onMouseCancelEvent | ( | MouseCancelEvent & | event | ) |
| virtual

called when mouse tracking should be canceled

Reimplemented in CXYPad, and CViewContainer.

## ◆ onMouseDown()

CMouseEventResult onMouseDown | ( | CPoint & | where,
|  | const CButtonState & | buttons
| ) |  |
| virtual

do not use any longer.

if possible refactor your classes to use the newer mouse event methods above.

Parameters

  where | mouse location of mouse down
  buttons | button and modifier state

Returns
  event result. see CMouseEventResult

Reimplemented in CDataBrowser, CAutoAnimation, COnOffButton, CCheckBox, CKickButton, CTextButton, CKnobBase, CListControl, CMovieButton, COptionMenu, CScrollbar, CSearchTextEdit, CSegmentButton, CSliderBase, CSplashScreen, CAnimationSplashScreen, CSwitchBase, CRockerSwitch, and CTextEdit.

## ◆ onMouseDownEvent()

void onMouseDownEvent | ( | MouseDownEvent & | event | ) |
| virtual

called when a mouse down event occurs

Reimplemented in CXYPad, and CViewContainer.

## ◆ onMouseEntered()

virtual CMouseEventResult onMouseEntered | ( | CPoint & | where,
|  | const CButtonState & | buttons
| ) |  |
| inline virtual

do not use any longer.

if possible refactor your classes to use the newer mouse event methods above.

Reimplemented in CScrollbar.

## ◆ onMouseEnterEvent()

void onMouseEnterEvent | ( | MouseEnterEvent & | event | ) |
| virtual

called when the mouse enters this view

## ◆ onMouseExited()

virtual CMouseEventResult onMouseExited | ( | CPoint & | where,
|  | const CButtonState & | buttons
| ) |  |
| inline virtual

do not use any longer.

if possible refactor your classes to use the newer mouse event methods above.

Reimplemented in CListControl, and CScrollbar.

## ◆ onMouseExitEvent()

void onMouseExitEvent | ( | MouseExitEvent & | event | ) |
| virtual

called when the mouse leaves this view

## ◆ onMouseMoved()

CMouseEventResult onMouseMoved | ( | CPoint & | where,
|  | const CButtonState & | buttons
| ) |  |
| virtual

do not use any longer.

if possible refactor your classes to use the newer mouse event methods above.

Parameters

  where | mouse location of mouse move
  buttons | button and modifier state

Returns
  event result. see CMouseEventResult

Reimplemented in COnOffButton, CCheckBox, CKickButton, CTextButton, CKnobBase, CListControl, CMovieButton, CScrollbar, CSliderBase, CSwitchBase, and CRockerSwitch.

## ◆ onMouseMoveEvent()

void onMouseMoveEvent | ( | MouseMoveEvent & | event | ) |
| virtual

called when a mouse move event occurs

Reimplemented in CXYPad, and CViewContainer.

## ◆ onMouseUp()

CMouseEventResult onMouseUp | ( | CPoint & | where,
|  | const CButtonState & | buttons
| ) |  |
| virtual

do not use any longer.

if possible refactor your classes to use the newer mouse event methods above.

Parameters

  where | mouse location of mouse up
  buttons | button and modifier state

Returns
  event result. see CMouseEventResult

Reimplemented in COnOffButton, CCheckBox, CKickButton, CTextButton, CKnobBase, CListControl, CMovieButton, CScrollbar, CSliderBase, CSwitchBase, and CRockerSwitch.

## ◆ onMouseUpEvent()

void onMouseUpEvent | ( | MouseUpEvent & | event | ) |
| virtual

called when a mouse up event occurs

Reimplemented in CXYPad, and CViewContainer.

## ◆ onMouseWheelEvent()

void onMouseWheelEvent | ( | MouseWheelEvent & | event | ) |
| virtual

called when a mouse wheel event occurs

Reimplemented in CKnobBase, CScrollbar, CSliderBase, CRockerSwitch, CXYPad, CScrollView, and CViewContainer.

## ◆ onWheel() [1/2]

bool onWheel | ( | const CPoint & | where,
|  | const CMouseWheelAxis & | axis,
|  | const float & | distance,
|  | const CButtonState & | buttons
| ) |  |
| virtual

Deprecated:
  please use onMouseWheelEvent instead

Parameters

  where | location
  axis | mouse wheel axis
  distance | wheel distance
  buttons | button and modifier state

Returns
  true if handled

Reimplemented in CViewContainer, and CTextLabel.

## ◆ onWheel() [2/2]

virtual bool onWheel | ( | const CPoint & | where,
|  | const float & | distance,
|  | const CButtonState & | buttons
| ) |  |
| inline final virtual

Deprecated:
  never called anymore, please use onMouseWheelEvent instead

## ◆ onWindowActivate()

virtual void onWindowActivate | ( | bool | state | ) |
| inline virtual

called when the active state of the window changes

## ◆ onZoomGestureEvent()

void onZoomGestureEvent | ( | ZoomGestureEvent & | event | ) |
| virtual

called when a zoom gesture event occurs

Reimplemented in CViewContainer.

## ◆ parentSizeChanged()

virtual void parentSizeChanged | ( |  | ) |
| inline virtual

notification that one of the views parent has changed its size

Reimplemented in CExternalView, CExternalControl, CLayeredViewContainer, CTextEdit, COpenGLView, and CViewContainer.

## ◆ registerViewEventListener()

void registerViewEventListener | ( | IViewEventListener * | listener | ) |

## ◆ registerViewListener()

void registerViewListener | ( | IViewListener * | listener | ) |

## ◆ registerViewMouseListener()

void registerViewMouseListener | ( | IViewMouseListener * | listener | ) |

## ◆ removeAllAnimations()

void removeAllAnimations | ( |  | ) |

## ◆ removeAnimation()

void removeAnimation | ( | IdStringPtr | name | ) |

## ◆ removeAttribute()

bool removeAttribute | ( | const CViewAttributeID | id | ) |

remove an attribute

## ◆ removed()

bool removed | ( | CView * | parent | ) |
| virtual

view is removed from parent view

Parameters

  parent | parent view

Returns
  true if view successfully removed from parent

Reimplemented in CDataBrowser, CExternalView, CExternalControl, CLayeredViewContainer, CAutoAnimation, CTextButton, CParamDisplay, COpenGLView, CShadowViewContainer, CSplitView, CViewContainer, and UIViewSwitchContainer.

## ◆ setAlphaValue()

void setAlphaValue | ( | float | alpha | ) |
| virtual

set alpha value which will be applied when drawing this view

Reimplemented in CLayeredViewContainer.

## ◆ setAlphaValueNoInvalidate()

void setAlphaValueNoInvalidate | ( | float | value | ) |
| protected

## ◆ setAttribute() [1/2]

bool setAttribute | ( | const CViewAttributeID | id,
|  | const T & | data
| ) |  |
| inline

set an attribute

## ◆ setAttribute() [2/2]

bool setAttribute | ( | const CViewAttributeID | aId,
|  | const uint32_t | inSize,
|  | const void * | inData
| ) |  |

set an attribute

copies data into the attribute.

If it does not exist, creates a new attribute.

Parameters

  aId | the ID of the Attribute
  inSize | the size of the outData pointer
  inData | a pointer to the data

Returns
  true if attribute was set

## ◆ setAutosizeFlags()

void setAutosizeFlags | ( | int32_t | flags | ) |
| virtual

set autosize flags

Reimplemented in CDataBrowser, CScrollView, and CTabView.

## ◆ setBackground()

void setBackground | ( | CBitmap * | background | ) |
| virtual

set the background image of this view

Parameters

  background | new background bitmap

Reimplemented in CAutoAnimation, CCheckBox, and CAnimKnob.

## ◆ setDirty()

void setDirty | ( | bool | val = `true` | ) |
| virtual

set the view to dirty so that it is redrawn in the next idle.

Thread Safe !

Reimplemented in CVuMeter, and CControl.

## ◆ setDisabledBackground()

void setDisabledBackground | ( | CBitmap * | background | ) |
| virtual

set background image used when the mouse is not enabled

Parameters

  background | new disabled background bitmap

## ◆ setDropTarget()

void setDropTarget | ( | const SharedPointer< IDropTarget > & | dt | ) |

set a custom drop target

## ◆ setHitTestPath()

void setHitTestPath | ( | CGraphicsPath * | path | ) |

Parameters

  path | the path to use for hit testing. The path will be translated by this views origin, so that the path must not be set again, if the view is moved. Otherwise when the size of the view changes, the path must also be set again.

## ◆ setMouseableArea()

void setMouseableArea | ( | const CRect & | rect | ) |
| virtual

set the area in which the view reacts to the mouse

## ◆ setMouseEnabled()

void setMouseEnabled | ( | bool | bEnable = `true` | ) |
| virtual

turn on/off mouse usage for this view

Reimplemented in CExternalView, and CExternalControl.

## ◆ setParentFrame()

void setParentFrame | ( | CFrame * | frame | ) |
| protected

## ◆ setParentView()

void setParentView | ( | CView * | parent | ) |
| protected

## ◆ setSubviewState()

void setSubviewState | ( | bool | state | ) |

## ◆ setTooltipText()

void setTooltipText | ( | UTF8StringPtr | text | ) |

## ◆ setTransparency()

void setTransparency | ( | bool | val | ) |
| virtual

set views transparent state

Reimplemented in CScrollView.

## ◆ setViewFlag()

void setViewFlag | ( | int32_t | bit,
|  | bool | state
| ) |  |
| protected

## ◆ setViewSize()

void setViewSize | ( | const CRect & | newSize,
|  | bool | doInvalid = `true`
| ) |  |
| virtual

set views size

Parameters

  newSize | rect of new size of view
  doInvalid | if true set view dirty

Reimplemented in CScrollbar, CTextEdit, CVuMeter, CSliderBase, CExternalView, CExternalControl, CFrame, CGradientView, CLayeredViewContainer, CTextButton, CKnobBase, CListControl, CSegmentButton, CTextLabel, CMultiLineTextLabel, COpenGLView, CAutoLayoutContainerView, CScrollView, CShadowViewContainer, CSplitView, CTabView, CViewContainer, and CDataBrowser.

## ◆ setVisible()

void setVisible | ( | bool | state | ) |
| virtual

set visibility state

Reimplemented in COpenGLView.

## ◆ setWantsFocus()

void setWantsFocus | ( | bool | state | ) |
| virtual

set focus support on/off

Reimplemented in CDataBrowser.

## ◆ setWantsIdle()

void setWantsIdle | ( | bool | state | ) |

enable/disable onIdle() callback

## ◆ sizeToFit()

virtual bool sizeToFit | ( |  | ) |
| inline virtual

resize view to optimal size

Reimplemented in COnOffButton, CCheckBox, CKickButton, CTextButton, CKnobBase, CAnimKnob, CMovieBitmap, CMovieButton, CSlider, CAnimationSplashScreen, CSwitchBase, CRockerSwitch, CTextLabel, CMultiLineTextLabel, CVuMeter, CRowColumnView, CSplitView, and CViewContainer.

## ◆ takeFocus()

void takeFocus | ( |  | ) |
| virtual

called if view should take focus

Reimplemented in CExternalView, CExternalControl, COptionMenu, CTextEdit, and CViewContainer.

## ◆ translateToGlobal() [1/2]

T translateToGlobal | ( | const T & | t,
|  | bool | ignoreFrame = `false`
| ) |  | const
| inline

translates a local coordinate to a global one using parent transforms

## ◆ translateToGlobal() [2/2]

T & translateToGlobal | ( | T & | t,
|  | bool | ignoreFrame = `false`
| ) |  | const
| inline

translates a local coordinate to a global one using parent transforms

## ◆ translateToLocal() [1/2]

T translateToLocal | ( | const T & | t,
|  | bool | ignoreFrame = `false`
| ) |  | const
| inline

translates a local coordinate to a global one using parent transforms

## ◆ translateToLocal() [2/2]

T & translateToLocal | ( | T & | t,
|  | bool | ignoreFrame = `false`
| ) |  | const
| inline

translates a global coordinate to a local one using parent transforms

## ◆ unregisterViewEventListener()

void unregisterViewEventListener | ( | IViewEventListener * | listener | ) |

## ◆ unregisterViewListener()

void unregisterViewListener | ( | IViewListener * | listener | ) |

## ◆ unregisterViewMouseListener()

void unregisterViewMouseListener | ( | IViewMouseListener * | listener | ) |

## ◆ wantsFocus()

virtual bool wantsFocus | ( |  | ) | const
| inline virtual

check if view supports focus

Reimplemented in CDataBrowser, and CTextEdit.

## ◆ wantsIdle()

bool wantsIdle | ( |  | ) | const
| inline

returns if the view wants idle callback or not

## ◆ wantsWindowActiveStateChangeNotification()

virtual bool wantsWindowActiveStateChangeNotification | ( |  | ) | const
| inline virtual

whether this view wants to be informed if the window's active state changes

## Member Data Documentation

## ◆ idleRate

uint32_t idleRate = 30
| inline static

global idle rate in Hz, defaults to 30 Hz

## ◆ kDirtyCallAlwaysOnMainThread

bool kDirtyCallAlwaysOnMainThread = false
| static

if this is true, setting a view dirty will call invalid() instead of checking it in idle.

Default value is false.

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

- cview.h
- cview.cpp