Ardour  9.2-610-g299affacf4
push2/gui.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2016 Paul Davis <paul@linuxaudiosystems.com>
3  *
4  * This program is free software; you can redistribute it and/or modify
5  * it under the terms of the GNU General Public License as published by
6  * the Free Software Foundation; either version 2 of the License, or
7  * (at your option) any later version.
8  *
9  * This program is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  * GNU General Public License for more details.
13  *
14  * You should have received a copy of the GNU General Public License along
15  * with this program; if not, write to the Free Software Foundation, Inc.,
16  * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
17  */
18 
19 #ifndef __ardour_push2_gui_h__
20 #define __ardour_push2_gui_h__
21 
22 #include <vector>
23 #include <string>
24 
25 #include <ytkmm/box.h>
26 #include <ytkmm/button.h>
27 #include <ytkmm/combobox.h>
28 #include <ytkmm/image.h>
29 #include <ytkmm/table.h>
30 #include <ytkmm/treestore.h>
31 #include <ytkmm/spinbutton.h>
32 #include <ytkmm/notebook.h>
33 
34 namespace Gtk {
35  class ListStore;
36 }
37 
38 #include "push2.h"
39 
40 namespace ArdourSurface {
41 
42 class P2GUI : public Gtk::VBox
43 {
44 public:
46  ~P2GUI ();
47 
48 private:
56 
59 
61 
64  add (short_name);
65  add (full_name);
66  }
69  };
70 
73 
74  Glib::RefPtr<Gtk::ListStore> build_midi_port_list (std::vector<std::string> const & ports, bool for_input);
75 
76  void active_port_changed (Gtk::ComboBox*,bool for_input);
77 
80  add (mode);
81  add (name);
82  }
85  };
86 
88  Glib::RefPtr<Gtk::ListStore> build_pressure_mode_columns ();
91 
93 };
94 
95 }
96 
97 #endif /* __ardour_push2_gui_h__ */
PBD::ScopedConnectionList _port_connections
Definition: push2/gui.h:60
void reprogram_pressure_mode()
PressureModeColumns _pressure_mode_columns
Definition: push2/gui.h:87
Gtk::Table _action_table
Definition: push2/gui.h:52
Gtk::Table _table
Definition: push2/gui.h:51
Gtk::ComboBox _output_combo
Definition: push2/gui.h:54
Gtk::ComboBox _pressure_mode_selector
Definition: push2/gui.h:89
Gtk::HBox _hpacker
Definition: push2/gui.h:50
void active_port_changed(Gtk::ComboBox *, bool for_input)
Glib::RefPtr< Gtk::ListStore > build_pressure_mode_columns()
MidiPortColumns _midi_port_columns
Definition: push2/gui.h:71
Glib::RefPtr< Gtk::ListStore > build_midi_port_list(std::vector< std::string > const &ports, bool for_input)
Gtk::Image _image
Definition: push2/gui.h:55
Gtk::Label _pressure_mode_label
Definition: push2/gui.h:90
Gtk::ComboBox _input_combo
Definition: push2/gui.h:53
bool _ignore_active_change
Definition: push2/gui.h:72
void add(TreeModelColumnBase &column)
Definition: ardour_ui.h:182
Gtk::TreeModelColumn< std::string > full_name
Definition: push2/gui.h:68
Gtk::TreeModelColumn< std::string > short_name
Definition: push2/gui.h:67
Gtk::TreeModelColumn< std::string > name
Definition: push2/gui.h:84
Gtk::TreeModelColumn< Push2::PressureMode > mode
Definition: push2/gui.h:83