diff options
author | David Robillard <d@drobilla.net> | 2014-11-14 20:04:09 -0500 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2014-11-14 20:04:19 -0500 |
commit | 31acd96384b930de928aa8c7969336ba3401bbed (patch) | |
tree | 69137126cf3738fb242a7ff1d3875927c82f7541 /gtk2_ardour/public_editor.h | |
parent | b01d1813f88e303bae724d5bc6f51de0c2fb4e1b (diff) |
Implement "multi-paste" for notes, regions, and automation.
The idea here is that pasting several times to the same location doesn't make
sense. Instead, the paste is appended past the last paste, snapped to the
grid. This make it simple to replicate a given section a number of times,
simply by copying once and pasting several times.
This behaviour only appears when successive pastes are done to the same
location (whatever the edit point is). When the paste point changes, the
"multi-paste" state is reset.
Boots 'n cats 'n boots 'n cats.
Diffstat (limited to 'gtk2_ardour/public_editor.h')
-rw-r--r-- | gtk2_ardour/public_editor.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gtk2_ardour/public_editor.h b/gtk2_ardour/public_editor.h index bd861ab085..4bf03bc72f 100644 --- a/gtk2_ardour/public_editor.h +++ b/gtk2_ardour/public_editor.h @@ -299,6 +299,7 @@ class PublicEditor : public Gtk::Window, public PBD::StatefulDestructible, publi virtual void foreach_time_axis_view (sigc::slot<void,TimeAxisView&>) = 0; virtual void add_to_idle_resize (TimeAxisView*, int32_t) = 0; virtual framecnt_t get_nudge_distance (framepos_t pos, framecnt_t& next) = 0; + virtual framecnt_t get_paste_offset (framepos_t pos, unsigned paste_count, framecnt_t duration) = 0; virtual Evoral::MusicalTime get_grid_type_as_beats (bool& success, framepos_t position) = 0; virtual void edit_notes (TimeAxisViewItem&) = 0; |