API Documentation
Public Member Functions | Static Public Member Functions | List of all members
nkWinUi::ScrollBar Class Referenceabstract

A graphical scroll bar. More...

Inheritance diagram for nkWinUi::ScrollBar:
nkWinUi::Component nkExport::Exportable

Public Member Functions

 ScrollBar (System *system) noexcept
 
virtual ~ScrollBar ()
 
int getCurrentMin () const
 
int getCurrentMax () const
 
virtual void setMin (int value)
 
virtual void setMax (int value)
 
virtual void setActiveRange (int value)
 
void setScrollCallback (std::function< void(ScrollBar *)> callback)
 
virtual void scrollToMin ()
 
virtual void scrollToMax ()
 
virtual void setScrollFactor (float value)=0
 
virtual void moveCurrentMinTo (int value)
 
virtual void moveCurrentMaxTo (int value)
 
virtual void scroll (float factor)=0
 
- Public Member Functions inherited from nkWinUi::Component
 Component (System *system) noexcept
 
virtual ~Component ()
 
LayoutgetLayout () const
 
ThemegetTheme () const
 
FontgetFont () const
 
nkMaths::Point getPositionInParent () const
 
nkMaths::Point getPositionInScreen () const
 
float getWidth () const
 
float getHeight () const
 
nkMaths::Rectangle getAreaInParent () const
 
nkMaths::Rectangle getAreaInScreen () const
 
virtual nkMaths::Point getBorderExtents () const
 
virtual float getBorderExtent (BORDER_KIND border) const
 
virtual float getLayoutAllowedWidth () const
 
virtual float getLayoutAllowedHeight () const
 
virtual float getLayoutAllowedOffsetX () const
 
virtual float getLayoutAllowedOffsetY () const
 
bool isInitialized () const
 
SystemgetSystem () const
 
ComponentgetParentComponent () const
 
COMPONENT_TYPE getComponentType () const
 
nkMemory::StringView getComponentName () const
 
bool getVisibility () const
 
virtual nkMemory::StringView getLabel () const
 
void * getData () const
 
bool isEnabled () const
 
bool isForegroundWindow () const
 
virtual unsigned int getZDepth () const
 
bool getVisibleOnLoad () const
 
std::function< bool(Component *)> getCloseCallback () const
 
std::function< void(Component *, bool)> getVisibilityCallback () const
 
std::function< void(Component *, const ClickEventData &)> getClickCallback () const
 
std::function< void(Component *, const WheelEventData &)> getWheelCallback () const
 
std::function< void(Component *, const KeyEventData &)> getKeyCallback () const
 
virtual LayoutsetLayout (LAYOUT_TYPE layoutType)
 
virtual void setTheme (Theme *theme)
 
virtual void setFont (Font *font)
 
virtual void setPositionInParent (nkMaths::Point position)
 
virtual void setPositionInScreen (nkMaths::Point position)
 
virtual void setSize (float width, float height)
 
virtual void setWidth (float width)
 
virtual void setHeight (float height)
 
void setMinSize (float width, float height)
 
void setMaxSize (float width, float height)
 
void setRatio (float widthOverHeight)
 
virtual void setAreaInParent (const nkMaths::Rectangle &area)
 
virtual void setAreaInScreen (const nkMaths::Rectangle &area)
 
virtual void setParentComponent (Component *parent, bool makeItVisible=true)
 
virtual void setLabel (nkMemory::StringView label)
 
void setComponentName (nkMemory::StringView name)
 
virtual void setVisibility (bool value)
 
void setData (void *data)
 
void setEnabled (bool value)
 
void setVisibleOnLoad (bool value)
 
void setCloseCallback (std::function< bool(Component *caller)> callback)
 
void setVisibilityCallback (std::function< void(Component *caller, bool visibility)> callback)
 
void setClickCallback (std::function< void(Component *caller, const ClickEventData &eventData)> callback)
 
void setWheelCallback (std::function< void(Component *caller, const WheelEventData &eventData)> callback)
 
void setKeyCallback (std::function< void(Component *caller, const KeyEventData &eventData)> callback)
 
void addChild (Component *child, bool makeItVisible=true)
 
void removeChild (Component *child)
 
void removeChild (unsigned int index)
 
ComponentgetChild (unsigned int index)
 
unsigned int getChildIndex (Component *child)
 
void unloadWithChildren ()
 
void loadWithChildren ()
 
void updateZDepth ()
 
void bringToForeground ()
 
void focusWindow ()
 
nkMaths::Point getCoordRelativeFromAbsolute (nkMaths::Point absCoords)
 
nkMaths::Point getCoordAbsoluteFromRelative (nkMaths::Point relCoords)
 
virtual void load ()=0
 
virtual void unload ()=0
 
void reload ()
 
virtual void updateWindow ()
 
nkImages::Image paintToImage (bool withFrame=false)
 
void simulateEvent (const InputDescriptor &inputDescription)
 
virtual void onSized ()
 
virtual void exportClassToTree (nkExport::Node *rootNode) override
 
virtual void exportIntrospection (nkExport::Node *rootNode)
 
virtual void importClassFromTree (nkExport::Node *rootNode) override
 
- Public Member Functions inherited from nkExport::Exportable
 Exportable () noexcept
 
virtual ~Exportable ()
 

Static Public Member Functions

static nkMemory::UniquePtr< ScrollBarcreate (System *system=nullptr)
 

Detailed Description

A graphical scroll bar.

Constructor & Destructor Documentation

◆ ScrollBar()

nkWinUi::ScrollBar::ScrollBar ( System system)
noexcept

Constructor.

Parameters
systemThe parent system in which the component will live.
Remarks
See ComponentManager::createOrRetrieve().

◆ ~ScrollBar()

virtual nkWinUi::ScrollBar::~ScrollBar ( )
virtual

Destructor.

Member Function Documentation

◆ getCurrentMin()

int nkWinUi::ScrollBar::getCurrentMin ( ) const
Returns
Currently set minimal value for the scrolling.

◆ getCurrentMax()

int nkWinUi::ScrollBar::getCurrentMax ( ) const
Returns
Currently set maximal value for the scrolling.

◆ setMin()

virtual void nkWinUi::ScrollBar::setMin ( int  value)
virtual

Sets the minimal scrolling value.

Parameters
valueThe minimal value to set.

◆ setMax()

virtual void nkWinUi::ScrollBar::setMax ( int  value)
virtual

Sets the maximal scrolling value.

Parameters
valueThe maximal value to set.

◆ setActiveRange()

virtual void nkWinUi::ScrollBar::setActiveRange ( int  value)
virtual

Sets the active range, within the minimal and maximal values possible. Will be clamped else. Expressed relative to the current position.

Parameters
valueThe range to set.

◆ setScrollCallback()

void nkWinUi::ScrollBar::setScrollCallback ( std::function< void(ScrollBar *)>  callback)

Sets the function to call each time scrolling occurs within the scroll bar.

Parameters
callbackThe callback to call when scrolling input occurs.
Remarks
The ScrollBar given as a parameter to the callback is the one for which scrolling occurs. Its state will be updated before calling, meaning that current min and max can be retrieved to get the new scrolling state.

◆ scrollToMin()

virtual void nkWinUi::ScrollBar::scrollToMin ( )
virtual

Scrolls to the minimal value.

◆ scrollToMax()

virtual void nkWinUi::ScrollBar::scrollToMax ( )
virtual

Scrolls to the maximal value, given active range and maximum.

◆ setScrollFactor()

virtual void nkWinUi::ScrollBar::setScrollFactor ( float  value)
pure virtual

Sets the scrolling factor.

Parameters
valueThe factor to use.

◆ moveCurrentMinTo()

virtual void nkWinUi::ScrollBar::moveCurrentMinTo ( int  value)
virtual

Moves the current scroll position.

Parameters
valueWhere to move it to.

◆ moveCurrentMaxTo()

virtual void nkWinUi::ScrollBar::moveCurrentMaxTo ( int  value)
virtual

Moves the current scroll position, taking into account the range with it.

Parameters
valueWhere to move it to.

◆ scroll()

virtual void nkWinUi::ScrollBar::scroll ( float  factor)
pure virtual

Scrolls by a factor. For instance, a factor given by a mouse wheel.

Parameters
factorThe factor to use for scrolling.

◆ create()

static nkMemory::UniquePtr<ScrollBar> nkWinUi::ScrollBar::create ( System system = nullptr)
static

Creates a standalone component, linking it to a system, but no manager. This method can be used to allocate a component and manually manage its lifetime.

Parameters
systemThe system to create the component into. If left to nullptr, then the Singleton instance will be used.
Returns
The created component instance.

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