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
[email protected]
http://foo-projects.org/mailman/listinfo/xfce4-commits