Lumiera  0.pre.03
»edit your freedom«
patchbay-widget.cpp
Go to the documentation of this file.
1 /*
2  PatchbayWidget - display of the patchbay to control track placement parameters
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 
33 #include "stage/gtk-base.hpp"
34 #include "stage/style-scheme.hpp"
37 //#include "stage/ui-bus.hpp"
38 //#include "lib/format-string.hpp"
39 //#include "lib/format-cout.hpp"
40 
41 //#include "lib/util.hpp"
42 
43 //#include <algorithm>
44 //#include <vector>
45 
46 
47 
48 //using util::_Fmt;
49 //using util::contains;
50 using Gtk::Adjustment;
51 //using Gtk::Widget;
52 //using sigc::mem_fun;
53 //using sigc::ptr_fun;
54 //using std::cout;
55 //using std::endl;
56 
57 
58 namespace stage {
59 namespace timeline {
60 
61 
62 
63 
64 
65  PatchbayWidget::~PatchbayWidget() { }
66 
67 
82  PatchbayWidget::PatchbayWidget (PAdjustment const& vScroll)
83  : Gtk::ScrolledWindow{Gtk::Adjustment::create (0,0,0,0,0,0), vScroll}
84  {
85  get_style_context()->add_class (CLASS_timeline_pbay);
86  set_shadow_type (Gtk::SHADOW_NONE);
87  set_policy (Gtk::POLICY_NEVER, Gtk::POLICY_EXTERNAL); // horizontal extension is fixed, using the track body vertical scrollbar
88  property_expand() = true; // dynamically grab additional space
89  }
90 
91 
92  void
94  {
95  this->add (rootTrackHead);
96  }
97 
98  void
99  PatchbayWidget::disable()
100  {
101  this->remove();
102  }
103 
104 
105 
106 }}// namespace stage::timeline
Header pane control area corresponding to a Track with nested child Tracks.
Widget to hold the track head controls within the timeline header pane UI.
PatchbayWidget(PAdjustment const &vScroll)
Set up the patchbay area of the timeline UI.
Widget to represent a track head with placement parameters, within the timeline header pane...
Lumiera GTK UI implementation root.
Definition: guifacade.cpp:46
Definition of access keys for uniform UI styling.
A set of basic GTK includes for the UI.
void installFork(TrackHeadWidget &rootTrackHead)