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

A panel over the content that slides in from the side fixed at creation; it follows a dialog's rules. A new drawer is closed. More...

#include <backend.hpp>

Inheritance diagram for morph::ui::DrawerWidget:
morph::ui::ContainerWidget morph::ui::Widget morph::ui::testing::detail::FakeLeaf< DrawerWidget > morph::ui::testing::detail::FakeContainer< DrawerWidget > morph::ui::testing::detail::FakeOverlay< DrawerWidget > morph::ui::testing::detail::FakeDrawer

Public Member Functions

virtual void setOpen (bool open)=0
 Shows or hides it. Never calls the onDismiss handler.
virtual void setTitle (std::string_view title)=0
 Replaces the title.
virtual void setOnDismiss (Action onDismiss)=0
 Sets what a user dismissal (Esc on the TUI) calls.
virtual ContainerWidget & footer ()=0
 The drawer's footer: a container it lays out after its content, which shows nothing while it is empty. The mount puts the drawer's actions here.
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 panel over the content that slides in from the side fixed at creation; it follows a dialog's rules. A new drawer is closed.

Definition at line 699 of file backend.hpp.

Member Function Documentation

◆ setOpen()

virtual void morph::ui::DrawerWidget::setOpen ( bool open)
pure virtual

Shows or hides it. Never calls the onDismiss handler.

Parameters
openWhether it is shown.

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

◆ setTitle()

virtual void morph::ui::DrawerWidget::setTitle ( std::string_view title)
pure virtual

Replaces the title.

Parameters
titleThe title, UTF-8.

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

◆ setOnDismiss()

virtual void morph::ui::DrawerWidget::setOnDismiss ( Action onDismiss)
pure virtual

Sets what a user dismissal (Esc on the TUI) calls.

Parameters
onDismissThe handler; empty does nothing.

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

◆ footer()

virtual ContainerWidget & morph::ui::DrawerWidget::footer ( )
pure virtual

The drawer's footer: a container it lays out after its content, which shows nothing while it is empty. The mount puts the drawer's actions here.

Returns
It, owned by the drawer and valid as long as the drawer.

Implemented in morph::ui::testing::detail::FakeOverlay< DrawerWidget >.


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