Author: peter
Date: 2007-01-12 11:32:04 +0000 (Fri, 12 Jan 2007)
New Revision: 24368

Modified:
   squeeze/trunk/src/archive_store.c
   squeeze/trunk/src/notebook.c
Log:
tree_view search uses the right column now
when a archive is opened, that tab gets active and the tree_view get focus
when closing tabs and only one tab is left the tab titles are hidden bug #2748 
fix


Modified: squeeze/trunk/src/archive_store.c
===================================================================
--- squeeze/trunk/src/archive_store.c   2007-01-12 10:02:09 UTC (rev 24367)
+++ squeeze/trunk/src/archive_store.c   2007-01-12 11:32:04 UTC (rev 24368)
@@ -970,8 +970,10 @@
 
        g_object_ref(G_OBJECT(store));
 
+       gint column = gtk_tree_view_get_search_column(store->treeview);
        gtk_tree_view_set_model(store->treeview, NULL);
        gtk_tree_view_set_model(store->treeview, GTK_TREE_MODEL(store));
+       gtk_tree_view_set_search_column(store->treeview, column);
 
        g_object_unref(G_OBJECT(store));
 }

Modified: squeeze/trunk/src/notebook.c
===================================================================
--- squeeze/trunk/src/notebook.c        2007-01-12 10:02:09 UTC (rev 24367)
+++ squeeze/trunk/src/notebook.c        2007-01-12 11:32:04 UTC (rev 24368)
@@ -456,7 +456,12 @@
 
        gtk_container_add(GTK_CONTAINER(scroll_window), tree_view);
        
-       gtk_notebook_append_page(GTK_NOTEBOOK(notebook), scroll_window, 
lbl_hbox);
+       gint page_nr = gtk_notebook_append_page(GTK_NOTEBOOK(notebook), 
scroll_window, lbl_hbox);
+       if(page_nr >= 0)
+       {
+               gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook), page_nr);
+               gtk_widget_grab_focus(tree_view);
+       }
 }
 
 void
@@ -555,14 +560,14 @@
 void
 cb_notebook_archive_refreshed(LSQArchive *archive, GtkTreeView *treeview)
 {
-       sq_notebook_treeview_reset_columns(archive, treeview);
-
        GtkTreeModel *archive_store = gtk_tree_view_get_model(treeview);
        g_object_ref(archive_store);
        gtk_tree_view_set_model(treeview, NULL);
        sq_archive_store_set_archive(SQ_ARCHIVE_STORE(archive_store), archive);
        gtk_tree_view_set_model(treeview, archive_store);
        g_object_unref(archive_store);
+
+       sq_notebook_treeview_reset_columns(archive, treeview);
 }
 
 static void
@@ -572,10 +577,6 @@
        GtkTreeViewColumn *column = NULL;
        gint x = 0;
 
-       GValue *value = g_new0(GValue, 1);
-       value = g_value_init(value, G_TYPE_UINT);
-       g_value_set_uint(value, GTK_ICON_SIZE_SMALL_TOOLBAR);
-
        GList *columns = gtk_tree_view_get_columns(treeview);
        gboolean show_only_filenames = FALSE;
 
@@ -589,7 +590,7 @@
        column = gtk_tree_view_column_new();
 
        renderer = gtk_cell_renderer_pixbuf_new();
-       g_object_set_property(G_OBJECT(renderer), "stock-size", value);
+       g_object_set(G_OBJECT(renderer), "stock-size", 
GTK_ICON_SIZE_SMALL_TOOLBAR, NULL);
        gtk_tree_view_column_pack_start(column, renderer, FALSE);
        gtk_tree_view_column_set_attributes(column, renderer, "icon-name", 0, 
NULL);
 
@@ -651,6 +652,10 @@
                if(notebook->navigation_bar)
                        sq_navigation_bar_set_store(notebook->navigation_bar, 
NULL);
        }
+       if(gtk_notebook_get_n_pages(GTK_NOTEBOOK(notebook)) > 1)
+               gtk_notebook_set_show_tabs(GTK_NOTEBOOK(notebook), TRUE);
+       else
+               gtk_notebook_set_show_tabs(GTK_NOTEBOOK(notebook), FALSE);
 }
 
 static void
@@ -717,7 +722,8 @@
 {
        GtkWidget *scrolledwindow = sq_notebook_get_active_child(notebook);
        GtkTreeIter iter;
-       GValue *value = g_new0(GValue, 1);
+       GValue value;
+       memset(&value, 0, sizeof(GValue));
        GSList *filenames = NULL;
 
        GtkWidget *treeview = gtk_bin_get_child(GTK_BIN(scrolledwindow));
@@ -729,14 +735,11 @@
        while(_rows)
        {
                gtk_tree_model_get_iter(store, &iter, _rows->data);
-               if(sq_archive_store_get_show_icons(SQ_ARCHIVE_STORE(store)))
-                       gtk_tree_model_get_value(store, &iter, 1, value);
-               else
-                       gtk_tree_model_get_value(store, &iter, 0, value);
+               gtk_tree_model_get_value(store, &iter, 1, &value);
 
-               filenames = g_slist_prepend(filenames, g_strconcat(pwd, 
g_value_get_string(value), NULL));
+               filenames = g_slist_prepend(filenames, g_strconcat(pwd, 
g_value_get_string(&value), NULL));
 
-               g_value_unset(value);
+               g_value_unset((GValue*)&value);
                _rows = _rows->next;
        }
        g_list_free(rows);

_______________________________________________
Xfce4-commits mailing list
Xfce4-commits@xfce.org
http://foo-projects.org/mailman/listinfo/xfce4-commits

Reply via email to