summaryrefslogtreecommitdiff
path: root/gtk2_ardour/editor_selection.cc
diff options
context:
space:
mode:
authornick_m <mainsbridge@gmail.com>2017-02-01 22:58:48 +1100
committernick_m <mainsbridge@gmail.com>2017-02-04 22:57:36 +1100
commit1cfa6bd69fc83420db228cfcc23970f798edf78b (patch)
tree548a2d5ab5aa446ba6c4dd95bcd937707ee2d088 /gtk2_ardour/editor_selection.cc
parentf336f4e6d1f36cce50f4892a0ece24af8d87c13c (diff)
more messing about with inconsistent menu state.
Diffstat (limited to 'gtk2_ardour/editor_selection.cc')
-rw-r--r--gtk2_ardour/editor_selection.cc16
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);
}
}