diff --git a/src/gui/timeline/body-canvas-widget.cpp b/src/gui/timeline/body-canvas-widget.cpp index 52d4e8383..ddbf5f2df 100644 --- a/src/gui/timeline/body-canvas-widget.cpp +++ b/src/gui/timeline/body-canvas-widget.cpp @@ -57,17 +57,25 @@ namespace timeline { + BodyCanvasWidget::~BodyCanvasWidget() { } BodyCanvasWidget::BodyCanvasWidget () + : Gtk::ScrolledWindow{} + , canvas_{} { + this->set_shadow_type(Gtk::SHADOW_IN); + this->set_policy (Gtk::POLICY_ALWAYS, Gtk::POLICY_AUTOMATIC); // always need a horizontal scrollbar + this->property_expand() = true; // dynamically grab any available additional space + this->add(canvas_); + +// canvas_.adjustSize(); + + // show everything.... + this->show_all(); } - BodyCanvasWidget::~BodyCanvasWidget() - { - } - diff --git a/src/gui/timeline/body-canvas-widget.hpp b/src/gui/timeline/body-canvas-widget.hpp index faf4ca6d4..a979e3060 100644 --- a/src/gui/timeline/body-canvas-widget.hpp +++ b/src/gui/timeline/body-canvas-widget.hpp @@ -70,17 +70,27 @@ namespace gui { namespace timeline { + class TimelineCanvas + : public Gtk::Layout + { + + }; + + /** * @todo WIP-WIP as of 12/2016 */ class BodyCanvasWidget + : public Gtk::ScrolledWindow { + TimelineCanvas canvas_; + public: BodyCanvasWidget(); ~BodyCanvasWidget(); - + private:/* ===== Internals ===== */ - + }; diff --git a/src/gui/timeline/header-pane-widget.cpp b/src/gui/timeline/header-pane-widget.cpp index 6590e3e4e..c16aec2ec 100644 --- a/src/gui/timeline/header-pane-widget.cpp +++ b/src/gui/timeline/header-pane-widget.cpp @@ -58,16 +58,15 @@ namespace timeline { + HeaderPaneWidget::~HeaderPaneWidget() { } + HeaderPaneWidget::HeaderPaneWidget () + : Gtk::Box{Gtk::ORIENTATION_VERTICAL} { } - HeaderPaneWidget::~HeaderPaneWidget() - { - } - diff --git a/src/gui/timeline/header-pane-widget.hpp b/src/gui/timeline/header-pane-widget.hpp index ef4bf8a29..a9feeaf16 100644 --- a/src/gui/timeline/header-pane-widget.hpp +++ b/src/gui/timeline/header-pane-widget.hpp @@ -60,6 +60,7 @@ namespace timeline { * @todo WIP-WIP as of 12/2016 */ class HeaderPaneWidget + : public Gtk::Box { public: HeaderPaneWidget(); diff --git a/src/gui/timeline/timeline-layout.cpp b/src/gui/timeline/timeline-layout.cpp index a57284a1b..b2c527eec 100644 --- a/src/gui/timeline/timeline-layout.cpp +++ b/src/gui/timeline/timeline-layout.cpp @@ -61,10 +61,13 @@ namespace timeline { TimelineLayout::~TimelineLayout() { } - TimelineLayout::TimelineLayout () - : headerPane_{} + TimelineLayout::TimelineLayout (Gtk::Paned& topLevelContainer) + : paneSplitPosition_{topLevelContainer.property_position()} + , headerPane_{} , bodyCanvas_{} { + topLevelContainer.add1 (headerPane_); + topLevelContainer.add2 (bodyCanvas_); } diff --git a/src/gui/timeline/timeline-layout.hpp b/src/gui/timeline/timeline-layout.hpp index b7b714f60..892958014 100644 --- a/src/gui/timeline/timeline-layout.hpp +++ b/src/gui/timeline/timeline-layout.hpp @@ -105,14 +105,17 @@ namespace timeline { */ class TimelineLayout { + Glib::PropertyProxy paneSplitPosition_; + HeaderPaneWidget headerPane_; BodyCanvasWidget bodyCanvas_; + public: - TimelineLayout (); + TimelineLayout (Gtk::Paned&); ~TimelineLayout(); - void installRootTrack(TrackHeadWidget&,TrackBody&); + void installRootTrack (TrackHeadWidget&,TrackBody&); private:/* ===== Internals ===== */ diff --git a/src/gui/timeline/timeline-widget.cpp b/src/gui/timeline/timeline-widget.cpp index be1d6f0fe..1c8b62dd1 100644 --- a/src/gui/timeline/timeline-widget.cpp +++ b/src/gui/timeline/timeline-widget.cpp @@ -69,7 +69,7 @@ namespace timeline { TimelineWidget::TimelineWidget (BusTerm::ID identity, BusTerm::ID trackID, BusTerm& nexus) : TimelinePage{} - , layout_{new TimelineLayout} + , layout_{new TimelineLayout{*this}} , control_{new TimelineController{identity, trackID, nexus, *layout_}} { UNIMPLEMENTED ("build the timeline UI"); diff --git a/wiki/thinkPad.ichthyo.mm b/wiki/thinkPad.ichthyo.mm index bd89a5fbd..88d3146d4 100644 --- a/wiki/thinkPad.ichthyo.mm +++ b/wiki/thinkPad.ichthyo.mm @@ -19058,9 +19058,17 @@ + + + + + + + + @@ -35671,6 +35679,34 @@ + + + + + + + + + + + + + + + +

+ ...wie bekommt man dann den konvertierten Wert 'raus. +

+

+ Visitor ist entweder void, oder bool +

+ + +
+
+
+
+