Lumiera  0.pre.03
TimelineWidget Class Reference

#include "gui/timeline/timeline-widget.hpp"


Core timeline display (custom widget).

Top level entry point to the timeline display component.

WIP-WIP-rewrite as of 12/2016
At top level, this widget is split into a header pane (left) and a scrollable timeline body (right). The layout of both parts is aligned.

Definition at line 88 of file timeline/timeline-widget.hpp.

Public Member Functions

 TimelineWidget (BusTerm::ID identity, BusTerm::ID trackID, BusTerm &nexus)
 build a new timeline display and attach it to the UI-Bus. More...
 ~TimelineWidget ()

Private Attributes

std::unique_ptr< TimelineControllercontrol_
std::unique_ptr< LayoutManagerlayout_

Constructor & Destructor Documentation

◆ TimelineWidget()

TimelineWidget ( BusTerm::ID  identity,
BusTerm::ID  trackID,
BusTerm nexus 

build a new timeline display and attach it to the UI-Bus.

identityused to refer to a corresponding element in the Session
trackIDthe mandatory root track used in the associated Sequence
nexussome established connection to the UI-Bus, will be used to register the embedded TimelineController as communication partner to respond under the given ID.
after creation, the widget can just be hooked up and wired like any ordinary GTK element; it becomes passive and just responds to signals. The active role is played by the controller, which also responds to mutation messages; this is the only way to populate the timeline display. Likewise, a timeline shall be deleted by sending an respective mutation message to its parent element, the one that created it, typically also in response to a message. Non the less it is possible just to delete a TimelineWidget, since it is a Gtk::Widget, and the controller is also sigc::trackable and additionally, as a gui::model::Tangible, it will deregister automatically from the UI-Bus. After that, any further messages towards this element will be dropped silently.

Definition at line 68 of file timeline/timeline-widget.cpp.

References TimelineWidget::control_, and TimelineWidget::layout_.

◆ ~TimelineWidget()

Definition at line 77 of file timeline/timeline-widget.cpp.

Member Data Documentation

◆ control_

std::unique_ptr<TimelineController> control_

Definition at line 91 of file timeline/timeline-widget.hpp.

Referenced by TimelineWidget::TimelineWidget().

◆ layout_

std::unique_ptr<LayoutManager> layout_

Definition at line 92 of file timeline/timeline-widget.hpp.

Referenced by TimelineWidget::TimelineWidget().

+ Inheritance diagram for TimelineWidget:
+ Collaboration diagram for TimelineWidget:

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