Lumiera 0.pre.04
»edit your freedom«
Loading...
Searching...
No Matches
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 58 of file marker-widget.hpp.

Public Member Functions

 MarkerWidget (ID identity, ctrl::BusTerm &nexus)
 
 ~MarkerWidget ()
 
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.
 
- Public Member Functions inherited from Widget
 Tangible (ID identity, ctrl::BusTerm &nexus)
 
- Public Member Functions inherited from Tangible
virtual ~Tangible ()
 this is an interface
 
 operator string () const
 diagnostic representation.
 
 operator LuidH () const
 
ID getID () const
 
void reset ()
 invoke the generic reset hook
 
void clearMsg ()
 invoke the hook to clear notification messages
 
void clearErr ()
 invoke the hook to clear error markers
 
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.
 
void slotExpand ()
 Expand this element and remember the expanded state.
 
void slotCollapse ()
 Collapse or minimise this element and remember the collapsed state.
 
void slotReveal ()
 Cause the element to be brought into sight.
 
void markFlash ()
 highlight the element visually to catch the user's attention
 
void markMsg (string message)
 push a notification (or warning) message to the element.
 
void markErr (string error)
 push an error state tag to the element
 
void mark (GenNode const &)
 generic handler for all incoming "state mark" messages
 
void installExpander (Expander::ProbeFun, Expander::ChangeFun)
 Configure the (optional) functionality to expand or collapse the UI-Element.
 
void installRevealer (Revealer::RevealeItFun)
 Configure the (optional) functionality to bring the UI-Element into sight.
 
template<typename... ARGS>
void invoke (Symbol cmdID, ARGS &&... args)
 convenience shortcut to issue a command with several arguments
 
- 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.
 
 ElementBoxWidget (Config)
 
 ~ElementBoxWidget ()
 
void setName (cuString &)
 
cuString getName () const
 
void set_label (cuString &s)
 redirect Gtk::Frame setters to ElementBoxWidget
 
cuString get_label () const
 

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 Rec = lib::diff::Rec
 
using GenNode = lib::diff::GenNode
 
- 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.
 
virtual void doReveal ()
 generic default implementation of the "reveal" functionality.
 
- Protected Attributes inherited from Tangible
ctrl::BusTerm uiBus_
 
Expander expand_
 
Revealer reveal_
 

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 56 of file marker-widget.cpp.

◆ ~MarkerWidget()

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

Member Function Documentation

◆ buildMutator()

void buildMutator ( lib::diff::TreeMutator::Handle  buffer)
overridevirtual

set up a binding to respond to mutation messages via UiBus

Implements Tangible.

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

References stage::ATTR_name, TreeMutator::build(), PlantingHandle< BA, DEFAULT >::emplace(), MarkerWidget::kind_, stage::timeline::LOOP, stage::timeline::MARK, stage::META_kind, and MarkerWidget::name_.

+ Here is the call graph for this function:

◆ 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 97 of file marker-widget.cpp.

Member Data Documentation

◆ kind_

MarkerKind kind_
private

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

Referenced by MarkerWidget::buildMutator().

◆ name_

string name_
private

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

Referenced by MarkerWidget::buildMutator().

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

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