morph 0.1.0
Asynchronous bridge between GUI thread and business models
Loading...
Searching...
No Matches
morph::ui::testing::detail::FakeContainer< Interface > Class Template Reference

The ContainerWidget half of every fake container. More...

#include <recording_backend.hpp>

Inheritance diagram for morph::ui::testing::detail::FakeContainer< Interface >:
morph::ui::testing::detail::FakeLeaf< Interface > morph::ui::testing::detail::FakeOverlay< Interface >

Public Member Functions

void moveChild (Widget &child, std::size_t index) override
 Moves a child among its siblings and logs it.
Public Member Functions inherited from morph::ui::testing::detail::FakeLeaf< Interface >
 FakeLeaf (std::shared_ptr< RecordStore > store, std::string kind, ContainerWidget const *parent, PropList initial={})
 Records the new widget, appended to parent, and logs its creation.
 ~FakeLeaf () override
 Forgets the widget and logs its destruction; its remaining children become roots.
 FakeLeaf (FakeLeaf const &)=delete
FakeLeaf & operator= (FakeLeaf const &)=delete
 FakeLeaf (FakeLeaf &&)=delete
FakeLeaf & operator= (FakeLeaf &&)=delete
void setVisible (bool visible) override
 Records property visible.
void setEnabled (bool enabled) override
 Records property enabled.
void setLayout (LayoutHints const &hints) override
 Records property layout, as formatLayout gives it.
void setDragKey (std::optional< Key > const &key) override
 Records property dragKey and keeps the key for RecordingBackend::drag.
void setDropHandler (std::function< bool(Key const &)> accepts, std::function< void(Key)> onDrop) override
 Records property drop=handler and keeps both handlers for RecordingBackend::drag.
void setAccessibleName (std::string_view name) override
 Records property a11yName.
void setAccessibleRole (std::string_view role) override
 Records property a11yRole.
void setTestId (std::string_view testId) override
 Records property testId.
void setTooltip (std::string_view text) override
 Records property tooltip.
void setSurface (std::string_view surface) override
 Records property surface.
void setKeys (std::vector< std::string > const &chords, std::function< void(std::string)> onChord) override
 Records property keys, the chords joined by commas, and keeps the chords and the handler for RecordingBackend::press.
void focus () override
 Moves the backend's recorded focus here, and logs focus.
void setOnHover (std::function< void()> onHover) override
 Keeps the handler for RecordingBackend::hover.

Additional Inherited Members

Protected Member Functions inherited from morph::ui::testing::detail::FakeLeaf< Interface >
void set (std::string_view name, std::string value)
 Records a property set through a setter.
Callbacks & callbacks ()
 This widget's handlers.
RecordStore & store () const noexcept
 The store this widget records into.
std::shared_ptr< RecordStore > const & sharedStore () const noexcept
 The store, shared: what a part this widget makes (an overlay's footer) records into.
int id () const noexcept
 This widget's id.

Detailed Description

template<typename Interface>
class morph::ui::testing::detail::FakeContainer< Interface >

The ContainerWidget half of every fake container.

Template Parameters
InterfaceThe container interface the fake implements.

Definition at line 837 of file recording_backend.hpp.

Member Function Documentation

◆ moveChild()

template<typename Interface>
void morph::ui::testing::detail::FakeContainer< Interface >::moveChild ( Widget & child,
std::size_t index )
inlineoverride

Moves a child among its siblings and logs it.

Parameters
childOne of this container's children.
indexThe new position; past the end means last.
Exceptions
std::logic_errorwhen child is not this container's child.

Definition at line 845 of file recording_backend.hpp.


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