Lumiera
0.pre.03
»edit your freedom«
|
#include "stage/timeline/track-presenter.hpp"
A View-Model entity to represent a timeline track in the UI.
Definition at line 252 of file track-presenter.hpp.
Public Member Functions | |
TrackPresenter (ID id, ctrl::BusTerm &nexus, DisplayViewHooks &displayAnchor) | |
virtual void | buildMutator (lib::diff::TreeMutator::Handle) override |
set up a binding to respond to mutation messages via UiBus More... | |
Public Member Functions inherited from Tangible | |
virtual | ~Tangible () |
this is an interface | |
void | clearErr () |
invoke the hook to clear error markers More... | |
void | clearMsg () |
invoke the hook to clear notification messages More... | |
ID | getID () const |
void | installExpander (Expander::ProbeFun, Expander::ChangeFun) |
Configure the (optional) functionality to expand or collapse the UI-Element. More... | |
void | installRevealer (Revealer::RevealeItFun) |
Configure the (optional) functionality to bring the UI-Element into sight. More... | |
template<typename... ARGS> | |
void | invoke (Symbol cmdID, ARGS &&...) |
void | invoke (Symbol cmdID, Rec &&arguments) |
Perform a command or action, once the execution context has been established. More... | |
template<typename... ARGS> | |
void | invoke (Symbol cmdID, ARGS &&... args) |
convenience shortcut to issue a command with several arguments | |
void | mark (GenNode const &) |
generic handler for all incoming "state mark" messages | |
void | markErr (string error) |
push an error state tag to the element More... | |
void | markFlash () |
highlight the element visually to catch the user's attention More... | |
void | markMsg (string message) |
push a notification (or warning) message to the element. More... | |
operator LuidH () const | |
operator string () const | |
diagnostic representation. More... | |
void | reset () |
invoke the generic reset hook More... | |
void | slotCollapse () |
Collapse or minimise this element and remember the collapsed state. More... | |
void | slotExpand () |
Expand this element and remember the expanded state. More... | |
void | slotReveal () |
Cause the element to be brought into sight. More... | |
Public Member Functions inherited from DiffMutable | |
virtual | ~DiffMutable () |
this is an interface | |
Public Member Functions inherited from LayoutElement | |
virtual | ~LayoutElement () |
this is an interface | |
Protected Member Functions | |
void | completeLayout (DisplayEvaluation &) override |
handle Phase-2 (collect/balancing phase) for this track and its sub-tracks. More... | |
void | establishLayout (DisplayEvaluation &) override |
handle Phase-1 of the DisplayEvaluation pass for this track and its sub-tracks. More... | |
Protected Member Functions inherited from Controller | |
virtual void | doMark (GenNode const &mark) override |
default handler for all generic mark messages. More... | |
Protected Member Functions inherited from Tangible | |
Tangible (ID identity, ctrl::BusTerm &nexus) | |
virtual bool | doExpand (bool yes) |
generic default implementation of the expand/collapse functionality. More... | |
virtual void | doReveal () |
generic default implementation of the "reveal" functionality. More... | |
Private Member Functions | |
void | relinkContents () |
second pass of the DisplayEvaluation: reassemble content to match adjusted layout More... | |
void | setTrackName (string name) |
invoked via diff to show a (changed) track name | |
Private Attributes | |
vector< PClip > | clips_ |
DisplayFrame | display_ |
vector< PMark > | markers_ |
vector< PFork > | subFork_ |
Additional Inherited Members | |
Public Types inherited from Tangible | |
using | ID = ctrl::BusTerm::ID |
using | LuidH = lib::hash::LuidH |
Protected Types inherited from Tangible | |
using | GenNode = lib::diff::GenNode |
using | Rec = lib::diff::Rec |
Protected Attributes inherited from Tangible | |
Expander | expand_ |
Revealer | reveal_ |
ctrl::BusTerm | uiBus_ |
|
inline |
id | identity used to refer to a corresponding session::Fork |
nexus | a way to connect this Controller to the UI-Bus. |
anchorDisplay | a one-way closure to attach into the display fabric |
Definition at line 269 of file track-presenter.hpp.
|
inlineoverridevirtual |
set up a binding to respond to mutation messages via UiBus
Implements Tangible.
Definition at line 314 of file track-presenter.hpp.
References TreeMutator::build(), lib::diff::anonymous_namespace{tree-mutator-collection-binding.hpp}::collection(), PlantingHandle< BA, DEFAULT >::emplace(), DataCap::recordType(), and GenNode::retrieveAttribute().
|
inlineoverrideprotectedvirtual |
handle Phase-1 of the DisplayEvaluation pass for this track and its sub-tracks.
Implements LayoutElement.
Definition at line 365 of file track-presenter.hpp.
|
inlineoverrideprotectedvirtual |
handle Phase-2 (collect/balancing phase) for this track and its sub-tracks.
Implements LayoutElement.
Definition at line 375 of file track-presenter.hpp.
|
inlineprivate |
second pass of the DisplayEvaluation: reassemble content to match adjusted layout
Definition at line 413 of file track-presenter.hpp.