diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2009-09-10 20:41:08 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2009-09-10 20:41:08 +0000 |
commit | 7b8adc78b6082efb2c46822ddb5d8347a4e20e9e (patch) | |
tree | 38a620d5515211d20b103c912c80f93ca83b5646 /gtk2_ardour/midi_region_view.h | |
parent | 5f319d0a08a4950f4cb8ee1bdc39f35bfce088bc (diff) |
more MIDI editing cleanups, mostly fixing subtleties. Will break loading the history file for older sessions with MIDI editing present - we warned you :)
git-svn-id: svn://localhost/ardour2/branches/3.0@5651 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/midi_region_view.h')
-rw-r--r-- | gtk2_ardour/midi_region_view.h | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/gtk2_ardour/midi_region_view.h b/gtk2_ardour/midi_region_view.h index 63c6a481de..6d05e2b8bf 100644 --- a/gtk2_ardour/midi_region_view.h +++ b/gtk2_ardour/midi_region_view.h @@ -187,7 +187,7 @@ class MidiRegionView : public RegionView void note_left(ArdourCanvas::CanvasNoteEvent* ev); void unique_select(ArdourCanvas::CanvasNoteEvent* ev); void note_selected(ArdourCanvas::CanvasNoteEvent* ev, bool add, bool extend=false); - void note_deselected(ArdourCanvas::CanvasNoteEvent* ev, bool add); + void note_deselected(ArdourCanvas::CanvasNoteEvent* ev); void delete_selection(); size_t selection_size() { return _selection.size(); } @@ -348,7 +348,7 @@ class MidiRegionView : public RegionView /// MIDNAM information of the current track: CustomDeviceMode std::string _custom_device_mode; - typedef std::vector<ArdourCanvas::CanvasNoteEvent*> Events; + typedef std::list<ArdourCanvas::CanvasNoteEvent*> Events; typedef std::vector< boost::shared_ptr<ArdourCanvas::CanvasProgramChange> > PgmChanges; typedef std::vector< boost::shared_ptr<ArdourCanvas::CanvasSysEx> > SysExes; @@ -368,6 +368,9 @@ class MidiRegionView : public RegionView /// Currently selected CanvasNoteEvents Selection _selection; + bool _sort_needed; + void time_sort_events (); + MidiCutBuffer* selection_as_cut_buffer () const; /** New notes (created in the current command) which should be selected @@ -384,6 +387,8 @@ class MidiRegionView : public RegionView sigc::connection content_connection; ArdourCanvas::CanvasNoteEvent* find_canvas_note (boost::shared_ptr<NoteType>); + Events::iterator _optimization_iterator; + void update_note (ArdourCanvas::CanvasNote*); void update_hit (ArdourCanvas::CanvasHit*); |