A scrollbar that offers thumb size adjustment, and an auto-hide feature.
View Template Specification
Type | Labels | Property | Description |
Node | Thumb | Required | Layer for the 'Thumb' that shows the scroll position. |
Marker | ScrollStart | Required | The motion of a thumb between the start and end position of the scroll. When using arrow keys to scroll, the time it takes to scroll from one end to another is set using the duration of this marker. |
Marker | ScrollShow | Optional | Played when the scroll bar is interacted with. The scroll bar must be configured with SetAutoHideTimeout() in order for this timeline to be played. |
Marker | ScrollHide | Optional | Played a configurable delay after the scroll bar is no longer being interacted with. The scroll bar must be configured with SetAutoHideTimeout() in order for this timeline to be played. |
Marker | ThumbSize | Optional | The timeline used to determine the visual state of the thumb when calling SetThumbSize(). The timeline should animate the size of the thumb between 0% and 100% of the scrollable area. |
Scroll bars are automatically marked focusable when the FocusIn timeline (specified in CYISceneView) is present.
|
| CYIScrollBarView () |
|
virtual | ~CYIScrollBarView () |
|
virtual bool | Init () override |
|
virtual void | FocusLost () override |
|
void | ScrollThumbToPosition (float normalizedPosition) |
|
void | SetThumbPosition (float normalizedPosition) |
|
float | GetThumbPosition () const |
|
void | SetThumbSize (float percentage) |
|
float | GetThumbSize () const |
|
void | AddListener (CYIScrollBarView::Listener *pListener) |
|
void | RemoveListener (CYIScrollBarView::Listener *pListener) |
|
void | SetAutoHideTimeout (uint64_t delayMs) |
|
uint64_t | GetAutoHideTimeout () const |
|
virtual const CYISceneView::AssetRequirement * | GetAssetRequirements (uint32_t *pRequirementCount) override |
|
| CYISceneView () |
|
virtual | ~CYISceneView () |
|
bool | BuildFromTemplate (CYISceneManager *pSceneManager, const std::shared_ptr< CYIAssetViewTemplate > &pAssetViewTemplate, CYISceneManager::MissingClassHandlingMode missingHandlingMode=CYISceneManager::MissingClassHandlingMode::Abort) |
|
bool | IsInitialized () const |
|
void | SetClippingAreaNode (CYISceneNode *pClippingNode) |
|
virtual CYIOptional< CYIStringView > | GetProperty (CYIStringView propertyName) const override |
|
bool | GetProperty (CYIStringView propertyName, CYIString *pValue) const |
|
virtual std::map< CYIString, CYIString > | GetProperties () const override |
|
virtual void | ForEachProperty (const std::function< void(const CYIString &, const CYIString &)> &action) const override |
|
virtual bool | HasProperties () const override |
|
void | EnableDefaultHitZone () |
|
bool | IsResponsiveLayoutEnabled () const |
|
void | EnableResponsiveLayout () |
|
void | DisableResponsiveLayout () |
|
void | AddAnchor (EYIAnchorType anchorType) |
|
YI_ANCHOR_DATA | GetAnchor (EYIAnchorType anchorType) const |
|
CYIAbstractTimeline * | GetInTimeline () const |
|
CYIAbstractTimeline * | GetOutTimeline () const |
|
CYIAbstractTimeline * | GetFocusInTimeline () const |
|
CYIAbstractTimeline * | GetFocusOutTimeline () const |
|
virtual bool | HandlesFocusInDescendants () const |
|
virtual bool | RequestFocus (CYIFocus::Direction direction=CYIFocus::Direction::Forward, CYIFocus::FocusRootRule focusRootRule=CYIFocus::FocusRootRule::DescendantsUpdateContext, const CYIAABB &previousFocusRect=CYIAABB(), const CYIFocusSearchOptions &options=CYIFocusSearchOptions()) |
|
bool | HasFocus () const |
|
void | SetFocusable (bool focusable) |
|
bool | IsFocusable () const |
|
bool | CanBeFocused () const |
|
void | SetNextFocus (CYISceneView *pView, CYIFocus::Direction direction) |
|
CYISceneView * | GetNextFocus (CYIFocus::Direction direction) const |
|
virtual void | SetInitiallyFocusedView (CYISceneView *pView, InitialFocusLifetime initialFocusLifetime=InitialFocusLifetime::Persistent) |
|
CYISceneView * | GetInitiallyFocusedView () const |
|
CYISceneView::InitialFocusLifetime | GetInitialFocusLifetime () const |
|
CYISceneView * | FindNextFocus (CYIFocus::Direction direction, const CYIFocusSearchOptions &options=CYIFocusSearchOptions()) const |
|
CYISceneView * | FindNextFocus (CYIFocus::Direction direction, CYIAABB &screenSpaceFocusRegion, const CYIFocusSearchOptions &options=CYIFocusSearchOptions()) const |
|
virtual CYISceneView * | FindNextFocusInDescendants (const CYISceneView *pCurrentFocusView, CYIFocus::Direction direction, CYIAABB &screenSpaceFocusRegion, const CYIFocusSearchOptions &options=CYIFocusSearchOptions()) const |
|
const CYISceneNode * | GetFocusRoot () const |
|
CYISceneView * | GetFocusHandler () const |
|
virtual void | OnFocusGained () |
|
virtual void | FocusGained () |
|
virtual void | OnFocusLost () |
|
virtual void | FocusGainedInDescendants (CYISceneNode *pNewNodeWithFocus, CYISceneNode *pPreviousNodeWithFocus) override |
|
virtual bool | ContainsFocusableDescendant (const CYIFocusSearchOptions &options=CYIFocusSearchOptions()) const override |
|
const std::shared_ptr< CYIAssetViewTemplate > & | GetViewTemplate () const |
|
const std::vector< CYIString > & | GetChildTemplateNames () |
|
template<typename T > |
T * | BuildTimeline (const CYIString &markerName) |
|
CYITimeline * | BuildTimeline (const CYIString &markerName, int32_t startOffset, int32_t duration) |
|
CYIAbstractTimeline * | GetTimeline (CYIMarkerData::ID id) |
|
virtual CYIAbstractTimeline * | GetTimeline (CYIStringView markerName, TimelineGetMode mode=TimelineGetMode::GetDefault) |
|
std::map< CYIString, CYITimeline * > | GetSimpleTimelines () const |
|
std::map< CYIString, CYIAbstractTimeline * > | GetTimelines () const |
|
bool | FindTimeline (CYIAbstractTimeline *&pTimeline, CYIStringView markerName, FetchType type, const CYIString &tag="", TimelineGetMode mode=TimelineGetMode::GetDefault) |
|
CYITimelineGroup * | GetTimelineGroup (CYIStringView markerName) |
|
void | BuildAnchorList () |
|
virtual void | Reset () |
|
void | SetLayout (std::unique_ptr< CYILayout > pLayout) |
|
const CYILayout * | GetLayout () const |
|
CYILayout * | GetLayout () |
|
virtual void | Measure (const MeasureSpec &widthSpec, const MeasureSpec &heightSpec, const MeasureSpec &depthSpec) override |
|
virtual void | ApplyMeasurements () override |
|
| CYISceneNode () |
|
virtual | ~CYISceneNode () |
|
bool | IsInitialized () const |
|
void | ForceDirty () |
|
void | SetDirtyFlag (DirtyFlag dirtyFlag) |
|
DirtyFlag | GetDirtyFlag () const |
|
DirtyFlag | GetPreviousDirtyFlag () const |
|
const CYIString & | GetName () const |
|
CYIString | GetUniqueName () const |
|
void | SetSceneManager (CYISceneManager *pSceneManager) |
|
void | SetName (const CYIString &name) |
|
int32_t | GetID () const |
|
void | SetID (int32_t id) |
|
uint64_t | GetUniqueID () const |
|
bool | AddChild (std::unique_ptr< CYISceneNode > pSceneNode) |
|
bool | AddChild (std::unique_ptr< CYISceneNode >, size_t index) |
|
bool | InsertChildAfter (CYISceneNode *pRefNode, std::unique_ptr< CYISceneNode > pSceneNode) |
|
std::unique_ptr< CYISceneNode > | RemoveChild (CYISceneNode *pSceneNode) |
|
bool | ReorderChild (size_t fromIndex, size_t toIndex) |
|
CYITransform * | GetTransform () |
|
CYISceneNode * | GetParent () const |
|
bool | ChangeParent (CYISceneNode *pParent) |
|
CYISceneNode * | GetDrawParent () const |
|
bool | IsAncestorOf (const CYISceneNode *pNode) const |
|
CYISceneManager * | GetSceneManager () const |
|
size_t | GetChildCount () const |
|
uint32_t | GetChildCountRecursive () const |
|
CYISceneNode * | GetChild (size_t index) const |
|
Iterator | begin (Iterator::Mode mode=Iterator::Mode::ImmediateChildren) const |
|
Iterator | end (Iterator::Mode mode=Iterator::Mode::ImmediateChildren) const |
|
ReverseIterator | rbegin (Iterator::Mode mode=Iterator::Mode::ImmediateChildren) const |
|
ReverseIterator | rend (Iterator::Mode mode=Iterator::Mode::ImmediateChildren) const |
|
CYISceneNode * | GetChild (const CYIString &name) const |
|
size_t | GetDrawChildCount () const |
|
CYISceneNode * | GetDrawChild (size_t index) const |
|
CYISceneNode * | GetDrawChildByID (int32_t id) const |
|
template<class YI_SCENE_NODE_SUBCLASS > |
YI_SCENE_NODE_SUBCLASS * | GetChild (uint32_t targetMatchedNodeCount=1) const |
|
template<class YI_SCENE_NODE_SUBCLASS > |
std::list< YI_SCENE_NODE_SUBCLASS * > | GetChildren () const |
|
template<class YI_SCENE_NODE_SUBCLASS > |
std::list< YI_SCENE_NODE_SUBCLASS * > | GetDrawChildren () const |
|
size_t | GetIndexOfChild (const CYISceneNode *pSceneNode) const |
|
size_t | GetIndexOfDrawChild (const CYISceneNode *pSceneNode) const |
|
void | Show () |
|
void | Hide () |
|
void | SetVisibility (bool visible) |
|
void | SetOpacity (float opacity) |
|
float | GetCompositeOpacity () const |
|
float | GetLocalOpacity () const |
|
bool | IsVisible () const |
|
bool | IsTrulyVisible () const |
|
bool | IsPerceptible () const |
|
CYISceneNode * | GetNode (CYIStringView name) |
|
CYISceneNode * | GetNode (CYIStringView name, const CYIRuntimeTypeInfo &enforceClassType) |
|
CYISceneNode * | GetNode (const CYIRuntimeTypeInfo &enforceClassType) |
|
CYISceneNode * | GetNodeAfterTarget (const CYIRuntimeTypeInfo &enforceClassType, CYISceneNode *pStartAfterTarget) |
|
template<class YI_SCENE_NODE_SUBCLASS > |
YI_SCENE_NODE_SUBCLASS * | GetNode (CYIStringView name) |
|
CYISceneNode * | GetNode (const int32_t id) |
|
CYISceneNode * | GetNode (const int32_t id, const CYIRuntimeTypeInfo &enforceClassType) |
|
CYISceneNode * | GetNodeWithUniqueID (uint64_t uniqueID) |
|
template<class YI_SCENE_NODE_SUBCLASS > |
bool | FindNode (YI_SCENE_NODE_SUBCLASS *&pNode, CYIStringView nodeName, FetchType type, const CYIString &tag) |
|
std::list< CYISceneNode * > | GetNodes (CYIStringView name) |
|
std::list< CYISceneNode * > | GetNodes (int32_t id) |
|
std::list< CYISceneNode * > | GetNodes (const CYIRuntimeTypeInfo &enforceClassType) |
|
template<class YI_SCENE_NODE_SUBCLASS > |
const YI_SCENE_NODE_SUBCLASS * | GetNode (uint32_t targetMatchedNodeCount=1) const |
|
template<class YI_SCENE_NODE_SUBCLASS > |
YI_SCENE_NODE_SUBCLASS * | GetNode (uint32_t targetMatchedNodeCount=1) |
|
void | SetMesh (const std::shared_ptr< CYIMesh > &pMesh) |
|
bool | SetNPatchBitmap (const std::shared_ptr< CYIBitmap > &pNPatchBitmap) |
|
void | ClearNPatch () |
|
void | SetMaterial (const std::shared_ptr< CYIMaterial > &pMaterial, size_t index=0) |
|
void | AddEffect (const std::shared_ptr< CYIEffect > &pEffect) |
|
void | RemoveEffect (const std::shared_ptr< CYIEffect > &pEffect) |
|
size_t | GetEffectCount () const |
|
const std::shared_ptr< CYIEffect > & | GetEffect (size_t index) const |
|
void | ConnectEffectsToTimelines (const CYITimelineTrack *pTrack) |
|
void | AddMask (std::unique_ptr< CYIMask > pMask) |
|
std::unique_ptr< CYIMask > | RemoveMask (const CYIMask *pMask) |
|
size_t | GetMaskCount () const |
|
const CYIMask * | GetMask (size_t index) const |
|
CYIMask * | GetMask (size_t index) |
|
const std::shared_ptr< CYIMesh > & | GetMesh () const |
|
const std::shared_ptr< CYIBitmap > & | GetNPatchBitmap () const |
|
size_t | GetMaterialCount () const |
|
const std::shared_ptr< CYIMaterial > & | GetMaterial (size_t index=0) const |
|
const std::shared_ptr< IYIUniformBufferObject > & | GetShaderUniforms () const |
|
void | SetMeshTransform (const glm::mat4 &transform) |
|
void | DestroyChildren () |
|
glm::mat4 | GetLocalTransform () const |
|
glm::mat4 | GetWorldTransform () const |
|
bool | Intersects (const CYISceneNode *pNode) const |
|
void | SetRenderTarget (const std::shared_ptr< CYIRenderTarget > &pRenderTarget) |
|
const std::shared_ptr< CYIRenderTarget > & | GetRenderTarget () const |
|
virtual void | OnPreBuildDrawList (std::vector< IYIRenderer::Command > *pDrawList, std::vector< CYIAbstractCameraSceneNode *> *pDrawWithCameraList) |
|
virtual void | OnPostBuildDrawList (std::vector< IYIRenderer::Command > *pDrawList) |
|
const CYIAABB & | GetWorldAABB () const |
|
const CYIAABB & | GetLocalAABB () const |
|
void | SetAnchorPoint (const glm::vec3 &anchorPoint) |
|
void | SetAnchorPoint (float x, float y, float z) |
|
void | SetAnchorPointX (float x) |
|
void | SetAnchorPointY (float y) |
|
void | SetAnchorPointZ (float z) |
|
void | SetPosition (const glm::vec3 &position) |
|
void | SetPosition (float x, float y, float z) |
|
void | SetPositionX (float x) |
|
void | SetPositionY (float y) |
|
void | SetPositionZ (float z) |
|
void | SetRotation (const glm::vec3 &rotation) |
|
void | SetRotation (float pitchDegrees, float yawDegrees, float rollDegrees) |
|
void | SetRotationX (float pitchDegrees) |
|
void | SetRotationY (float yawDegrees) |
|
void | SetRotationZ (float rollDegrees) |
|
void | SetOrientation (float pitchDegrees, float yawDegrees, float rollDegrees) |
|
void | SetOrientation (const glm::quat &orientation) |
|
void | SetScale (const glm::vec3 &scale) |
|
void | SetScale (float factorX, float factorY, float factorZ) |
|
void | SetScaleX (float factor) |
|
void | SetScaleY (float factor) |
|
void | SetScaleZ (float factor) |
|
const glm::vec3 & | GetPosition () const |
|
const glm::vec3 & | GetScale () const |
|
const glm::vec3 & | GetWorldScale () const |
|
const glm::vec3 & | GetWorldSurfaceScale () const |
|
const glm::vec3 & | GetRotation () const |
|
const glm::quat & | GetOrientation () const |
|
const glm::vec3 & | GetAnchorPoint () const |
|
virtual void | SetSize (const glm::vec3 &size, bool dirtyLayout=true) |
|
const glm::vec3 & | GetSize () const |
|
const glm::vec3 & | GetInitialSize () const |
|
void | SetMeasuredSize (const glm::vec3 &measuredSize) |
|
const glm::vec3 & | GetMeasuredSize () const |
|
void | SetInternalCustomTimelineValue (uint32_t trackID, const CYIVariant &value) |
|
virtual void | SetCustomTimelineValue (uint32_t trackID, const CYIVariant &value) |
|
void | SetClippingOn () |
|
void | SetClippingOff () |
|
bool | GetClipping () const |
|
void | SetClippingBox (const CYIAABB &worldBox) |
|
const CYIAABB & | GetClippingBox () const |
|
void | StartPropertyAnimation (PropertyAnimation::Type propType, float from, float to, uint32_t durMs, CYITimeInterpolator *pTimeInterpolator=nullptr, bool dirtyLayout=true) |
|
void | StopPropertyAnimation (PropertyAnimation::Type propType) |
|
void | UpdateLocalSpaceCollision (CYIActionEvent *pActionEvent) |
|
virtual bool | BroadcastEvent (const std::shared_ptr< CYIEventDispatcher > &pDispatcher, CYIEvent *pEvent) |
|
void | UpdateEventForLocalSpace (CYIActionEvent *pActionEvent, glm::vec3 &rayOrigin, glm::vec3 &rayNonOriginPoint) const |
|
bool | IsBoundingBoxHit (const CYIRay &worldSpaceRay) const |
|
bool | IsMeshHit (const CYIRay &worldSpaceRay) const |
|
void | DumpTree () const |
|
void | StartCaptureKeyboardEvents () |
|
void | StopCaptureKeyboardEvents () |
|
void | StartCaptureTrackpadEvents () |
|
void | StopCaptureTrackpadEvents () |
|
void | StartCapturePointerEvents (uint8_t pointerID) |
|
void | StopCapturePointerEvents (uint8_t pointerID) |
|
bool | DrawBehindChildren (CYISceneNode *pSceneNode, bool *pChanged=nullptr) |
|
bool | DrawInFrontOfChildren (CYISceneNode *pSceneNode, bool *pChanged=nullptr) |
|
bool | DrawBehind (CYISceneNode *pSceneNode, bool *pChanged=nullptr) |
|
bool | DrawInFront (CYISceneNode *pSceneNode, bool *pChanged=nullptr) |
|
bool | IsFocusRoot () const |
|
void | SetIsFocusRoot (bool isFocusRoot) |
|
virtual void | OnFocusGainedInDescendants (CYISceneNode *pNewNodeWithFocus, CYISceneNode *pPreviousNodeWithFocus) |
|
virtual void | OnFocusLostInDescendants (CYISceneNode *pNewNodeWithFocus, CYISceneNode *pPreviousNodeWithFocus) |
|
virtual void | FocusLostInDescendants (CYISceneNode *pNewNodeWithFocus, CYISceneNode *pPreviousNodeWithFocus) |
|
virtual void | OnFocusChangedInDescendants (CYISceneNode *pNewNodeWithFocus, CYISceneNode *pPreviousNodeWithFocus) |
|
virtual void | FocusChangedInDescendants (CYISceneNode *pNewNodeWithFocus, CYISceneNode *pPreviousNodeWithFocus) |
|
void | SetUseLocalTransformAndAlpha (bool use) |
|
bool | GetProperty (CYIStringView propertyName, CYIString *pValue) const |
|
void | SetProperty (const CYIString &propertyName, const CYIString &propertyValue) |
|
std::shared_ptr< CYISceneNodeProxy > | GetSceneNodeProxy () const |
|
void | SetLayoutConfig (std::unique_ptr< CYILayoutConfig > pLayoutConfig) |
|
const CYILayoutConfig * | GetLayoutConfig (LayoutConfigFetchMode fetchMode=LayoutConfigFetchMode::LazyInstantiate) const |
|
CYILayoutConfig * | GetLayoutConfig (LayoutConfigFetchMode fetchMode=LayoutConfigFetchMode::LazyInstantiate) |
|
void | SetLayoutState (std::unique_ptr< CYILayoutState > pLayoutState) |
|
const CYILayoutState * | GetLayoutState () const |
|
CYILayoutState * | GetLayoutState () |
|
void | RequestLayout () |
|
LayoutDirtyFlag | GetLayoutDirtyFlag () const |
|
virtual void | SetLayoutDirtyFlag (LayoutDirtyFlag flag) |
|
virtual CYIAbstractCameraSceneNode * | FindActiveCamera (const CYISceneNode *pTargetSceneNode=nullptr) const |
|
CYIAccessibilityAttributes::Accessible | GetAccessible () const |
|
void | SetAccessible (CYIAccessibilityAttributes::Accessible accessible) |
|
const CYIAccessibilityAttributes * | GetAccessibilityAttributes () const |
|
std::unique_ptr< CYIAccessibilityAttributes > | TakeAccessibilityAttributes () |
|
void | SetAccessibilityAttributes (std::unique_ptr< CYIAccessibilityAttributes > pAttributes) |
|
const CYIRenderable * | GetRenderable () const |
|
template<typename T > |
bool | CanCastTo () const |
|
CYIAdjustmentLayerSceneNode * | GetLastAdjustmentLayer () const |
|
| CYIEventTarget () |
|
virtual | ~CYIEventTarget () |
|
bool | AddEventListener (CYIEvent::Type eventType, CYIEventHandler *pListener, CYIEventTarget::Phase phase=CYIEventTarget::Phase::Bubble) |
|
bool | RemoveEventListener (CYIEvent::Type eventType, CYIEventHandler *pListener, CYIEventTarget::Phase phase=CYIEventTarget::Phase::Bubble) |
|
void | SetSpecialTypeFlag (SpecialEventTargetType type) |
|
void | ClearSpecialTypeFlag (SpecialEventTargetType type) |
|
SpecialEventTargetType | GetSpecialTypes () const |
|
const std::shared_ptr< CYIEventTargetProxy > & | GetProxy () const |
|
Public Member Functions inherited from CYISignalHandler |
| CYISignalHandler () |
|
| CYISignalHandler (const CYISignalHandler &signalHandler) |
|
virtual | ~CYISignalHandler () |
|
CYISignalHandler & | operator= (const CYISignalHandler &signalHandler) |
|
void | MoveToThread (CYIThread *pThread) |
| This function allows the user to override the default thread affinity to any CYIThread that may or may not be running. More...
|
|
CYIThreadHandle | GetThreadAffinity () const |
|
void | SetThreadAffinity (const CYIThreadHandle &threadAffinity) |
|
virtual bool | IsConnected () const |
|
virtual bool | IsConnected (const CYISignalBase &signal) const |
|
void | Disconnect (CYISignalBase &signal) |
|
void | DisconnectFromAllSignals () |
|
| Listener () |
|
virtual | ~Listener () |
|
virtual void | OnThreadStarted (CYIThread *) |
|
virtual void | OnThreadTerminated (CYIThread *) |
|
virtual void | OnThreadFinished (CYIThread *) |
|
virtual | ~IYIPropertiesSource ()=default |
|
bool | GetProperty (CYIStringView propertyName, CYIString *pValue) const |
|
Public Member Functions inherited from CYIEventHandler |
| CYIEventHandler () |
|
| CYIEventHandler (const CYIEventHandler &) |
|
virtual | ~CYIEventHandler () |
|
CYIEventHandler & | operator= (const CYIEventHandler &) |
|
bool | RegisterEventFilter (CYIEventFilter *pFilter) |
|
bool | UnregisterEventFilter (CYIEventFilter *pFilter) |
|
bool | PreFilter (const std::shared_ptr< CYIEventDispatcher > &pDispatcher, CYIEvent *pEvent) |
|
bool | PostFilter (const std::shared_ptr< CYIEventDispatcher > &pDispatcher, CYIEvent *pEvent) |
|
bool | AreEventsEnabled () const |
|
void | EnableEvents (bool enable) |
|