/* Static functions */ static void gal_view_instance_save_as_dialog_set_instance (GalViewInstanceSaveAsDialog *dialog, GalViewInstance *instance) { GtkListStore *store; GtkCellRenderer *renderer; gint ii, view_count; dialog->instance = instance; store = gtk_list_store_new (2, G_TYPE_STRING, G_TYPE_POINTER); view_count = gal_view_collection_get_count (instance->collection); for (ii = 0; ii < view_count; ii++) { GalViewCollectionItem *item; GtkTreeIter iter; gchar *title = NULL; item = gal_view_collection_get_view_item ( instance->collection, ii); title = e_str_without_underscores (item->title); gtk_list_store_append (store, &iter); gtk_list_store_set ( store, &iter, COL_GALVIEW_NAME, title, COL_GALVIEW_DATA, item, -1); g_free (title); } gtk_tree_sortable_set_sort_column_id ( GTK_TREE_SORTABLE (store), COL_GALVIEW_NAME, GTK_SORT_ASCENDING); /* attaching treeview to model */ gtk_tree_view_set_model (dialog->treeview, GTK_TREE_MODEL (store)); gtk_tree_view_set_search_column (dialog->treeview, COL_GALVIEW_NAME); dialog->model = GTK_TREE_MODEL (store); renderer = gtk_cell_renderer_text_new (); gtk_tree_view_insert_column_with_attributes ( dialog->treeview, COL_GALVIEW_NAME, _("Name"), renderer, "text", COL_GALVIEW_NAME, NULL); /* set sort column */ gtk_tree_sortable_set_sort_column_id ( GTK_TREE_SORTABLE (dialog->model), COL_GALVIEW_NAME, GTK_SORT_ASCENDING); }
static void gal_define_views_dialog_set_collection(GalDefineViewsDialog *dialog, GalViewCollection *collection) { int i; GtkListStore *store; GtkCellRenderer *renderer; dialog->collection = collection; store = gtk_list_store_new (2, G_TYPE_STRING, G_TYPE_POINTER); for (i=0; i<collection->view_count; i++) { GalViewCollectionItem *item = collection->view_data[i]; GtkTreeIter iter; /* hide built in views */ /*if (item->built_in == 1) continue;*/ char *title = NULL; title = e_str_without_underscores (item->title); gtk_list_store_append (store, &iter); gtk_list_store_set (store, &iter, COL_GALVIEW_NAME, title, COL_GALVIEW_DATA, item, -1); g_free (title); } gtk_tree_sortable_set_sort_column_id (GTK_TREE_SORTABLE (store), COL_GALVIEW_NAME, GTK_SORT_ASCENDING); /* attaching treeview to model */ gtk_tree_view_set_model (dialog->treeview, GTK_TREE_MODEL (store)); gtk_tree_view_set_search_column (dialog->treeview, COL_GALVIEW_NAME); dialog->model = GTK_TREE_MODEL (store); renderer = gtk_cell_renderer_text_new (); gtk_tree_view_insert_column_with_attributes (dialog->treeview, COL_GALVIEW_NAME, _("Name"), renderer, "text", COL_GALVIEW_NAME, NULL); /* set sort column */ gtk_tree_sortable_set_sort_column_id (GTK_TREE_SORTABLE (dialog->model), COL_GALVIEW_NAME, GTK_SORT_ASCENDING); if (dialog->gui) { GtkWidget *widget = glade_xml_get_widget(dialog->gui, "label-views"); if (widget && GTK_IS_LABEL (widget)) { if (collection->title) { char *text = g_strdup_printf (_("Define Views for %s"), collection->title); gtk_label_set_text (GTK_LABEL (widget), text); gtk_window_set_title (GTK_WINDOW (dialog), text); g_free (text); } else { gtk_label_set_text (GTK_LABEL (widget), _("Define Views")); gtk_window_set_title (GTK_WINDOW (dialog), _("Define Views")); } } } }