From ec64e995ab1467596e75fb0aebda63bb047aefa5 Mon Sep 17 00:00:00 2001 From: Alan Fitton Date: Wed, 21 Dec 2011 00:32:54 +0000 Subject: file trees :D may do cascading priority changes sometime, but this is a start. also use GTK_STOCK_FILE if mime/extension detection fails. --- src/trg-tree-view.c | 28 +++++++++++++++++++++++++--- 1 file changed, 25 insertions(+), 3 deletions(-) (limited to 'src/trg-tree-view.c') diff --git a/src/trg-tree-view.c b/src/trg-tree-view.c index 30db56e..d6c7b93 100644 --- a/src/trg-tree-view.c +++ b/src/trg-tree-view.c @@ -31,6 +31,7 @@ #include "trg-cell-renderer-epoch.h" #include "trg-cell-renderer-priority.h" #include "trg-cell-renderer-numgteqthan.h" +#include "trg-cell-renderer-file-icon.h" /* A subclass of GtkTreeView which allows the user to change column visibility * by right clicking on any column for a menu to hide the clicked column, or @@ -264,7 +265,28 @@ static GtkTreeViewColumn gtk_tree_view_column_pack_start(column, renderer, FALSE); gtk_tree_view_column_set_attributes(column, renderer, renderer_property, - desc->model_column_icon, NULL); + desc->model_column_extra, NULL); + + renderer = gtk_cell_renderer_text_new(); + gtk_tree_view_column_pack_start(column, renderer, TRUE); + gtk_tree_view_column_set_attributes(column, renderer, "text", + desc->model_column, NULL); + + return column; +} + +static GtkTreeViewColumn + * trg_tree_view_fileicontext_column_new(trg_column_description * desc) +{ + GtkTreeViewColumn *column = gtk_tree_view_column_new(); + GtkCellRenderer *renderer = trg_cell_renderer_file_icon_new(); + + gtk_tree_view_column_set_title(column, desc->header); + gtk_tree_view_column_pack_start(column, renderer, FALSE); + gtk_tree_view_column_set_attributes(column, renderer, + "file-id", + desc->model_column_extra, + "file-name", desc->model_column, NULL); renderer = gtk_cell_renderer_text_new(); gtk_tree_view_column_pack_start(column, renderer, TRUE); @@ -354,8 +376,8 @@ static void trg_tree_view_add_column_after(TrgTreeView * tv, case TRG_COLTYPE_STOCKICONTEXT: column = trg_tree_view_icontext_column_new(desc, "stock-id"); break; - case TRG_COLTYPE_GICONTEXT: - column = trg_tree_view_icontext_column_new(desc, "gicon"); + case TRG_COLTYPE_FILEICONTEXT: + column = trg_tree_view_fileicontext_column_new(desc); break; case TRG_COLTYPE_PRIO: renderer = trg_cell_renderer_priority_new(); -- cgit v1.2.3