/[gtktalog]/gtktalog/src/interface.c
ViewVC logotype

Diff of /gtktalog/src/interface.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.9 by jci, Fri Feb 7 03:36:27 2003 UTC revision 1.10 by jci, Wed Feb 12 07:24:36 2003 UTC
# Line 66  GtkWidget *path_entry; Line 66  GtkWidget *path_entry;
66    
67  enum  enum
68  {  {
69            GTKTALOG_ICON=0,
70          GTKTALOG_FILENAME,          GTKTALOG_FILENAME,
71          GTKTALOG_SIZE,          GTKTALOG_SIZE,
72          GTKTALOG_DATE,          GTKTALOG_DATE,
# Line 86  ctree_window_add (GtkWidget * ctree) Line 87  ctree_window_add (GtkWidget * ctree)
87    gtk_container_add (GTK_CONTAINER (ctree_window), ctree);    gtk_container_add (GTK_CONTAINER (ctree_window), ctree);
88  }  }
89    
90    
91    GtkTreeModel *
92    create_model(void)
93    {
94            // function needed to make icon support painless
95            // shouts go to German Poo for the help :-)
96    
97            GtkListStore * store;
98            GtkTreeIter iter;
99    
100    //      ToDo : this needs a really big move from Gdkwhatever to GdkPixbuf      
101    //      GdkPixbuf * myicon;
102    
103            store = gtk_list_store_new(7, GDK_TYPE_PIXBUF, G_TYPE_STRING,G_TYPE_STRING,G_TYPE_STRING,G_TYPE_STRING,G_TYPE_STRING,G_TYPE_STRING, G_TYPE_STRING);
104            return GTK_TREE_MODEL(store);
105    
106    }
107    
108  void  void
109  clear_right_list(GtkWidget * treeview)  clear_right_list(GtkWidget * treeview)
110  {  {
# Line 98  clear_right_list(GtkWidget * treeview) Line 117  clear_right_list(GtkWidget * treeview)
117    
118  void add_right_list(GtkWidget * treeview, gchar ** item, char * name)  void add_right_list(GtkWidget * treeview, gchar ** item, char * name)
119  {  {
120          GtkTreeView * tree = GTK_TREE_VIEW(treeview);          GtkTreeView * tree = GTK_TREE_VIEW(treeview);
121          GtkTreeModel * model = gtk_tree_view_get_model(tree);          GtkTreeModel * model = gtk_tree_view_get_model(tree);
122          GtkTreeIter iter;          GtkTreeIter iter;
123          gtk_list_store_append(GTK_LIST_STORE(model), &iter);          /* tricky bit, needs to convert the pics to this format */
         gtk_list_store_set(GTK_LIST_STORE(model),&iter,0, name,1,item[1],2, item[2], 3, item[3], 4, item[4], 5, item[5],-1);  
124                    
125          gtk_tree_view_columns_autosize(tree);          GdkPixbuf * pixbuf = NULL;
126            
127            /* finally, the trick goes here */
128            
129            gtk_list_store_append(GTK_LIST_STORE(model), &iter);
130    
131          /*  //      gtk_list_store_set(GTK_LIST_STORE(model),&iter,GTKTALOG_ICON,icon, -1);
132           * TODO : adding icon support          gtk_list_store_set(GTK_LIST_STORE(model),&iter,GTKTALOG_FILENAME, name,-1);
133           */          gtk_list_store_set(GTK_LIST_STORE(model),&iter,GTKTALOG_SIZE,item[1],-1);
134            gtk_list_store_set(GTK_LIST_STORE(model),&iter,GTKTALOG_DATE,item[2],-1);
135            gtk_list_store_set(GTK_LIST_STORE(model),&iter,GTKTALOG_CATEGORY,item[3],-1);
136            gtk_list_store_set(GTK_LIST_STORE(model),&iter,GTKTALOG_DESCRIPTION,item[4],-1);
137            gtk_list_store_set(GTK_LIST_STORE(model),&iter,GTKTALOG_INFORMATION,item[5],-1);
138    
139            gtk_tree_view_columns_autosize(tree);
140                    
141    
142  }  }
143    
144  void  void
# Line 1132  clist_pressed (GtkWidget * wid, GdkEvent Line 1161  clist_pressed (GtkWidget * wid, GdkEvent
1161      }      }
1162  }  }
1163    
1164  void add_columns(GtkTreeView * treeview)  GtkWidget *
1165    create_list ()
1166  {  {
   GtkCellRenderer *renderer;  
   GtkTreeViewColumn *column;  
   GtkTreeModel *model = gtk_tree_view_get_model (treeview);  
1167    
1168      GtkWidget * treeview;
1169      GtkTreeViewColumn * column;
1170      GtkTreeModel * model;
1171      GtkCellRenderer * renderer;
1172      
1173    gchar *titles[6] = { _("Filename"), _("Size"), _("Date"), _("Category"),    gchar *titles[6] = { _("Filename"), _("Size"), _("Date"), _("Category"),
1174      _("Description"), _("Information")      _("Description"), _("Information")  };
   };  
1175        
1176    renderer = gtk_cell_renderer_text_new ();    model = create_model();
   column = gtk_tree_view_column_new_with_attributes (titles[0],  
                                                      renderer,  
                                                      "text",  
                                                      GTKTALOG_FILENAME,  
                                                      NULL);  
1177    
1178  //  gtk_tree_view_column_set_fixed_width (GTK_TREE_VIEW_COLUMN (column), 380);    treeview = gtk_tree_view_new();
1179      gtk_tree_view_set_model(GTK_TREE_VIEW(treeview), model);
1180      g_object_unref(model);
1181    
1182      /* pixbuf + text column */
1183        
1184      column = gtk_tree_view_column_new ();
1185      gtk_tree_view_column_set_title (column,titles[0]);
1186      renderer = gtk_cell_renderer_pixbuf_new ();
1187      gtk_tree_view_column_pack_start (column, renderer, FALSE);
1188      gtk_tree_view_column_set_attributes (column, renderer, "pixbuf",GTKTALOG_ICON, NULL);
1189      renderer = gtk_cell_renderer_text_new ();
1190      gtk_tree_view_column_pack_start (column, renderer, TRUE);
1191      gtk_tree_view_column_set_attributes (column, renderer, "text", GTKTALOG_FILENAME, NULL);
1192    gtk_tree_view_column_set_resizable(column, TRUE);    gtk_tree_view_column_set_resizable(column, TRUE);
1193        gtk_tree_view_column_set_sort_column_id (column,GTKTALOG_FILENAME);
1194    gtk_tree_view_column_set_sort_column_id (column, GTKTALOG_FILENAME);    gtk_tree_view_append_column (GTK_TREE_VIEW(treeview), column);
   
   gtk_tree_view_append_column (treeview, column);  
1195    
1196    renderer = gtk_cell_renderer_text_new ();    renderer = gtk_cell_renderer_text_new ();
1197        column = gtk_tree_view_column_new_with_attributes (titles[1],renderer, "text",GTKTALOG_SIZE,NULL);
1198    column = gtk_tree_view_column_new_with_attributes (titles[1],    gtk_tree_view_append_column (GTK_TREE_VIEW(treeview), column);
                                                      renderer,  
                                                      "text",  
                                                      GTKTALOG_SIZE,  
                                                      NULL);  
     
   gtk_tree_view_column_set_sort_column_id (column, GTKTALOG_SIZE);  
1199    
1200    gtk_tree_view_column_set_fixed_width (GTK_TREE_VIEW_COLUMN (column), 130);    renderer = gtk_cell_renderer_text_new ();
1201      column = gtk_tree_view_column_new_with_attributes (titles[2],renderer, "text",GTKTALOG_DATE,NULL);
1202      gtk_tree_view_append_column (GTK_TREE_VIEW(treeview), column);
1203    
   gtk_tree_view_column_set_sizing (GTK_TREE_VIEW_COLUMN (column),  
                                    GTK_TREE_VIEW_COLUMN_AUTOSIZE);  
1204        
   gtk_tree_view_append_column (treeview, column);  
   
1205    renderer = gtk_cell_renderer_text_new ();    renderer = gtk_cell_renderer_text_new ();
1206        column = gtk_tree_view_column_new_with_attributes (titles[3],renderer, "text",GTKTALOG_CATEGORY,NULL);
1207    column = gtk_tree_view_column_new_with_attributes (titles[2],    gtk_tree_view_append_column (GTK_TREE_VIEW(treeview), column);
                                                      renderer,  
                                                      "text",  
                                                      GTKTALOG_DATE,  
                                                      NULL);  
   gtk_tree_view_column_set_fixed_width (GTK_TREE_VIEW_COLUMN (column), 130);  
   gtk_tree_view_column_set_sort_column_id (column,GTKTALOG_DATE);  
1208    
   gtk_tree_view_append_column (treeview, column);  
1209    
1210    renderer = gtk_cell_renderer_text_new ();    renderer = gtk_cell_renderer_text_new ();
1211      column = gtk_tree_view_column_new_with_attributes (titles[4],renderer, "text",GTKTALOG_DESCRIPTION,NULL);
1212      gtk_tree_view_append_column (GTK_TREE_VIEW(treeview), column);
1213    
   column = gtk_tree_view_column_new_with_attributes (titles[3],  
                                                      renderer,  
                                                      "text",  
                                                      GTKTALOG_CATEGORY,  
                                                      NULL);  
   gtk_tree_view_column_set_fixed_width (GTK_TREE_VIEW_COLUMN (column), 130);  
     
   gtk_tree_view_column_set_sort_column_id (column,GTKTALOG_CATEGORY);  
     
   gtk_tree_view_append_column (treeview, column);    
     
   renderer = gtk_cell_renderer_text_new ();  
     
   column = gtk_tree_view_column_new_with_attributes (titles[4],  
                                                      renderer,  
                                                      "text",  
                                                      GTKTALOG_DESCRIPTION,  
                                                      NULL);  
   gtk_tree_view_column_set_fixed_width (GTK_TREE_VIEW_COLUMN (column), 130);  
   gtk_tree_view_column_set_sort_column_id (column,GTKTALOG_DESCRIPTION);  
   gtk_tree_view_append_column (treeview, column);        
1214    
1215    renderer = gtk_cell_renderer_text_new ();    renderer = gtk_cell_renderer_text_new ();
1216        column = gtk_tree_view_column_new_with_attributes (titles[5],renderer, "text",GTKTALOG_INFORMATION,NULL);
1217    column = gtk_tree_view_column_new_with_attributes (titles[5],    gtk_tree_view_append_column (GTK_TREE_VIEW(treeview), column);
                                                      renderer,  
                                                      "text",  
                                                      GTKTALOG_INFORMATION,  
                                                      NULL);  
   
   gtk_tree_view_column_set_fixed_width (GTK_TREE_VIEW_COLUMN (column), 130);  
   
   gtk_tree_view_append_column (treeview, column);    
   
 }  
   
 GtkWidget *  
 create_list ()  
 {  
   
   GtkListStore * returned_list;  
     
   GtkWidget * treeview;  
   GtkTreeViewColumn * column;  
   GtkCellRenderer * renderer;  
     
1218    
   returned_list = gtk_list_store_new(6,  
                                 G_TYPE_STRING,  
                                 G_TYPE_STRING,  
                                 G_TYPE_STRING,  
                                 G_TYPE_STRING,  
                                 G_TYPE_STRING,  
                                 G_TYPE_STRING);  
1219        
   treeview = gtk_tree_view_new_with_model(GTK_TREE_MODEL(returned_list));  
   add_columns(GTK_TREE_VIEW(treeview));  
1220    
1221    return treeview;    return treeview;
1222        

Legend:
Removed from v.1.9  
changed lines
  Added in v.1.10

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26