, _visible_track_count (-1)
, toolbar_selection_clock_table (2,3)
, automation_mode_button (_("mode"))
- , selection (new Selection (this))
- , cut_buffer (new Selection (this))
+ , selection (new Selection (this, true))
+ , cut_buffer (new Selection (this, false))
, _selection_memento (new SelectionMemento())
, _all_region_actions_sensitized (false)
, _ignore_region_action (false)
}
};
-Selection::Selection (const PublicEditor* e)
+Selection::Selection (const PublicEditor* e, bool mls)
: tracks (e)
, editor (e)
, next_time_id (0)
+ , manage_libardour_selection (mls)
{
clear ();
void
Selection::clear_tracks (bool)
{
+ if (!manage_libardour_selection) {
+ return;
+ }
+
Session* s = editor->session();
if (s) {
CoreSelection& selection (s->selection());
/** only used when this class is used as a cut buffer */
MidiNoteSelection midi_notes;
- Selection (PublicEditor const * e);
+ Selection (PublicEditor const * e, bool manage_libardour_selection);
// Selection& operator= (const Selection& other);
private:
PublicEditor const * editor;
uint32_t next_time_id;
+ bool manage_libardour_selection;
TrackViewList add_grouped_tracks (TrackViewList const & t);
};