VSTGUI 4.10
Graphical User Interface Framework not only for VST plugins
|
TODO: Doc. More...
#include <crowcolumnview.h>
Public Member Functions | |
CAutoLayoutContainerView (const CRect &size) | |
virtual void | layoutViews ()=0 |
bool | attached (CView *parent) override |
view is attached to a parent view | |
void | setViewSize (const CRect &rect, bool invalid=true) override |
set views size | |
bool | addView (CView *pView, CView *pBefore=nullptr) override |
add a child view before another view | |
bool | removeView (CView *pView, bool withForget=true) override |
remove a child view | |
bool | changeViewZOrder (CView *view, uint32_t newIndex) override |
change view z order position | |
CBaseObject * | newCopy () const override=0 |
![]() | |
CViewContainer (const CRect &size) | |
CViewContainer constructor. | |
CViewContainer (const CViewContainer &viewContainer) | |
bool | addView (CView *pView, const CRect &mouseableArea, bool mouseEnabled=true) |
add a child view | |
virtual bool | removeAll (bool withForget=true) |
remove all child views | |
bool | isChild (CView *pView) const |
check if pView is a child view of this container | |
virtual bool | isChild (CView *pView, bool deep) const |
check if pView is a child view of this container | |
virtual bool | hasChildren () const |
check if container has child views | |
virtual uint32_t | getNbViews () const |
get the number of child views | |
virtual CView * | getView (uint32_t index) const |
get the child view at index | |
virtual CView * | getViewAt (const CPoint &where, const GetViewOptions &options=GetViewOptions()) const |
get the view at point where | |
virtual CViewContainer * | getContainerAt (const CPoint &where, const GetViewOptions &options=GetViewOptions().deep()) const |
get the container at point where | |
virtual bool | getViewsAt (const CPoint &where, ViewList &views, const GetViewOptions &options=GetViewOptions().deep()) const |
get all views at point where, top->down | |
virtual bool | hitTestSubViews (const CPoint &where, const Event &event) |
virtual void | setAutosizingEnabled (bool state) |
enable or disable autosizing subviews. | |
bool | getAutosizingEnabled () const |
template<class ViewClass, class ContainerClass> | |
uint32_t | getChildViewsOfType (ContainerClass &result, bool deep=false) const |
get child views of type ViewClass. | |
template<typename Proc> | |
void | forEachChild (Proc proc) const |
execute proc for each child view | |
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) | |
virtual CColor | getBackgroundColor () const |
get the background color | |
virtual void | setBackgroundOffset (const CPoint &p) |
set the offset of the background bitmap | |
virtual CPoint | getBackgroundOffset () const |
get the offset of the background bitmap | |
virtual void | drawBackgroundRect (CDrawContext *pContext, const CRect &_updateRect) |
draw the background | |
virtual void | setBackgroundColorDrawStyle (CDrawStyle style) |
CDrawStyle | getBackgroundColorDrawStyle () const |
virtual bool | advanceNextFocusView (CView *oldFocus, bool reverse=false) |
virtual bool | invalidateDirtyViews () |
virtual CRect | getVisibleSize (const CRect &rect) const |
void | setTransform (const CGraphicsTransform &t) |
const CGraphicsTransform & | getTransform () const |
void | registerViewContainerListener (IViewContainerListener *listener) |
void | unregisterViewContainerListener (IViewContainerListener *listener) |
void | draw (CDrawContext *pContext) override |
void | drawRect (CDrawContext *pContext, const CRect &updateRect) override |
void | onMouseDownEvent (MouseDownEvent &event) override |
called when a mouse down event occurs | |
void | onMouseMoveEvent (MouseMoveEvent &event) override |
called when a mouse move event occurs | |
void | onMouseUpEvent (MouseUpEvent &event) override |
called when a mouse up event occurs | |
void | onMouseCancelEvent (MouseCancelEvent &event) override |
called when mouse tracking should be canceled | |
void | onMouseWheelEvent (MouseWheelEvent &event) override |
called when a mouse wheel event occurs | |
void | onZoomGestureEvent (ZoomGestureEvent &event) override |
called when a zoom gesture event occurs | |
CMessageResult | notify (CBaseObject *sender, IdStringPtr message) override |
bool | onWheel (const CPoint &where, const CMouseWheelAxis &axis, const float &distance, const CButtonState &buttons) final |
SharedPointer< IDropTarget > | getDropTarget () override |
get the drag target for drag and drop handling | |
void | looseFocus () override |
called if view should loose focus | |
void | takeFocus () override |
called if view should take focus | |
bool | isDirty () const override |
check if view is dirty | |
void | invalid () override |
mark whole view as invalid | |
void | invalidRect (const CRect &rect) override |
mark rect as invalid | |
void | setViewSize (const CRect &rect, bool invalid=true) override |
void | parentSizeChanged () override |
notification that one of the views parent has changed its size | |
bool | sizeToFit () override |
resize view to optimal size | |
bool | removed (CView *parent) override |
view is removed from parent view | |
bool | attached (CView *parent) override |
view is attached to a parent view | |
CPoint & | frameToLocal (CPoint &point) const override |
conversion from frame coordinates to local view coordinates | |
CPoint & | localToFrame (CPoint &point) const override |
conversion from local view coordinates to frame coordinates | |
CBaseObject * | newCopy () const override |
CViewContainer * | asViewContainer () final |
const CViewContainer * | asViewContainer () const final |
![]() | |
CView (const CRect &size) | |
CView (const CView &view) | |
virtual void | dispatchEvent (Event &event) |
dispatch an event | |
virtual void | onMouseEnterEvent (MouseEnterEvent &event) |
called when the mouse enters this view | |
virtual void | onMouseExitEvent (MouseExitEvent &event) |
called when the mouse leaves this view | |
virtual void | setMouseEnabled (bool bEnable=true) |
turn on/off mouse usage for this view | |
bool | getMouseEnabled () const |
get the state of wheather this view uses the mouse or not | |
virtual void | setMouseableArea (const CRect &rect) |
set the area in which the view reacts to the mouse | |
CRect | getMouseableArea () const |
get the area in which the view reacts to the mouse | |
virtual CMouseEventResult | onMouseDown (CPoint &where, const CButtonState &buttons) |
do not use any longer. | |
virtual CMouseEventResult | onMouseUp (CPoint &where, const CButtonState &buttons) |
do not use any longer. | |
virtual CMouseEventResult | onMouseMoved (CPoint &where, const CButtonState &buttons) |
do not use any longer. | |
virtual CMouseEventResult | onMouseCancel () |
do not use any longer. | |
virtual CMouseEventResult | onMouseEntered (CPoint &where, const CButtonState &buttons) |
do not use any longer. | |
virtual CMouseEventResult | onMouseExited (CPoint &where, const CButtonState &buttons) |
do not use any longer. | |
virtual bool | onWheel (const CPoint &where, const float &distance, const CButtonState &buttons) final |
CRect & | getMouseableArea (CRect &rect) const |
get the area in which the view reacts to the mouse | |
void | setHitTestPath (CGraphicsPath *path) |
virtual bool | hitTest (const CPoint &where, const Event &event=noEvent()) |
check if where hits this view | |
virtual bool | hitTest (const CPoint &where, const CButtonState &buttons) |
bool | doDrag (const DragDescription &dragDescription, const SharedPointer< IDragCallback > &callback={}) |
start a drag operation | |
void | setDropTarget (const SharedPointer< IDropTarget > &dt) |
set a custom drop target | |
DragResult | doDrag (IDataPackage *source, const CPoint &offset=CPoint(0, 0), CBitmap *dragBitmap=nullptr) |
a drag can only be started from within onMouseDown | |
virtual void | onKeyboardEvent (KeyboardEvent &event) |
called when a keyboard event is dispatched to this view | |
virtual int32_t | onKeyDown (VstKeyCode &keyCode) |
called if a key down event occurs and this view has focus | |
virtual int32_t | onKeyUp (VstKeyCode &keyCode) |
called if a key up event occurs and this view has focus | |
CCoord | getHeight () const |
get the height of the view | |
CCoord | getWidth () const |
get the width of the view | |
const CRect & | getViewSize () const |
read only access to view size | |
virtual CRect | getVisibleViewSize () const |
returns the visible size of the view | |
virtual void | setAutosizeFlags (int32_t flags) |
set autosize flags | |
int32_t | getAutosizeFlags () const |
get autosize flags | |
virtual bool | wantsFocus () const |
check if view supports focus | |
virtual void | setWantsFocus (bool state) |
set focus support on/off | |
bool | getAttributeSize (const CViewAttributeID id, uint32_t &outSize) const |
get the size of an attribute | |
bool | getAttribute (const CViewAttributeID id, const uint32_t inSize, void *outData, uint32_t &outSize) const |
get an attribute | |
bool | setAttribute (const CViewAttributeID id, const uint32_t inSize, const void *inData) |
set an attribute | |
bool | removeAttribute (const CViewAttributeID id) |
remove an attribute | |
template<typename T> | |
bool | setAttribute (const CViewAttributeID id, const T &data) |
set an attribute | |
template<typename T> | |
bool | getAttribute (const CViewAttributeID id, T &data) const |
get an attribute | |
virtual void | setBackground (CBitmap *background) |
set the background image of this view | |
CBitmap * | getBackground () const |
get the background image of this view | |
virtual void | setDisabledBackground (CBitmap *background) |
set background image used when the mouse is not enabled | |
CBitmap * | getDisabledBackground () const |
get background image used when the mouse is not enabled | |
CBitmap * | getDrawBackground () const |
get the bitmap which is drawn depending on the enabled state. | |
virtual void | setTransparency (bool val) |
set views transparent state | |
bool | getTransparency () const |
get views transparent state | |
virtual void | setAlphaValue (float alpha) |
set alpha value which will be applied when drawing this view | |
float | getAlphaValue () const |
get alpha value | |
bool | isAttached () const |
is view attached to a parentView | |
void | setSubviewState (bool state) |
bool | isSubview () const |
CView * | getParentView () const |
get parent view | |
CFrame * | getFrame () const |
get frame | |
virtual VSTGUIEditorInterface * | getEditor () const |
get editor | |
void | addAnimation (IdStringPtr name, Animation::IAnimationTarget *target, Animation::ITimingFunction *timingFunction, CBaseObject *notificationObject) |
void | addAnimation (IdStringPtr name, Animation::IAnimationTarget *target, Animation::ITimingFunction *timingFunction, const Animation::DoneFunction &doneFunc=nullptr, bool callDoneOnCancel=false) |
void | removeAnimation (IdStringPtr name) |
void | removeAllAnimations () |
void | registerViewListener (IViewListener *listener) |
void | unregisterViewListener (IViewListener *listener) |
void | registerViewEventListener (IViewEventListener *listener) |
void | unregisterViewEventListener (IViewEventListener *listener) |
void | registerViewMouseListener (IViewMouseListener *listener) |
void | unregisterViewMouseListener (IViewMouseListener *listener) |
CGraphicsTransform | getGlobalTransform (bool ignoreFrame=false) const |
get the active global transform for this view | |
template<typename T> | |
T & | translateToGlobal (T &t, bool ignoreFrame=false) const |
translates a local coordinate to a global one using parent transforms | |
template<typename T> | |
T | translateToGlobal (const T &t, bool ignoreFrame=false) const |
translates a local coordinate to a global one using parent transforms | |
template<typename T> | |
T & | translateToLocal (T &t, bool ignoreFrame=false) const |
translates a global coordinate to a local one using parent transforms | |
template<typename T> | |
T | translateToLocal (const T &t, bool ignoreFrame=false) const |
translates a local coordinate to a global one using parent transforms | |
CMouseEventResult | callMouseListener (MouseListenerCall type, CPoint pos, CButtonState buttons) |
void | callMouseListenerEnteredExited (bool mouseEntered) |
CBaseObject * | newCopy () const override |
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. | |
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 | |
virtual bool | wantsWindowActiveStateChangeNotification () const |
whether this view wants to be informed if the window's active state changes | |
virtual void | onWindowActivate (bool state) |
called when the active state of the window changes | |
void | setTooltipText (UTF8StringPtr text) |
![]() | |
CBaseObject ()=default | |
~CBaseObject () noexcept override=default | |
CBaseObject (const CBaseObject &) | |
CBaseObject & | operator= (const CBaseObject &) |
![]() | |
ReferenceCounted ()=default | |
virtual | ~ReferenceCounted () noexcept=default |
ReferenceCounted (const ReferenceCounted &) | |
ReferenceCounted & | operator= (const ReferenceCounted &) |
ReferenceCounted ()=default | |
ReferenceCounted (const ReferenceCounted &) | |
virtual | ~ReferenceCounted () noexcept=default |
ReferenceCounted & | operator= (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 | |
void | forget () override |
decrease refcount and delete object if refcount == 0 | |
void | remember () override |
increase refcount | |
virtual int32_t | getNbReference () const |
get refcount | |
Additional Inherited Members | |
![]() | |
using | ViewList = std::list<SharedPointer<CView>> |
using | ChildViewConstIterator = ViewList::const_iterator |
using | ChildViewConstReverseIterator = ViewList::const_reverse_iterator |
enum class | MouseListenerCall { MouseDown , MouseMoved , MouseUp , MouseCancel } |
static bool | kDirtyCallAlwaysOnMainThread = false |
if this is true, setting a view dirty will call invalid() instead of checking it in idle. | |
static uint32_t | idleRate = 30 |
global idle rate in Hz, defaults to 30 Hz | |
![]() | |
enum | { kAutosizeSubviews = 1 << (CView::kLastCViewFlag + 1) } |
![]() | |
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 } |
~CViewContainer () noexcept override | |
void | beforeDelete () override |
virtual bool | checkUpdateRect (CView *view, const CRect &rect) |
check if view needs to be updated for rect | |
void | setMouseDownView (CView *view) |
CView * | getMouseDownView () const |
const ViewList & | getChildren () const |
~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) |
TODO: Doc.
|
explicit |
add a child view before another view
pView | the view object to add to this container |
pBefore | the view object |
Reimplemented from CViewContainer.
|
overridevirtual |
view is attached to a parent view
parent | parent view |
Reimplemented from CView.
|
overridevirtual |
change view z order position
view | view which z order position should be changed |
newIndex | index of new z position |
Reimplemented from CViewContainer.
|
pure virtual |
Implemented in CRowColumnView.
|
overridepure virtual |
Implemented in CRowColumnView.
|
overridevirtual |
remove a child view
pView | the view which should be removed from the container |
withForget | bool to indicate if the view's reference counter should be decreased after removed from the container |
Reimplemented from CViewContainer.
|
overridevirtual |
set views size
newSize | rect of new size of view |
doInvalid | if true set view dirty |
Reimplemented from CView.