morph 0.1.0
Asynchronous bridge between GUI thread and business models
Loading...
Searching...
No Matches
morph::ui::TabsWidget Class Referenceabstract

A tab bar over page slots. More...

#include <backend.hpp>

Inheritance diagram for morph::ui::TabsWidget:
morph::ui::ContainerWidget morph::ui::Widget morph::ui::testing::detail::FakeLeaf< TabsWidget > morph::ui::testing::detail::FakeContainer< TabsWidget > morph::ui::testing::detail::FakeTabs

Public Member Functions

virtual void setTabs (std::vector< std::string > const &labels)=0
 Replaces the tab captions.
virtual void setSelected (std::size_t index)=0
 Highlights a tab. Never calls the onSelect handler.
virtual void setOnSelect (std::function< void(std::size_t)> onSelect)=0
 Sets what a user's tab choice calls, with its index.
virtual void setBarShown (bool shown)=0
 Shows or hides the strip of tab buttons. The selected page shows either way. A new tabs widget shows its strip.
Public Member Functions inherited from morph::ui::ContainerWidget
virtual void moveChild (Widget &child, std::size_t index)=0
 Moves child to position index: it is removed, then inserted before the child now at index.
Public Member Functions inherited from morph::ui::Widget
 Widget (Widget const &)=delete
Widget & operator= (Widget const &)=delete
 Widget (Widget &&)=delete
Widget & operator= (Widget &&)=delete
virtual void setVisible (bool visible)=0
 Shows or hides the widget and everything inside it.
virtual void setEnabled (bool enabled)=0
 Enables or disables input on the widget and everything inside it.
virtual void setLayout (LayoutHints const &hints)=0
 Sets the size request.
virtual void setDragKey (std::optional< Key > const &key)=0
 Makes the widget draggable, carrying key, or not draggable.
virtual void setDropHandler (std::function< bool(Key const &)> accepts, std::function< void(Key)> onDrop)=0
 Makes the widget a drop target.
virtual void setAccessibleName (std::string_view name)=0
 Sets the name assistive technology reads for the widget.
virtual void setAccessibleRole (std::string_view role)=0
 Sets the role assistive technology announces for the widget.
virtual void setTestId (std::string_view testId)=0
 Sets the stable identifier an automated test finds the widget by.
virtual void setTooltip (std::string_view text)=0
 Sets the text shown while the pointer rests on the widget.
virtual void setSurface (std::string_view surface)=0
 Styles the widget and everything inside it with a named token set of the theme.
virtual void setKeys (std::vector< std::string > const &chords, std::function< void(std::string)> onChord)=0
 Declares the keyboard chords the widget handles while focus is inside it.
virtual void focus ()=0
 Moves keyboard focus to the widget.
virtual void setOnHover (std::function< void()> onHover)
 Calls onHover each time the pointer comes to rest over the widget. A backend without a pointer, or one that does not report hovering, keeps the default, which never calls it: hovering is a hint, such as a prefetch, never something a widget relies on.

Detailed Description

A tab bar over page slots.

Its children are page slots in the order they were first shown; the mount keeps exactly the selected page's slot visible. setSelected moves the bar's highlight only.

Definition at line 391 of file backend.hpp.

Member Function Documentation

◆ setTabs()

virtual void morph::ui::TabsWidget::setTabs ( std::vector< std::string > const & labels)
pure virtual

Replaces the tab captions.

Parameters
labelsOne caption per tab, in order.

Implemented in morph::ui::testing::detail::FakeTabs.

◆ setSelected()

virtual void morph::ui::TabsWidget::setSelected ( std::size_t index)
pure virtual

Highlights a tab. Never calls the onSelect handler.

Parameters
indexThe tab; past the last one highlights none.

Implemented in morph::ui::testing::detail::FakeTabs.

◆ setOnSelect()

virtual void morph::ui::TabsWidget::setOnSelect ( std::function< void(std::size_t)> onSelect)
pure virtual

Sets what a user's tab choice calls, with its index.

Parameters
onSelectThe handler; empty does nothing.

Implemented in morph::ui::testing::detail::FakeTabs.

◆ setBarShown()

virtual void morph::ui::TabsWidget::setBarShown ( bool shown)
pure virtual

Shows or hides the strip of tab buttons. The selected page shows either way. A new tabs widget shows its strip.

Parameters
shownWhether the strip is drawn.

Implemented in morph::ui::testing::detail::FakeTabs.


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