70 #ifndef STAGE_TIMELINE_TIMELINE_LAYOUT_H 71 #define STAGE_TIMELINE_TIMELINE_LAYOUT_H 91 class TrackHeadWidget;
106 Glib::PropertyProxy<int> paneSplitPosition_;
121 Gtk::WidgetPath getBodyWidgetPath()
const;
148 void rehook (
TrackBody&) noexcept
override;
void establishLayout(DisplayEvaluation &) override
TimelineLayout also participates itself in the DisplayEvaluation, notably to set up the basic paramet...
Top-level anchor point for the timeline display (widgets).
Widget to render the body of timeline display, by custom drawing into a canvas control.
Mix-In to implement the DisplayMetric interface on top of a ZoomWindow component, directly embedded h...
Interface to represent _"some presentation layout entity",_ with the ability to attach widgets (manag...
void setupStructure(LayoutElement &)
Allow widgets to connect to a common shared presentation context.
Lumiera's internal time value datatype.
void triggerDisplayEvaluation() override
Perform a complete recursive pass over all elements relevant for layout, reestablish size allocation ...
A collaboration to establish a globally coherent timeline display layout.
void sizeZoomWindow(Gtk::Allocation &)
Signal receiver (slot) to react on changes of the window screen space allocation. ...
Visitor and state holder for a collaborative layout adjustment pass.
Abstraction: service for the widgets to translate themselves into screen layout.
Specialised (abstracted) presentation context with positioning by coordinates.
Lumiera GTK UI implementation root.
void syncZoomWindow(PAdjustment)
Signal receiver (slot) to react on scrollbar changes.
void installRootTrack(TrackHeadWidget &, TrackBody &)
This function is invoked once for each new TimelineWidget, in order to build the starting point for t...
Implementation building block to get the DisplayMetric as defined through a ZoomWindow.
Helper to organise and draw the space allocated for a fork of sub-tracks.
Presentation of the timeline workspace by custom drawing on a canvas.
a family of time value like entities and their relationships.
A set of basic GTK includes for the UI.