Lumiera  0.pre.03
»edit your freedom«
timeline-widget-empty.hpp
Go to the documentation of this file.
1 /*
2  TIMELINE-WIDGET-EMPTY.hpp - placeholder widget for a missing timeline
3 
4  Copyright (C) Lumiera.org
5  2016, Hermann Vosseler <Ichthyostega@web.de>
6 
7  This program is free software; you can redistribute it and/or
8  modify it under the terms of the GNU General Public License as
9  published by the Free Software Foundation; either version 2 of
10  the License, or (at your option) any later version.
11 
12  This program is distributed in the hope that it will be useful,
13  but WITHOUT ANY WARRANTY; without even the implied warranty of
14  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  GNU General Public License for more details.
16 
17  You should have received a copy of the GNU General Public License
18  along with this program; if not, write to the Free Software
19  Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
20 
21 */
22 
23 
36 #ifndef STAGE_TIMELINE_TIMELINE_WIDGET_EMPTY_H
37 #define STAGE_TIMELINE_TIMELINE_WIDGET_EMPTY_H
38 
39 #include "stage/gtk-base.hpp"
41 
42 
43 namespace stage {
44 namespace timeline {
45 
46 
54  : public TimelinePage
55  {
56 
57  Gtk::Frame frame_;
58  Gtk::Box content_;
59  Gtk::Label messageText_;
60  Gtk::Label quoteText_;
61 
62  Gtk::Image image_;
63 
64  cuString
65  getLabel() const override
66  {
67  return _("[virgin]");
68  }
69 
70  public:
72  : TimelinePage{}
73  , content_{Gtk::ORIENTATION_VERTICAL}
74  , image_{Gtk::StockID{"track_enabled"}, Gtk::ICON_SIZE_LARGE_TOOLBAR}
75  {
76  messageText_.set_markup("To be or not to be that is the question...");
77  messageText_.set_max_width_chars(80);
78  messageText_.set_line_wrap();
79  messageText_.set_halign(Gtk::ALIGN_FILL);
80  messageText_.set_valign(Gtk::ALIGN_FILL);
81  quoteText_.set_markup ("<i>-- the great actor Joseph Tura</i>");
82  quoteText_.set_halign(Gtk::ALIGN_END);
83  quoteText_.set_valign(Gtk::ALIGN_START);
84  content_.pack_start (messageText_, Gtk::PACK_SHRINK);
85  content_.pack_start (quoteText_, Gtk::PACK_EXPAND_PADDING);
86  frame_.add(content_);
87  frame_.set_border_width(5);
88  frame_.set_halign(Gtk::ALIGN_END);
89  frame_.set_valign(Gtk::ALIGN_START);
90 
91  Gtk::Paned::add1 (image_);
92  Gtk::Paned::add2 (frame_);
93  }
94  };
95 
96 
97 }}// namespace stage::timeline
98 #endif /*STAGE_TIMELINE_TIMELINE_WIDGET_EMPTY_H*/
Interface: GUI page holding a timeline display.
Placeholder to show when no actual Timeline is present.
Lumiera GTK UI implementation root.
Definition: guifacade.cpp:46
A set of basic GTK includes for the UI.
This file defines the core component of the Lumiera GUI.