static void create_set_filetype_menu(gboolean config) { GtkWidget *group_menus[GEANY_FILETYPE_GROUP_COUNT] = {NULL}; GSList *node; GtkWidget *menu; menu = config ? ui_widgets.config_files_filetype_menu : ui_lookup_widget(main_widgets.window, "set_filetype1_menu"); group_menus[GEANY_FILETYPE_GROUP_COMPILED] = create_sub_menu(menu, _("_Programming Languages")); group_menus[GEANY_FILETYPE_GROUP_SCRIPT] = create_sub_menu(menu, _("_Scripting Languages")); group_menus[GEANY_FILETYPE_GROUP_MARKUP] = create_sub_menu(menu, _("_Markup Languages")); group_menus[GEANY_FILETYPE_GROUP_MISC] = create_sub_menu(menu, _("M_iscellaneous")); /* Append all filetypes to the menu */ foreach_slist(node, filetypes_by_title) { GeanyFiletype *ft = node->data; GtkWidget *parent = (ft->group != GEANY_FILETYPE_GROUP_NONE) ? group_menus[ft->group] : menu; /* we already have filetypes.common config entry */ if (config && ft->id == GEANY_FILETYPES_NONE) continue; if (config) { gchar *filename = filetypes_get_filename(ft, TRUE); ui_add_config_file_menu_item(filename, NULL, GTK_CONTAINER(parent)); g_free(filename); } else create_radio_menu_item(parent, ft); }
static void create_set_filetype_menu(void) { GSList *node; GtkWidget *filetype_menu = ui_lookup_widget(main_widgets.window, "set_filetype1_menu"); create_sub_menu(filetype_menu, GEANY_FILETYPE_GROUP_COMPILED, _("_Programming Languages")); create_sub_menu(filetype_menu, GEANY_FILETYPE_GROUP_SCRIPT, _("_Scripting Languages")); create_sub_menu(filetype_menu, GEANY_FILETYPE_GROUP_MARKUP, _("_Markup Languages")); create_sub_menu(filetype_menu, GEANY_FILETYPE_GROUP_MISC, _("M_iscellaneous")); /* Append all filetypes to the filetype menu */ foreach_slist(node, filetypes_by_title) { GeanyFiletype *ft = node->data; if (ft->group != GEANY_FILETYPE_GROUP_NONE) create_radio_menu_item(group_menus[ft->group], ft); else create_radio_menu_item(filetype_menu, ft); }
static void create_set_filetype_menu(void) { GSList *node; GtkWidget *filetype_menu = ui_lookup_widget(main_widgets.window, "set_filetype1_menu"); /* Append all filetypes to the filetype menu */ foreach_slist(node, filetypes_by_title) { GeanyFiletype *ft = node->data; create_radio_menu_item(filetype_menu, ft); }