static void file_view_init (AnjutaFileView *object) { GtkCellRenderer* renderer_pixbuf; GtkCellRenderer* renderer_display; GtkTreeViewColumn* column; GtkTreeSelection* selection; GtkTreeModel* sort_model; AnjutaFileViewPrivate* priv = ANJUTA_FILE_VIEW_GET_PRIVATE (object); priv->current_selection = NULL; priv->model = file_model_new (GTK_TREE_VIEW(object), NULL); g_signal_connect_object (priv->model, "directory-expanded", G_CALLBACK (file_view_directory_expanded), object, 0); sort_model = gtk_tree_model_sort_new_with_model(GTK_TREE_MODEL(priv->model)); gtk_tree_view_set_model (GTK_TREE_VIEW(object), sort_model); /* set_model takes a reference so we can release the reference we got when * the sort_model was created. */ g_object_unref (sort_model); gtk_tree_sortable_set_default_sort_func (GTK_TREE_SORTABLE(sort_model), file_view_sort_model, NULL, NULL); renderer_pixbuf = gtk_cell_renderer_pixbuf_new (); renderer_display = gtk_cell_renderer_text_new (); column = gtk_tree_view_column_new (); gtk_tree_view_column_set_title (column, _("Filename")); gtk_tree_view_column_pack_start (column, renderer_pixbuf, FALSE); gtk_tree_view_column_pack_start (column, renderer_display, FALSE); gtk_tree_view_column_set_cell_data_func(column, renderer_pixbuf, file_view_render_pixbuf_with_emblem, object, NULL); gtk_tree_view_column_set_attributes (column, renderer_display, "markup", COLUMN_DISPLAY, NULL); gtk_tree_view_append_column (GTK_TREE_VIEW (object), column); selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (object)); g_signal_connect (selection, "changed", G_CALLBACK (file_view_selection_changed), object); /* DND */ gtk_tree_view_enable_model_drag_source (GTK_TREE_VIEW(object), GDK_BUTTON1_MASK, uri_targets, 1, GDK_ACTION_MOVE); /* Typeahead search */ gtk_tree_view_set_search_column (GTK_TREE_VIEW (object), COLUMN_FILENAME); }
static void file_view_init (AnjutaFileView *object) { GtkCellRenderer* renderer_pixbuf; GtkCellRenderer* renderer_display; GtkTreeViewColumn* column; GtkTreeSelection* selection; GtkTreeModel* sort_model; AnjutaFileViewPrivate* priv = ANJUTA_FILE_VIEW_GET_PRIVATE (object); priv->current_selection = NULL; priv->model = file_model_new (GTK_TREE_VIEW(object), NULL); sort_model = gtk_tree_model_sort_new_with_model(GTK_TREE_MODEL(priv->model)); gtk_tree_view_set_model (GTK_TREE_VIEW(object), sort_model); gtk_tree_sortable_set_default_sort_func (GTK_TREE_SORTABLE(sort_model), file_view_sort_model, NULL, NULL); renderer_pixbuf = gtk_cell_renderer_pixbuf_new (); renderer_display = gtk_cell_renderer_text_new (); column = gtk_tree_view_column_new (); gtk_tree_view_column_set_title (column, _("Filename")); gtk_tree_view_column_pack_start (column, renderer_pixbuf, FALSE); gtk_tree_view_column_pack_start (column, renderer_display, FALSE); gtk_tree_view_column_set_attributes (column, renderer_pixbuf, "pixbuf", COLUMN_PIXBUF, NULL); gtk_tree_view_column_set_attributes (column, renderer_display, "markup", COLUMN_DISPLAY, NULL); gtk_tree_view_append_column (GTK_TREE_VIEW (object), column); selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (object)); g_signal_connect (selection, "changed", G_CALLBACK (file_view_selection_changed), object); gtk_tree_view_set_headers_visible (GTK_TREE_VIEW (object), FALSE); g_object_set (object, "has-tooltip", TRUE, NULL); /* DND */ gtk_tree_view_enable_model_drag_source (GTK_TREE_VIEW(object), GDK_BUTTON1_MASK, uri_targets, 1, GDK_ACTION_MOVE); }