|
morph 0.1.0
Asynchronous bridge between GUI thread and business models
|
The Widget half of every fake: records itself on construction, records Common's setters, and records its destruction. More...
#include <recording_backend.hpp>
Public Member Functions | |
| 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. | |
Protected Member Functions | |
| 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. | |
The Widget half of every fake: records itself on construction, records Common's setters, and records its destruction.
| Interface | The widget interface the fake implements. |
Definition at line 710 of file recording_backend.hpp.
|
inline |
Records the new widget, appended to parent, and logs its creation.
| store | Where the widget records itself. |
| kind | The kind shown in the log and the dump. |
| parent | The container it is appended to, or null for a root. |
| initial | Properties fixed at creation. |
Definition at line 717 of file recording_backend.hpp.
|
inlineoverride |
Forgets the widget and logs its destruction; its remaining children become roots.
Definition at line 722 of file recording_backend.hpp.
|
inlineoverride |
Records property visible.
| visible | Whether it is shown. |
Definition at line 737 of file recording_backend.hpp.
|
inlineoverride |
Records property enabled.
| enabled | Whether it accepts input. |
Definition at line 741 of file recording_backend.hpp.
|
inlineoverride |
Records property layout, as formatLayout gives it.
| hints | The request in both dimensions. |
Definition at line 745 of file recording_backend.hpp.
|
inlineoverride |
Records property dragKey and keeps the key for RecordingBackend::drag.
| key | Engaged: the key a drop delivers. nullopt: not draggable. |
Definition at line 749 of file recording_backend.hpp.
|
inlineoverride |
Records property drop=handler and keeps both handlers for RecordingBackend::drag.
| accepts | Whether a dragged key may be dropped here. |
| onDrop | Called with the key on a drop that accepts allowed. |
Definition at line 757 of file recording_backend.hpp.
|
inlineoverride |
Records property a11yName.
| name | The accessible name. |
Definition at line 766 of file recording_backend.hpp.
|
inlineoverride |
Records property a11yRole.
| role | The role. |
Definition at line 770 of file recording_backend.hpp.
|
inlineoverride |
Records property testId.
| testId | The identifier. |
Definition at line 774 of file recording_backend.hpp.
|
inlineoverride |
Records property tooltip.
| text | The tooltip. |
Definition at line 778 of file recording_backend.hpp.
|
inlineoverride |
Records property surface.
| surface | The surface's name. |
Definition at line 782 of file recording_backend.hpp.
|
inlineoverride |
Records property keys, the chords joined by commas, and keeps the chords and the handler for RecordingBackend::press.
| chords | The chords. |
| onChord | Called with the chord that was pressed. |
Definition at line 788 of file recording_backend.hpp.
|
inlineoverride |
Moves the backend's recorded focus here, and logs focus.
Definition at line 801 of file recording_backend.hpp.
|
inlineoverride |
Keeps the handler for RecordingBackend::hover.
| onHover | The handler. |
Definition at line 805 of file recording_backend.hpp.
|
inlineprotected |
Records a property set through a setter.
| name | The property. |
| value | Its formatted value. |
Definition at line 811 of file recording_backend.hpp.
|
inlinenodiscardprotected |
This widget's handlers.
Definition at line 815 of file recording_backend.hpp.
|
inlinenodiscardprotectednoexcept |
The store this widget records into.
Definition at line 819 of file recording_backend.hpp.
|
inlinenodiscardprotectednoexcept |
The store, shared: what a part this widget makes (an overlay's footer) records into.
Definition at line 823 of file recording_backend.hpp.
|
inlinenodiscardprotectednoexcept |