1. 05 Mar, 2004 1 commit
    • Federico Mena Quintero's avatar
      Add gboolean return values and GError arguments to ::set_current_folder() · 385bd6a5
      Federico Mena Quintero authored
      2004-03-05  Federico Mena Quintero  <federico@ximian.com>
      
      	* gtk/gtkfilechooserprivate.h (struct _GtkFileChooserIface): Add
      	gboolean return values and GError arguments to
      	::set_current_folder() and ::select_path().
      
      	* gtk/gtkfilechooser.c (gtk_file_chooser_set_current_folder):
      	Return a boolean value for success/failure.
      	(gtk_file_chooser_set_current_folder_uri): Likewise.
      	(gtk_file_chooser_select_filename): Likewise.
      	(gtk_file_chooser_select_uri): Likewise.
      	(gtk_file_chooser_set_filename): Likewise.
      	(gtk_file_chooser_set_uri): Likewise.
      	(_gtk_file_chooser_set_current_folder_path): Likewise, plus take
      	in a GError.
      	(_gtk_file_chooser_select_path): Likewise.
      
      	* gtk/gtkfilechooserutils.c (delegate_set_current_folder):
      	Likewise.
      	(delegate_select_path): Likewise.
      
      	* gtk/gtkfilechooserdefault.c
      	(gtk_file_chooser_default_select_path): Likewise.
      	(gtk_file_chooser_default_set_current_folder): Likewise.
      	(error_changing_folder_dialog): New helper function.
      	(change_folder_and_display_error): New helper function.
      	(switch_to_selected_folder): Use change_folder_and_display_error().
      	(tree_selection_changed): Likewise.
      	(shortcuts_activate_volume): Likewise.
      	(shortcuts_activate_item): Likewise.
      	(list_row_activated): Likewise.
      	(path_bar_clicked): Likewise.
      	(update_from_entry): Likewise.
      	(up_folder_handler): Likewise.
      	(home_folder_handler): Get the home path from the shortcuts model,
      	and use change_folder_and_display_error().
      
      	* tests/testfilechooser.c (set_current_folder): New helper
      	function; pops up a simple error dialog if necessary.
      	(set_filename): Likewise.
      	(set_folder_nonexistent_cb): Use set_current_folder().
      	(set_folder_existing_nonexistent_cb): Likewise.
      	(set_filename_nonexistent_cb): Use set_filename().
      	(set_filename_existing_nonexistent_cb): Likewise.
      385bd6a5
  2. 18 Oct, 2003 1 commit
    • Federico Mena Quintero's avatar
      Removed. (gtk_file_system_gnome_vfs_set_bookmarks): Removed. · b49a5ec5
      Federico Mena Quintero authored
      2003-10-17  Federico Mena Quintero  <federico@ximian.com>
      
      	* gtkfilesystemgnomevfs.c
      	(gtk_file_system_gnome_vfs_get_supports_bookmarks): Removed.
      	(gtk_file_system_gnome_vfs_set_bookmarks): Removed.
      	(gtk_file_system_gnome_vfs_add_bookmark): Implement.
      	(gtk_file_system_gnome_vfs_remove_bookmark): Implement.
      
      	* gtkfilechooserprivate.h (struct _GtkFileChooserIface): Replaced
      	the ::set_shortcut_folders() method with :;add_shortcut_folder()
      	and ::remove_shortcut_folder().
      
      	* gtkfilechooserutils.c (delegate_add_shortcut_folder): New function.
      	(delegate_remove_shortcut_folder): New function.
      	(delegate_list_shortcut_folders): New function.
      
      	* gtkfilechooserimpldefault.c (create_shortcuts_model): Insert the
      	Desktop directory as well.
      	(shortcuts_insert_path): Renamed from shortcuts_append_path; now
      	takes a position index instead of a parent node iter.  Also takes
      	a GError argument.
      	(struct _GtkFileChooserImplDefault): Removed the shortcuts_folder
      	list.  It is all kept in the model now.
      	(shortcuts_append_home): Save whether adding a shortcut for the
      	home directory was successful.
      	(shortcuts_append_desktop): Likewise for the desktop.
      	(shortcuts_append_file_system_roots): Count and save the number of
      	roots added.
      	(shortcuts_append_shortcut_folders): Removed.
      	(gtk_file_chooser_impl_default_add_shortcut_folder): Implement.
      	(shortcuts_append_bookmarks): Now that we don't have a bookmarks
      	parent node, don't expand the tree.
      	(add_bookmark_button_clicked_cb): Use gtk_file_system_add_bookmark().
      	(remove_bookmark_button_clicked_cb): Use gtk_file_system_remove_bookmark().
      	(gtk_file_chooser_impl_default_list_shortcut_folders): Get the
      	folders from the shortcuts model; we no longer keep a separate list.
      
      	* gtkfilesystem.h (struct _GtkFileSystemIface): Oops, there
      	shouldn't be shortcuts-related virtual methods here.
      
      	* gtkfilechooser.c (file_paths_to_strings): New helper function.
      	(gtk_file_chooser_get_filenames): Use file_paths_to_strings().
      	(gtk_file_chooser_get_uris): Likewise.
      	(gtk_file_chooser_set_shortcut_folders): Removed.
      	(gtk_file_chooser_list_shortcut_folders): Return a list of
      	strings, not of GtkFilePath*.
      	(gtk_file_chooser_list_shortcut_folder_uris): New function.
      	(gtk_file_chooser_add_shortcut_folder): New function.
      	(gtk_file_chooser_remove_shortcut_folder): New function.
      	(gtk_file_chooser_add_shortcut_folder_uri): New function.
      	(gtk_file_chooser_remove_shortcut_folder_uri): New function.
      	(_gtk_file_chooser_add_shortcut_folder): New function.
      	(_gtk_file_chooser_remove_shortcut_folder): New function.
      
      	* gtkfilechooser.h: New enum.
      
      	* gtkfilechooser.c (gtk_file_chooser_error_quark): New function.
      
      	* gtkfilesystem.c (gtk_file_system_get_supports_bookmarks): Removed.
      	(gtk_file_system_set_bookmarks): Removed.
      	(gtk_file_system_add_bookmark): New function.
      	(gtk_file_system_remove_bookmark): New function.
      
      	* gtkfilesystemunix.c
      	(gtk_file_system_unix_get_supports_bookmarks): Removed.
      	(gtk_file_system_unix_set_bookmarks): Removed.
      	(gtk_file_system_unix_add_bookmark): Just a stub for now.
      	(gtk_file_system_unix_remove_bookmark): Likewise.
      
      	* testfilechooser.c (main): Add a shortcut for testing purposes.
      b49a5ec5
  3. 08 Oct, 2003 1 commit
    • Federico Mena Quintero's avatar
      Added methods for ::get_supports_bookmarks(), ::set_bookmarks(), · 462aab4a
      Federico Mena Quintero authored
      2003-10-07  Federico Mena Quintero  <federico@ximian.com>
      
      	* gtkfilesystem.h (struct _GtkFileSystemIface): Added methods for
      	::get_supports_bookmarks(), ::set_bookmarks(), ::list_bookmarks().
      	Added a ::bookmarks_changed() signal.
      
      	* gtkfilesystem.c (gtk_file_system_get_supports_bookmarks): New function.
      	(gtk_file_system_set_bookmarks): New function.
      	(gtk_file_system_list_bookmarks): New function.
      	(gtk_file_system_base_init): Create the "bookmarks-changed" signal.
      	(gtk_file_paths_copy): New function.
      
      	* gtkfilesystemunix.c (gtk_file_system_unix_get_supports_bookmarks): Implement.
      	(gtk_file_system_unix_set_bookmarks): Implement.
      	(gtk_file_system_unix_get_bookmarks): Implement.
      
      	* gtkfilesystemgnomevfs.c (struct _GtkFileSystemGnomeVFS): Added
      	fields for the bookmarks and the GConfClient.
      	(gtk_file_system_gnome_vfs_set_bookmarks): Implement.
      	(gtk_file_system_gnome_vfs_list_bookmarks): Implement.
      
      	* gtkfilechooserprivate.h (struct _GtkFileChooserIface): Added
      	methods for ::set_shortcut_folders(), ::list_shortcut_folders().
      
      	* gtkfilechooser.c (gtk_file_chooser_set_shortcut_folders): New
      	function.
      	(gtk_file_chooser_list_shortcut_folders): New function.
      
      	* gtkfilechooserimpldefault.c (create_shortcuts_model): Unref the
      	old shortcuts model if it exists.  Create the nodes for the
      	app-specific shortcut folders.
      	(struct _GtkFileChooserImplDefault): Added a field for the
      	shortcut_folders.
      	(gtk_file_chooser_impl_default_set_shortcut_folders): Implement.
      	(select_shortcuts_folder): New helper function.
      	(gtk_file_chooser_impl_default_set_current_folder): Use
      	select_shortcuts_folder().
      	(shortcuts_append_path): Get the file info here, instead of the
      	caller.
      	(shortcuts_append_home): Use shortcuts_append_path().
      	(shortcuts_append_file_system_roots): Likewise.
      	(create_shortcuts_model): Add the app-specific shortcut folders
      	and the bookmarks.
      	(gtk_file_chooser_impl_default_list_shortcut_folders): Implement.
      	(create_shortcuts_tree): Added a button to let the user add the
      	current folder to the bookmarks.
      	(gtk_file_chooser_impl_default_set_property): Connect to
      	"bookmarks-changed" on the file system.
      	(shortcuts_append_bookmarks): New function.
      
      	* configure.ac: Depend on GConf.
      462aab4a
  4. 11 Sep, 2003 1 commit
    • Federico Mena Quintero's avatar
      Connect to "row_activated" on the file list. (list_row_activated): New · aa22566e
      Federico Mena Quintero authored
      2003-09-10  Federico Mena Quintero  <federico@ximian.com>
      
      	* gtkfilechooserimpldefault.c (create_file_list): Connect to
      	"row_activated" on the file list.
      	(list_row_activated): New function.  Changes to folders or emits
      	the "file-activated" signal depending on what type of row was
      	activated.
      	(create_folder_tree): Renamed from create_directory_tree(), since
      	"folder" is the new politically-correct name.
      
      	* gtkfilechooserprivate.h (struct _GtkFileChooserIface): Added a
      	file-activated signal.
      
      	* gtkfilechooser.c (gtk_file_chooser_class_init): Register the
      	signal.
      
      	* gtkfilechooserutils.c (_gtk_file_chooser_set_delegate): Connect
      	to "file-activated" on the delegate.
      	(delegate_file_activated): New function.
      
      	* TODO: Added an API item about Clipart-like folders provided by
      	applications.
      aa22566e
  5. 23 Jul, 2003 2 commits
    • Owen Taylor's avatar
      Add over-big test case for preview (much of size from a modified copy of · d97d7df9
      Owen Taylor authored
      Wed Jul 23 17:52:01 2003  Owen Taylor  <otaylor@redhat.com>
      
              * testfilechooser.c: Add over-big test case for preview
              (much of size from a modified copy of
              gdk_pixbuf_new_from_file_at_size())
      
              * gtkfilechooserutils.[ch] gtkfilechooser.c
              gtkfilechooserprivate.h gtkfilechooserimpldefault.c:
              Add get_preview_path() as a virtual function; implement
              update-preview signal that was in the header file.
      
              * gtkfilechooserimpldefault.c: Finish a simple preview
              widget implementation.
      d97d7df9
    • Owen Taylor's avatar
      File filter objects. · 733f4489
      Owen Taylor authored
      Wed Jul 23 11:23:43 2003  Owen Taylor  <otaylor@redhat.com>
      
              * gtkfilefilter.[ch]: File filter objects.
      
              * gtkfilechooser.[ch] gtkfilechooserutils.[ch]: Add
              file filtering to API.
      
              * gtkfilechooserimpldefault.c: Implement file filters.
      
              * testfilechooser.c: Try out the filter functionality.
      
              * gtkfilesystemmodel.c: Add
              _gtk_file_system_model_set_filter() to set a callback
              function for filtering.
      
              * gtkfilechooserutils.c: Propagate property notification
              to the receiver.
      
              * fnmatch.c: Copy this from GTK+ temporarily to get
              UTF-8 pattern matching functionality.
      733f4489
  6. 11 Jul, 2003 1 commit
    • Owen Taylor's avatar
      Add gtk_file_chooser_set_current_name() to set the current entry contents. · 7f8ae32c
      Owen Taylor authored
      Fri Jul 11 14:37:07 2003  Owen Taylor  <otaylor@redhat.com>
      
              * gtkfilechooser.[ch] gtkfilechooserprivate.h
              gtkfilechooserimpldefault.c: Add
              gtk_file_chooser_set_current_name() to set the current
              entry contents.
      
              * *.c: Consistently use '-' not '_' in property names and
              signal names.
      
              * gtkfilechooser.c: Document all exported functions.
      7f8ae32c
  7. 04 Apr, 2003 1 commit
    • Owen Taylor's avatar
      Move interface definition into a private header so it can refer to · bc3fb55c
      Owen Taylor authored
      Fri Apr  4 17:30:27 2003  Owen Taylor  <otaylor@redhat.com>
      
              * gtkfilechooserprivate.h gtkfilechooser.h: Move
              interface definition into a private header so it
              can refer to GtkFileSystem.
      
              * *.[ch]: Switch over from using gchar *uri internally
              to using GtkFilePath * internally, and add
              conversion routines to GtkFileSystem.
      
              * TODO README: Updates.
      bc3fb55c