diff options
author | Ben Loftis <ben@harrisonconsoles.com> | 2019-02-12 10:29:03 -0600 |
---|---|---|
committer | Ben Loftis <ben@harrisonconsoles.com> | 2019-02-12 11:35:39 -0600 |
commit | 22deebb42fa32e618ddfb9fbdaa93449a57b1717 (patch) | |
tree | bf065434fce64d46801a46853249fec733034f6e /gtk2_ardour/rc_option_editor.cc | |
parent | 37d28c63db9d10e50fc34bbedea016e3949227b1 (diff) |
Selection-after-split behavior (gtk2 part)
* When splitting in MouseObject, entered_region should get priority over selected regions.
This fixes the unexpected case where you try to split an unselected a region, but
a) nothing happens OR
b) some other region (maybe off-screen) is split
* Range mode now has its own option for splits, which can be:
Clear: the selection is cleared.
Preserve: the selection is left as-is. (default)
Force: all the regions that resulted from the split are selected (forcing a tool change).
* Un-hid the additional config options to select only the regions BEFORE or AFTER a split.
* Note: splits made with Cut Tool should be unaffected by these changes.
Diffstat (limited to 'gtk2_ardour/rc_option_editor.cc')
-rw-r--r-- | gtk2_ardour/rc_option_editor.cc | 25 |
1 files changed, 19 insertions, 6 deletions
diff --git a/gtk2_ardour/rc_option_editor.cc b/gtk2_ardour/rc_option_editor.cc index c57d192468..dfed91eecd 100644 --- a/gtk2_ardour/rc_option_editor.cc +++ b/gtk2_ardour/rc_option_editor.cc @@ -2460,21 +2460,34 @@ RCOptionEditor::RCOptionEditor () lm->add (Manual, _("manual layering")); add_option (_("Editor"), lm); + add_option (_("Editor"), new OptionEditorHeading (_("Split/Separate"))); + + ComboOption<RangeSelectionAfterSplit> *rras = new ComboOption<RangeSelectionAfterSplit> ( + "range-selection-after-separate", + _("After a Separate operation, in Range mode"), + sigc::mem_fun (*_rc_config, &RCConfiguration::get_range_selection_after_split), + sigc::mem_fun (*_rc_config, &RCConfiguration::set_range_selection_after_split)); + + rras->add(ClearSel, _("Clear the Range Selection")); + rras->add(PreserveSel, _("Preserve the Range Selection")); + rras->add(ForceSel, _("Force-Select the regions under the range. (this might cause a tool change)")); + add_option (_("Editor"), rras); + ComboOption<RegionSelectionAfterSplit> *rsas = new ComboOption<RegionSelectionAfterSplit> ( "region-selection-after-split", - _("After splitting selected regions, select"), + _("After a Split operation, in Object mode"), sigc::mem_fun (*_rc_config, &RCConfiguration::get_region_selection_after_split), sigc::mem_fun (*_rc_config, &RCConfiguration::set_region_selection_after_split)); // TODO: decide which of these modes are really useful - rsas->add(None, _("no regions")); - // rsas->add(NewlyCreatedLeft, _("newly-created regions before the split")); - // rsas->add(NewlyCreatedRight, _("newly-created regions after the split")); - rsas->add(NewlyCreatedBoth, _("newly-created regions")); + rsas->add(None, _("Clear the Selected Regions")); + rsas->add(NewlyCreatedLeft, _("Select only the newly-created regions BEFORE the split point")); + rsas->add(NewlyCreatedRight, _("Select only the newly-created regions AFTER the split point")); + rsas->add(NewlyCreatedBoth, _("Select the newly-created regions")); // rsas->add(Existing, _("unmodified regions in the existing selection")); // rsas->add(ExistingNewlyCreatedLeft, _("existing selection and newly-created regions before the split")); // rsas->add(ExistingNewlyCreatedRight, _("existing selection and newly-created regions after the split")); - rsas->add(ExistingNewlyCreatedBoth, _("existing selection and newly-created regions")); + rsas->add(ExistingNewlyCreatedBoth, _("Preserve the existing selection, AND select all newly-created regions")); add_option (_("Editor"), rsas); |