Commit Graph

216 Commits

Author SHA1 Message Date
Jonathan Blandford
58d6014c4d Encapsulate all of the information about a button in a struct instead of
Tue Mar  9 16:19:09 2004  Jonathan Blandford  <jrb@gnome.org>

        * gtk/gtkpathbar.c (struct _ButtonData): Encapsulate all of the
        information about a button in a struct instead of ugly
        g_object_set_data.
        (gtk_path_bar_size_request): Use ButtonData.
        (gtk_path_bar_update_slider_buttons): ditto
        (gtk_path_bar_size_allocate): ditto
        (gtk_path_bar_remove): ditto
        (gtk_path_bar_forall): ditto
        (gtk_path_bar_scroll_down): ditto
        (gtk_path_bar_clear_buttons): ditto
        (button_clicked_cb): ditto.  Also, add an ignore_changes variable
        (button_data_free): destroy ButtonData
        (update_button_appearance): Use ButtonData
        (make_directory_button): ditto
        (gtk_path_bar_check_parent_path): ditto
        (_gtk_path_bar_set_path): ditto
2004-03-09 21:29:59 +00:00
Jonathan Blandford
1aae6878fc unref the correct icon.
Tue Mar  9 11:01:45 2004  Jonathan Blandford  <jrb@gnome.org>

        * gtk/gtkpathbar.c (gtk_path_bar_finalize): unref the correct icon.
2004-03-09 16:08:49 +00:00
Federico Mena Quintero
8383c8f7fe Patch "1a" from #136185, by Morten Welinder.
2004-03-08  Federico Mena Quintero  <federico@ximian.com>

	Patch "1a" from #136185, by Morten Welinder.

	* gtk/gtkfilechooserdefault.c (get_file_info): Take in an argument
	that says whether the caller just wants the display name.
	(shortcuts_insert_path): We only want the name in the call to
	get_file_info().

	* gtk/gtkpathbar.c (_gtk_path_bar_set_path): Don't request more
	info than needed from the file_folder.
2004-03-08 22:53:35 +00:00
Morten Welinder
d558abfe51 If we fail, leave widget unchanged. Explicitly verify final directory.
2004-03-08  Morten Welinder  <terra@gnome.org>

	* gtk/gtkpathbar.c (_gtk_path_bar_set_path): If we fail, leave
	widget unchanged.  Explicitly verify final directory.
2004-03-08 16:16:26 +00:00
Jonathan Blandford
59938d927c new function to consolidate creating the path_bar.
Mon Mar  8 04:50:12 2004  Jonathan Blandford  <jrb@gnome.org>

        * gtk/gtkfilechooserdefault.c (create_path_bar): new function to
        consolidate creating the path_bar.
        (gtk_file_chooser_default_set_current_folder): no longer need to
        pass in the filesystem.

        * gtk/gtkpathbar.h: Removed unused set_pixbuf functions in favor
        of just setting the filesystem.

        * gtk/gtkpathbar.c (gtk_path_bar_finalize): Free root path and
        home_dir.
        (get_button_image): Add images to path_bar.
        (update_button_appearance): use images
        (make_directory_button): Clasify buttons based upon location.
        (_gtk_path_bar_set_path): no longer need a file-system.  Also, add
        rerooting, #135845, #135914

        * tests/testfilechooser.c: Fix reused error handling.
2004-03-08 09:56:34 +00:00
Federico Mena Quintero
80581c3011 Fixes #136082 and #135265, patch by Morten Welinder.
2004-03-05  Federico Mena Quintero  <federico@ximian.com>

	Fixes #136082 and #135265, patch by Morten Welinder.

	* configure.in: Use AC_SYS_LARGEFILE.

	* */*.c: #include <config.h>
2004-03-06 03:38:59 +00:00
Jonathan Blandford
778d6904c4 Modified patch from muppet <scott@asofyet.org> to keep child directories
Thu Mar  4 01:32:19 2004  Jonathan Blandford  <jrb@gnome.org>

        * gtk/gtkpathbar.c (gtk_path_bar_set_path): Modified patch from
        muppet <scott@asofyet.org> to keep child directories around if we
        change to a child.

        * gtk/gtkpathbar.c (_gtk_path_bar_set_home_icon): Start of
        icon-setting functions.  Not used yet.
        (_gtk_path_bar_set_root_icon): Ditto.
2004-03-04 06:47:54 +00:00
Federico Mena Quintero
e50fb68763 Handle errors in setting the path bar's path. Fixes #136000, based on a
2004-03-02  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilechooserdefault.c
	(gtk_file_chooser_default_set_current_folder): Handle errors in
	setting the path bar's path.  Fixes #136000, based on a patch by
	Morten Welinder.

	* gtk/gtkfilesystemunix.c (gtk_file_system_unix_insert_bookmark):
	Don't free our own propagated error.

	* gtk/gtkpathbar.c (gtk_path_bar_set_path): Likewise, and free the
	parent_path upon error.  Fixes #136006, patch by Morten Welinder.
	(gtk_path_bar_set_path): Unref the file_folder upon error.
	(gtk_path_bar_set_path): Return a boolean success code.
2004-03-03 00:38:19 +00:00
Morten Welinder
8ddff5b098 Simplify semantics and check for errors.
2004-03-01  Morten Welinder  <terra@gnome.org>

	* gtk/gtkfilesystemmodel.c (file_model_node_is_visible): Simplify
	semantics and check for errors.

	* gtk/gtkpathbar.c (gtk_path_bar_set_path): Propagate errors.

	* gtk/gtkfilefilter.c (gtk_file_filter_filter): Don't crash if
	display_name is NULL.
2004-03-01 19:48:28 +00:00
Jonathan Blandford
2ef8bbc976 use gtk_widget_push/pop_composite_child around internal buttons.
Wed Feb 25 03:52:58 2004  Jonathan Blandford  <jrb@gnome.org>

        * gtk/gtkpathbar.c: use gtk_widget_push/pop_composite_child around
        internal buttons.

        * gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
        rename some widgets to make it clear where they are packed.
        (update_appearance): New function to handle all the 'logic' of
        layout in one place.  We aren't trying to keep all our properties
        in sync.
        (gtk_file_chooser_default_set_property): use update_appearance()
2004-02-25 08:55:48 +00:00
Jonathan Blandford
4b041f8241 Display the root a bit more cleanly.
Mon Feb 23 15:23:23 2004  Jonathan Blandford  <jrb@gnome.org>

        * gtk/gtkpathbar.c (gtk_path_bar_set_path): Display the root a bit
        more cleanly.

        * gtk/gtkpathbar.h (struct _GtkPathBarClass): fix the signal.
2004-02-23 20:24:01 +00:00
Jonathan Blandford
8f3d4b4ba6 for (i = 0; i < 10; i++) g_print ("I will compile before committing.\n");
Mon Feb 23 02:26:53 2004  Jonathan Blandford  <jrb@gnome.org>

        * gtk/gtkpathbar.c (gtk_path_bar_finalize):
        for (i = 0; i < 10; i++)
          g_print ("I will compile before committing.\n");
2004-02-23 07:31:44 +00:00
Jonathan Blandford
decffc9d95 Use the GtkPathBar by default now.
Mon Feb 23 02:08:42 2004  Jonathan Blandford  <jrb@gnome.org>

        * gtk/gtkfilechooserdefault.c (file_pane_create): Use the
        GtkPathBar by default now.

        * gtk/gtkpathbar.c (gtk_path_bar_set_path): Correctly set the
        current path from the path.
        (gtk_path_bar_class_init): new signal
        (button_clicked_cb): emit the signal when we're selected.
        (gtk_path_bar_clear_buttons): Fix a crasher when we weren't
        clearing thr first_scrolled_button.
2004-02-23 07:11:31 +00:00
Matthias Clasen
e9a92e6e6e Fix bug 134982, reported by Morten Welinder:
Mon Feb 23 00:38:21 2004  Matthias Clasen  <maclas@gmx.de>

	Fix bug 134982, reported by Morten Welinder:

	* gtk/gtkpathbar.c (gtk_path_bar_destroy):
	* gtk/gtktooltips.c (gtk_tooltips_destroy):
	* gtk/gtkinvisible.c (gtk_invisible_destroy): Chain up to the
	parent's ::destroy handler.

	* gdk/gdkdisplay.c (gdk_display_dispose): Chain up to the
	parent's ::dispose handler.
2004-02-22 23:35:16 +00:00
Jonathan Blandford
b379bc580e conditional compile for GtkPathBar
Fri Feb 20 18:20:22 2004  Jonathan Blandford  <jrb@gnome.org>

        * gtk/gtkfilechooserdefault.c: conditional compile for GtkPathBar

        * gtk/gtkpathbar.c (gtk_path_bar_size_allocate): Clean up
        allocation code.  Works fully in RTL languages, I think.
        (gtk_path_bar_scroll_up): Scroll up.
        (gtk_path_bar_scroll_down): Scroll down.
2004-02-20 23:21:01 +00:00
Jonathan Blandford
9c3ac4d1bb New widget to handle the path in the fileselector implementation. Not
Thu Feb 19 19:58:53 2004  Jonathan Blandford  <jrb@gnome.org>

        * gtk/gtkpathbar.[ch]: New widget to handle the path in the
        fileselector implementation.  Not hooked up to anything yet.

        * gtk/Makefile.am: support the path bar.
2004-02-20 01:10:28 +00:00