X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fmidi_selection.h;h=6ee26e4487c549cf118a669019fe9b9b7122674d;hb=95df99e6d4cf6d1f8d71183299d31835e6708eb8;hp=de99392127d795e26c8a009ed12a163ee709a734;hpb=bb9cc45cd22af67ac275a5e73accbe14fee664d8;p=ardour.git diff --git a/gtk2_ardour/midi_selection.h b/gtk2_ardour/midi_selection.h index de99392127..6ee26e4487 100644 --- a/gtk2_ardour/midi_selection.h +++ b/gtk2_ardour/midi_selection.h @@ -20,12 +20,33 @@ #ifndef __ardour_gtk_midi_selection_h__ #define __ardour_gtk_midi_selection_h__ -#include +#include "region_selection.h" class MidiRegionView; class MidiCutBuffer; - -struct MidiRegionSelection : std::list {}; -struct MidiNoteSelection : std::list {}; +class RegionView; + +class MidiRegionSelection : public RegionSelection +{ +public: + MidiRegionSelection (); + MidiRegionSelection (const MidiRegionSelection&); + + MidiRegionSelection& operator= (const MidiRegionSelection&); +}; + +struct MidiNoteSelection : std::list { +public: + const_iterator + get_nth(size_t nth) const { + size_t count = 0; + for (const_iterator m = begin(); m != end(); ++m) { + if (count++ == nth) { + return m; + } + } + return end(); + } +}; #endif /* __ardour_gtk_midi_selection_h__ */