[gtk+/filechooser-recent-folders-2-24] Move the pathbar creation to its own function
- From: Federico Mena Quintero <federico src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+/filechooser-recent-folders-2-24] Move the pathbar creation to its own function
- Date: Tue, 12 Jul 2011 23:43:58 +0000 (UTC)
commit fef779f3b133610e661c32cf280779834abddc2a
Author: Federico Mena Quintero <federico gnome org>
Date: Fri Jul 1 12:31:08 2011 -0500
Move the pathbar creation to its own function
We will centralize the place where all the pathbar-related widgets are created:
the location button, the pathbar itself, the Create Folder button, and in
subsequent commits, the info bar as well. We will deal with the pathbar/infobar
as a unit, instead of swapping them in and out in an ad-hoc fashion.
Signed-off-by: Federico Mena Quintero <federico gnome org>
gtk/gtkfilechooserdefault.c | 52 +++++++++++++++++++-----------------------
1 files changed, 24 insertions(+), 28 deletions(-)
---
diff --git a/gtk/gtkfilechooserdefault.c b/gtk/gtkfilechooserdefault.c
index e4d933e..1a402e0 100644
--- a/gtk/gtkfilechooserdefault.c
+++ b/gtk/gtkfilechooserdefault.c
@@ -4322,17 +4322,6 @@ create_file_list (GtkFileChooserDefault *impl)
return swin;
}
-static GtkWidget *
-create_path_bar (GtkFileChooserDefault *impl)
-{
- GtkWidget *path_bar;
-
- path_bar = g_object_new (GTK_TYPE_PATH_BAR, NULL);
- _gtk_path_bar_set_file_system (GTK_PATH_BAR (path_bar), impl->file_system);
-
- return path_bar;
-}
-
/* Creates the widgets for the files/folders pane */
static GtkWidget *
file_pane_create (GtkFileChooserDefault *impl,
@@ -4699,21 +4688,12 @@ location_button_create (GtkFileChooserDefault *impl)
atk_object_set_name (gtk_widget_get_accessible (impl->location_button), str);
}
-/* Creates the main hpaned with the widgets shared by Open and Save mode */
+/* Creates the path bar's container and eveyrthing that goes in it: location button, pathbar, info bar, and Create Folder button */
static void
-browse_widgets_create (GtkFileChooserDefault *impl)
+path_bar_widgets_create (GtkFileChooserDefault *impl)
{
- GtkWidget *hpaned;
- GtkWidget *widget;
- GtkSizeGroup *size_group;
-
- /* size group is used by the [+][-] buttons and the filter combo */
- size_group = gtk_size_group_new (GTK_SIZE_GROUP_VERTICAL);
- impl->browse_widgets_box = gtk_vbox_new (FALSE, 12);
-
/* Location widgets - note browse_path_bar_hbox is packed in the right place until switch_path_bar() */
impl->browse_path_bar_hbox = gtk_hbox_new (FALSE, 12);
- gtk_box_pack_start (GTK_BOX (vbox), impl->browse_path_bar_hbox, FALSE, FALSE, 0);
gtk_widget_show (impl->browse_path_bar_hbox);
/* Size group that allows the path bar to be the same size between modes */
@@ -4721,24 +4701,40 @@ browse_widgets_create (GtkFileChooserDefault *impl)
gtk_size_group_set_ignore_hidden (impl->browse_path_bar_size_group, FALSE);
/* Location button */
-
location_button_create (impl);
- gtk_box_pack_start (GTK_BOX (impl->browse_path_bar_hbox), impl->location_button, FALSE, FALSE, 0);
gtk_size_group_add_widget (impl->browse_path_bar_size_group, impl->location_button);
+ gtk_box_pack_start (GTK_BOX (impl->browse_path_bar_hbox), impl->location_button, FALSE, FALSE, 0);
/* Path bar */
-
- impl->browse_path_bar = create_path_bar (impl);
+ impl->browse_path_bar = g_object_new (GTK_TYPE_PATH_BAR, NULL);
+ _gtk_path_bar_set_file_system (GTK_PATH_BAR (impl->browse_path_bar), impl->file_system);
g_signal_connect (impl->browse_path_bar, "path-clicked", G_CALLBACK (path_bar_clicked), impl);
- gtk_widget_show_all (impl->browse_path_bar);
- gtk_box_pack_start (GTK_BOX (impl->browse_path_bar_hbox), impl->browse_path_bar, TRUE, TRUE, 0);
+
gtk_size_group_add_widget (impl->browse_path_bar_size_group, impl->browse_path_bar);
+ gtk_box_pack_start (GTK_BOX (impl->browse_path_bar_hbox), impl->browse_path_bar, TRUE, TRUE, 0);
/* Create Folder */
impl->browse_new_folder_button = gtk_button_new_with_mnemonic (_("Create Fo_lder"));
g_signal_connect (impl->browse_new_folder_button, "clicked",
G_CALLBACK (new_folder_button_clicked), impl);
+ gtk_size_group_add_widget (impl->browse_path_bar_size_group, impl->browse_new_folder_button);
gtk_box_pack_end (GTK_BOX (impl->browse_path_bar_hbox), impl->browse_new_folder_button, FALSE, FALSE, 0);
+}
+
+/* Creates the main hpaned with the widgets shared by Open and Save mode */
+static void
+browse_widgets_create (GtkFileChooserDefault *impl)
+{
+ GtkWidget *hpaned;
+ GtkWidget *widget;
+ GtkSizeGroup *size_group;
+
+ /* size group is used by the scrolled windows of the panes */
+ size_group = gtk_size_group_new (GTK_SIZE_GROUP_VERTICAL);
+ impl->browse_widgets_box = gtk_vbox_new (FALSE, 12);
+
+ /* Path bar, info bar, and their respective machinery - the browse_path_bar_hbox will get packed elsewhere */
+ path_bar_widgets_create (impl);
/* Box for the location label and entry */
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]