Lumiera 0.pre.04
»edit your freedom«
Loading...
Searching...
No Matches
timeline-gui.hpp
Go to the documentation of this file.
1/*
2 TIMELINE-GUI.hpp - top-level anchor point and placeholder for "the timeline"
3
4 Copyright (C)
5 2018, Hermann Vosseler <Ichthyostega@web.de>
6
7  **Lumiera** is free software; you can redistribute it and/or modify it
8  under the terms of the GNU General Public License as published by the
9  Free Software Foundation; either version 2 of the License, or (at your
10  option) any later version. See the file COPYING for further details.
11
12*/
13
14
43#ifndef STAGE_TIMELINE_TIMELINE_GUI_H
44#define STAGE_TIMELINE_TIMELINE_GUI_H
45
49#include "lib/nocopy.hpp"
50
51#include <memory>
52
53
54namespace stage {
55namespace timeline {
56
57 class TimelinePage;
58 class TimelineWidget;
59 using ctrl::BusTerm;
60
67 : public model::WLink<TimelineWidget>
70 {
71 using ID = BusTerm::ID;
72
75
76 public:
77 TimelineGui (ID identity, ID trackID);
78 virtual ~TimelineGui();
79
80 TimelineGui (TimelineGui const&);
82
83 ID getID() const { return timelineID_; }
84
85
88 std::unique_ptr<TimelinePage> buildTimelineWidget (BusTerm&);
89
91 void buildMutator (lib::diff::TreeMutator::Handle buffer) override;
92
93 };
94
95
96}}// namespace stage::timeline
97#endif /*STAGE_TIMELINE_TIMELINE_GUI_H*/
Attachment point to the UI-Bus.
A handle to allow for safe »remote implantation« of an unknown subclass into a given opaque InPlaceBu...
Marker or capability interface: an otherwise not further disclosed data structure,...
connection point at the UI-Bus.
Definition bus-term.hpp:98
EntryID const & ID
Definition bus-term.hpp:107
smart-Handle as anchor point for "the UI representation" of a timeline.
void buildMutator(lib::diff::TreeMutator::Handle buffer) override
forwarding implementation of the DiffMutable interface, delegating through the referred TimelineWidge...
std::unique_ptr< TimelinePage > buildTimelineWidget(BusTerm &)
actually build a TimelineWidget to enact the role represented by this smart-handle
Types marked with this mix-in may be duplicated by copy-construction, yet may not be moved or transfe...
Definition nocopy.hpp:96
Abstraction or descriptor interface for a data structure exposing the ability for mutation by receivi...
Lumiera GTK UI implementation root.
Definition guifacade.cpp:37
Mix-Ins to allow or prohibit various degrees of copying and cloning.