/** * \internal */ static void validate_parse_link_click_callback(GtkTextView * text_view, GtkTextTag * link_tag, const gchar * url, struct validate *validate) { GtkTreeIter menu_iter; gint validate_case; validate_case = GPOINTER_TO_INT(g_object_get_data(G_OBJECT(link_tag), "validate_case")); if (!menu_get_selected(&menu_iter, FALSE) || !gebr_gui_gtk_tree_model_iter_equal_to(GTK_TREE_MODEL(debr.ui_menu.model), &menu_iter, &validate->menu_iter)) menu_select_iter(&validate->menu_iter); gchar *program_path = g_object_get_data(G_OBJECT(link_tag), "program_path_string"); gchar *parameter_path = g_object_get_data(G_OBJECT(link_tag), "parameter_path_string"); gboolean ret = FALSE; if (program_path != NULL) { menu_select_program_and_paramater(program_path, parameter_path); if (parameter_path != NULL) ret = on_parameter_properties_activate(); else if (validate_case == GEBR_VALIDATE_CASE_HELP) debr_help_edit(GEBR_GEOXML_OBJECT(debr.program)); else ret = on_program_properties_activate(); } else if (validate_case == GEBR_VALIDATE_CASE_HELP) debr_help_edit(GEBR_GEOXML_OBJECT(debr.menu)); else ret = on_menu_properties_activate(); if (ret) validate_menu(&validate->menu_iter); }
EAPI ui_view *ui_menu_get_view(ui_menu *menu) { if (!validate_menu(menu)) return NULL; return dynamic_cast<ui_view *>(menu->getView()); }
EAPI int ui_menu_get_degree(ui_menu *menu) { if (!validate_menu(menu)) return -1; return menu->getDegree(); }
EAPI Evas_Object *ui_menu_get_base(ui_menu *menu) { if (!validate_menu(menu)) return NULL; return menu->getBase(); }
EAPI bool ui_menu_get_activated(ui_menu *menu) { if (!validate_menu(menu)) return false; return menu->isActivated(); }
EAPI bool ui_menu_deactivate(ui_menu *menu) { if (!validate_menu(menu)) return false; return menu->deactivate(); }
EAPI Elm_Ctxpopup *ui_menu_unset_content(ui_menu *menu) { if (!validate_menu(menu)) return NULL; return menu->unsetContent(); }
EAPI bool ui_menu_set_content(ui_menu *menu, Elm_Ctxpopup *ctxpopup) { if (!validate_menu(menu)) return false; return menu->setContent(ctxpopup); }