Commit Graph

3949 Commits

Author SHA1 Message Date
Soeren Sandmann
540fa75f90 Phase 1 of fixing #128678: Only access ToolbarContent through a set of new
Sat Jan 17 16:53:08 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c:

	Phase 1 of fixing #128678: Only access ToolbarContent through a
	set of new functions:

	toolbar_content_expose, toolbar_content_visible,
	toolbar_content_size_request, toolbar_content_is_homogeneous,
	toolbar_content_get_child_requisition,
	toolbar_content_is_placeholder, toolbar_content_disappearing,
	toolbar_content_get_state, toolbar_content_child_visible,
	toolbar_content_get_goal_allocation,
	toolbar_content_get_allocation,
	toolbar_content_set_start_allocation,
	toolbar_content_get_start_allocation, toolbar_content_get_expand,
	toolbar_content_set_goal_allocation,
	toolbar_content_set_child_visible, toolbar_content_size_allocate,
	toolbar_content_set_state, toolbar_content_get_widget,
	toolbar_content_set_disappearing,
	toolbar_content_set_size_request,
	toolbar_content_toolbar_reconfigured,
	toolbar_content_retrieve_menu_item,
	toolbar_content_new_tool_item, toolbar_content_destroy,
	toolbar_content_is_separator

	Also fix #127092.
2004-01-17 16:58:17 +00:00
Soeren Sandmann
1daf55ae26 don't leak the menu item ID.
Sat Jan 17 12:55:13 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolitem.c (gtk_tool_item_finalize): don't leak the menu
	item ID.
2004-01-17 11:58:24 +00:00
Soeren Sandmann
43b44fff94 Don't leak the overflow menu.
Sat Jan 17 12:37:46 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c (gtk_toolbar_finalize): Don't leak the
	overflow menu.

	* gtk/gtktoolbar.h (struct _GtkToolbar): Make some fields public.
	[#127726]
2004-01-17 11:51:28 +00:00
Federico Mena Quintero
02cb455471 Added a has_editable field. (_gtk_file_system_model_add_editable): New
2004-01-16  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilesystemmodel.c (struct _GtkFileSystemModel): Added a
	has_editable field.
	(_gtk_file_system_model_add_editable): New function.
	(_gtk_file_system_model_remove_editable): New function.
	(gtk_file_system_model_get_value): Return appropriate values for
	the temporary editable row.
	(_gtk_file_system_model_get_info): Handle the editable row.
	(_gtk_file_system_model_get_path): Likewise.

	* gtk/gtkfilechooserdefault.c (shortcuts_append_bookmarks):
	Removed an unused variable.
	(toolbar_button_new): Optionally show the button.
	(up_button_clicked_cb): Renamed from up_button_cb(), fixed prototype.
	(toolbar_create): Add a "New Folder" button for Save mode.
	(error_building_filename_dialog): New helper function.
	(gtk_file_chooser_default_get_paths): Use error_building_filename_dialog().
	(create_file_list): Connect to the "edited" signal of the text
	cell renderer.  Store the name column and text renderer in the
	impl structure.
	(renderer_edited_cb): New callback.
	(gtk_file_chooser_default_set_property): Show/hide the "New
	folder" button when the save action changes.
	(COMPARE_DIRECTORIES): Allow the info values to be NULL.
	(COMPARE_DIRECTORIES): Duh, use the list_model, not the
	tree_model.
	(get_list_file_info): Likewise!
	(list_icon_data_func): Handle the path being NULL.
	(new_folder_button_clicked): New callback.
	(list_name_data_func): If we are on the editable row, set the text
	to "Type name of new folder".
	(list_selection_changed): Handle the editable row.
	(list_mtime_data_func): Likewise.

	* gtk/gtkfilesystemunix.c (gtk_file_system_unix_make_path): Return
	NULL, not FALSE.
	(gtk_file_system_unix_create_folder): Test the result of mkdir() correctly.
2004-01-17 04:34:49 +00:00
Matthias Clasen
07d4d314b6 The first part of the fix for #114351 (see also gdk-pixbuf/ChangeLog and
Fri Jan 16 23:59:01 2004  Matthias Clasen  <maclas@gmx.de>

	The first part of the fix for #114351 (see also
	gdk-pixbuf/ChangeLog and po/ChangeLog):

	* gtk/gtkintl.h:
	* gdk-pixbuf/gdk-pixbuf-i18n.h:
	* gdk/gdkintl.h: Define P_() for property blurbs and nicks.

	* gdk/gdkdisplaymanager.c:
	* gdk-pixbuf/gdk-pixbuf.c:
	* modules/input/gtkimcontextxim.c:
	* gtk/*.c:  Mark property blurbs and nicks with P_().

	* po/Makefile.in.in: Add --keyword=P_ to the xgettext
	invocation, since property blurbs and nicks are
	now marked with P_().
2004-01-16 23:10:05 +00:00
Federico Mena Quintero
fb526d239a Fix #130969.
2004-01-16  Federico Mena Quintero  <federico@ximian.com>

	Fix #130969.

	* gtk/gtkcellrenderer.h (struct _GtkCellRendererClass): Added an
	editing_canceled signal.

	* gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): Create the
	"editing-canceled" signal.
	(gtk_cell_renderer_editing_canceled): New function.

	* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_editing_done):
	Call gtk_cell_renderer_editing_canceled().
2004-01-16 19:18:28 +00:00
Federico Mena Quintero
c6860c111b Do not allow setting select_multiple when in Save mode. (set_list_model):
2004-01-16  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilechooserdefault.c
	(gtk_file_chooser_default_set_property): Do not allow setting
	select_multiple when in Save mode.
	(set_list_model): No need to nullify the list_model and
	sort_model.
	(gtk_file_chooser_default_get_paths): Handle folder mode as well.
	(get_paths_foreach): Likewise.

	* gtk/gtkfilechooser.c (gtk_file_chooser_get_filename): Clarify
	documentation about folder mode.
	(gtk_file_chooser_get_uri): Likewise.
2004-01-16 05:12:21 +00:00
Federico Mena Quintero
f2f12b9aae New get_volume_for_path() method. (struct _GtkFileSystemIface): Finally
2004-01-16  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilesystem.h (struct _GtkFileSystemIface): New
	get_volume_for_path() method.
	(struct _GtkFileSystemIface): Finally removed the list_roots() and
	get_root_info() methods, and the "roots-changed" signal.

	* gtk/gtkfilesystem.c (gtk_file_system_get_volume_for_path): New
	function.
	(gtk_file_system_list_roots): Removed.
	(gtk_file_system_get_root_info): Removed.

	* gtk/gtkfilesystemunix.c
	(gtk_file_system_unix_get_volume_for_path): Implement.
	(get_root_volume): New helper function.
	(gtk_file_system_unix_list_volumes): Use get_root_volume().
	(gtk_file_system_unix_list_roots): Removed.
	(gtk_file_system_unix_get_root_info): Removed.

	* gtk/gtkfilesystemmodel.c (_gtk_file_system_model_new): Don't
	accept a NULL root_path.
	(struct _GtkFileSystemModel): Add a field to remember the
	root_path.
	(_gtk_file_system_model_new): Store the root_path in the model
	structure.
	(find_and_ref_path): Stop going up the hierarchy at the root_path
	of the model.  Also, don't return prematurely when walking up the
	hierarchy.

	* gtk/gtkfilechooserdefault.c (create_file_list): Sigh, restore
	the rules_hint.
	(struct _GtkFileChooserDefault): Added a current_volume_path field.
	(set_tree_model): New function; create the folder tree model here.
	(create_folder_tree): Don't create the model here.
	(set_list_model): Set the show_hidden flag on the list model.
2004-01-16 03:35:33 +00:00
Matthias Clasen
ccdf56088b Return the index of the newly inserted page. (#130986, Olexiy Avramchenko)
Fri Jan 16 00:04:43 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtknotebook.h:
	* gtk/gtknotebook.c (gtk_notebook_append_page):
	* gtk/gtknotebook.c (gtk_notebook_append_page_menu):
	* gtk/gtknotebook.c (gtk_notebook_prepend_page):
	* gtk/gtknotebook.c (gtk_notebook_prepend_page_menu):
	* gtk/gtknotebook.c (gtk_notebook_insert_page):
	* gtk/gtknotebook.c (gtk_notebook_insert_page_menu): Return the
	index of the newly inserted page.  (#130986, Olexiy Avramchenko)
2004-01-15 23:04:43 +00:00
Matthias Clasen
36d79ded77 Inserting a 'newly-allocated' to hint that the list should be freed after
Thu Jan 15 23:17:14 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkuimanager.c (gtk_ui_manager_get_toplevels): Inserting
	a 'newly-allocated' to hint that the list should be freed after
	use.
2004-01-15 22:15:39 +00:00
Jonathan Blandford
40bd0ccb17 move grab_focus to after handling the button presses in the TreeView to
Wed Jan 14 18:01:52 2004  Jonathan Blandford  <jrb@gnome.org>

        * gtk/gtktreeview.c (gtk_tree_view_button_press): move grab_focus
        to after handling the button presses in the TreeView to avoid
        getting multiple selection_changes()
2004-01-15 00:12:23 +00:00
Matthias Clasen
7c57c63bff Documentation fix. (#131335, Theppitak Karoonboonyanan)
Wed Jan 14 21:16:20 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkimcontext.c: Documentation fix.  (#131335, Theppitak
	Karoonboonyanan)
2004-01-14 20:14:30 +00:00
Matthias Clasen
6aa252e720 Don't leak name and stock_id. (#131358, Morten Welinder)
Wed Jan 14 21:00:49 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel):
	Don't leak name and stock_id.  (#131358, Morten Welinder)
2004-01-14 20:10:27 +00:00
Matthias Clasen
ecb75e12b5 Add a writable group property to align with the GtkRadioButton API.
Wed Jan 14 02:34:57 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkradioaction.c: Add a writable group property to align
	with the GtkRadioButton API.  (#129166, Olivier Andrieu)
2004-01-14 01:33:53 +00:00
Jody Goldberg
c73ab06ef5 Adjust to the new connect_proxy signals.
Mon Jan 12 23:40:34 2004  Matthias Clasen  <maclas@gmx.de>

	* tests/testmerge.c: Adjust to the new connect_proxy signals.

	* gtk/gtkuimanager.c
	* gtk/gtkactiongroup.c
	* gtk/gtkaction.c: Move the connect_proxy and disconnect_proxy signals
	from GtkAction to GtkActionGroup and proxy it on GtkUIManager. This
	removes the confusion between the disconnect_/connect_proxy signals
	and the (unrelated) virtual functions of the same name and aligns
	the setup with the pre_/post_activate signals.

2004-01-12  Jody Goldberg <jody@gnome.org>

	* gtk/gtkaction.c (connect_proxy) : only connect activate for menus
	  with no submenus otherwise it looks like we activate every time a
	  submenu opens.

2004-01-10  Jody Goldberg <jody@gnome.org>

	* gtk/gtkuimanager.c (d) : Add a debug macro to quiet the spew.
	s/merge_signals/ui_manager_signals/ for readability.
	(gtk_ui_manager_class_init) : add pre_activate and post_activate
	  signals.
	(cb_proxy_pre_activate) : new.
	(cb_proxy_post_activate) : new.
	(gtk_ui_manager_insert_action_group) : connect the proxies for
	  GtkActionGroup::pre/post_activate
	(gtk_ui_manager_remove_action_group) : disconnect them.

	* gtk/gtkactiongroup.c (gtk_action_group_class_init) : add
	  'sensitive', and 'visible' properties.  Also add pre_activate and
	  post_activate signals to help deal with activations at a higher
	  level (eg GtkUIManager)
	(gtk_action_group_init) : init sensitive and visible
	(gtk_action_group_set_property) : add sensitive and visible
	(gtk_action_group_get_property) : add sensitive and visible
	(gtk_action_group_get_sensitive) : new.
	(gtk_action_group_get_visible) : new.
	(cb_set_action_sensitivity) : new with minor optimization that only
	  signals sensitivity changes if the action could possibly change.
	(cb_set_action_visiblility) : ditto.
	(gtk_action_group_set_sensitive) : new.  walk the actions directly
	  rather than using notify::sensitive because that is simpler, easier
	  to read, and more efficient.
	(gtk_action_group_set_visible) : ditto.
	(gtk_action_group_add_action) : Each action can only be in 1 group,
	  set GtkAction::action_group.
	(gtk_action_group_remove_action) : clear it.
	(gtk_action_group_add_toggle_actions_full) : warning suppression.
	(gtk_action_group_add_radio_actions_full) : warning suppression.
	(_gtk_action_group_emit_pre_activate) : new protected routine for use
	  by GtkAction.
	(_gtk_action_group_emit_post_activate) : ditto.

	* gtk/gtkaction.c (gtk_action_class_init) : add 'action_group' property.
	(gtk_action_init) : initialize it.
	(gtk_action_get_property) : get.
	(gtk_action_set_property) : set it via
	(gtk_action_set_action_group) : new function.
	(gtk_action_sync_sensitivity) : new routine to sync proxy sensitivity
	  with the logical sensitivity (action & group) rather than the simple
	  action::sensitivity.
	(gtk_action_sync_visible) : use gtk_action_is_visible to handle
	  logical visibility (action & group) rather than the simple
	  action::visible.  Use widget show/hide directly.
	(connect_proxy) : handle the custom sensitivity handler.
	  Make the TOOL_BUTTON signals more general and support TOOL_ITEM
	  directly, with special cases for TOOL_BUTTON.  Still not especially
	  good it might be useful to handle label/use_underline by parmspec
	  lookup.  Those are likely to be implemented by custom types, and are
	  assumed to exist in GtkToolItem.
	(disconnect_proxy) : disconnect the new sensitivity handler.
	(_gtk_action_emit_activate) : add pre/post signals.
	(gtk_action_activate) : use logical sensitivity.
	(gtk_action_is_sensitive) : logical sensitivity.
	(gtk_action_get_sensitive) : actual sensitivity.
	(closure_accel_activate) : use logical sensitivity.
2004-01-12 22:45:45 +00:00
Matthias Clasen
93bc689cb0 Remove accidentially committed debug spew.
Mon Jan 12 00:10:20 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkuimanager.c: Remove accidentially committed debug spew.
2004-01-11 23:08:13 +00:00
Matthias Clasen
130c18a1ea Remove accidentally committed notification stuff.
Sun Jan 11 01:55:07 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkaccelmap.c: Remove accidentally committed notification stuff.
	(gtk_accel_map_lock_path):
	(gtk_accel_map_unlock_path): Path locking can now be nested, a missing
	entry is silently created during lock_path(), and treated as an error
	during unlock_path(). These changes have been requested by Tim Janik.
2004-01-11 01:05:42 +00:00
Matthias Clasen
e57f989137 Introduce a new parser state for accelerator elements to avoid misparsing
Fri Jan  9 22:23:45 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkuimanager.c: Introduce a new parser state for
	accelerator elements to avoid misparsing files containing
	such elements.  (#131035, Morten Welinder)
2004-01-09 21:22:38 +00:00
Matthias Clasen
f2bb20cc15 New function to obtain a list of toplevel widgets constructed by the ui
Fri Jan  9 00:34:57 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkuimanager.h:
	* gtk/gtkuimanager.c (gtk_ui_manager_get_toplevels): New function to
	obtain a list of toplevel widgets constructed by the ui manager.

	* gtk/gtkuimanager.h (GtkUIManagerItemType): Change to flags, so that
	the values can be combined for gtk_ui_manager_get_toplevels().

	* tests/testmerge.c: Add a "Dump toplevels" button to test
	gtk_ui_manager_get_toplevels().
2004-01-08 23:37:34 +00:00
Matthias Clasen
bdc6765be7 Change the return value from gint to gboolean. (#130718, reported by
Wed Jan  7 23:07:28 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkmain.h:
	* gtk/gtkmain.c (gtk_events_pending): Change the return value from
	gint to gboolean.  (#130718, reported by Johannes Weißl)
2004-01-07 22:06:07 +00:00
Matthias Clasen
bc3d9ffadf Remove the redundant name and stock_id parameters, adjust all callers.
Wed Jan  7 23:03:32 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkactiongroup.h:
	* gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel):
	Remove the redundant name and stock_id parameters, adjust all callers.
2004-01-07 22:02:02 +00:00
Matthias Clasen
a11e45a1eb Add creation functions for actions.
Wed Jan  7 22:20:20 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkaction.h:
	* gtk/gtkaction.c (gtk_action_new):
	* gtk/gtktoggleaction.h:
	* gtk/gtktoggleaction.c (gtk_toggle_action_new):
	* gtk/gtkradioaction.h:
	* gtk/gtkradioaction.c (gtk_radio_action_new): Add creation
	functions for actions.

	* gtk/gtkactiongroup.c (gtk_action_group_add_actions_full):
	(gtk_action_group_add_toggle_actions_full):
	(gtk_action_group_add_radio_actions_full): and use the
	new functions here.  (#125322, Patch by Jeff Frank)
2004-01-07 21:54:33 +00:00
Matthias Clasen
c22143c9e0 Fix grammar of docs.
Wed Jan  7 21:42:49 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkaccelmap.c (gtk_accel_map_lock_path): Fix grammar of
	docs.
2004-01-07 20:44:07 +00:00
Jan Arne Petersen
77cbf47adf add REMOVABLE column to the shortcuts_model.
2004-01-07  Jan Arne Petersen  <jpetersen@uni-bonn.de>

        * gtk/gtkfilechooserdefault.c: (shortcuts_insert_path),
        (shortcuts_append_home), (shortcuts_append_desktop),
        (shortcuts_append_paths), (shortcuts_add_volumes),
        (shortcuts_append_bookmarks), (create_shortcuts_model),
        (gtk_file_chooser_default_add_shortcut_folder): add REMOVABLE column
        to the shortcuts_model.

        (remove_bookmark_button_clicked_cb),
        (bookmarks_check_remove_sensitivity): use REMOVABLE column to check if
        bookmarks can be removed. Fixes #129873
2004-01-07 17:07:18 +00:00
Jody Goldberg
72b7abd535 Call gtk_tool_item_set_visible_vertical for PROP_VISIBLE_VERTICAL.
2004-01-06  Jody Goldberg <jody@gnome.org>

	* gtk/gtktoolitem.c (gtk_tool_item_set_property) : Call
	  gtk_tool_item_set_visible_vertical for PROP_VISIBLE_VERTICAL.
2004-01-06 20:39:48 +00:00
Federico Mena Quintero
f9aff042b8 Use 0777 as the mode for mkdir() and let the umask do the right thing.
2004-01-06  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilesel.c (gtk_file_selection_create_dir_confirmed): Use
	0777 as the mode for mkdir() and let the umask do the right
	thing.  Fixes #121819.
2004-01-06 20:34:47 +00:00
Federico Mena Quintero
24b50606f9 g_path_skip_root() can return NULL; handle this. Fixes #129565.
2004-01-06  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilesystemunix.c (filename_is_root): g_path_skip_root()
	can return NULL; handle this.  Fixes #129565.
2004-01-06 20:20:43 +00:00
Alexander Winston
d93c0df0af Removed space that proceeded the end-of-sentence punctuation. Fixes:
2004-01-06  Alexander Winston  <alexander.winston@comcast.net>

	* gtk/gtkfilesel.c: (gtk_file_selection_delete_file): Removed space
	that proceeded the end-of-sentence punctuation. Fixes: #130353.
2004-01-06 13:52:51 +00:00
Federico Mena Quintero
96b8f1c176 Oops, call shortcuts_add_bookmarks() here.
2004-01-05  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilechooserdefault.c (shortcuts_append_bookmarks): Oops,
	call shortcuts_add_bookmarks() here.
	(remove_bookmark_button_clicked_cb): Ahem, fetch the selected
	iter.
	(shortcuts_append_paths): Don't display error dialogs here.
	(create_file_list): Remove the @#$% rules hint.
2004-01-06 05:13:31 +00:00
Federico Mena Quintero
50e38e513a New helper function. (toolbar_create): Do not use a toolbar widget, just
2004-01-05  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilechooserdefault.c (toolbar_button_new): New helper
	function.
	(toolbar_create): Do not use a toolbar widget, just an hbox
	instead.  Add the bookmarks buttons and the current folder label
	here.
	(create_filename_entry_and_filter_combo): Create the filter combo
	here.
	(filter_create): Don't show the filter combo initially.
	(up_button_cb): Renamed from toolbar_up_cb().
	(create_shortcuts_buttons): Removed.
2004-01-06 04:18:42 +00:00
Soeren Sandmann
27ca7a08aa Change API so group is a GtkRadioButton, not a GtkWidget.
Sun Jan  4 15:29:04 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkradiotoolbutton.[ch]
	(gtk_radio_tool_button_new_with_stock_from_widget): Change API so
	group is a GtkRadioButton, not a GtkWidget.
2004-01-04 20:00:30 +00:00
Hans Breuer
5f98762951 use SWP_NOACTIVATE in gdk_window_set_keep_(above|below) to make DND work
2004-01-04  Hans Breuer  <hans@breuer.org>

	* gdk/win32/gdkwindow-win32.c : use SWP_NOACTIVATE in
	gdk_window_set_keep_(above|below) to make DND work again.
	Thanks to Alif Wahid for noticing.

	* gdk/gdk.def : update externals

	* gtk/gtkfilesystemwin32.c : adapt to GtkFileSystemIFace changes

	* gtk/gtk-stock.[hc] gtk/gtkiconfactory.c
	  gtk/stock-icons/Makefile.am gtk/stock-icons/makefile.msc :
	  gtk/stock-icons/stock_harddisk_16.png
	  gtk/stock-icons/stock_harddisk_24.png
	Harddisk stock icons for file system implementations. Beside
	FLOPPY and CDROM there is now HARDDISK, probably some
	GTK_STOCK_NETWORK would be useful, but I could not find one.
2004-01-04 15:45:56 +00:00
Manish Singh
19c17861c6 Update freedesktop.org clipboard doc link. Patch from Andrew Moise
Sat Jan  3 11:39:42 2004  Manish Singh  <yosh@gimp.org>

        * gtk/gtkclipboard.c: Update freedesktop.org clipboard doc link.
        Patch from Andrew Moise (#130462).
2004-01-03 19:43:54 +00:00
Jody Goldberg
9acc941959 add visible_horizontal, visible_vertical. (gtk_action_class_init) : here.
2004-01-01  Jody Goldberg <jody@gnome.org>

	* gtk/gtkaction.c (_GtkActionPrivate) : add visible_horizontal,
	  visible_vertical.
	(gtk_action_class_init) : here.
	(gtk_action_init) : here.
	(gtk_action_set_property) : here.
	(gtk_action_get_property) : here.
	(connect_proxy) : and here.

2003-12-30  Jody Goldberg <jody@gnome.org>

	* gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel) :  new
	  utility routine for use in derived GtkActions with the replicated code
	  from.
	(gtk_action_group_add_actions_full) : here.
	(gtk_action_group_add_toggle_actions_full) : here.
	(gtk_action_group_add_radio_actions_full) : and here.

2003-12-24  Jody Goldberg <jody@gnome.org>

	* gtk/gtkactiongroup.h : Add some const to the char * in
	  GtkActionEntry*.  We're reccomending people pass static strings to
	  them, and not freeing them.  This stems to flood of warnings that
	  result.
	* gtk/gtkactiongroup.c (gtk_action_group_add_actions_full) : change
	  temp vars to const to match above.
	(gtk_action_group_add_toggle_actions_full) : ditto.
	(gtk_action_group_add_radio_actions_full) : ditto.
2004-01-02 23:14:28 +00:00
Matthias Clasen
194c2550f6 Changes to support week_start values other than 0 and 1, e.g. 6 will let
Fri Jan  2 02:50:11 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcalendar.c (gtk_calendar_compute_days):
	* gtk/gtkcalendar.c (gtk_calendar_paint_day_names):
	* gtk/gtkcalendar.c (gtk_calendar_init): Changes to support
	week_start values other than 0 and 1, e.g. 6 will let weeks start
	on Saturday.  (#130353, Roozbeh Pournader)
2004-01-02 01:52:04 +00:00
Christian Neumair
0e08ebc7d4 Use ngettext for plurals (#123847). 2003-12-31 16:02:22 +00:00
Matthias Clasen
e902118f0f Pull accelerator key from the stock item if stock_id is given, but
Wed Dec 31 02:05:39 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkactiongroup.c (gtk_action_group_add_actions_full):
	(gtk_action_group_add_toggle_actions_full):
	(gtk_action_group_add_radio_actions_full): Pull accelerator key
	from the stock item if stock_id is given, but accelerator
	not.  (Noticed by Jeff Franks and Jody Goldberg)

	* tests/testmerge.c: Remove the accelerator from the "Open" entry
	to test the above change.
2003-12-31 01:05:57 +00:00
Federico Mena Quintero
700335123a Make show_all() work for the extra and preview widgets; reported by Paolo
2003-12-29  Federico Mena Quintero  <federico@ximian.com>

	Make show_all() work for the extra and preview widgets; reported
	by Paolo Maggi.

	* gtk/gtkfilechooserdefault.c (set_preview_widget): show_all() the
	preview widget.
	(set_extra_widget): show_all() the extra widget.
2003-12-29 20:55:01 +00:00
Soeren Sandmann
912b0944dc Add GDK_THREADS_ENTER()/GDK_THREADS_LEAVE() pairs around idle functions.
Mon Dec 29 12:22:22 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkuimanager.c (do_updates):
	* gtk/gtktoolbar.c (slide_idle_handler):
	* gtk/gtkdnd.c (gtk_drag_update_idle):

	Add GDK_THREADS_ENTER()/GDK_THREADS_LEAVE() pairs around idle
	functions. (#130157, patch from Olexiy Avramchenko).
2003-12-29 11:35:43 +00:00
Anders Carlsson
90646daf19 Update my e-mail address.
2003-12-29  Anders Carlsson  <andersca@gnome.org>

	* gtk/gtkradiotoolbutton.c:
	* gtk/gtkradiotoolbutton.h:
	* gtk/gtkseparatortoolitem.c:
	* gtk/gtkseparatortoolitem.h:
	* gtk/gtktoggletoolbutton.c:
	* gtk/gtktoggletoolbutton.h:
	* gtk/gtktoolbar.c:
	* gtk/gtktoolbar.h:
	* gtk/gtktoolbutton.c:
	* gtk/gtktoolbutton.h:
	* gtk/gtktoolitem.c:
	* gtk/gtktoolitem.h:
	Update my e-mail address.
2003-12-29 10:55:53 +00:00
Matthias Clasen
a5c30a3aca Add a way to lock individual accelerator paths. (#73207, reported by Havoc
Mon Dec 29 01:36:22 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkaccelmap.[hc]: (gtk_accel_map_lock_path,
	gtk_accel_map_unlock_path): Add a way to lock individual accelerator
	paths.  (#73207, reported by Havoc Pennington)
2003-12-29 00:38:50 +00:00
Soeren Sandmann
df9e4fa8b5 use CHILD_VISIBLE instead of VISIBLE to determine whether we should stop
Sat Dec 27 23:17:56 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c (slide_idle_handler): use CHILD_VISIBLE
	instead of VISIBLE to determine whether we should stop
	sliding. (#130018, reported by Christian Persch).
2003-12-27 22:19:33 +00:00
Matthias Clasen
a64ce01213 Don't use first_action without initializing it if n_entries is 0.
Fri Dec 26 23:24:35 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full):
	Don't use first_action without initializing it if n_entries is 0.
2003-12-26 22:23:50 +00:00
Manish Singh
874c2ce9cc fix GTK_TYPE_ICON_INFO macro, reported by muppet.
Tue Dec 23 22:34:50 2003  Manish Singh  <yosh@gimp.org>

        * gtk/gtkicontheme.h: fix GTK_TYPE_ICON_INFO macro, reported by
        muppet.
2003-12-24 06:32:28 +00:00
Matthias Clasen
5a76c23600 Add GtkClipboardTargetReceivedFunc, gtk_clipboard_request_targets() and
Wed Dec 24 01:12:53 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkclipboard.[hc]: Add GtkClipboardTargetReceivedFunc,
	gtk_clipboard_request_targets() and
	gtk_clipboard_wait_for_targets().  (#101774, Dom Lachowicz)
2003-12-24 00:14:15 +00:00
Matthias Clasen
5bacfe3936 Use gtk_paint_arrow instead of draw_arrow_left/draw_arrow_right. Removed.
Mon Dec 22 00:40:39 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcalendar.c (gtk_calendar_paint_arrow): Use
	gtk_paint_arrow instead of draw_arrow_left/draw_arrow_right.
	* gtk/gtkcalendar.c (draw_arrow_left):
	(draw_arrow_right): Removed.
	* gtk/gtkcalendar.c (gtk_calendar_realize_arrows):
	* gtk/gtkcalendar.c (gtk_calendar_state_changed): Set the
	arrow_state to GTK_STATE_INSENSITIVE if the calendar is
	insensitive.  (#97376)
2003-12-21 23:41:26 +00:00
Matthias Clasen
6a6455d7e3 Fix memory leaks caused by the failure to free the result of
Sun Dec 21 23:17:01 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkuimanager.c (update_node):
	(update_smart_separators):
	(_gtk_menu_is_empty):
	(find_menu_position):
	* gtk/gtktreeview.c (gtk_tree_view_search_dialog_destroy):
	* gtk/gtkcombobox.c (gtk_combo_box_relayout_item):
	(gtk_combo_box_relayout): Fix memory leaks caused by the
	failure to free the result of gtk_container_get_children().
	(#127576, Yao Zhang)
2003-12-21 22:28:14 +00:00
Matthias Clasen
b21fe1745c New function to emit the "cancel" signal on a menu shell.
Sun Dec 21 01:54:40 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkmenushell.h:
	* gtk/gtkmenushell.c (gtk_menu_shell_cancel): New function
	to emit the "cancel" signal on a menu shell.

	* gtk/gtkmenu.c (gtk_menu_key_press):
	* gtk/gtkoptionmenu.c (gtk_option_menu_remove_menu):
	* gtk/gtkmenubar.c (_gtk_menu_bar_cycle_focus): Use the
	new function instead of directly emitting the
	signal.  (#81803, Owen Taylor)
2003-12-21 00:59:46 +00:00
Matthias Clasen
f3faa16dab Fix the "language_set" blurb. (#129720, Christian Rose)
Sun Dec 21 00:39:50 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
	Fix the "language_set" blurb.  (#129720, Christian Rose)
2003-12-20 23:43:30 +00:00
Kristian Rietveld
5f65142b3c do not invalidate all of treeview when resizing (#110074, patch from
Sat Dec 20 22:06:03 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreeview.c (gtk_tree_view_size_allocate): do not invalidate
	all of treeview when resizing (#110074, patch from Soeren Sandmann).
2003-12-20 21:08:24 +00:00
Kristian Rietveld
2f4326e406 Fixes #108458.
Fri Dec 19 23:36:00 2003  Kristian Rietveld  <kris@gtk.org>

	Fixes #108458.

	* gtk/gtkcelllayout.[ch]: added a reorder method.

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_layout_init),
	(gtk_tree_view_column_cell_layout_reorder): implement reorder.

	* gtk/gtkcellview.c (gtk_cell_view_cell_layout_init),
	(gtk_cell_view_cell_layout_reorder): ditto.

	* gtk/gtkcombobox.c (gtk_combo_box_cell_layout_init),
	(gtk_combo_box_cell_layout_reorder): ditto.

	* gtk/gtkentrycompletion.c (gtk_entry_completion_cell_layout_init),
	(gtk_entry_completion_reorder): ditto.
2003-12-19 22:47:20 +00:00
Kristian Rietveld
30d9f88996 use strstr instead of strcmp (#117127, suggestion from Soeren Sandmann).
Fri Dec 19 22:18:19 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreeview.c (gtk_tree_view_search_equal_func): use strstr
	instead of strcmp (#117127, suggestion from Soeren Sandmann).
2003-12-19 21:21:12 +00:00
Kristian Rietveld
8a834dce94 move item insertion logic here from gtk_menu_real_insert(),
Fri Dec 19 21:52:46 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkmenu.c (gtk_menu_do_insert): move item insertion logic
	here from gtk_menu_real_insert(),
	(gtk_menu_real_insert): just call gtk_menu_do_insert(),
	(gtk_menu_reorder_child): run _do_insert after inserting the child
	(unbreaks _reorder_child, reported by Tim Janik).
2003-12-19 20:56:19 +00:00
Federico Mena Quintero
f615072cde Use g_date_strftime() for UTF-8 correctness; use Julian dates to simplify
2003-12-19  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilechooserdefault.c (list_mtime_data_func): Use
	g_date_strftime() for UTF-8 correctness; use Julian dates to
	simplify the function.
2003-12-19 17:38:54 +00:00
Matthias Clasen
bc5d7efe97 Fix the behaviour of insensitive actions, which was broken when
Fri Dec 19 01:35:34 2003  Matthias Clasen  <maclas@gmx.de>

	Fix the behaviour of insensitive actions, which was broken
	when gtk_action_activate() was changed to pay attention to
	sensitivity  (#129557, Christian Persch)

	* gtk/gtkaction.h:
	* gtk/gtkaction.c (_gtk_action_emit_activate): New auxiliary
	function to emit an activate signal without regard to sensitivity.

	* gtk/gtkradioaction.c:
	* gtk/gtktoggleaction.c: Always use _gtk_action_emit_activate()
	instead of gtk_action_activate().
2003-12-19 00:39:10 +00:00
Kristian Rietveld
4d9e9afdc1 Fixes #110249, reworked patch from Joshua N Pritikin.
Thu Dec 18 19:13:12 2003  Kristian Rietveld  <kris@gtk.org>

	Fixes #110249, reworked patch from Joshua N Pritikin.

	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_type),
	(gtk_tree_model_sort_tree_drag_source_init),
	(gtk_tree_model_sort_row_draggable),
	(gtk_tree_model_sort_drag_data_get),
	(gtk_tree_model_sort_drag_data_delete): implement GtkTreeDragSource.

	* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_get_type),
	(gtk_tree_model_filter_tree_drag_source_init),
	(gtk_tree_model_filter_row_draggable),
	(gtk_tree_model_filter_drag_data_get),
	(gtk_tree_model_filter_drag_data_delete): ditto.
2003-12-18 18:19:05 +00:00
Kristian Rietveld
dad34f29b2 add key bindings for "*" and "/" (expand/collapse all). (#110195, reported
Thu Dec 18 18:01:01 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreeview.c (gtk_tree_view_class_init): add key bindings
	for "*" and "/" (expand/collapse all). (#110195, reported by
	Calum Benson).
2003-12-18 17:03:42 +00:00
Kristian Rietveld
10b2c91b23 clear the extra_attrs list if we set "text" after "markup". (Fixes
Thu Dec 18 17:52:56 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property):
	clear the extra_attrs list if we set "text" after "markup".
	(Fixes #121933, Federico Mena Quintero).
2003-12-18 16:55:58 +00:00
Alexander Larsson
0fe8b2d6d5 Fix typo that used the wrong x/y values for the x1, y1 point
2003-12-18  Alexander Larsson  <alexl@redhat.com>

	* gtk/gtkicontheme.c (gtk_icon_info_get_embedded_rect):
	Fix typo that used the wrong x/y values for the x1, y1 point
2003-12-18 16:08:01 +00:00
Kristian Rietveld
bc6e2d5563 added language and language_set properties like GtkTextTag has. (#103800,
Thu Dec 18 01:41:50 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init),
	(gtk_cell_renderer_text_finalize),
	(gtk_cell_renderer_text_get_property),
	(gtk_cell_renderer_text_set_property), (get_layout): added language
	and language_set properties like GtkTextTag has. (#103800, reported
	by Owen Taylor).
2003-12-18 00:44:37 +00:00
Matthias Clasen
3050f437c5 Correct misleading docs. Add docs for the "activate" signal. (#129358,
Thu Dec 18 01:37:59 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkwidget.c (gtk_widget_activate): Correct misleading docs.
	* gtk/gtkbutton.c (gtk_button_class_init): Add docs for the
	"activate" signal.  (#129358, Ka-Hing Cheung)
2003-12-18 00:39:17 +00:00
Kristian Rietveld
66def98927 Jonathan got the logical flag backwards in the expand_collapse_cursor_row
Thu Dec 18 01:21:59 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreeview.c (gtk_tree_view_class_init): Jonathan got
	the logical flag backwards in the expand_collapse_cursor_row
	bindings, fixing.
	(gtk_tree_view_real_expand_collapse_cursor_row): invert expand
	flag when !logical and in RTL. (Fixes #107527, reported by
	Noah Levitt).
2003-12-18 00:25:11 +00:00
Kristian Rietveld
0b3fa61b7e only start editing when activated by the left mouse button. (#106869,
Thu Dec 18 01:10:16 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreeview.c (gtk_tree_view_button_press): only start
	editing when activated by the left mouse button. (#106869,
	patch from Evan Martin).
2003-12-18 00:12:31 +00:00
Kristian Rietveld
c43efa516f Migrating all cell renderers to use the new instance private data
Thu Dec 18 00:57:18 2003  Kristian Rietveld  <kris@gtk.org>

	Migrating all cell renderers to use the new instance private data
	construction.

	* gtk/gtktreeprivate.h: remove GtkCellRendererInfo, as it is no
	longer being used.

	* gtk/gtkcellrenderer.c (gtk_cell_renderer_init),
	(gtk_cell_renderer_class_init), (gtk_cell_renderer_get_property),
	(set_cell_bg_color), (gtk_cell_renderer_render): remove old
	GtkCellRendererInfo handling, migrate to instance private data.

	* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_editing_done),
	(gtk_cell_renderer_text_start_editing): moved focus_out_id
	from GtkCellRendererInfo to text renderer private data.

	* gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_init),
	(gtk_cell_renderer_pixbuf_class_init),
	(gtk_cell_renderer_pixbuf_finalize),
	(gtk_cell_renderer_pixbuf_get_property),
	(gtk_cell_renderer_pixbuf_set_property),
	(gtk_cell_renderer_pixbuf_create_stock_pixbuf),
	(gtk_cell_renderer_pixbuf_get_size), (gtk_cell_renderer_pixbuf_render):
	migrate to instance private data.

	* gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_class_init),
	(gtk_cell_renderer_toggle_get_property),
	(gtk_cell_renderer_toggle_set_property),
	(gtk_cell_renderer_toggle_render): migrate to instance private data.
2003-12-18 00:06:43 +00:00
Kristian Rietveld
62a15f2ae1 add a single-paragraph-mode property, use private instance data. (Fixes
Thu Dec 18 00:24:32 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init),
	(gtk_cell_renderer_text_get_property),
	(gtk_cell_renderer_text_set_property), (get_layout): add a
	single-paragraph-mode property, use private instance data.
	(Fixes #114943, reported by Morten Welinder).
2003-12-17 23:30:36 +00:00
Kristian Rietveld
4891296311 now deprecated (#106953, reported by Matthias Clasen).
Thu Dec 18 00:07:01 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreemodel.h (gtk_tree_path_new_root),
	(gtk_tree_model_get_iter_root): now deprecated (#106953, reported
	by Matthias Clasen).
2003-12-17 23:09:27 +00:00
Kristian Rietveld
e6e76e1cac if we set a new stock_id and there was a previous stock_id, unref the
Wed Dec 17 23:50:56 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_set_property):
	if we set a new stock_id and there was a previous stock_id, unref
	the pixbuf (since it was used to renderer the previous stock_id
	and stock_id might have been set to NULL now). (Fixes #122966).
2003-12-17 22:56:27 +00:00
Marco Pesenti Gritti
3ea41a9212 Check that index is not bigger than level array length also when depth is
2003-12-17  Marco Pesenti Gritti  <marco@gnome.org>

        * gtk/gtktreemodelsort.c: (gtk_tree_model_sort_get_iter):

        Check that index is not bigger than level array length
        also when depth is 1. Now get_iter_first correctly return
        FALSE when the model is empty (#129411).
2003-12-17 22:47:55 +00:00
Kristian Rietveld
b1187d9e0e only try to strcmp or strlen if we managed to normalize and casefold the
Wed Dec 17 23:31:19 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreeview.c (gtk_tree_view_search_equal_func): only
	try to strcmp or strlen if we managed to normalize and casefold
	the string correctly. Fixes crashes with non-UTF8 strings.
	(#121617, Patch from Tim-Philipp Müller).
2003-12-17 22:33:54 +00:00
Matthias Clasen
2a136e56b8 Add missing GDK_THREADS_ENTER()/GDK_THREADS_LEAVE(). Cast second argument
Wed Dec 17 23:20:23 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkexpander.c (gtk_expander_animation_timeout): Add missing
	GDK_THREADS_ENTER()/GDK_THREADS_LEAVE().
	* gtk/gtkcalendar.c, gtk/gtkclist.c, gtk/gtkexpander.c,
	gtk/gtklist.c, gtk/gtknotebook.c, gtk/gtkselection.c,
	gtk/gtkspinbutton.c: Cast second argument to g_timeout_add() to
	GSourceFunc instead of GtkFunction.  (#129525, Olexiy Avramchenko)
2003-12-17 22:23:32 +00:00
Kristian Rietveld
d1f4899fc7 fix compile warning. (#122727, patch from Kjartan Maraas).
Wed Dec 17 23:16:45 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreeview.c (gtk_tree_view_button_press): fix compile warning.
	(#122727, patch from Kjartan Maraas).
2003-12-17 22:18:43 +00:00
Kristian Rietveld
f219093fd2 Yay! Fixed height mode! Hooray! (Part 2 of #80868).
Wed Dec 17 21:23:01 2003  Kristian Rietveld  <kris@gtk.org>

	Yay! Fixed height mode! Hooray! (Part 2 of #80868).

	* gtk/gtktreeview.c (gtk_tree_view_class_init),
	(gtk_tree_view_init), (gtk_tree_view_set_property),
	(gtk_tree_view_get_property), (gtk_tree_view_set_model): add a
	fixed_height_mode property,
	(intialize_fixed_height_mode), (do_validate_rows),
	(column_sizing_notify), (gtk_tree_view_set_fixed_height_mode),
	(gtk_tree_view_style_set), (gtk_tree_view_row_changed),
	(gtk_tree_view_row_inserted), (gtk_tree_view_remove_column),
	(gtk_tree_view_insert_column): implement fixed height mode,
	(gtk_tree_view_append_column), (gtk_tree_view_insert_column),
	(gtk_tree_view_insert_column_with_attributes),
	(gtk_tree_view_insert_column_with_data_func): update docs.

	* gtk/gtktreeprivate.h: add two fields to GtkTreePrivate.
2003-12-17 20:29:43 +00:00
Murray Cumming
c64c7ee080 Actually call the default signal handlers instead of calling the
2003-12-07  Murray Cumming  <murrayc@usa.net>

        * gtk/gtktreemodel.c:
        (row_inserted_marshal, row_deleted_marshal, rows_reorderered_marshal)
        Actually call the default signal handlers instead of calling the
        marshallers themselves in an endless loop. These default signal handler
        callbacks are not actually set so this is only noticed by gtkmm at
        the moment. Bug 123923.
2003-12-17 17:52:47 +00:00
Federico Mena Quintero
8baf8571b5 Added a "volumes-changed" signal. Added the following methods:
2003-12-16  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilesystem.h (struct _GtkFileSystemIface): Added a
	"volumes-changed" signal.  Added the following methods:
		list_volumes
		volume_free
		volume_get_base_path
		volume_get_is_mounted
		volume_mount
		volume_get_display_name
		volume_render_icon

	* gtk/gtkfilesystem.c (gtk_file_system_base_init): Create the
	"volumes-changed" signal.
	(gtk_file_system_list_volumes): New function.
	(gtk_file_system_volume_free): New function.
	(gtk_file_system_volume_get_base_path): New function.
	(gtk_file_system_volume_get_is_mounted): New function.
	(gtk_file_system_volume_mount): New function.
	(gtk_file_system_volume_get_display_name): New function.
	(gtk_file_system_volume_render_icon): New function.

	* gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_free): Implement.
	(gtk_file_system_unix_volume_get_base_path): Implement.
	(gtk_file_system_unix_volume_get_is_mounted): Implement.
	(gtk_file_system_unix_volume_mount): Implement.
	(gtk_file_system_unix_volume_get_display_name): Implement.
	(gtk_file_system_unix_volume_render_icon): Implement.

	* gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
	Added a field for the "volumes-changed" signal connection.
	(gtk_file_chooser_default_set_property): Connect to
	"volumes-changed" on the file system.
	(gtk_file_chooser_default_finalize): Disconnect from
	"volumes-changed".

	* gtk/gtkfilechooserdefault.c (shortcuts_remove_rows): New helper
	function.
	(shortcuts_get_index): New helper function.
	(shortcuts_insert_path): Can now insert volumes as well as paths.
	(shortcuts_append_paths): Don't take is_file_system_root.
	(shortcuts_add_volumes): New function.
	(shortcuts_append_file_system_roots): Removed.
	(create_shortcuts_model): Use shortcuts_add_volumes().
	(remove_bookmark_button_clicked_cb): Check that the index is
	within range.
	(bookmarks_check_add_sensitivity): Take volumes into account.
	(shortcuts_get_selected_index): New helper function.
	(remove_bookmark_button_clicked_cb): Use
	shortcuts_get_selected_index().
	(bookmarks_check_remove_sensitivity): Likewise.
	(shortcuts_select_func): Likewise.
	(shortcuts_row_activated_cb): Handle volumes as well as normal
	paths.
	(shortcuts_activate_volume): New function.
	(struct _GtkFileChooserDefault): Removed the bookmarks_set and
	bookmarks_iter fields.
	(shortcuts_append_bookmarks): Use shortcuts_remove_rows().
	(bookmarks_changed_cb): Use shortcuts_add_bookmarks().
	(remove_bookmark_rows): Removed.
	(shortcuts_add_bookmarks): New function; moved most of the code
	over from shortcuts_append_bookmarks().
	(shortcuts_append_bookmarks): Add the separator node here, and
	then call shortcuts_add_bookmarks().
2003-12-17 05:55:16 +00:00
Manish Singh
6b80f394a5 fix preprocessor conditional confusion. (G_OS_UNIX/G_OS_WIN32 stuff)
Tue Dec 16 15:01:10 2003  Manish Singh  <yosh@gimp.org>

        * gtk/gtkfilechooserwidget.c: fix preprocessor conditional confusion.
        (G_OS_UNIX/G_OS_WIN32 stuff)
2003-12-16 22:58:58 +00:00
Matthias Clasen
fbb0ba1a3b Do not interpret distant clicks as double-clicks (#116541, Bernhard
Tue Dec 16 01:46:46 2003  Matthias Clasen  <maclas@gmx.de>

	Do not interpret distant clicks as double-clicks  (#116541,
	Bernhard Walle):

	* gdk/gdkdisplay.h (struct GdkDisplay): Add new fields
	double_click_distance, button_x and button_y.
	* gdk/gdkdisplay.c (gdk_display_init): Initialize the new fields.

	* gdk/gdkdisplay.h:
	* gdk/gdkevents.c (gdk_display_set_double_click_distance):
	New function to set the double click distance on a display.

	* gdk/gdkevents.c: Take double click distance into account
	when generating single, double or triple clicks.

	* gtk/gtksettings.c: Add new setting "gtk-double-click-distance".

	* gdk/x11/gdkevents-x11.c: Add the XSetting
	"Net/DoubleClickDistance" and map it to "gtk-double-click-distance".
2003-12-16 00:56:48 +00:00
Federico Mena Quintero
69c2585f0d Sigh, revert the change.
2003-12-15  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkdialog.c: Sigh, revert the change.
2003-12-15 22:03:15 +00:00
Federico Mena Quintero
7054ddccd8 Removed. (gtk_dialog_close): Don't call dialog_has_cancel(). At least
2003-12-15  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkdialog.c (dialog_has_cancel): Removed.
	(gtk_dialog_close): Don't call dialog_has_cancel().  At least
	allows sane behavior for #101293.
2003-12-15 21:47:50 +00:00
Matthias Clasen
3fe038b505 Add new properties, xalign and yalign, with getter and setter
Mon Dec 15 00:56:54 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkbutton.[hc]: Add new properties, xalign and yalign, with
	getter and setter gtk_button_[sg]et_alignment(), to set the
	alignment of the child.  (#70961, Jody Goldberg)
2003-12-15 00:00:19 +00:00
Hans Breuer
4acd98a836 handle GTK_DATADIR similar as the other filesystem placement 'constants'
2003-12-14  Hans Breuer  <hans@breuer.org>

	* gtk/gtkprivate.h gtk/gtkmain.c : handle GTK_DATADIR
	similar as the other filesystem placement 'constants' (dynamic
	resolving on win32)

	* gtk/gtkfilechooserwidget.c : handle file system to win32
	renaming here as will
	* gtk/gtkfilesystemwin32.c : implement render_icon

	* gtk/gtk.def gdk/gdk.def : updated externals

	* gdk/win32/gdkdisplay-win32.c : make it compile without
	<multimon.h> - i.e. even older sdk

	* gdk/win32/gdkevents-win32.c : match resize_timer_proc
	with TIMERPROC prototype

	* gdk/win32/gdkwindow-win32.c : older msvc does not know
	BITMAPV5HEADER (from win xp) either

	* gtk/gtkimmodule.c : make it compile even if GTK_LOCALEDIR is
	not defined

	* tests/testfilechooser.c : recent GLib crashes on
	g_print ("%s", NULL) so avoid this
2003-12-14 19:03:02 +00:00
Kristian Rietveld
5f3cde77ba A trick for a faster treeview, step 1. Patch to short circuit
Sat Dec 13 16:13:27 2003  Kristian Rietveld  <kris@gtk.org>

	A trick for a faster treeview, step 1. Patch to short circuit
	_build_tree(), inspired by Jonathan (#80868).

	* gtk/gtktreeview.c (gtk_tree_view_init): don't put _IS_LIST in
	flags by default,
	(gtk_tree_view_build_tree): don't even try to recurse when the
	model says that it is a list, remove flag unsetter,
	(gtk_tree_view_set_model): change flag setting logic.

	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_flags):
	propagate whether or not the child model has _IS_LIST set.

	* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_get_flags):
	ditto.
2003-12-13 15:20:28 +00:00
Matthias Clasen
6326e9df0f Undo the last change, since it broke logical keynav. Fix stepper direction
Sat Dec 13 02:33:17 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkrange.c (gtk_range_scroll): Undo the last change,
	since it broke logical keynav.
	* gtk/gtkrange.c (range_get_scroll_for_grab): Fix stepper
	direction in inverted scrollbars here instead.
2003-12-13 01:33:17 +00:00
Matthias Clasen
802e094bd3 Implement "gravity" for RTL mode in a better way: Keep the distance from
Sat Dec 13 00:39:24 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkviewport.c (viewport_set_hadjustment_values): Implement
	"gravity" for RTL mode in a better way: Keep the distance from
	the upper end of the page to the upper bound constant. This also
	fixes problems with the initial position of the viewport in RTL
	mode.  (#129063)
2003-12-12 23:40:58 +00:00
Kristian Rietveld
375ccb28b3 Combo box flipping support.
Fri Dec 12 21:00:12 2003  Kristian Rietveld  <kris@gtk.org>

	Combo box flipping support.

	* gtk/gtkcombobox.c (gtk_combo_box_menu_position),
	(gtk_combo_box_size_allocate): support RTL flipping (#126518,
	patch from Matthias Clasen),
	(gtk_combo_box_popup): fix popup window alignment if there's a
	cell view frame visible (#126518, patch from Semion Chichelnitsky).

	* gtk/gtkcellview.c (gtk_cell_view_expose): support RTL flipping
	(#128348, patch from Semion Chichelnitsky).
2003-12-12 20:08:58 +00:00
Matthias Clasen
2f19377326 Fix direction of steppers in inverted scrollbars. (#129084, Olexiy
Fri Dec 12 00:05:31 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkrange.c (gtk_range_scroll): Fix direction of
	steppers in inverted scrollbars.  (#129084, Olexiy Avramchenko)
2003-12-11 23:05:25 +00:00
Matthias Clasen
731537ed89 Don't unnecessarily reserve space for arrows in RTL mode. (#129075, Semion
Thu Dec 11 23:50:30 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtknotebook.c (gtk_notebook_pages_allocate): Don't
	unnecessarily reserve space for arrows in RTL mode.  (#129075,
	Semion Chichelnitsky)
2003-12-11 22:50:09 +00:00
Matthias Clasen
5fb61f3075 Changes to allow "no input" windows (#64613):
Thu Dec 11 00:35:12 2003  Matthias Clasen  <maclas@gmx.de>

	Changes to allow "no input" windows (#64613):

	* gdk/gdkwindow.h (struct _GdkWindowObject): Add a new boolean
	field accept_focus.

	* gdk/gdkwindow.h (gdk_window_set_accept_focus): New function to
	set it.

	* gtk/gtkwindow.[hc]: Add a boolean property "accept_focus"
	and gtk_window_get_focus() and gtk_window_set_focus().

	* gdk/win32/gdkwindow-win32.c (gdk_window_new):
	* gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
	* gdk/x11/gdkwindow-x11.c (gdk_window_set_new):
	Initialize the accept_focus field to TRUE.

	* gdk/win32/gdkwindow-win32.c (gdk_window_set_accept_focus):
	* gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_accept_focus):
	* gdk/x11/gdkwindow-x11.c (gdk_window_set_accept_focus):
	Implementations for the various backends. The Win32 and linux-fb
	implementations set the accept_focus field, but don't use it yet
	to actually implement noinput windows. The X implementation updates
	the WM_HINTS to select the globally active input model (see the
	ICCCM) if accept_focus is FALSE.

	* gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Ignore the
	WM_TAKE_FOCUS message if accept_focus is FALSE.
2003-12-10 23:58:23 +00:00
Federico Mena Quintero
c9c99b3f1b Added toolbar items for the filter separator and the filter item.
2003-12-10  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilechooserdefault.c (struct _GtkFileChooserDefault):
	Added toolbar items for the filter separator and the filter item.
	(toolbar_create): Add the filter widgets here.
	(filter_create): Renamed from create_filter().  Don't store the
	alignment in the impl structure, just return it.
	(toolbar_show_filters): New function.
	(gtk_file_chooser_default_add_filter): Use toolbar_show_filters().
	(gtk_file_chooser_default_remove_filter): Likewise.
	(gtk_file_chooser_default_constructor): Don't create the filter
	widget here.
	(struct _GtkFileChooserDefault): Added a field for a current
	folder label.
	(gtk_file_chooser_default_constructor): Create the folder label.
	(gtk_file_chooser_default_set_current_folder): Set the current
	folder label.

	* tests/testfilechooser.c (main): Dramatically improved the
	usability of the extra widget through careful word choice.
2003-12-10 20:49:44 +00:00
Federico Mena Quintero
6a97a16921 Use "Home" rather than "Username's Home" (#125964).
2003-12-09  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilechooserdefault.c (shortcuts_append_home): Use "Home"
	rather than "Username's Home" (#125964).
	(shortcuts_selection_changed_cb): New callback, check the
	sensitivity of the Remove Bookmark button at the right time.
	(shortcuts_row_activated_cb): It is not necessary to check the
	sensitivity here.
2003-12-10 03:46:30 +00:00
Jan Arne Petersen
dd03351616 Use the behavior of the GtkFileSelection to determine selected paths in
2003-12-08  Jan Arne Petersen  <jpetersen@uni-bonn.de>

	* gtk/gtkfilechooserdefault.c:
	(gtk_file_chooser_default_get_paths), (entry_activate): Use the
	behavior of the GtkFileSelection to determine selected paths in
	single selected, GTK_FILE_CHOOSER_ACTION_SAVE mode.

2003-12-08  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilechooserdefault.c
	(gtk_file_chooser_default_get_paths): Don't declare the closure
	struct twice.
	(get_paths_foreach): Likewise.
2003-12-08 23:38:57 +00:00
Matthias Clasen
2e47029bfb s/Unix/Win32/g.
Tue Dec  9 00:12:36 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkfilesystemwin32.[hc]: s/Unix/Win32/g.
2003-12-08 23:13:14 +00:00
Owen Taylor
85c05a86c0 === Released 2.3.1 ===
Mon Dec  8 10:54:44 2003  Owen Taylor  <otaylor@redhat.com>

        * === Released 2.3.1 ===

        * NEWS: Updates for 2.3.1

        * configure.in: Version 2.3.1, interface age 0, binary age 301.

        * gtk/gtkmenuitem.c (gtk_menu_item_can_activate_accel):
        Rename from gtk_menu_item_real_can_activate_accel() to
        match GTK+ convention, improve comment.

        * gtk/gtkwidget.c: Document gtk_widget_can_activate_accel(),
        can ::can-activate-accel signal.

        * gtk/gtkwidget.c (closure_accel_activate): Fix spelling
        in comment.

        * gtk/gtkmenu.c (gtk_menu_real_can_activate_accel): Clean
        up comment.

        * gtk/gtkcellview{,menuitem}.[ch]: Move GET_PRIVATE() macros
        into the .c file.

Mon Dec  8 12:09:21 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkicontheme.c (find_builtin_icon): Fix a
        missing 'else'. (#128816, Jorn Baayen)
2003-12-08 22:55:03 +00:00
Matthias Clasen
073b4ed35b Actually commit RTL flipping changes for GtkNotebook which I already
ChangeLogged on Friday.
2003-12-08 21:07:17 +00:00
Tim Janik
47f63b8cb2 fix comment typo 2003-12-08 16:02:25 +00:00
Matthias Clasen
ba288650cd Don't crash if icon_theme_builtin_icons hasn't been initialized. (#128726,
Sun Dec  7 23:45:40 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkicontheme.c (gtk_icon_theme_has_icon): Don't crash if
	icon_theme_builtin_icons hasn't been initialized.  (#128726, Diego
	Gonzalez)
2003-12-07 22:53:22 +00:00
Matthias Clasen
89f48d7189 Implement RTL flipping for GtkAlignment. (#127585)
Sat Dec  6 01:42:04 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkalignment.c (gtk_alignment_size_allocate): Implement
	RTL flipping for GtkAlignment.  (#127585)
2003-12-06 00:41:38 +00:00
Matthias Clasen
5795c83cb3 Fix the position of the popup window when in RTL mode. (#127578)
Sat Dec  6 01:13:09 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombo.c (gtk_combo_get_pos): Fix the position of the
	popup window when in RTL mode.  (#127578)
2003-12-06 00:12:46 +00:00
Manish Singh
532062df96 Applied patch from Ross McFarland <rwmcfa1@neces.com>, initialize *count_p
Fri Dec  5 15:30:16 2003  Manish Singh  <yosh@gimp.org>

        * gtk/gtkaccelgroup.c (quick_accel_find): Applied patch from
        Ross McFarland <rwmcfa1@neces.com>, initialize *count_p to 0
        before doing anything to prevent garbage returns.
2003-12-05 23:33:59 +00:00
Matthias Clasen
8ad788e914 Implement RTL flipping for GtkViewport: Adjust the "gravity" when resizing
Sat Dec  6 00:23:46 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkviewport.c: Implement RTL flipping for
	GtkViewport: Adjust the "gravity" when resizing
	This is a bit flickery in RTL mode.  (#107526)

Sat Dec  6 00:22:14 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkscrolledwindow.c: Implement RTL flipping for
	GtkScrolledWindow: the vertical scrollbar shows up on the left
	side in RTL mode.  (#107526)
2003-12-05 23:31:51 +00:00
Mark McLoughlin
7dac6a2b01 Allow gtk_label_set_attributes() take NULL. See bug #128517.
2003-12-04  Mark McLoughlin  <mark@skynet.ie>

        * gtk/gtklabel.c: (gtk_label_set_attributes_internal): Allow
        gtk_label_set_attributes() take NULL. See bug #128517.
2003-12-04 18:17:23 +00:00