diff options
Diffstat (limited to 'gtk2_ardour/ardour_ui.cc')
-rw-r--r-- | gtk2_ardour/ardour_ui.cc | 27 |
1 files changed, 3 insertions, 24 deletions
diff --git a/gtk2_ardour/ardour_ui.cc b/gtk2_ardour/ardour_ui.cc index 49424c78b6..f3483769d8 100644 --- a/gtk2_ardour/ardour_ui.cc +++ b/gtk2_ardour/ardour_ui.cc @@ -4875,31 +4875,10 @@ void ARDOUR_UI::toggle_auto_return_state (AutoReturnTarget t) { AutoReturnTarget art = Config->get_auto_return_target_list (); - CheckMenuItem* check_menu_item = 0; - - switch (t) { - case LastLocate: - check_menu_item = auto_return_last_locate; - break; - case Loop: - check_menu_item = auto_return_loop; - break; - case RangeSelectionStart: - check_menu_item = auto_return_range_selection; - break; - case RegionSelectionStart: - check_menu_item = auto_return_region_selection; - break; - } - - if (!check_menu_item) { - return; - } - - if (check_menu_item->get_active()) { - Config->set_auto_return_target_list (AutoReturnTarget (art | t)); - } else { + if (art & t) { Config->set_auto_return_target_list (AutoReturnTarget (art & ~t)); + } else { + Config->set_auto_return_target_list (AutoReturnTarget (art | t)); } } |