diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2009-08-10 19:29:29 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2009-08-10 19:29:29 +0000 |
commit | 0bf3eb77591afc4aa8d0d6b5efa72273f02b109e (patch) | |
tree | ca49bb8ef0ef1ffd6df3adaa3c835b35cf6f2f16 /gtk2_ardour/midi_region_view.h | |
parent | 7f9aea14e926a58f86ffdc788e4873dcf41a6d2c (diff) |
first part of MIDI cut/copy/paste ; fix for input/output_streams of an IOProcessor being reported in a misleading way; in/out translation fix from 2.X, sort of
git-svn-id: svn://localhost/ardour2/branches/3.0@5510 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/midi_region_view.h')
-rw-r--r-- | gtk2_ardour/midi_region_view.h | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/gtk2_ardour/midi_region_view.h b/gtk2_ardour/midi_region_view.h index 3df4001ab4..01d5a305cb 100644 --- a/gtk2_ardour/midi_region_view.h +++ b/gtk2_ardour/midi_region_view.h @@ -30,6 +30,7 @@ #include "ardour/diskstream.h" #include "ardour/types.h" +#include "editing.h" #include "region_view.h" #include "midi_time_axis.h" #include "time_axis_view_item.h" @@ -97,6 +98,8 @@ class MidiRegionView : public RegionView void add_note(const boost::shared_ptr<NoteType> note); void resolve_note(uint8_t note_num, double end_time); + + void cut_copy_clear (Editing::CutCopyOp); struct PCEvent { PCEvent(double a_time, uint8_t a_value, uint8_t a_channel) @@ -171,7 +174,7 @@ class MidiRegionView : public RegionView void note_deselected(ArdourCanvas::CanvasNoteEvent* ev, bool add); void delete_selection(); size_t selection_size() { return _selection.size(); } - + void move_selection(double dx, double dy); void note_dropped(ArdourCanvas::CanvasNoteEvent* ev, double d_pixels, uint8_t d_note); @@ -297,6 +300,9 @@ class MidiRegionView : public RegionView void clear_selection() { clear_selection_except(NULL); } void update_drag_selection(double last_x, double x, double last_y, double y); + void add_to_selection (ArdourCanvas::CanvasNoteEvent*); + void remove_from_selection (ArdourCanvas::CanvasNoteEvent*); + int8_t _force_channel; uint16_t _last_channel_selection; double _default_note_length; @@ -327,6 +333,9 @@ class MidiRegionView : public RegionView typedef std::set<ArdourCanvas::CanvasNoteEvent*> Selection; /// Currently selected CanvasNoteEvents Selection _selection; + /// the cut buffer for this region view + typedef std::list<NoteType> CutBuffer; + CutBuffer _cut_buffer; /** New notes (created in the current command) which should be selected * when they appear after the command is applied. */ |