diff options
author | nick_m <mainsbridge@gmail.com> | 2017-02-01 22:58:48 +1100 |
---|---|---|
committer | nick_m <mainsbridge@gmail.com> | 2017-02-04 22:57:36 +1100 |
commit | 1cfa6bd69fc83420db228cfcc23970f798edf78b (patch) | |
tree | 548a2d5ab5aa446ba6c4dd95bcd937707ee2d088 /gtk2_ardour/editor_selection.cc | |
parent | f336f4e6d1f36cce50f4892a0ece24af8d87c13c (diff) |
more messing about with inconsistent menu state.
Diffstat (limited to 'gtk2_ardour/editor_selection.cc')
-rw-r--r-- | gtk2_ardour/editor_selection.cc | 16 |
1 files changed, 5 insertions, 11 deletions
diff --git a/gtk2_ardour/editor_selection.cc b/gtk2_ardour/editor_selection.cc index 56cedd5fa0..b8c4438be8 100644 --- a/gtk2_ardour/editor_selection.cc +++ b/gtk2_ardour/editor_selection.cc @@ -1301,19 +1301,13 @@ Editor::sensitize_the_right_region_actions () } a = Glib::RefPtr<ToggleAction>::cast_dynamic (_region_actions->get_action("toggle-region-lock-style")); - - CheckMenuItem* cm = dynamic_cast<CheckMenuItem*> ( - ActionManager::get_widget (X_("/Main/RegionMenu/RegionMenuPosition/toggle-region-lock-style"))); - - if (cm) { - cm->set_inconsistent (false); - } - a->set_active (have_position_lock_style_music && !have_position_lock_style_audio); - if (have_position_lock_style_music && have_position_lock_style_audio) { - if (cm) { - cm->set_inconsistent (true); + vector<Widget*> proxies = a->get_proxies(); + for (vector<Widget*>::iterator p = proxies.begin(); p != proxies.end(); ++p) { + CheckMenuItem* cmi = dynamic_cast<CheckMenuItem*> (*p); + if (cmi) { + cmi->set_inconsistent (have_position_lock_style_music && have_position_lock_style_audio); } } |