- ui_manager->insert_action_group (grp);
-}
-
-Widget*
-ActionManager::get_widget (ustring name)
-{
- return ui_manager->get_widget (name);
-}
-
-RefPtr<Action>
-ActionManager::get_action (ustring name)
-{
- // ListHandle<RefPtr<ActionGroup> > uim_groups = ui_manager->get_action_groups ();
- GList* list = gtk_ui_manager_get_action_groups (ui_manager->gobj());
- GList* node;
- RefPtr<Action> act;
-
- if (name.substr (0,9) != "<Actions>") {
- cerr << "badly specified action name" << endl;
- return act;
- }
-
- ustring::size_type last_slash = name.find_last_of ('/');
- ustring group_name = name.substr (10, last_slash - 10);
- cerr << "group name = " << group_name << endl;
- ustring action_name = name.substr (last_slash+1);
- cerr << "action name = " << action_name << endl;
-
- cerr << "there are " << g_list_length (list) << " action roups\n";
-
- for (node = list; node; node = g_list_next (node)) {
+ Glib::RefPtr<Action> act = ActionManager::get_action (group, action);
+ if (act) {
+ Glib::RefPtr<ToggleAction> tact = Glib::RefPtr<ToggleAction>::cast_dynamic(act);