summaryrefslogtreecommitdiff
path: root/libs/surfaces/push2/gui.h
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2016-07-07 09:26:06 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2016-09-27 14:59:30 -0500
commitd19c9885ff0473ea39a0dc061ee697226fc3e654 (patch)
tree5268650784be55b53b57346a288fed4373305086 /libs/surfaces/push2/gui.h
parentafef816a7bc90e46b5f1788c305591d22858ce6e (diff)
push2: start of pad layout editing
Diffstat (limited to 'libs/surfaces/push2/gui.h')
-rw-r--r--libs/surfaces/push2/gui.h34
1 files changed, 34 insertions, 0 deletions
diff --git a/libs/surfaces/push2/gui.h b/libs/surfaces/push2/gui.h
index 314e8081c6..2ec6281a52 100644
--- a/libs/surfaces/push2/gui.h
+++ b/libs/surfaces/push2/gui.h
@@ -28,6 +28,7 @@
#include <gtkmm/image.h>
#include <gtkmm/table.h>
#include <gtkmm/treestore.h>
+#include <gtkmm/notebook.h>
namespace Gtk {
class CellRendererCombo;
@@ -35,6 +36,7 @@ namespace Gtk {
}
#include "push2.h"
+#include "mode.h"
namespace ArdourSurface {
@@ -94,6 +96,38 @@ private:
/* Pads */
Gtk::Table pad_table;
+
+ /* root notes */
+
+ struct NoteColumns : public Gtk::TreeModel::ColumnRecord {
+ NoteColumns () {
+ add (number);
+ add (name);
+ }
+ Gtk::TreeModelColumn<int> number;
+ Gtk::TreeModelColumn<std::string> name;
+ };
+ NoteColumns note_columns;
+ Glib::RefPtr<Gtk::ListStore> build_note_columns ();
+ Gtk::ComboBox root_note_selector;
+
+ /* modes/scales */
+
+ struct ModeColumns : public Gtk::TreeModel::ColumnRecord {
+ ModeColumns () {
+ add (mode);
+ add (name);
+ }
+ Gtk::TreeModelColumn<MusicalMode::Type> mode;
+ Gtk::TreeModelColumn<std::string> name;
+ };
+ ModeColumns mode_columns;
+ Glib::RefPtr<Gtk::ListStore> build_mode_columns ();
+ Gtk::ComboBox mode_selector;
+
+ Gtk::Notebook pad_notebook;
+ Gtk::VBox mode_packer;
+ Gtk::VBox custom_packer;
};
}