Move object+range button up with the rest of the tool buttons (bringing edit toolbar...
[ardour.git] / gtk2_ardour / midi_region_view.h
index 22c2b845fd550684c7cbe1d67fe51fa6eb387905..77e046d9cd9f23d4eaad1727240646cdfb3651d2 100644 (file)
@@ -24,6 +24,9 @@
 
 #include <libgnomecanvasmm.h>
 #include <libgnomecanvasmm/polygon.h>
+
+#include "pbd/signals.h"
+
 #include "ardour/midi_track.h"
 #include "ardour/midi_region.h"
 #include "ardour/midi_model.h"
@@ -60,6 +63,7 @@ class GhostRegion;
 class AutomationTimeAxisView;
 class AutomationRegionView;
 class MidiCutBuffer;
+class MidiListEditor;
 
 class MidiRegionView : public RegionView
 {
@@ -194,6 +198,9 @@ class MidiRegionView : public RegionView
        void move_selection(double dx, double dy);
        void note_dropped(ArdourCanvas::CanvasNoteEvent* ev, double d_pixels, int8_t d_note);
 
+       void select_matching_notes (uint8_t notenum, uint16_t channel_mask, bool add, bool extend);
+       void toggle_matching_notes (uint8_t notenum, uint16_t channel_mask);
+
        /** Return true iff the note is within the extent of the region.
         * @param visible will be set to true if the note is within the visible note range, false otherwise.
         */
@@ -386,7 +393,7 @@ class MidiRegionView : public RegionView
        std::vector<NoteResizeData *> _resize_data;
 
        /* connection used to connect to model's ContentChanged signal */
-       sigc::connection content_connection;
+       PBD::ScopedConnection content_connection;
 
        ArdourCanvas::CanvasNoteEvent* find_canvas_note (boost::shared_ptr<NoteType>);
        Events::iterator _optimization_iterator;
@@ -394,6 +401,8 @@ class MidiRegionView : public RegionView
        void update_note (ArdourCanvas::CanvasNote*);
        void update_hit (ArdourCanvas::CanvasHit*);
 
+       MidiListEditor* _list_editor;
+       bool no_sound_notes;
 };