Castor3D 0.16.0
Multiplatform 3D engine
Classes | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
castor3d::ScrollableCtrl Class Reference

#include <CtrlScrollable.hpp>

Inheritance diagram for castor3d::ScrollableCtrl:
Inheritance graph
[legend]
Collaboration diagram for castor3d::ScrollableCtrl:
Collaboration graph
[legend]

Classes

struct  ScrolledControl
 

Public Member Functions

virtual C3D_API ~ScrollableCtrl () noexcept
 
C3D_API castor::Position getScrollPosition () const
 
ScrollableStylegetStyle () const noexcept
 

Protected Types

using OnScrollContentFunction = castor::Function< void( castor::Position const & ) >
 
using OnScrollContent = castor::SignalT< OnScrollContentFunction >
 
using OnScrollContentConnection = OnScrollContent::connection
 

Protected Member Functions

C3D_API ScrollableCtrl (Control &target, ScrollableStyleRPtr style)
 
C3D_API void createScrollBars ()
 
C3D_API void destroyScrollBars ()
 
C3D_API void updateScrollBarsStyle ()
 
C3D_API void checkScrollBarFlags ()
 
C3D_API void updateScrollBars ()
 
C3D_API castor::Point4ui updateScrollableClientRect (castor::Point4ui const &clientRect) const
 
C3D_API void updateScrollBarsThumb (castor::Position const &pos)
 
C3D_API void setScrollBarsVisible (bool visible)
 
C3D_API void registerControl (Control &control)
 
C3D_API void unregisterControl (Control &control)
 
C3D_API void updateTotalSize (castor::Size const &size)
 
C3D_API void updateScrollZIndex (uint32_t &index)
 
C3D_API void adjustScrollZIndex (uint32_t offset)
 
bool hasVerticalScrollBar () const noexcept
 
bool hasHorizontalScrollBar () const noexcept
 

Protected Attributes

OnScrollContent onScrollContent
 

Member Typedef Documentation

◆ OnScrollContent

◆ OnScrollContentConnection

◆ OnScrollContentFunction

Constructor & Destructor Documentation

◆ ~ScrollableCtrl()

virtual C3D_API castor3d::ScrollableCtrl::~ScrollableCtrl ( )
virtualnoexcept

◆ ScrollableCtrl()

C3D_API castor3d::ScrollableCtrl::ScrollableCtrl ( Control & target,
ScrollableStyleRPtr style )
protected

Constructor

Parameters
[in]targetThe target control.
[in]styleThe style.

Member Function Documentation

◆ adjustScrollZIndex()

C3D_API void castor3d::ScrollableCtrl::adjustScrollZIndex ( uint32_t offset)
protected

Adjusts the overlays Z index.

◆ checkScrollBarFlags()

C3D_API void castor3d::ScrollableCtrl::checkScrollBarFlags ( )
protected

Enables/Disables scrollbars, depending on control flags.

◆ createScrollBars()

C3D_API void castor3d::ScrollableCtrl::createScrollBars ( )
protected

Creates the scrollbars controls.

◆ destroyScrollBars()

C3D_API void castor3d::ScrollableCtrl::destroyScrollBars ( )
protected

Destroys the scrollbars controls.

◆ getScrollPosition()

C3D_API castor::Position castor3d::ScrollableCtrl::getScrollPosition ( ) const

◆ getStyle()

ScrollableStyle & castor3d::ScrollableCtrl::getStyle ( ) const
inlinenoexcept

◆ hasHorizontalScrollBar()

bool castor3d::ScrollableCtrl::hasHorizontalScrollBar ( ) const
inlineprotectednoexcept

◆ hasVerticalScrollBar()

bool castor3d::ScrollableCtrl::hasVerticalScrollBar ( ) const
inlineprotectednoexcept

◆ registerControl()

C3D_API void castor3d::ScrollableCtrl::registerControl ( Control & control)
protected

Updates total scrollable content dimensions.

◆ setScrollBarsVisible()

C3D_API void castor3d::ScrollableCtrl::setScrollBarsVisible ( bool visible)
protected

Updates scrollbars visibility.

◆ unregisterControl()

C3D_API void castor3d::ScrollableCtrl::unregisterControl ( Control & control)
protected

Updates total scrollable content dimensions.

◆ updateScrollableClientRect()

C3D_API castor::Point4ui castor3d::ScrollableCtrl::updateScrollableClientRect ( castor::Point4ui const & clientRect) const
protected

Updates the given client rect regarding scrollbars dimensions and visibility.

◆ updateScrollBars()

C3D_API void castor3d::ScrollableCtrl::updateScrollBars ( )
protected

Updates scrollbars size and position.

◆ updateScrollBarsStyle()

C3D_API void castor3d::ScrollableCtrl::updateScrollBarsStyle ( )
protected

Updates the scrollbars' style.

◆ updateScrollBarsThumb()

C3D_API void castor3d::ScrollableCtrl::updateScrollBarsThumb ( castor::Position const & pos)
protected

Updates scrollbars thumb from external event.

◆ updateScrollZIndex()

C3D_API void castor3d::ScrollableCtrl::updateScrollZIndex ( uint32_t & index)
protected

Updates the overlays Z index.

◆ updateTotalSize()

C3D_API void castor3d::ScrollableCtrl::updateTotalSize ( castor::Size const & size)
protected

Updates total scrollable content dimensions.

Member Data Documentation

◆ onScrollContent

OnScrollContent castor3d::ScrollableCtrl::onScrollContent
protected

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