Lumiera  0.pre.03
»edit your freedom«
MarkerWidget Class Reference

#include "stage/timeline/marker-widget.hpp"

Description

Todo:

WIP-WIP as of 12/2016

9/2022 baseclass sigc::trackable is ambiguous, we inherit it from two chains (diamond of death)

Definition at line 67 of file marker-widget.hpp.

Public Member Functions

 MarkerWidget (ID identity, ctrl::BusTerm &nexus)
 
virtual void buildMutator (lib::diff::TreeMutator::Handle) override
 set up a binding to respond to mutation messages via UiBus
 
void relink ()
 update and re-attach the presentation widget into its presentation context. 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 ElementBoxWidget
template<class... QS>
 ElementBoxWidget (Kind kind, Type type, QS ...qualifiers)
 setup an ElementBoxWidget with suitable presentation style. More...
 
 ElementBoxWidget (Config)
 
cuString get_label () const
 
cuString getName () const
 
void set_label (cuString &s)
 redirect Gtk::Frame setters to ElementBoxWidget
 
void setName (cuString &)
 

Private Attributes

MarkerKind kind_
 
string name_
 

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 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...
 
- Protected Attributes inherited from Tangible
Expander expand_
 
Revealer reveal_
 
ctrl::BusTerm uiBus_
 

Constructor & Destructor Documentation

◆ MarkerWidget()

MarkerWidget ( ID  identity,
ctrl::BusTerm nexus 
)
Parameters
identityused to refer to a corresponding marker entity in the Session
nexusa way to connect this Controller to the UI-Bus.

Definition at line 65 of file marker-widget.cpp.

References ElementBoxWidget::ElementBoxWidget(), stage::widget::LABEL, and stage::widget::MARK.

+ Here is the call graph for this function:

Member Function Documentation

◆ relink()

void relink ( )

update and re-attach the presentation widget into its presentation context.

Will be called during the "re-link phase" of DisplayEvaluation, after the timeline layout has been (re)established globally. Often, this incurs attaching the presentation widget (ClipDelegate) at a different actual position onto the drawing canvas, be it due to a zoom change, or as result of layout re-flow.

Definition at line 106 of file marker-widget.cpp.

+ Inheritance diagram for MarkerWidget:
+ Collaboration diagram for MarkerWidget:

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