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 shell_status_menu_init (ShellStatusMenu *status) { ShellStatusMenuPrivate *priv; status->priv = priv = G_TYPE_INSTANCE_GET_PRIVATE (status, SHELL_TYPE_STATUS_MENU, ShellStatusMenuPrivate); g_object_set (G_OBJECT (status), "orientation", BIG_BOX_ORIENTATION_HORIZONTAL, NULL); priv->client = gconf_client_get_default (); priv->user_icon = CLUTTER_TEXTURE (clutter_texture_new ()); big_box_append (BIG_BOX (status), CLUTTER_ACTOR (status->priv->user_icon), 0); priv->name_box = BIG_BOX (big_box_new (BIG_BOX_ORIENTATION_VERTICAL)); g_object_set (G_OBJECT (priv->name_box), "y-align", BIG_BOX_ALIGNMENT_CENTER, NULL); big_box_append (BIG_BOX (status), CLUTTER_ACTOR (priv->name_box), BIG_BOX_PACK_EXPAND); priv->name = CLUTTER_TEXT (clutter_text_new ()); big_box_append (BIG_BOX (priv->name_box), CLUTTER_ACTOR (priv->name), BIG_BOX_PACK_EXPAND); priv->manager = gdm_user_manager_ref_default (); setup_current_user (status); create_sub_menu (status); }
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); }