Commit Graph

3696 Commits

Author SHA1 Message Date
Soeren Sandmann
7c659465e2 Add support for OS X like sliding of toolbar items during drag and drop,
Mon Oct 20 20:27:22 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	Add support for OS X like sliding of toolbar items during drag and
	drop, (#110919, Dave Bordoley)

	Make dnd highlighting the responsibility of the
	application. (Fixes #116298, Owen Taylor)

	* gtk/gtktoolbar.h: Add prototypes for new API.

	* gtk/gtktoolbar.c
	(physical_to_logical, logical_to_physical): new functions
	converting between "position including placeholders" and "position
	excluding placeholders".
	(gtk_toolbar_class_init): remove drag_leave and drag_motion
	handlers
	(struct _ToolbarContent): new struct containing information
	related to toolbar items.
	(gtk_toolbar_highlight_drop_location): new public function
	(gtk_toolbar_unhighlight_drop_location): new public function

	* tests/testtoolbar.c
	(toolbar_drag_motion, toolbar_drag_leave): new functions
	(main): connect to dnd signals.  Make the "New" item expand to
	make drag and drop more exciting.
2003-10-20 18:56:05 +00:00
Federico Mena Quintero
b49a5ec5b4 Removed. (gtk_file_system_gnome_vfs_set_bookmarks): Removed.
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.
2003-10-18 04:29:40 +00:00
Kristian Rietveld
7c4b8aef83 it's _set_active, not _set_active_item.
Wed Oct 15 22:39:23 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): it's
	_set_active, not _set_active_item.
2003-10-15 20:41:22 +00:00
Kristian Rietveld
7cd9dc32da add padding to the class structure. ditto. ditto.
Wed Oct 15 22:31:09 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkcombobox.h: add padding to the class structure.
	* gtk/gtkcomboboxentry.h: ditto.
	* gtk/gtkentrycompletion.h: ditto.
2003-10-15 20:33:17 +00:00
Kristian Rietveld
8b34c308d0 mention in the docs that -1 is a valid value and what it means.
Wed Oct 15 22:04:59 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkcombobox.c (gtk_combo_box_get_active),
	(gtk_combo_box_set_active): mention in the docs that -1 is a valid
	value and what it means.

	* gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): set the active
	item to -1 (default),
	(gtk_combo_box_entry_active_changed): do nothing when the index is
	< 0.
2003-10-15 20:18:01 +00:00
Federico Mena Quintero
5a51188b8b Added a button to remove a bookmark. (remove_bookmark_button_clicked_cb):
2003-10-14  Federico Mena Quintero  <federico@ximian.com>

	* gtkfilechooserimpldefault.c (create_shortcuts_tree): Added a
	button to remove a bookmark.
	(remove_bookmark_button_clicked_cb): New callback.
	(shortcuts_append_bookmarks): Show/hide the bookmarks buttons
	here, rather than in create_shortcuts_tree().
	(shortcuts_append_path): Return whether the operation succeeded.
	(shortcuts_selection_changed): Set the sensitivity of the button
	used to remove a bookmark.
	(shortcuts_append_bookmarks): Do not select the shortcuts folder
	here; let the caller do it if needed.
	(create_shortcuts_tree): Select the shortcuts folder here.
	(bookmarks_changed_cb): Likewise.
	(create_shortcuts_tree): Also set the sensitivity of the bookmarks
	buttons.
	(bookmarks_check_add_sensitivity): Renamed from
	check_bookmarks_sensitivity().
	(shortcuts_select_folder): Renamed from select_shortcuts_folder().
	(bookmarks_check_add_sensitivity): The current_path may not be set
	yet.
	(shortcuts_append_bookmarks): Oops, remove all the bookmark rows,
	not just the separator node.
	(bookmarks_changed_cb): Set the sensitivity of the bookmarks
	buttons.
2003-10-15 03:06:55 +00:00
Jonathan Blandford
87a1e40eb8 New function to set the active row by iter.
Tue Oct 14 16:10:21 2003  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkcombobox.c (gtk_combo_box_set_active_iter): New function
	to set the active row by iter.

	* gtk/gtkcombobox.c (gtk_combo_box_get_active_iter): New function
	to get the active row by iter.
2003-10-14 20:09:39 +00:00
Federico Mena Quintero
f6bb7584cd Don't do operations on windows if the tree view is not mapped.
2003-10-13  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Don't do
	operations on windows if the tree view is not mapped.
	(gtk_tree_view_button_press): Compare equal types of pointers, not
	GtkWidget* vs. GtkTreeView*.
2003-10-13 21:52:15 +00:00
Federico Mena Quintero
36eccd816f Walk the whole shortcuts model, not just the bookmarks part --- there is
2003-10-13  Federico Mena Quintero  <federico@ximian.com>

	* gtkfilechooserimpldefault.c (check_bookmarks_sensitivity): Walk
	the whole shortcuts model, not just the bookmarks part --- there
	is no need to add bookmarks for "stock" volume items.
	(gtk_file_chooser_impl_default_set_property): Oops, hide/show the
	tree/list as appropriate for the folder_mode property.
2003-10-13 19:59:37 +00:00
Kristian Rietveld
027d69003e remove the reset of first_sel_changed, as after the first popup the
Mon Oct 13 21:01:43 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkentrycompletion.c (gtk_entry_completion_popup): remove
	the reset of first_sel_changed, as after the first popup the treeview
	will always have a row selected and will thus not focus_to_cursor.

	* gtk/gtkentry.c (keyval_is_cursor_move): new function to determine
	whether the keyval should move the completion selection cursor (used
	to avoid ending up with extreme cluttered code), also added
	all KP_ equivalents of the keys here,
	(gtk_entry_completion_key_press): Keynav tweaks based on comments
	from Dave Bordoley and Marco Pesenti Gritti; add the -1 state
	as possible current selection, implement Home/End keys, modified
	the down key to stop cycling. Maybe page up/down should be implemented
	at some later time.
2003-10-13 19:07:34 +00:00
Kristian Rietveld
f84b5d512b I overlooked an if when I was adding the signal block/unblock code. Oops.
Mon Oct 13 20:21:38 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkentry.c (gtk_entry_set_text): I overlooked an if when
	I was adding the signal block/unblock code. Oops. (Noticed by
	Marco Pesenti Gritti).
2003-10-13 18:23:54 +00:00
Federico Mena Quintero
1d8d7be3c5 Read the file's information from gnome-vfs if we haven't finished loading
2003-10-12  Federico Mena Quintero  <federico@ximian.com>

	* gtkfilesystemgnomevfs.c (gtk_file_folder_gnome_vfs_get_info):
	Read the file's information from gnome-vfs if we haven't finished
	loading the directory yet.

	* gtkfilechooserimpldefault.c (tree_selection_changed): Set the
	sensitivity of the bookmarks button depending on whether the
	current folder already exists in the bookmarks list.
	(shortcuts_selection_changed): Re-select the appropriate shortcuts
	folder if the user clicks on the separator row.
	(set_list_model): New function; moved the code from
	tree_selection_changed().
	(tree_selection_changed): Use set_list_model().
	(create_folder_tree): Show the tree model only if we are in folder
	mode.
	(create_file_list): Show the list model only if we are not in
	folder mode.
2003-10-13 02:31:09 +00:00
Matthias Clasen
9119557bc6 Move GET_PRIVATE macros from header to implementation.
Sun Oct 12 01:10:29 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkalignment.[hc]:
	* gtk/gtkcombobox.[hc]:
	* gtk/gtkcomboboxentry.[hc]:
	* gtk/gtktreemodelfilter.[hc]: Move GET_PRIVATE macros
	from header to implementation.
2003-10-11 23:12:20 +00:00
Matthias Clasen
c44e5b00e0 Add G_BEGIN_DECLS/G_END_DECLS to make these usable in C++. (#124351,
Sat Oct 11 23:14:36 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkactiongroup.h:
	* gtk/gtkaction.h:
	* gtk/gtkradioaction.h:
	* gtk/gtkradiotoolbutton.h:
	* gtk/gtkseparatortoolitem.h:
	* gtk/gtktoggleaction.h:
	* gtk/gtktoolitem.h:
	* gtk/gtkuimanager.h: Add G_BEGIN_DECLS/G_END_DECLS to make
	these usable in C++.  (#124351, Murray Cumming)
2003-10-11 21:24:10 +00:00
Kristian Rietveld
407e957c04 Check if completion is non-NULL before accessing it. Oops.
Sat Oct 11 19:09:05 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkentry.c (gtk_entry_set_text): Check if completion is
	non-NULL before accessing it. Oops.
2003-10-11 17:10:37 +00:00
Kristian Rietveld
761a6745c3 the gchar* parameters should be const (pointed out by both Marco Pesenti
Sat Oct 11 15:47:03 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkentrycompletion.[ch] (gtk_entry_completion_insert_action),
	(gtk_entry_completion_insert_action_text),
	(gtk_entry_completion_insert_action_markup): the gchar* parameters
	should be const (pointed out by both Marco Pesenti Gritti and
	Murray Cumming (#124356).
2003-10-11 13:49:22 +00:00
Kristian Rietveld
d75b1a1a0a for the custom child list mode, allocate the height allocation->height to
Sat Oct 11 15:37:19 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkcombobox.c (gtk_combo_box_size_allocate): for the custom
	child list mode, allocate the height allocation->height to the
	button instead of the height requested by the button. (Tiny
	size allocation screwup noticed by Macro Pesenti Gritti).
2003-10-11 13:39:35 +00:00
Kristian Rietveld
c3841e7019 Fixes based on comments from Marco Pesenti Gritti.
Sat Oct 11 15:23:27 2003  Kristian Rietveld  <kris@gtk.org>

	Fixes based on comments from Marco Pesenti Gritti.

	* gtk/gtkentry.c (gtk_entry_set_text): block the completion changed
	signal handler, avoids the completion popup to popup when text is
	set programmatically in most cases (we actually have to handle this
	in the _editable functions as well, but that will break popping up
	when the user actually typed something :),
	(gtk_entry_completion_key_press): when handling enter, bail out
	when nothing has been selected,
	(gtk_entry_completion_changed): don't popdown when the entry content
	changed.

	* gtk/gtkentrycompletion.c (gtk_entry_completion_init),
	(gtk_entry_completion_selected_changed): unselect_all on the
	first selected changed signal. Avoids having a default row selected,
	(_gtk_entry_completion_popup): don't select the first row by default.

	* gtk/gtkentryprivate.h (struct _GtkEntryCompletionPrivate): add a
	first_sel_changed field.
2003-10-11 13:32:16 +00:00
Matthias Clasen
e8bcc9af66 Fixes for (#124212, Marco Pesenti Gritti):
Fri Oct 10 22:50:05 2003  Matthias Clasen  <maclas@gmx.de>

	Fixes for (#124212, Marco Pesenti Gritti):

	* gtk/gtkuimanager.c (update_smart_separators): Don't spit
	warnings for popups.
	(_gtk_menu_is_empty): Return FALSE for non-menus.
2003-10-10 20:54:50 +00:00
Kristian Rietveld
e6100ecd11 Deprecate. Ditto.
Fri Oct 10 19:10:12 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkcombo.h: Deprecate.
	* gtk/gtkoptionmenu.h: Ditto.

	* gtk/gtkcombobox.c (gtk_combo_box_size_request),
	(gtk_combo_box_size_allocate): Rework, things behave better now. Still
	needs some work on requesting enough size when taking the items in
	the list into account.

	* gtk/gtkfilesel.c: put gtkoptionmenu.h include inside "enable
	deprecated" guards.
	* gtk/gtkinputdialog.c: ditto.
	* gtk/gtkitemfactory.c: ditto.
	* gtk/gtkoptionmenu.c: ditto.

	* demos/gtk-demo/menus.c: remove the option menu.
	* demos/gtk-demo/sizegroup.c: replace the option menus with
	GtkComboBox.
	* demos/gtk-demo/textview.c: ditto.
	(A general GtkComboBox demo will be added later on).
2003-10-10 17:18:34 +00:00
Federico Mena Quintero
7d9c4f6ea3 Duuuh, cvs add the stupid files - Federico 2003-10-09 19:01:34 +00:00
Federico Mena Quintero
3415416b1b Autosize the columns after the model is set. (shortcuts_append_path): Add
2003-10-08  Federico Mena Quintero  <federico@ximian.com>

	* gtkfilechooserimpldefault.c (tree_selection_changed): Autosize
	the columns after the model is set.
	(shortcuts_append_path): Add optional indentation to items.
	(shortcuts_append_bookmarks): Indent bookmark items.
	(create_shortcuts_tree): Set the "xpad" attribute of the name
	renderer to be fetched from the indent column.
	(shortcuts_append_bookmarks): Use NULL for the name of the
	bookmarks node, so that a separator gets drawn.
	(create_shortcuts_tree): Create a GtkCellRendererSepText.

	* gtkcellrendererseptext.[ch]: New files with a cell renderer that
	can display text or a separator line.

	* Makefile.am (libgtkfilechooser_la_SOURCES): Added
	gtkcellrendererseptext.[ch].
2003-10-09 01:12:24 +00:00
Federico Mena Quintero
462aab4a64 Added methods for ::get_supports_bookmarks(), ::set_bookmarks(),
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.
2003-10-08 04:14:55 +00:00
Matthias Clasen
324228a33c Put the supported protocol version in in the right field of the
Tue Oct  7 23:23:05 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkplug.c (xembed_set_info): Put the supported protocol
	version in in the right field of the _XEMBED_INFO property.
	(#123885, Denis Mikhalkin)
2003-10-07 21:27:11 +00:00
Jonathan Blandford
18afbf48af only show the child if we have one.
Mon Oct  6 14:18:47 2003  Jonathan Blandford  <jrb@redhat.com>

        * gtk/gtkexpander.c (gtk_expander_animation_timeout): only show
        the child if we have one.

        (gtk_expander_button_release): use
        gtk_widget_activate instead.
2003-10-07 18:25:18 +00:00
Matthias Clasen
24a6781c61 Start the blurb for "right_attach" with a capital. (#123945, Christian
Mon Oct  6 21:05:46 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktable.c (gtk_table_class_init): Start the blurb for
	"right_attach" with a capital.  (#123945, Christian Rose)
2003-10-06 19:07:49 +00:00
Matthias Clasen
2bcd67efbb Trim whitespace in "visible-window" blurb. (#123910, Christian Rose)
Sun Oct  5 22:38:22 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkeventbox.c (gtk_event_box_class_init): Trim whitespace in
	"visible-window" blurb.  (#123910, Christian Rose)
2003-10-05 20:39:17 +00:00
Soeren Sandmann
26d22e865e focus arrow before pack_end items (#123851, Matthias Clasen)
Sun Oct  5 00:53:15 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c (gtk_toolbar_list_children_in_focus_order):
	focus arrow before pack_end items (#123851, Matthias Clasen)
2003-10-04 22:58:14 +00:00
Kristian Rietveld
7fc054e9a6 only set the model on ->priv->cell_view if ->priv->cell_view is non-NULL.
Fri Oct  3 20:50:48 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkcombobox.c (gtk_combo_box_set_model): only set the model
	on ->priv->cell_view if ->priv->cell_view is non-NULL.

	* gtk/gtkcomboboxentry.c: include gtkintl.h, add text_renderer
	field to GtkComboBoxEntryPrivate,
	(gtk_combo_box_entry_class_init), (gtk_combo_box_entry_init),
	(gtk_combo_box_entry_set_property), (gtk_combo_box_entry_get_property),
	(gtk_combo_box_entry_set_text_column), (gtk_combo_box_entry_new): add
	a construct-only "text_column" property and reorder code to use it
	and support inheriting this widget.
2003-10-03 18:56:24 +00:00
Kristian Rietveld
316109ea09 Added API doc comments.
Thu Oct  2 23:28:02 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkcombobox.c: Added API doc comments.

	* gtk/gtkcomboboxentry.c: Ditto.
2003-10-02 21:30:11 +00:00
Matthias Clasen
186f883d5c Doc tweaks- 2003-10-01 22:53:57 +00:00
Federico Mena Quintero
feb412c194 Simplify with a macro. This bloats the compiled code, but at least it
2003-10-01  Federico Mena Quintero  <federico@ximian.com>

	* gtkfilechooserimpldefault.c (name_sort_func): Simplify with a
	macro.  This bloats the compiled code, but at least it makes the
	human-readable code not egregiously ugly.
	(size_sort_func): Likewise.
	(mtime_sort_func): Likewise.
2003-10-01 21:40:17 +00:00
Kristian Rietveld
40743e126f implement the GtkCellLayout interface, drop packing/attribute/cell data
Wed Oct  1 22:43:40 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkcellview.[ch]: implement the GtkCellLayout interface, drop
	packing/attribute/cell data functions from the header,
	(gtk_cell_view_set_cell_data): added support for cell data funcs.

	* gtk/gtkcombobox.[ch]: implement the GtkCellLayout interface, drop
	packing/attribute/cell data functions from the header, implemented
	cell data func support.

	* gtk/gtkcomboboxentry.c (gtk_combo_box_entry_new): updated
	for the move to GtkCellLayout.

	* tests/testcombo.c (create_combo_box_grid_demo), (main): ditto.
2003-10-01 20:51:54 +00:00
Federico Mena Quintero
da29352587 Use enum values instead of plain numbers for the file lists's sort
2003-10-01  Federico Mena Quintero  <federico@ximian.com>

	* gtkfilechooserimpldefault.c (tree_selection_changed): Use enum
	values instead of plain numbers for the file lists's sort columns.
	(create_file_list): Likewise.
	(tree_selection_changed): Make the file list start up sorted by
	name, and don't specify a default sorting function, so that there
	is no unsorted order.  This is for consistency with Nautilus.
	(list_sort_column_changed_cb): Callback; we cache whether the sort
	order for the file list's name column is ascending or not.
	(compare_with_folders_first): New helper function to sort
	directories before files.
	(name_sort_func): Use compare_with_folders_first().
	(size_sort_func): Likewise.
	(mtime_sort_func): Likewise.

	Of course this callback mess would be easy in a real language:

	  (set-sort-func sortable NAME_COLUMN
	    (make-comparer impl (lambda (a b) (strcmp (get-name a) (get-name b)))))
	  (set-sort-func sortable SIZE_COLUMN
	    (make-comparer impl (lambda (a b) (compare (get-size a) (get-size b)))))
	  ... etc ...

	  (define (make-comparer impl f)
	    (lambda (a b)
	      (if (eq (is-dir? a) (is-dir? b))
	          (f a b)
		  (if (sort-ascending? impl)
		      (if (is-dir? a) -1 1)
		      (if (is-dir? a) 1 -1)))))
2003-10-01 19:42:50 +00:00
Matthias Clasen
6e87629f1a Introduce a separate "hide_if_empty" property for empty menu handling.
2003-10-01  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkaction.c (gtk_action_class_init):
	(gtk_action_[gs]et_property): Introduce a separate
	"hide_if_empty" property for empty menu handling.
	(_gtk_action_sync_menu_visible): ...and use it here.

	* tests/testmerge.c (main): ...and here.
2003-10-01 19:07:36 +00:00
Federico Mena Quintero
39e208d865 Added fields for the shortcuts tree and its model. (create_file_list):
2003-09-30  Federico Mena Quintero  <federico@ximian.com>

	* gtkfilechooserimpldefault.c (struct _GtkFileChooserImplDefault):
	Added fields for the shortcuts tree and its model.
	(create_file_list): Don't call
	gtk_tree_view_column_set_sort_column_id() twice.
	(create_shortcuts_model): New function.
	(list_icon_data_func): Use an ICON_SIZE macro instead of a
	hardcoded value.
	(list_row_activated): Use _gtk_file_chooser_set_current_folder_path()
	to avoid converting the GtkFilePath to a URI string.
	(gtk_file_chooser_impl_default_set_current_folder): Select the
	appropriate item from the shortcuts list when the current folder
	changes, to let the user know where he is.
	(tree_selection_changed): Likewise.

	* gtkfilesystem.h (struct _GtkFileSystemIface): Added methods for
	::supports_shortcuts(), ::list_shortcuts(), ::set_shortcuts().
2003-10-01 00:53:59 +00:00
Matthias Clasen
e8ea480893 Fix signal doc comments to pacify gtk-doc.
* gtk/gtktoolitem.c (gtk_tool_item_class_init): Fix signal doc
	comments to pacify gtk-doc.
2003-10-01 00:16:11 +00:00
Matthias Clasen
dbdc43be4c Doc formatting tweaks.
2003-10-01  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkmain.c: Doc formatting tweaks.

	* gtk/gtktoolitem.c (gtk_tool_item_set_is_important): Fix a typo.

	* gtk/gtkcheckmenuitem.h (gtk_check_menu_item_set_draw_as_radio):
	Use the same parameter names as in .c file, to pacify gtk-doc.

	* gtk/gtktoggletoolbutton.[hc]:
	* gtk/gtktoolbutton.[hc]:
	* gtk/gtktoolitem.[hc]:
	* gtk/gtktoolbar.[hc]:
	* gtk/gtkcolorbutton.[hc]:
	* gtk/gtkfontbutton.[hc]:
	* gtk/gtkalignment.[hc]: Define GET_PRIVATE macros in the
	source, not in the header.

	* gtk/gtkcheckmenuitem.c (gtk_check_menu_item_[sg]et_draw_as_radio):
	Document these as 2.4 API additions.

	* gtk/tmpl/gtkaction.sgml: Fix cross reference to GtkMenuMerge.

	* gtk/gtk-sections.txt: Additions.

	* gtk/tmpl/gtkitemfactory.sgml: Add hint to use #GtkUIManager instead.
2003-09-30 22:48:10 +00:00
Kristian Rietveld
881df5c460 Add API doc comments.
Tue Sep 30 23:42:56 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkentry.c (gtk_entry_set_completion),
	(gtk_entry_get_completion): Add API doc comments.

	* gtk/gtkentrycompletion.c: Fix #includes and add API doc comments.
2003-09-30 21:44:39 +00:00
Kristian Rietveld
b65b8538b5 Add "Since: 2.4" to all API doc comments.
Tue Sep 30 23:12:34 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreemodelfilter.c: Add "Since: 2.4" to all API doc comments.
2003-09-30 21:14:09 +00:00
Kristian Rietveld
1c88b37f73 Some API doc comment fixes.
Tue Sep 30 22:59:58 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreeviewcolumn.c: Some API doc comment fixes.

	* gtk/gtkcellayout.c: Fix #include and oooooh API doc comments!
2003-09-30 21:02:05 +00:00
Matthias Clasen
57f13d815d Test handling of empty menus.
2003-09-30  Matthias Clasen  <maclas@gmx.de>

	* tests/merge-*.ui:
	* tests/testmerge.c: Test handling of empty menus.

	* gtk/gtkuimanager.c (_gtk_menu_is_empty): New function to determine
	whether a menu is empty. Used in gtkaction.c.
	(update_smart_separators): Also update the visibility of empty menus.
	(update_node): When creating a new menu proxy, insert an "Empty" menu
	item which only gets shown if the menu is empty.

	* gtk/gtkaction.c (gtk_action_class_init): Document the meaning of
	"is_important" for menu proxies.
	(_gtk_action_sync_menu_visible): New function to sync the visibility
	of menu proxies. Used in gtkuimanager.c.
	(gtk_action_sync_visible): New function to sync the visibility of
	proxies.
2003-09-30 20:55:24 +00:00
Kristian Rietveld
039c6b3bb1 set popup_in_progress to TRUE, (gtk_combo_box_menu_show): and back to
Tue Sep 30 21:43:34 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkcombobox.c (gtk_combo_box_menu_button_press): set
	popup_in_progress to TRUE,
	(gtk_combo_box_menu_show): and back to FALSE here; the menu now
	won't disappear on the first button release. (Reported by Matthias
	Clasen).
2003-09-30 19:46:48 +00:00
Kristian Rietveld
b78ee57ea4 actually show the child.
Tue Sep 30 21:08:43 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkcombobox.c (gtk_combo_box_init): actually show the child.

	* gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): ditto. (#123543,
	Marco Pesenti Gritti).
2003-09-30 19:11:55 +00:00
Murray Cumming
fa7b750994 The render vfunc takes a GdkDrawable* instead of a GdkWindow*, because
2003-09-30  Murray Cumming  <murrayc@usa.net>

        * gtk/gtkcellrenderer.h: The render vfunc takes a GdkDrawable*
        instead of a GdkWindow*, because that what it is given. The
        documentation was already correct. This should cause no API/ABI
        breakage with C compilers.
        * gtk/gtkcellrenderertext.c, gtkcellrendererpixbuf.c,
        gtkcellrenderertogger.c: Updated the declarations of the render vfunc
        implementation accordingly.
2003-09-30 17:10:02 +00:00
Soeren Sandmann
dc423ba358 rename property tab_moves_focus to accepts_tab. (#122709 again).
Sat Sep 27 16:02:40 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktextview.[ch]: rename property tab_moves_focus to
	accepts_tab. (#122709 again).
2003-09-27 14:13:12 +00:00
Matthias Clasen
32a167b96a Document the fact that the newly created object does not come with a
2003-09-27  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkwindow.c (gtk_window_new):
	* gtk/gtkitemfactory.c (gtk_item_factory_new): Document
	the fact that the newly created object does not come with
	a floating reference.  (#103068, patch by Frederic Lespez)
2003-09-27 00:42:20 +00:00
Matthias Clasen
08573c0879 Deprecate GtkItemFactory in favor of GtkUIManager. Just leave
2003-09-27  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkitemfactory.h: Deprecate GtkItemFactory in favor
	of GtkUIManager. Just leave GtkTranslateFunc undeprecated,
	since GtkActionGroup uses it.
2003-09-26 23:59:42 +00:00
Matthias Clasen
eeed9d1890 Demonstrate the use of the connect-proxy signal.
2003-09-27  Matthias Clasen  <maclas@gmx.de>

	* tests/testmerge.c: Demonstrate the use of the
	connect-proxy signal.

	* gtk/gtkaction.c (connect_proxy): Add connect-proxy and
	disconnect-proxy signals to do small customizations
	like displaying tooltips in the statusbar without
	custom actions.  (#122894, Philip Langdale)

	* gtk/gtkuimanager.c (update_node): Don't leak tooltip.
2003-09-26 23:01:32 +00:00
Kristian Rietveld
c920afd9c5 Landing the new ComboBox. Note that only gtkcombobox.h and
Fri Sep 26 23:49:44 2003  Kristian Rietveld  <kris@gtk.org>

	Landing the new ComboBox. Note that only gtkcombobox.h and
	gtkcomboboxentry.h are public.

	* gtk/gtkcellview.[ch], gtk/gtkcellviewmenuitem.[ch],
	gtk/gtkcombobox.[ch], gtk/gtkcomboboxentry.[ch]: new files.

	* gtk/Makefile.am, gtk/gtk.h: adding the new files.

	* tests/testcombo.c: and a new test.

	* tests/Makefile.am: adding the new test.
2003-09-26 21:57:06 +00:00