move mode/scale/key definitions out of push2 code and into libardour; Aeolian is...
[ardour.git] / libs / surfaces / push2 / push2.h
index 56229fc8efafa1ebc19c348ac69e3c1378826637..2d4f17417ef5f0f96b4ac8a8d40494121d00d487 100644 (file)
@@ -32,6 +32,7 @@
 
 #include "midi++/types.h"
 
+#include "ardour/mode.h"
 #include "ardour/types.h"
 
 #include "control_protocol/control_protocol.h"
@@ -40,7 +41,6 @@
 #include "canvas/colors.h"
 
 #include "midi_byte_array.h"
-#include "mode.h"
 
 namespace Pango {
        class Layout;
@@ -329,6 +329,8 @@ class Push2 : public ARDOUR::ControlProtocol
        int pad_note (int row, int col) const;
        PBD::Signal0<void> PadChange;
 
+       void update_selection_color ();
+
        void set_pad_scale (int root, int octave, MusicalMode::Type mode, bool inkey);
        PBD::Signal0<void> ScaleChange;
 
@@ -469,6 +471,9 @@ class Push2 : public ARDOUR::ControlProtocol
        void button_fwd4 ();
        void button_add_track ();
        void button_stop ();
+       void button_master ();
+       void button_quantize ();
+       void button_duplicate ();
        void button_shift_press ();
        void button_shift_release ();
        void button_shift_long_press ();
@@ -593,6 +598,7 @@ class Push2 : public ARDOUR::ControlProtocol
        void request_pressure_mode ();
 
        uint8_t selection_color;
+       uint8_t contrast_color;
 };
 
 } /* namespace */