VSTGUI  4.10
Graphical User Interface Framework not only for VST plugins
CFrame Class Referencefinal

The CFrame is the parent container of all views. More...

+ Inheritance diagram for CFrame:

Classes

struct  CollectInvalidRects
 
struct  Impl
 

Public Types

using EventProcessingFunction = std::function< void()>
 
- Public Types inherited from CViewContainer
using ViewList = std::list< SharedPointer< CView > >
 
using ChildViewConstIterator = ViewList::const_iterator
 
using ChildViewConstReverseIterator = ViewList::const_reverse_iterator
 
- Public Types inherited from CView
enum  MouseListenerCall { MouseDown, MouseMoved, MouseUp, MouseCancel }
 

Public Member Functions

 CFrame (const CRect &size, VSTGUIEditorInterface *pEditor)
 
bool doAfterEventProcessing (EventProcessingFunction &&func)
 Queue a function which will be executed after the current event was handled. More...
 
bool doAfterEventProcessing (const EventProcessingFunction &func)
 Queue a function which will be executed after the current event was handled. More...
 
bool inEventProcessing () const
 Returns true if an event is currently being processed. More...
 
void onStartLocalEventLoop ()
 
bool performDrag (const DragDescription &desc, const SharedPointer< IDragCallback > &callback)
 
void invalid () override
 mark whole view as invalid More...
 
void invalidRect (const CRect &rect) override
 mark rect as invalid More...
 
bool removeView (CView *pView, bool withForget=true) override
 remove a child view More...
 
bool removeAll (bool withForget=true) override
 remove all child views More...
 
CViewgetViewAt (const CPoint &where, const GetViewOptions &options=GetViewOptions()) const override
 get the view at point where More...
 
CViewContainergetContainerAt (const CPoint &where, const GetViewOptions &options=GetViewOptions().deep()) const override
 get the container at point where More...
 
bool getViewsAt (const CPoint &where, ViewList &views, const GetViewOptions &options=GetViewOptions().deep()) const override
 get all views at point where, top->down More...
 
bool hitTestSubViews (const CPoint &where, const CButtonState &buttons=-1) override
 
CPointframeToLocal (CPoint &point) const override
 conversion from frame coordinates to local view coordinates More...
 
CPointlocalToFrame (CPoint &point) const override
 conversion from local view coordinates to frame coordinates More...
 
bool attached (CView *parent) override
 view is attached to a parent view More...
 
void draw (CDrawContext *pContext) override
 called if the view should draw itself More...
 
void drawRect (CDrawContext *pContext, const CRect &updateRect) 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 onMouseExited (CPoint &where, const CButtonState &buttons) override
 called when the mouse leaves this view More...
 
bool onWheel (const CPoint &where, const CMouseWheelAxis &axis, const float &distance, const CButtonState &buttons) override
 called if a mouse wheel event is happening over this view More...
 
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...
 
void setViewSize (const CRect &rect, bool invalid=true) override
 set views size More...
 
VSTGUIEditorInterfacegetEditor () const override
 get editor More...
 
IPlatformFrame * getPlatformFrame () const
 
CBaseObjectnewCopy () const override
 
Focus Drawing Methods [new in 4.0]

If focus drawing is enabled, the focus view will get a focus ring around it defined with the focus width and the focus color.

Views can define their own shape with the IFocusDrawing interface.

void setFocusDrawingEnabled (bool state)
 enable focus drawing More...
 
bool focusDrawingEnabled () const
 is focus drawing enabled More...
 
void setFocusColor (const CColor &color)
 set focus draw color More...
 
CColor getFocusColor () const
 get focus draw color More...
 
void setFocusWidth (CCoord width)
 set focus draw width More...
 
CCoord getFocusWidth () const
 get focus draw width More...
 
- Public Member Functions inherited from CViewContainer
 CViewContainer (const CRect &size)
 CViewContainer constructor. More...
 
 CViewContainer (const CViewContainer &viewContainer)
 
virtual bool invalidateDirtyViews ()
 
virtual CRect getVisibleSize (const CRect &rect) const
 
void setTransform (const CGraphicsTransform &t)
 
const CGraphicsTransformgetTransform () const
 
void registerViewContainerListener (IViewContainerListener *listener)
 
void unregisterViewContainerListener (IViewContainerListener *listener)
 
void draw (CDrawContext *pContext) override
 
void drawRect (CDrawContext *pContext, const CRect &updateRect) override
 
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 More...
 
bool onWheel (const CPoint &where, const CMouseWheelAxis &axis, const float &distance, const CButtonState &buttons) override
 called if a mouse wheel event is happening over this view More...
 
bool hitTest (const CPoint &where, const CButtonState &buttons=-1) override
 
CMessageResult notify (CBaseObject *sender, IdStringPtr message) override
 
SharedPointer< IDropTargetgetDropTarget () override
 get the drag target for drag and drop handling More...
 
void looseFocus () override
 called if view should loose focus More...
 
void takeFocus () override
 called if view should take focus More...
 
bool isDirty () const override
 check if view is dirty More...
 
void invalid () override
 mark whole view as invalid More...
 
void invalidRect (const CRect &rect) override
 mark rect as invalid More...
 
void setViewSize (const CRect &rect, bool invalid=true) override
 
void parentSizeChanged () override
 notification that one of the views parent has changed its size More...
 
bool sizeToFit () override
 resize view to optimal size More...
 
bool removed (CView *parent) override
 view is removed from parent view More...
 
bool attached (CView *parent) override
 view is attached to a parent view More...
 
CPointframeToLocal (CPoint &point) const override
 conversion from frame coordinates to local view coordinates More...
 
CPointlocalToFrame (CPoint &point) const override
 conversion from local view coordinates to frame coordinates More...
 
CBaseObjectnewCopy () const override
 
CViewContainerasViewContainer () final
 
const CViewContainerasViewContainer () const final
 
bool addView (CView *pView, const CRect &mouseableArea, bool mouseEnabled=true)
 add a child view More...
 
virtual bool addView (CView *pView, CView *pBefore=nullptr)
 add a child view before another view More...
 
bool isChild (CView *pView) const
 check if pView is a child view of this container More...
 
virtual bool isChild (CView *pView, bool deep) const
 check if pView is a child view of this container More...
 
virtual bool hasChildren () const
 check if container has child views More...
 
virtual uint32_t getNbViews () const
 get the number of child views More...
 
virtual CViewgetView (uint32_t index) const
 get the child view at index More...
 
virtual bool changeViewZOrder (CView *view, uint32_t newIndex)
 change view z order position More...
 
virtual void setAutosizingEnabled (bool state)
 enable or disable autosizing subviews. More...
 
bool getAutosizingEnabled () const
 
template<class ViewClass , class ContainerClass >
uint32_t getChildViewsOfType (ContainerClass &result, bool deep=false) const
 get child views of type ViewClass. More...
 
template<typename Proc >
void forEachChild (Proc proc) const
 execute proc for each child view More...
 
virtual void setBackgroundColor (const CColor &color)
 set the background color (will only be drawn if this container is not set to transparent and does not have a background bitmap) More...
 
virtual CColor getBackgroundColor () const
 get the background color More...
 
virtual void setBackgroundOffset (const CPoint &p)
 set the offset of the background bitmap More...
 
virtual CPoint getBackgroundOffset () const
 get the offset of the background bitmap More...
 
virtual void drawBackgroundRect (CDrawContext *pContext, const CRect &_updateRect)
 draw the background More...
 
virtual void setBackgroundColorDrawStyle (CDrawStyle style)
 
CDrawStyle getBackgroundColorDrawStyle () const
 
- Public Member Functions inherited from CView
 CView (const CRect &size)
 
 CView (const CView &view)
 
void setSubviewState (bool state)
 
bool isSubview () const
 
virtual bool wantsWindowActiveStateChangeNotification () const
 whether this view wants to be informed if the window's active state changes More...
 
virtual void onWindowActivate (bool state)
 called when the active state of the window changes More...
 
void setTooltipText (UTF8StringPtr text)
 
CMouseEventResult callMouseListener (MouseListenerCall type, CPoint pos, CButtonState buttons)
 
void callMouseListenerEnteredExited (bool mouseEntered)
 
CBaseObjectnewCopy () const override
 
virtual CMouseEventResult onMouseEntered (CPoint &where, const CButtonState &buttons)
 called when the mouse enters this view More...
 
void setHitTestPath (CGraphicsPath *path)
 
virtual bool onWheel (const CPoint &where, const float &distance, const CButtonState &buttons) final
 
virtual void setMouseEnabled (bool bEnable=true)
 turn on/off mouse usage for this view More...
 
bool getMouseEnabled () const
 get the state of wheather this view uses the mouse or not More...
 
void setMouseableArea (const CRect &rect)
 set the area in which the view reacts to the mouse More...
 
CRectgetMouseableArea (CRect &rect) const
 get the area in which the view reacts to the mouse More...
 
CRect getMouseableArea () const
 get the area in which the view reacts to the mouse More...
 
bool doDrag (const DragDescription &dragDescription, const SharedPointer< IDragCallback > &callback={})
 start a drag operation More...
 
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...
 
CCoord getHeight () const
 get the height of the view More...
 
CCoord getWidth () const
 get the width of the view More...
 
const CRectgetViewSize () const
 read only access to view size More...
 
virtual CRect getVisibleViewSize () const
 returns the visible size of the view More...
 
virtual void setAutosizeFlags (int32_t flags)
 set autosize flags More...
 
int32_t getAutosizeFlags () const
 get autosize flags More...
 
virtual bool wantsFocus () const
 check if view supports focus More...
 
virtual void setWantsFocus (bool state)
 set focus support on/off More...
 
bool getAttributeSize (const CViewAttributeID id, uint32_t &outSize) const
 get the size of an attribute More...
 
bool getAttribute (const CViewAttributeID id, const uint32_t inSize, void *outData, uint32_t &outSize) const
 get an attribute More...
 
bool setAttribute (const CViewAttributeID id, const uint32_t inSize, const void *inData)
 set an attribute More...
 
bool removeAttribute (const CViewAttributeID id)
 remove an attribute More...
 
template<typename T >
bool setAttribute (const CViewAttributeID id, const T &data)
 set an attribute More...
 
template<typename T >
bool getAttribute (const CViewAttributeID id, T &data) const
 get an attribute More...
 
virtual void setBackground (CBitmap *background)
 set the background image of this view More...
 
CBitmapgetBackground () const
 get the background image of this view More...
 
virtual void setDisabledBackground (CBitmap *background)
 set background image used when the mouse is not enabled More...
 
CBitmapgetDisabledBackground () const
 get background image used when the mouse is not enabled More...
 
CBitmapgetDrawBackground () const
 get the bitmap which is drawn depending on the enabled state. More...
 
virtual void setTransparency (bool val)
 set views transparent state More...
 
bool getTransparency () const
 get views transparent state More...
 
virtual void setAlphaValue (float alpha)
 set alpha value which will be applied when drawing this view More...
 
float getAlphaValue () const
 get alpha value More...
 
bool isAttached () const
 is view attached to a parentView More...
 
CViewgetParentView () const
 get parent view More...
 
CFramegetFrame () const
 get frame More...
 
void addAnimation (IdStringPtr name, Animation::IAnimationTarget *target, Animation::ITimingFunction *timingFunction, CBaseObject *notificationObject)
 
void addAnimation (IdStringPtr name, Animation::IAnimationTarget *target, Animation::ITimingFunction *timingFunction, const Animation::DoneFunction &doneFunc=nullptr)
 
void removeAnimation (IdStringPtr name)
 
void removeAllAnimations ()
 
void registerViewListener (IViewListener *listener)
 
void unregisterViewListener (IViewListener *listener)
 
void registerViewMouseListener (IViewMouseListener *listener)
 
void unregisterViewMouseListener (IViewMouseListener *listener)
 
CGraphicsTransform getGlobalTransform (bool ignoreFrame=false) const
 get the active global transform for this view More...
 
template<typename T >
T & translateToGlobal (T &t, bool ignoreFrame=false) const
 translates a local coordinate to a global one using parent transforms More...
 
template<typename T >
translateToGlobal (const T &t, bool ignoreFrame=false) const
 translates a local coordinate to a global one using parent transforms More...
 
template<typename T >
T & translateToLocal (T &t, bool ignoreFrame=false) const
 translates a global coordinate to a local one using parent transforms More...
 
template<typename T >
translateToLocal (const T &t, bool ignoreFrame=false) const
 translates a local coordinate to a global one using parent transforms More...
 
virtual bool checkUpdate (const CRect &updateRect) const
 
virtual void setDirty (bool val=true)
 set the view to dirty so that it is redrawn in the next idle. More...
 
virtual void setVisible (bool state)
 set visibility state More...
 
bool isVisible () const
 get visibility state More...
 
virtual void onIdle ()
 called on idle when view wants idle More...
 
void setWantsIdle (bool state)
 enable/disable onIdle() callback More...
 
bool wantsIdle () const
 returns if the view wants idle callback or not More...
 
- Public Member Functions inherited from CBaseObject
 CBaseObject ()=default
 
 ~CBaseObject () noexcept override=default
 
 CBaseObject (const CBaseObject &o)
 
CBaseObjectoperator= (const CBaseObject &obj)
 
- Public Member Functions inherited from ReferenceCounted< T >
 ReferenceCounted ()=default
 
virtual ~ReferenceCounted () noexcept=default
 
 ReferenceCounted (const ReferenceCounted &)
 
ReferenceCountedoperator= (const ReferenceCounted &)
 
void forget () override
 decrease refcount and delete object if refcount == 0 More...
 
void remember () override
 increase refcount More...
 
virtual int32_t getNbReference () const
 get refcount More...
 

Protected Member Functions

 ~CFrame () noexcept override=default
 
void beforeDelete () override
 
void checkMouseViews (const CPoint &where, const CButtonState &buttons)
 
void clearMouseViews (const CPoint &where, const CButtonState &buttons, bool callMouseExit=true)
 
void removeFromMouseViews (CView *view)
 
void setCollectInvalidRects (CollectInvalidRects *collectInvalidRects)
 
int32_t keyboardHooksOnKeyDown (const VstKeyCode &key)
 
int32_t keyboardHooksOnKeyUp (const VstKeyCode &key)
 
void callMouseObserverMouseEntered (CView *view)
 
void callMouseObserverMouseExited (CView *view)
 
CMouseEventResult callMouseObserverMouseDown (const CPoint &where, const CButtonState &buttons)
 
CMouseEventResult callMouseObserverMouseMoved (const CPoint &where, const CButtonState &buttons)
 
void dispatchNewScaleFactor (double newScaleFactor)
 
bool platformDrawRect (CDrawContext *context, const CRect &rect) override
 
CMouseEventResult platformOnMouseDown (CPoint &where, const CButtonState &buttons) override
 
CMouseEventResult platformOnMouseMoved (CPoint &where, const CButtonState &buttons) override
 
CMouseEventResult platformOnMouseUp (CPoint &where, const CButtonState &buttons) override
 
CMouseEventResult platformOnMouseExited (CPoint &where, const CButtonState &buttons) override
 
bool platformOnMouseWheel (const CPoint &where, const CMouseWheelAxis &axis, const float &distance, const CButtonState &buttons) override
 
DragOperation platformOnDragEnter (DragEventData data) override
 
DragOperation platformOnDragMove (DragEventData data) override
 
void platformOnDragLeave (DragEventData data) override
 
bool platformOnDrop (DragEventData data) override
 
bool platformOnKeyDown (VstKeyCode &keyCode) override
 
bool platformOnKeyUp (VstKeyCode &keyCode) override
 
void platformOnActivate (bool state) override
 
void platformOnWindowActivate (bool state) override
 
void platformScaleFactorChanged (double newScaleFactor) override
 
- Protected Member Functions inherited from CViewContainer
 ~CViewContainer () noexcept override
 
void beforeDelete () override
 
virtual bool checkUpdateRect (CView *view, const CRect &rect)
 check if view needs to be updated for rect More...
 
void setMouseDownView (CView *view)
 
CViewgetMouseDownView () const
 
const ViewListgetChildren () const
 
- Protected Member Functions inherited from CView
 ~CView () noexcept override
 
CGraphicsPathgetHitTestPath () const
 
bool hasViewFlag (int32_t bit) const
 
void setViewFlag (int32_t bit, bool state)
 
void setAlphaValueNoInvalidate (float value)
 
void setParentFrame (CFrame *frame)
 
void setParentView (CView *parent)
 

CFrame Methods

static int32_t kDefaultKnobMode = kCircularMode
 default knob mode if host does not provide one More...
 
bool open (void *pSystemWindow, PlatformType systemWindowType=PlatformType::kDefaultNative, IPlatformFrameConfig *=nullptr)
 
void close ()
 closes the frame and calls forget More...
 
bool setZoom (double zoomFactor)
 set zoom factor More...
 
double getZoom () const
 get zoom factor More...
 
void setBitmapInterpolationQuality (BitmapInterpolationQuality quality)
 set interpolation quality for bitmaps More...
 
BitmapInterpolationQuality getBitmapInterpolationQuality () const
 get interpolation quality for bitmaps More...
 
double getScaleFactor () const
 
void idle ()
 
uint64_t getTicks () const
 get the current time (in ms) More...
 
int32_t getKnobMode () const
 get hosts knob mode More...
 
bool setPosition (CCoord x, CCoord y)
 repositions the frame More...
 
bool getPosition (CCoord &x, CCoord &y) const
 get global position of frame More...
 
bool setSize (CCoord width, CCoord height)
 set size of frame (and the platform representation) More...
 
bool getSize (CRect *pSize) const
 get size relative to parent More...
 
bool getSize (CRect &pSize) const
 
bool setModalView (CView *pView)
 set a modal view. More...
 
CViewgetModalView () const
 get the currently active modal view or nullptr if there is none More...
 
Optional< ModalViewSessionIDbeginModalViewSession (CView *view)
 begin a new modal view session More...
 
bool endModalViewSession (ModalViewSessionID session)
 end a modal view session More...
 
void beginEdit (int32_t index)
 
void endEdit (int32_t index)
 
bool getCurrentMouseLocation (CPoint &where) const
 get current mouse location More...
 
CButtonState getCurrentMouseButtons () const
 get current mouse buttons and key modifiers More...
 
void setCursor (CCursorType type)
 set mouse cursor More...
 
void setFocusView (CView *pView)
 
CViewgetFocusView () const
 
bool advanceNextFocusView (CView *oldFocus, bool reverse=false) override
 
void onViewAdded (CView *pView)
 
void onViewRemoved (CView *pView)
 
void onActivate (bool state)
 called when the platform view/window is activated/deactivated More...
 
void invalidate (const CRect &rect)
 
void scrollRect (const CRect &src, const CPoint &distance)
 scroll src rect by distance More...
 
void enableTooltips (bool state, uint32_t delayTimeInMs=1000)
 enable or disable tooltips More...
 
Animation::AnimatorgetAnimator ()
 get animator for this frame More...
 
SharedPointer< IDataPackagegetClipboard ()
 get the clipboard data. More...
 
void setClipboard (const SharedPointer< IDataPackage > &data)
 set the clipboard data. More...
 
IViewAddedRemovedObservergetViewAddedRemovedObserver () const
 
void setViewAddedRemovedObserver (IViewAddedRemovedObserver *observer)
 
void registerKeyboardHook (IKeyboardHook *hook)
 register a keyboard hook More...
 
void unregisterKeyboardHook (IKeyboardHook *hook)
 unregister a keyboard hook More...
 
void registerMouseObserver (IMouseObserver *observer)
 register a mouse observer More...
 
void unregisterMouseObserver (IMouseObserver *observer)
 unregister a mouse observer More...
 
void registerScaleFactorChangedListeneer (IScaleFactorChangedListener *listener)
 
void unregisterScaleFactorChangedListeneer (IScaleFactorChangedListener *listener)
 
void registerFocusViewObserver (IFocusViewObserver *observer)
 
void unregisterFocusViewObserver (IFocusViewObserver *observer)
 

Additional Inherited Members

- Static Public Attributes inherited from CView
static bool kDirtyCallAlwaysOnMainThread = false
 if this is true, setting a view dirty will call invalid() instead of checking it in idle. More...
 
static uint32_t idleRate
 global idle rate in Hz, defaults to 30 Hz More...
 
- Protected Types inherited from CViewContainer
enum  { kAutosizeSubviews = 1 << (CView::kLastCViewFlag + 1) }
 
- 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
}
 

Detailed Description

The CFrame is the parent container of all views.

It creates a platform dependend view object.

On Mac OS X it is a HIView or NSView.
On Windows it's a WS_CHILD Window.

Member Typedef Documentation

◆ EventProcessingFunction

using EventProcessingFunction = std::function<void ()>

Constructor & Destructor Documentation

◆ CFrame()

CFrame ( const CRect size,
VSTGUIEditorInterface pEditor 
)

◆ ~CFrame()

~CFrame ( )
overrideprotecteddefaultnoexcept

Member Function Documentation

◆ advanceNextFocusView()

bool advanceNextFocusView ( CView oldFocus,
bool  reverse = false 
)
overridevirtual
Parameters
oldFocusold focus view
reversesearch order
Returns
true on success

Reimplemented from CViewContainer.

◆ attached()

bool attached ( CView parent)
overridevirtual

view is attached to a parent view

Parameters
parentparent view
Returns
true if view successfully attached to parent

Reimplemented from CView.

◆ beforeDelete()

void beforeDelete ( )
overrideprotectedvirtual

Reimplemented from ReferenceCounted< T >.

◆ beginEdit()

void beginEdit ( int32_t  index)

◆ beginModalViewSession()

Optional< ModalViewSessionID > beginModalViewSession ( CView view)

begin a new modal view session

A modal view session is active until endModalViewSession is called and in that time all UI events are only dispatched to the modal view or its child views. Modal view sessions can be stacked but must be ended in the same order.

Parameters
viewnew modal view (ownership is transfered to frame, the same as addView)
Returns
a unique session identifier

◆ callMouseObserverMouseDown()

CMouseEventResult callMouseObserverMouseDown ( const CPoint where,
const CButtonState buttons 
)
protected

◆ callMouseObserverMouseEntered()

void callMouseObserverMouseEntered ( CView view)
protected

◆ callMouseObserverMouseExited()

void callMouseObserverMouseExited ( CView view)
protected

◆ callMouseObserverMouseMoved()

CMouseEventResult callMouseObserverMouseMoved ( const CPoint where,
const CButtonState buttons 
)
protected

◆ checkMouseViews()

void checkMouseViews ( const CPoint where,
const CButtonState buttons 
)
protected

◆ clearMouseViews()

void clearMouseViews ( const CPoint where,
const CButtonState buttons,
bool  callMouseExit = true 
)
protected

◆ close()

void close ( )

closes the frame and calls forget

◆ dispatchNewScaleFactor()

void dispatchNewScaleFactor ( double  newScaleFactor)
protected

◆ doAfterEventProcessing() [1/2]

bool doAfterEventProcessing ( EventProcessingFunction &&  func)

Queue a function which will be executed after the current event was handled.

Only allowed when inEventProcessing () is true

Parameters
funcFunction to execute
Returns
true if the function was added to the execution queue

◆ doAfterEventProcessing() [2/2]

bool doAfterEventProcessing ( const EventProcessingFunction func)

Queue a function which will be executed after the current event was handled.

Only allowed when inEventProcessing () is true

Parameters
funcFunction to execute
Returns
true if the function was added to the execution queue

◆ draw()

void draw ( CDrawContext pContext)
overridevirtual

called if the view should draw itself

Parameters
pContextdraw context in which to draw

Reimplemented from CView.

◆ drawRect()

void drawRect ( CDrawContext pContext,
const CRect updateRect 
)
overridevirtual

called if the view should draw itself

Reimplemented from CView.

◆ enableTooltips()

void enableTooltips ( bool  state,
uint32_t  delayTimeInMs = 1000 
)

enable or disable tooltips

◆ endEdit()

void endEdit ( int32_t  index)

◆ endModalViewSession()

bool endModalViewSession ( ModalViewSessionID  session)

end a modal view session

Parameters
sessiona session identifer
Returns
true on success

◆ focusDrawingEnabled()

bool focusDrawingEnabled ( ) const

is focus drawing enabled

◆ frameToLocal()

CPoint& frameToLocal ( CPoint point) const
inlineoverridevirtual

conversion from frame coordinates to local view coordinates

Parameters
pointlocation
Returns
converted point

Reimplemented from CView.

◆ getAnimator()

Animation::Animator * getAnimator ( )

get animator for this frame

◆ getBitmapInterpolationQuality()

BitmapInterpolationQuality getBitmapInterpolationQuality ( ) const

get interpolation quality for bitmaps

◆ getClipboard()

SharedPointer< IDataPackage > getClipboard ( )

get the clipboard data.

data is owned by the caller

◆ getContainerAt()

CViewContainer * getContainerAt ( const CPoint p,
const GetViewOptions options = GetViewOptions ().deep () 
) const
overridevirtual

get the container at point where

Parameters
plocation
optionssearch search options
Returns
view container at position p or null

Reimplemented from CViewContainer.

◆ getCurrentMouseButtons()

CButtonState getCurrentMouseButtons ( ) const

get current mouse buttons and key modifiers

Returns
mouse and modifier state

◆ getCurrentMouseLocation()

bool getCurrentMouseLocation ( CPoint where) const

get current mouse location

Parameters
wherelocation of mouse
Returns
true on success

◆ getEditor()

VSTGUIEditorInterface * getEditor ( ) const
overridevirtual

get editor

Reimplemented from CView.

◆ getFocusColor()

CColor getFocusColor ( ) const

get focus draw color

◆ getFocusView()

CView * getFocusView ( ) const

◆ getFocusWidth()

CCoord getFocusWidth ( ) const

get focus draw width

◆ getKnobMode()

int32_t getKnobMode ( ) const

get hosts knob mode

◆ getModalView()

CView * getModalView ( ) const

get the currently active modal view or nullptr if there is none

◆ getPlatformFrame()

IPlatformFrame * getPlatformFrame ( ) const

◆ getPosition()

bool getPosition ( CCoord x,
CCoord y 
) const

get global position of frame

Parameters
xx coordinate
yy coordinate
Returns
true on success

◆ getScaleFactor()

double getScaleFactor ( ) const

◆ getSize() [1/2]

bool getSize ( CRect pRect) const

get size relative to parent

Parameters
pRectsize
Returns
true on success

◆ getSize() [2/2]

bool getSize ( CRect pSize) const

◆ getTicks()

uint64_t getTicks ( ) const

get the current time (in ms)

Returns
tick count in milliseconds

◆ getViewAddedRemovedObserver()

IViewAddedRemovedObserver * getViewAddedRemovedObserver ( ) const

◆ getViewAt()

CView * getViewAt ( const CPoint p,
const GetViewOptions options = GetViewOptions () 
) const
overridevirtual

get the view at point where

Parameters
plocation
optionssearch options
Returns
view at position p or null

Reimplemented from CViewContainer.

◆ getViewsAt()

bool getViewsAt ( const CPoint p,
ViewList views,
const GetViewOptions options = GetViewOptions ().deep () 
) const
overridevirtual

get all views at point where, top->down

Parameters
plocation
viewsresult list
optionssearch options
Returns
success

Reimplemented from CViewContainer.

◆ getZoom()

double getZoom ( ) const

get zoom factor

◆ hitTestSubViews()

bool hitTestSubViews ( const CPoint where,
const CButtonState buttons = -1 
)
overridevirtual
Parameters
wherepoint
buttonsmouse button and modifier state
Returns
true if any sub view accepts the hit

Reimplemented from CViewContainer.

◆ idle()

void idle ( )

◆ inEventProcessing()

bool inEventProcessing ( ) const

Returns true if an event is currently being processed.

◆ invalid()

void invalid ( )
inlineoverridevirtual

mark whole view as invalid

Reimplemented from CView.

◆ invalidate()

void invalidate ( const CRect rect)

◆ invalidRect()

void invalidRect ( const CRect rect)
overridevirtual

mark rect as invalid

Parameters
rectrect to invalidate

Reimplemented from CView.

◆ keyboardHooksOnKeyDown()

int32_t keyboardHooksOnKeyDown ( const VstKeyCode key)
protected

◆ keyboardHooksOnKeyUp()

int32_t keyboardHooksOnKeyUp ( const VstKeyCode key)
protected

◆ localToFrame()

CPoint& localToFrame ( CPoint point) const
inlineoverridevirtual

conversion from local view coordinates to frame coordinates

Parameters
pointlocation
Returns
converted point

Reimplemented from CView.

◆ newCopy()

CBaseObject* newCopy ( ) const
inlineoverride

◆ onActivate()

void onActivate ( bool  state)

called when the platform view/window is activated/deactivated

◆ onKeyDown()

int32_t 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 CView.

◆ onKeyUp()

int32_t 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 CView.

◆ onMouseDown()

CMouseEventResult 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 CView.

◆ onMouseExited()

CMouseEventResult onMouseExited ( CPoint where,
const CButtonState buttons 
)
overridevirtual

called when the mouse leaves this view

Reimplemented from CView.

◆ onMouseMoved()

CMouseEventResult 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 CView.

◆ onMouseUp()

CMouseEventResult 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 CView.

◆ onStartLocalEventLoop()

void onStartLocalEventLoop ( )

◆ onViewAdded()

void onViewAdded ( CView pView)
Parameters
pViewview which was added

◆ onViewRemoved()

void onViewRemoved ( CView pView)
Parameters
pViewview which was removed

◆ onWheel()

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

called if a mouse wheel event is happening over this view

Parameters
wherelocation
axismouse wheel axis
distancewheel distance
buttonsbutton and modifier state
Returns
true if handled

Reimplemented from CView.

◆ open()

bool open ( void *  pSystemWindow,
PlatformType  systemWindowType = PlatformType::kDefaultNative,
IPlatformFrameConfig *  config = nullptr 
)

◆ performDrag()

bool performDrag ( const DragDescription desc,
const SharedPointer< IDragCallback > &  callback 
)

◆ platformDrawRect()

bool platformDrawRect ( CDrawContext context,
const CRect rect 
)
overrideprotected

◆ platformOnActivate()

void platformOnActivate ( bool  state)
overrideprotected

◆ platformOnDragEnter()

DragOperation platformOnDragEnter ( DragEventData  data)
overrideprotected

◆ platformOnDragLeave()

void platformOnDragLeave ( DragEventData  data)
overrideprotected

◆ platformOnDragMove()

DragOperation platformOnDragMove ( DragEventData  data)
overrideprotected

◆ platformOnDrop()

bool platformOnDrop ( DragEventData  data)
overrideprotected

◆ platformOnKeyDown()

bool platformOnKeyDown ( VstKeyCode keyCode)
overrideprotected

◆ platformOnKeyUp()

bool platformOnKeyUp ( VstKeyCode keyCode)
overrideprotected

◆ platformOnMouseDown()

CMouseEventResult platformOnMouseDown ( CPoint where,
const CButtonState buttons 
)
overrideprotected

◆ platformOnMouseExited()

CMouseEventResult platformOnMouseExited ( CPoint where,
const CButtonState buttons 
)
overrideprotected

◆ platformOnMouseMoved()

CMouseEventResult platformOnMouseMoved ( CPoint where,
const CButtonState buttons 
)
overrideprotected

◆ platformOnMouseUp()

CMouseEventResult platformOnMouseUp ( CPoint where,
const CButtonState buttons 
)
overrideprotected

◆ platformOnMouseWheel()

bool platformOnMouseWheel ( const CPoint where,
const CMouseWheelAxis axis,
const float &  distance,
const CButtonState buttons 
)
overrideprotected

◆ platformOnWindowActivate()

void platformOnWindowActivate ( bool  state)
overrideprotected

◆ platformScaleFactorChanged()

void platformScaleFactorChanged ( double  newScaleFactor)
overrideprotected

◆ registerFocusViewObserver()

void registerFocusViewObserver ( IFocusViewObserver observer)

◆ registerKeyboardHook()

void registerKeyboardHook ( IKeyboardHook hook)

register a keyboard hook

◆ registerMouseObserver()

void registerMouseObserver ( IMouseObserver observer)

register a mouse observer

◆ registerScaleFactorChangedListeneer()

void registerScaleFactorChangedListeneer ( IScaleFactorChangedListener listener)

◆ removeAll()

bool removeAll ( bool  withForget = true)
overridevirtual

remove all child views

Parameters
withForgetbool to indicate if the view's reference counter should be decreased after removed from the container
Returns
true on success

Reimplemented from CViewContainer.

◆ removeFromMouseViews()

void removeFromMouseViews ( CView view)
protected

◆ removeView()

bool removeView ( CView pView,
bool  withForget = true 
)
overridevirtual

remove a child view

Parameters
pViewthe view which should be removed from the container
withForgetbool to indicate if the view's reference counter should be decreased after removed from the container
Returns
true on success

Reimplemented from CViewContainer.

◆ scrollRect()

void scrollRect ( const CRect src,
const CPoint distance 
)

scroll src rect by distance

Parameters
srcrect which to scroll
distancepoint of distance

◆ setBitmapInterpolationQuality()

void setBitmapInterpolationQuality ( BitmapInterpolationQuality  quality)

set interpolation quality for bitmaps

◆ setClipboard()

void setClipboard ( const SharedPointer< IDataPackage > &  data)

set the clipboard data.

◆ setCollectInvalidRects()

void setCollectInvalidRects ( CollectInvalidRects collectInvalidRects)
protected

◆ setCursor()

void setCursor ( CCursorType  type)

set mouse cursor

Parameters
typecursor type see CCursorType

◆ setFocusColor()

void setFocusColor ( const CColor color)

set focus draw color

◆ setFocusDrawingEnabled()

void setFocusDrawingEnabled ( bool  state)

enable focus drawing

◆ setFocusView()

void setFocusView ( CView pView)
Parameters
pViewnew focus view

◆ setFocusWidth()

void setFocusWidth ( CCoord  width)

set focus draw width

◆ setModalView()

bool setModalView ( CView pView)

set a modal view.

deprecated use beginModalViewSession instead

Parameters
pViewthe view which should be set to modal.
Returns
true if view could be set as the modal view. false if there is a already a modal view or the view to be set as modal is already attached.

◆ setPosition()

bool setPosition ( CCoord  x,
CCoord  y 
)

repositions the frame

Parameters
xx coordinate
yy coordinate
Returns
true on success

◆ setSize()

bool setSize ( CCoord  width,
CCoord  height 
)

set size of frame (and the platform representation)

Parameters
widthnew width
heightnew height
Returns
true on success

◆ setViewAddedRemovedObserver()

void setViewAddedRemovedObserver ( IViewAddedRemovedObserver observer)

◆ setViewSize()

void setViewSize ( const CRect newSize,
bool  doInvalid = true 
)
overridevirtual

set views size

Parameters
newSizerect of new size of view
doInvalidif true set view dirty

Reimplemented from CView.

◆ setZoom()

bool setZoom ( double  zoomFactor)

set zoom factor

◆ unregisterFocusViewObserver()

void unregisterFocusViewObserver ( IFocusViewObserver observer)

◆ unregisterKeyboardHook()

void unregisterKeyboardHook ( IKeyboardHook hook)

unregister a keyboard hook

◆ unregisterMouseObserver()

void unregisterMouseObserver ( IMouseObserver observer)

unregister a mouse observer

◆ unregisterScaleFactorChangedListeneer()

void unregisterScaleFactorChangedListeneer ( IScaleFactorChangedListener listener)

Member Data Documentation

◆ kDefaultKnobMode

int32_t kDefaultKnobMode = kCircularMode
static

default knob mode if host does not provide one


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