Compare commits

..

1208 Commits

Author SHA1 Message Date
Owen Taylor
0d4709d429 === Released 2.3.2 ===
Thu Jan 22 18:46:05 2004  Owen Taylor  <otaylor@redhat.com>

        * === Released 2.3.2 ===
2004-01-23 00:19:07 +00:00
Owen Taylor
1b2ff84cbf Patch from Christian Neumair to make warning string more translator
Thu Jan 22 18:45:26 2004  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkicontheme.c: Patch from Christian Neumair
        to make warning string more translator friendly.

        * gtk/gtktreemodelfilter.h gtkseparatortoolitem.[ch]
        gtk/gtktoolbar.c: Parameter name fixes to keep gtk-doc
        happy.

        * configure.in: Require GLib-2.3.2, version 2.3.2,
        interface age 0, binary age 302.

        * NEWS: Organized, added some names.
2004-01-22 23:47:42 +00:00
Jonathan Blandford
e2551adbd7 Doc fix.
Thu Jan 22 16:59:36 2004  Jonathan Blandford  <jrb@gnome.org>

        * gtk/gtkliststore.c (gtk_list_store_reorder): Doc fix.
2004-01-22 22:53:00 +00:00
Federico Mena Quintero
2361bd9f39 Added documentation for GtkWidget::popup_menu.
2004-01-22  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkwidget.c (gtk_widget_class_init): Added documentation for
	GtkWidget::popup_menu.
2004-01-22 21:34:16 +00:00
Matthias Clasen
d49500e4b7 Remove the attach info after calling gtk_menu_do_remove(), since that
Thu Jan 22 21:45:24 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkmenu.c (gtk_menu_remove): Remove the attach
	info after calling gtk_menu_do_remove(), since that function
	uses the attach info. Doh!

	* gtk/gtkmenu.c (gtk_menu_do_remove): Don't check priv->columns
	for being 1 directly after setting it to 0.
2004-01-22 20:45:36 +00:00
Federico Mena Quintero
fa4e057e98 Point to GtkEntry as an example of a widget that uses a custom function to
2004-01-22  Federico Mena Quintero  <federico@ximian.com>

	* gtk/migrating-checklist.sgml: Point to GtkEntry as an example of
	a widget that uses a custom function to position its popup menu.
2004-01-22 20:44:38 +00:00
Soeren Sandmann
6a3e3b20d3 Updates
Thu Jan 22 21:38:52 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* NEWS: Updates
2004-01-22 20:40:57 +00:00
Federico Mena Quintero
51116ad493 New chapter with a "Migration Checklist" of things people need to do to be
2004-01-22  Federico Mena Quintero  <federico@ximian.com>

	* gtk/migrating-checklist.sgml: New chapter with a "Migration
	Checklist" of things people need to do to be good citizens in the
	GTK+ world.  This is mainly a way to tell people about interesting
	APIs that they should use instead of hand-hacked approaches.

	* gtk/gtk-docs.sgml: Added migrating-checklist.sgml.

	* gtk/Makefile.am (content_files): Likewise.
2004-01-22 20:17:34 +00:00
Alexander Larsson
465d6e358c Fix typo
2004-01-22  Alexander Larsson  <alexl@redhat.com>

	* gdk/x11/gdkwindow-x11.c (WINDOW_IS_TOPLEVEL):
	Fix typo
2004-01-22 17:13:22 +00:00
Ole Laursen
8e4ef5edee Updated Danish translation.
2004-01-22  Ole Laursen  <olau@hardworking.dk>

	* da.po: Updated Danish translation.
2004-01-22 16:33:09 +00:00
Vincent van Adrighem
1285e984de Translation updated by Kees van den Broek.
2004-01-22  Vincent van Adrighem  <adrighem@gnome.org>

	* nl.po: Translation updated by Kees van den Broek.
2004-01-22 13:48:23 +00:00
Jonathan Blandford
7fed66df42 new introduction section.
Thu Jan 22 01:46:45 2004  Jonathan Blandford  <jrb@gnome.org>

        * gtk/tmpl/gtktreemodelsort.sgml: new introduction section.
2004-01-22 06:48:20 +00:00
Federico Mena Quintero
56913b4b3b Free the path fields.
2004-01-21  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_finalize):
	Free the path fields.

	* gtk/gtkfilesystemmodel.c (gtk_file_system_model_finalize): Free
	the root_path, reported by <scott@asofyet.org>
	(gtk_file_system_model_finalize): Unref the file system.

	* gtk/gtkfilefilter.c (filter_rule_free): default:
	g_assert_not_reached().
	(gtk_file_filter_finalize): Free the filter->name, reported by
	<scott@asofyet.org>
	(gtk_file_filter_finalize): Free the rules list.
2004-01-22 02:39:31 +00:00
Jonathan Blandford
9236298621 redraw the color button when an alpha is set.
Wed Jan 21 18:10:40 2004  Jonathan Blandford  <jrb@gnome.org>

        * gtk/gtkcolorbutton.c (gtk_color_button_set_color):redraw the
        color button when an alpha is set.
        (gtk_color_button_set_alpha): redraw the color button when an
        alpha is set.
2004-01-21 23:29:08 +00:00
Matthias Clasen
a18431078a Fix #131869:
Wed Jan 21 23:27:14 2004  Matthias Clasen  <maclas@gmx.de>

	Fix #131869:

	* gtk/gtkaction.c (_gtk_action_emit_activate): Hold
	a reference to the group while emitting the signals.

	* gtk/gtkactiongroup.c (gtk_action_group_init): Use a
	destroy notify which does not only unref, but also resets
	the action_group property of the action.
2004-01-21 22:26:53 +00:00
Alastair McKinstry
577157a196 Updated Irish translation 2004-01-21 20:38:15 +00:00
Miloslav Trmac
5d64493159 Update Czech translation 2004-01-21 17:56:37 +00:00
Jonathan Blandford
e935a08d42 Sync from upstream
Wed Jan 21 09:33:13 2004  Jonathan Blandford  <jrb@gnome.org>

        * libgnomevfs/xdgmimeglob.c:
        * libgnomevfs/xdgmimemagic.c: Sync from upstream
2004-01-21 14:33:10 +00:00
Dmitry Mastrukov
740082e29d ru.po: Updated Russian translation from Russian team <gnome-cyr@gnome.org>. 2004-01-21 13:42:37 +00:00
Artur Flinta
5b2823013e Updated Polish translation by GNOME PL Team.
2004-01-21  Artur Flinta  <aflinta@cvs.gnome.org>

	* pl.po: Updated Polish translation by GNOME PL Team.
2004-01-21 09:02:41 +00:00
Federico Mena Quintero
246ef6d2ff Added details about GtkFileChooser changes.
2004-01-20  Federico Mena Quintero  <federico@ximian.com>

	* NEWS: Added details about GtkFileChooser changes.
2004-01-20 23:17:11 +00:00
Federico Mena Quintero
3ccf6187e3 Fix #99425, add accessor functions for GtkPaned's children.
2004-01-20  Federico Mena Quintero  <federico@ximian.com>

	Fix #99425, add accessor functions for GtkPaned's children.

	* gtk/gtkpaned.c (gtk_paned_get_child1): New function.
	(gtk_paned_get_child2): New function.
2004-01-20 23:07:40 +00:00
Federico Mena Quintero
eafbfd6367 Added gtk_paned_get_child[12].
2004-01-20  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtk-sections.txt: Added gtk_paned_get_child[12].
2004-01-20 23:04:13 +00:00
Matthias Clasen
7c6dc86b40 Start of 2.3.2 section.
Tue Jan 20 23:49:52 2004  Matthias Clasen  <maclas@gmx.de>

	* NEWS: Start of 2.3.2 section.
2004-01-20 22:49:36 +00:00
cinamod
30e463b6b4 remove UXTHEME_HAS_LINES, fix menu coloration 2004-01-20 21:46:59 +00:00
Matthias Clasen
d7bfabebdb Fixes for #130370, based on a patch by Michael Meeks:
Tue Jan 20 22:11:31 2004  Matthias Clasen  <maclas@gmx.de>

	Fixes for #130370, based on a patch by Michael Meeks:

	* gtk/gtkmenu.c (gtk_menu_do_remove): New auxiliary function to
	adjust cell positions and recalculate row and column counts after
	removing an item.

	* gtk/gtkmenu.c (gtk_menu_remove): Call gtk_menu_do_remove.

	* gtk/gtkmenu.c (gtk_menu_do_insert): Don't leave empty rows when
	appending items.

	* gtk/gtkmenu.c (gtk_menu_attach): Don't call gtk_menu_shell_append,
	to avoid an unintended recursion.
2004-01-20 21:11:30 +00:00
Matthias Clasen
1c28c446fc Forgotten log entry. 2004-01-20 21:03:49 +00:00
Jonathan Blandford
a99fb2ea6c resync with upstream sources.
Tue Jan 20 13:07:04 2004  Jonathan Blandford  <jrb@gnome.org>

        * xdgmime.c: resync with upstream sources.
2004-01-20 18:07:07 +00:00
Jody Goldberg
245308c38c add stock indent, unindent I would have prefered outdent, but
2004-01-05  Jody Goldberg <jody@gnome.org>

	* gtk/gtkiconfactory.c (get_default_icons) : add stock indent, unindent
	  I would have prefered outdent, but compatibility seems more
	  important.
	* gtk/gtkstock.c (builtin_items) : ditto.
	* gtk/gtkstock.h : ditto.
	* gtk/stock-icons/Makefile.am : ditto.
	* gtk/stock-icons/stock_text_indent_16.png :
	* gtk/stock-icons/stock_text_indent_24.png :
	* gtk/stock-icons/stock_text_unindent_16.png :
	* gtk/stock-icons/stock_text_unindent_24.png : from gnome-icon-theme

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

	* gtk/gtkicontheme.c (gtk_icon_theme_lookup_icon)) : Add a sanity test
	  to ensure that the base hicolor theme is installed.  Silently
	  failing to produce icons that apps assume exist in the theme seems
	  like a bad idea.
2004-01-20 16:32:54 +00:00
Dmitry Mastrukov
28e71dcba6 ru.po: Updated Russian translation from Russian team <gnome-cyr@gnome.org>. 2004-01-20 15:45:36 +00:00
Changwoo Ryu
5da30b932a Updated Korean translation.
* ko.po: Updated Korean translation.
2004-01-20 15:02:22 +00:00
Federico Mena Quintero
45e6ab2d84 Fix #131418.
2004-01-19  Federico Mena Quintero  <federico@ximian.com>

	Fix #131418.

	* gtk/gtkfilechooserdefault.c (set_select_multiple): New helper
	function.
	(gtk_file_chooser_default_set_property): Use
	set_select_multiple().  Also, re-set this mode to single if the
	file chooser is set to Save mode.
	(entry_activate): Handle the case where the entry is completely
	empty *and* its current folder does exist.  Also, there is need to
	test for select_multiple here now that we ensure that it won't
	happen during Save mode.
2004-01-20 02:44:58 +00:00
Kjartan Maraas
3799ae9520 Updated Norwegian translation.
2004-01-19  Kjartan Maraas  <kmaraas@gnome.org>

	* no.po: Updated Norwegian translation.
2004-01-19 19:38:28 +00:00
Christian Neumair
a788d63fcb Updated German translation. 2004-01-19 17:12:57 +00:00
Hasbullah Bin Pit
3cc5990de1 Updated Malay translation.
2004-01-19  Hasbullah Bin Pit <sebol@my-penguin.org>

        * ms.po: Updated Malay translation.
2004-01-19 17:02:52 +00:00
Artur Flinta
96bca134a8 Updated Polish translation by GNOME PL Team.
2004-01-19  Artur Flinta  <aflinta@cvs.gnome.org>

	* pl.po: Updated Polish translation by GNOME PL Team.
2004-01-19 14:56:08 +00:00
Hasbullah Bin Pit
2cc184d3ea hello world 2004-01-19 14:40:29 +00:00
Hasbullah Bin Pit
c90a510f1d Updated Malay translation.
2004-01-19  Hasbullah Bin Pit <sebol@my-penguin.org>

        * ms.po: Updated Malay translation.
2004-01-19 14:36:59 +00:00
Danilo Šegan
f2a3138689 Added XGETTEXT_KEYWORDS. 2004-01-19 13:14:08 +00:00
Laurent Dhima
da3bdc7e30 Updated Albanian translation
* sq.po: Updated Albanian translation
2004-01-19 11:18:08 +00:00
Laurent Dhima
e60e55a7cc Updated 2004-01-19 11:16:15 +00:00
Artur Flinta
a0bb56cc0e Updated Polish translation by GNOME PL Team.
2004-01-19  Artur Flinta  <aflinta@cvs.gnome.org>

	* pl.po: Updated Polish translation by GNOME PL Team.
2004-01-19 08:56:51 +00:00
Laurent Dhima
b44527f46d Reverted Albanian file
* sq.po: Reverted Albanian file
2004-01-19 08:32:25 +00:00
Laurent Dhima
0a6b898e6f Reverted 2004-01-19 08:29:22 +00:00
Pablo Saratxaga
871ad9dbdf updated Walloon file 2004-01-19 02:22:30 +00:00
Pablo Saratxaga
adea130c7f updated Walloon file 2004-01-19 02:05:51 +00:00
Laurent Dhima
e715544211 Updated Albanian translation
* sq.po: Updated Albanian translation
2004-01-19 00:13:24 +00:00
Laurent Dhima
0c8febff1f Updated 2004-01-18 23:53:01 +00:00
Alastair McKinstry
97f2287860 Update Irish translation 2004-01-18 22:07:01 +00:00
Christian Rose
7df273d8c8 Updated Swedish translation.
2004-01-18  Christian Rose  <menthos@menthos.com>

	* sv.po: Updated Swedish translation.
2004-01-18 14:50:43 +00:00
Soeren Sandmann
8578431f1b Add _gtk_toolbar_paint_space_line(), _gtk_toolbar_get_default_space_size
Sun Jan 18 15:25:39 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.[ch]: Add _gtk_toolbar_paint_space_line(),
	_gtk_toolbar_get_default_space_size ();

	* gtk/gtkseparatortoolitem.c (gtk_separator_tool_item_expose,
	get_space_size): Use them here.
2004-01-18 14:31:00 +00:00
Soeren Sandmann
accc299dfa Set a small size request and make the window resizable, to test
Sun Jan 18 13:16:34 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* tests/testgtk.c (create_toolbar): Set a small size request and
	make the window resizable, to test mapping/unmapping of buttons.

	* gtk/gtktoolbar.c (gtk_toolbar_remove_content,
	gtk_toolbar_insert_tool_item): remove these functions.

	* gtk/gtktoolbar.c (gtk_toolbar_show_all,
	toolbar_content_show_all, gtk_toolbar_hide_all,
	toolbar_content_hide_all): New functions.

	Ignore show_all/hide_all for buttons created in compatibility mode.

	* gtk/gtktoolbar.c (internal_insert_element, gtk_toolbar_show_all,
	gtk_toolbar_hide_all): Make sure buttons are ignored by
	gtk_toolbar_show_all() and gtk_toolbar_hide_all().

	* gtk/gtktoolbar.c: s/regular_widget/compatibility/g

	* gtk/gtktoolbar.c (struct _ToolbarContent): Allocate
	GtkToolbarChild inline. Get rid of GtkToolbarChildSpace.

	* gtk/gtktoolbar.c (toolbar_content_expose): Fix bug where widget
	could become NULL.

	* gtk/gtktoolbar.c (gtk_toolbar_add): Append new tool items
	instead of prepending them.

	* gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Use the same
	'elapsed' for all items.

	* gtk/gtktoolbar.c (struct _GtkToolbarPrivate): Turn booleans
	into bitfields.

	* gtk/gtktoolbar.c: Many formatting fixes
2004-01-18 12:28:38 +00:00
Danilo Šegan
1da6d9425e Updated Serbian translation. 2004-01-18 11:44:37 +00:00
Christophe Merlet
031bcbc452 Updated French translation. 2004-01-18 10:28:02 +00:00
Matthias Clasen
75f9a9cee8 Add the necessary magic to create po-properties/Makefile.
Sun Jan 18 01:51:12 2004  Matthias Clasen  <maclas@gmx.de>

	* configure.in: Add the necessary magic to create
	po-properties/Makefile.

Sun Jan 18 01:52:04 2004  Matthias Clasen  <maclas@gmx.de>

	* Makefile.in.in (subdir): Define appropriately.
2004-01-18 00:50:15 +00:00
Matthias Clasen
5fbd0d1aaf Added Afrikaans translation. 2004-01-17 22:39:33 +00:00
Matthias Clasen
fb6bf703d1 splitting the gtk20 translation domain. 2004-01-17 22:19:37 +00:00
Matthias Clasen
f7be7085b4 Split the gtk translations into the domains gtk20 and gtk20-properties. 2004-01-17 22:15:58 +00:00
Soeren Sandmann
a28128d855 Fix rest of #128678: Implement all the toolbar_content() methods for the
Sat Jan 17 22:00:07 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c:

	Fix rest of #128678: Implement all the toolbar_content()
	methods for the old API case.
2004-01-17 21:03:31 +00:00
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
Pablo Saratxaga
fe27e9d94a updated Walloon file; added Britton file 2004-01-17 16:22:09 +00:00
Pablo Saratxaga
5b1cacaadb Added Britton (br) to ALL_LINGUAS 2004-01-17 16:16:27 +00:00
Kjartan Maraas
871ada6fed Updated Norwegian translation.
2004-01-17  Kjartan Maraas  <kmaraas@gnome.org>

	* no.po: Updated Norwegian translation.
2004-01-17 15:21:03 +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
Christophe Merlet
49a0e79dd6 Updated French translation. 2004-01-17 10:55:20 +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
Laurent Dhima
c13c0a01d8 Updated Albanian translation
* sq.po: Updated Albanian translation
2004-01-16 01:32:16 +00:00
Laurent Dhima
a06296a1d4 Updated 2004-01-16 01:30:40 +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
207b590ce9 Move the old chapters about 1.2 and 2.0 changes to Federicos new
Thu Jan 15 23:54:46 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtk-docs.sgml: Move the old chapters about 1.2 and 2.0
	changes to Federicos new 'migrating' part.
2004-01-15 22:54:18 +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
Vincent van Adrighem
99e00e044d Translation updated by Tino Meinen.
2004-01-15  Vincent van Adrighem  <adrighem@gnome.org>

	* nl.po: Translation updated by Tino Meinen.
2004-01-15 12:49:25 +00:00
Miloslav Trmac
1c47c4b1a0 Update Czech translation 2004-01-15 12:20:30 +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
Danilo Šegan
6bf0f14b9c Updated Serbian translation. 2004-01-14 23:39:01 +00:00
Christian Neumair
b1d2b5ffb2 /tmp/cvs2BtS1V 2004-01-14 21:24:09 +00:00
Alastair McKinstry
a933d7e0a3 Update Irish translations 2004-01-14 21:09:53 +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
Francisco Javier F. Serrador
f759192184 Updated Spanish translation.
2004-01-14  Francisco Javier F. Serrador  <serrador@cvs.gnome.org>

	* es.po: Updated Spanish translation.
2004-01-14 16:59:52 +00:00
GMT 2004 Tony Gale
051d7caf9f Updates to Section 5
Wed Jan 14 13:07:30 GMT 2004  Tony Gale <gale@gtk.org>

        * docs/faq/gtk-faq.sgml: Updates to Section 5
2004-01-14 13:08:55 +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
Kjartan Maraas
f85e40e322 Updated Norwegian translation.
2004-01-13  Kjartan Maraas  <kmaraas@gnome.org>

	* no.po: Updated Norwegian translation.
2004-01-13 21:13:05 +00:00
Vincent van Adrighem
e631a23905 Translation updated by Kees van den Broek.
2004-01-13  Vincent van Adrighem  <adrighem@gnome.org>

	* nl.po: Translation updated by Kees van den Broek.
2004-01-13 15:57:23 +00:00
GMT 2004 Tony Gale
d5571613e2 Update info on using autoconf
Tue Jan 13 14:48:27 GMT 2004  Tony Gale <gale@gtk.org>

        * docs/faq/gtk-faq.sgml: Update info on using autoconf
2004-01-13 14:50:35 +00:00
Miloslav Trmac
194c808194 Update Czech translation 2004-01-13 14:06:30 +00:00
Danilo Šegan
4a9b25659e Updated Serbian translation. 2004-01-13 09:01:43 +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
Duarte Loreto
748b249e51 Updated Portuguese translation.
2004-01-11  Duarte Loreto <happyguy_pt@hotmail.com>

	* pt.po: Updated Portuguese translation.
2004-01-11 01:35:51 +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
Kjartan Maraas
c458d15779 Updated Norwegian translation.
2004-01-10  Kjartan Maraas  <kmaraas@gnome.org>

	* no.po: Updated Norwegian translation.

2004-01-10  Danilo Šegan  <dsegan@gmx.net>
2004-01-10 14:12:07 +00:00
Danilo Šegan
dc236f4d5e Updated Serbian translation. 2004-01-09 23:14:36 +00:00
Arafat Medini
88ac99bda9 2004.01.09 Arafat Medini <lumina@silverpen.de>
2004.01.09  Arafat Medini <lumina@silverpen.de>

        * ar.po: Updated Arabic translation
2004-01-09 21:43:59 +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
Vincent van Adrighem
ca4961cf20 Translation updated by Tino Meinen.
2004-01-09  Vincent van Adrighem  <adrighem@gnome.org>

	* nl.po: Translation updated by Tino Meinen.
2004-01-09 21:01:52 +00:00
Manish Singh
064160009a #include <unistd.h> for unlink()
Fri Jan  9 11:58:47 2004  Manish Singh  <yosh@gimp.org>

        * gdk-pixbuf/gdk-pixbuf-io.c: #include <unistd.h> for unlink()
2004-01-09 20:00:14 +00:00
Miloslav Trmac
0375665909 Update Czech translation 2004-01-09 17:44:11 +00:00
GMT 2004 Tony Gale
44a8cb6972 update GtkEntry filter code example
Fri Jan  9 15:28:21 GMT 2004  Tony Gale <gale@gtk.org>

        * docs/faq/gtk-faq.sgml: update GtkEntry filter code example
2004-01-09 15:29:38 +00:00
Sanlig Badral
5c9dfb7bc3 Updated Mongolian translation. 2004-01-09 00:47:55 +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
ecceb20a8b Don't use bitwise operators on booleans. (#130923, reported by Telsa
Thu Jan  8 22:01:14 2004  Matthias Clasen  <maclas@gmx.de>

	* queryloaders.c (loader_sanity_check): Don't use bitwise operators
	on booleans.  (#130923, reported by Telsa Gwynne, fix by Dave Jones)
2004-01-08 21:01:21 +00:00
Changwoo Ryu
bc494c71f5 Updated Korean translation.
* ko.po: Updated Korean translation.
2004-01-08 15:13:53 +00:00
Dafydd Harries
02298e23e7 Fix a couple of small mistakes in previous commit. 2004-01-08 07:25:46 +00:00
Dafydd Harries
01b4da63fb Welsh translation update by Rhys Jones <rhys@sucs.org> and myself. 2004-01-08 07:22:46 +00:00
Matthias Clasen
512b53765f Fix link in deprecation note.
Thu Jan  8 00:14:02 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/tmpl/gtkmain.sgml (gtk_input_add_full): Fix link in deprecation
	note.
2004-01-07 23:12:32 +00:00
Matthias Clasen
5c919e50d3 Add entry_completion.c
Wed Jan  7 23:20:06 2004  Matthias Clasen  <maclas@gmx.de>

	* demos/gtk-demo/Makefile.am (demos): Add entry_completion.c

	* demos/gtk-demo/entry_completion.c: New demo for GtkEntryCompletion
	by Anders Carlsson  (#130464).
2004-01-07 22:19:51 +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
Vincent van Adrighem
8f5b438e6b Translation updated by Tino Meinen.
2004-01-07  Vincent van Adrighem  <adrighem@gnome.org>

	* nl.po: Translation updated by Tino Meinen.
2004-01-07 21:29:03 +00:00
Matthias Clasen
6d665c3a2d Fix a bug reference. 2004-01-07 20:54:44 +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
Federico Mena Quintero
17ddd27423 Markup fixes - Federico 2004-01-07 03:34:22 +00:00
Federico Mena Quintero
b421cc4851 Escape an ampersand in the documentation comment, and hack around an empty
2004-01-06  Federico Mena Quintero  <federico@ximian.com>

	* gdk-pixbuf-io.c (gdk_pixbuf_save): Escape an ampersand in the
	documentation comment, and hack around an empty line in the code
	example so that gtk-doc won't put a <para> due to it.
2004-01-07 03:31:21 +00:00
Federico Mena Quintero
0ee78f89af Link to the documentation section on image data.
2004-01-06  Federico Mena Quintero  <federico@ximian.com>

	* gdk-pixbuf.c (gdk_pixbuf_get_pixels): Link to the documentation
	section on image data.
2004-01-07 03:17:17 +00:00
Federico Mena Quintero
9d6ed04dff Added a section on how to compute pixel offsets for
2004-01-06  Federico Mena Quintero  <federico@ximian.com>

* gdk-pixbuf/tmpl/gdk-pixbuf.sgml: Added a section on how to
compute pixel offsets for gdk_pixbuf_get_pixels().
2004-01-07 03:16:10 +00:00
Federico Mena Quintero
65fa5b0f98 Fix example in documentation comment. Fixes #130701.
2004-01-06  Federico Mena Quintero  <federico@ximian.com>

	* gdk-pixdata.c (gdk_pixbuf_new_from_inline): Fix example in
	documentation comment.  Fixes #130701.
2004-01-07 02:26:35 +00:00
Matthias Clasen
5119687ac9 Make s, S, Control-S, p, P, Control-P, i, I, Control-I test
Wed Jan  7 02:50:55 2004  Matthias Clasen  <maclas@gmx.de>

	* demos/testpixbuf-save.c: Make s, S, Control-S, p, P, Control-P,
	i, I, Control-I test gdk_pixbuf_save(), gdk_pixbuf_save_to_buffer()
	and gdk_pixbuf_save_to_callback() with jpeg, png and ico formats,
	respectively. Tests #82203.
2004-01-07 01:59:11 +00:00
Matthias Clasen
638d57cd7e Document GdkPixbufSaveFunc.
Wed Jan  7 01:56:33 2004  Matthias Clasen  <maclas@gmx.de>

	* gdk-pixbuf/tmpl/file-saving.sgml: Document GdkPixbufSaveFunc.

	* gdk-pixbuf/gdk-pixbuf-sections.txt: Add GdkPixbufSaveFunc,
	gdk_pixbuf_save_to_callback, gdk_pixbuf_save_to_callbackv,
	gdk_pixbuf_save_to_buffer and gdk_pixbuf_save_to_bufferv.
2004-01-07 01:58:40 +00:00
Matthias Clasen
03376d79fa New public API to save pixbufs to non-file locations. (#82203, Tim Evans)
Wed Jan  7 02:41:14 2004  Matthias Clasen  <maclas@gmx.de>

	* gdk-pixbuf-io.c (gdk_pixbuf_save_to_bufferv):
	* gdk-pixbuf-io.c (gdk_pixbuf_save_to_buffer):
	* gdk-pixbuf-io.c (gdk_pixbuf_save_to_callbackv):
	* gdk-pixbuf-io.c (gdk_pixbuf_save_to_callback): New public API
	to save pixbufs to non-file locations.  (#82203, Tim Evans)

	* gdk-pixbuf.h:
	* gdk_pixbuf.def: Declare the new public API.

	* gdk-pixbuf-io.h: Add save_to_callback to the module interface.

	* io-jpeg.c:
	* io-png.c: Implement save_to_callback.

	* gdk-pixbuf-io.c (gdk_pixbuf_savev):
	* gdk-pixbuf-io.c (gdk_pixbuf_save): Update documentation.

	* gdk-pixbuf-io.c (gdk_pixbuf_real_save): Support saving via
	image_module->save_to_callback.

	* gdk-pixbuf-io.c (gdk_pixbuf_real_save_to_callback): New generic
	save_to_callback function which falls back to image_module->save
	on a temp file.
2004-01-07 01:57:42 +00:00
Matthias Clasen
5b26e695a1 Make it possible to call gdk_pixbuf_loader_set_size (loader, 0, 0) by
Wed Jan  7 01:17:36 2004  Matthias Clasen  <maclas@gmx.de>

	* gdk-pixbuf-loader.c (gdk_pixbuf_loader_size_func):
	* gdk-pixbuf-loader.c (gdk_pixbuf_loader_set_size):
	* gdk-pixbuf-loader.c (gdk_pixbuf_loader_init): Make it possible
	to call gdk_pixbuf_loader_set_size (loader, 0, 0) by changing
	the initial values of priv->width/height to -1.

	* io-tiff.c (tiff_image_parse):
	* io-ras.c (RAS2State):
	* io-pnm.c (gdk_pixbuf__pnm_image_load_increment):
	* io-pcx.c (gdk_pixbuf__pcx_load_increment):
	* io-jpeg.c (gdk_pixbuf__jpeg_image_load_increment):
	* io-png.c (png_info_callback):
	* io-ico.c (DecodeHeader):
	* io-bmp.c (DecodeHeader): Call size_func once the size is known,
	even if the module can't make use of the scaling information. If
	size_func returns 0, don't allocate a pixbuf and return, if
	necessary with an error.

	* gdk-pixbuf.h:
	* gdk-pixbuf-io.c (gdk_pixbuf_get_file_info): A new function
	to determine the type and size of an image file without loading
	it completely.  (#53725)
2004-01-07 00:26:58 +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
Miloslav Trmac
caebaf94cb Update Czech translation 2004-01-06 16:51:03 +00:00
Roozbeh Pournader
f13d142420 corrected the wrong date in ChangeLog. 2004-01-06 13:57:08 +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
Christian Rose
d5e0502602 Updated Swedish translation.
2004-01-06  Christian Rose  <menthos@menthos.com>

	* sv.po: Updated Swedish translation.
2004-01-06 01:16:53 +00:00
Vincent van Adrighem
9bed2357cf Translation updated by Tino Meinen.
2004-01-05  Vincent van Adrighem  <adrighem@gnome.org>

	* nl.po: Translation updated by Tino Meinen.
2004-01-05 20:50:25 +00:00
Danilo Šegan
7007f9f139 Updated Serbian translation, added missing file to POTFILES.in. 2004-01-05 20:24:59 +00:00
Murray Cumming
98e4215828 and a bit more. 2004-01-05 18:28:09 +00:00
Murray Cumming
024b8898d7 Added <public> documentation to the struct, as suggested by Owen Taylor.
2004-01-05  Murray Cumming  <murrayc@usa.net>

        * gdk/gdkimage.h: Added <public> documentation to the struct, as
        suggested by Owen Taylor.
2004-01-05 18:24:08 +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
Görkem Çetin
7277bf8aff CVS_SILENT 2004-01-04 19:48:39 +00:00
Vincent van Adrighem
9afcbd2cec Translation updated by Tino Meinen.
2004-01-04  Vincent van Adrighem  <adrighem@gnome.org>

	* nl.po: Translation updated by Tino Meinen.
2004-01-04 17:10:08 +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
Åsmund Skjæveland
4c2c3d36ae Updated Norwegian Nynorsk translation.
2004-01-04  Åsmund Skjæveland  <aasmunds@fys.uio.no>

	* nn.po: Updated Norwegian Nynorsk translation.
2004-01-04 13:35:10 +00:00
Matthias Clasen
ab74970131 Turn the pixbuf attributes into (construct-only, but always readable)
Sun Jan  4 00:44:57 2004  Matthias Clasen  <maclas@gmx.de>

	* gdk-pixbuf.c (gdk_pixbuf_class_init): Turn the pixbuf
	attributes into (construct-only, but always readable)
	properties.  (#130196)

	* gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Set properties
	in g_object_new().
2004-01-03 23:45:06 +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
Roozbeh Pournader
fdccf6b143 Updated Persian translation.
2004-01-03  Roozbeh Pournader  <roozbeh@sharif.edu>

	* fa.po: Updated Persian translation.
2004-01-03 14:21:33 +00:00
Duarte Loreto
115203fc9d Updated Portuguese translation.
2004-01-03  Duarte Loreto <happyguy_pt@hotmail.com>

	* pt.po: Updated Portuguese translation.
2004-01-03 02:42: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
Tivo Leedjrv
df6a099ea9 Updated Estonian translation.
2004-01-02  Tivo Leedjrv  <toivo@linux.ee>

        * et.po: Updated Estonian translation.
2004-01-02 21:56:30 +00:00
Christophe Merlet
aa06a9d380 Updated French translation. 2004-01-02 18:52:39 +00:00
Danilo Šegan
6063eb1ad6 Updated Serbian translation. 2004-01-02 15:16:43 +00:00
Alessio Frusciante
2331d1a8f2 Updated Italian translation. 2004-01-02 11:34:49 +00:00
Taneem Ahmed
d87cc469b0 Added "bn" to ALL_LINGUAS. Added Bangla translation by of Ankur group
2004-01-01  Taneem Ahmed  <taneem@bengalinux.org>

	* configure.in: Added "bn" to ALL_LINGUAS.
	* po/bn.po: Added Bangla translation by
	of Ankur group <gnome-translation@bengalinux.org>.
2004-01-02 02:58:30 +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
Francisco Javier F. Serrador
dfcf1818c7 Updated Spanish translation.
2004-01-01  Francisco Javier F. Serrador  <serrador@cvs.gnome.org>

	* es.po: Updated Spanish translation.
2004-01-01 19:17:29 +00:00
Roozbeh Pournader
03c121052c Updated Persian translation.
2004-01-01  Roozbeh Pournader  <roozbeh@sharif.edu>

	* fa.po: Updated Persian translation.
2004-01-01 17:41:08 +00:00
Roozbeh Pournader
7164136d62 Updated Persian translation.
2004-01-01  Roozbeh Pournader  <roozbeh@sharif.edu>

	* fa.po: Updated Persian translation.
2004-01-01 15:43:41 +00:00
Åsmund Skjæveland
24cc18f9a7 Updated Norwegian Nynorsk translation.
2004-01-01  Åsmund Skjæveland  <aasmunds@fys.uio.no>

	* nn.po: Updated Norwegian Nynorsk translation.
2004-01-01 13:31:27 +00:00
Denis Lackovic
aaa44fc877 *** empty log message *** 2004-01-01 10:32:18 +00:00
Miloslav Trmac
2cf1b4e5d2 Update Czech translation 2004-01-01 01:56:25 +00:00
Denis Lackovic
d298a9ae91 *** empty log message *** 2004-01-01 00:18:16 +00:00
13:49 Daniel Rogers
a5f2118818 Fix to allow reasonable pointer behavior in window mode when an extended
2003-12-31 13:49 Daniel Rogers <dsrogers@phasevelocity.org>

        * gdk/x11/gdkinput-x11.c: (gdk_input_translate_coordinates)

        Fix to allow reasonable pointer behavior in window mode when an
        extended input device reports an incorrect resolution of 0.
Fixes
        bug #123546
2003-12-31 22:00:21 +00:00
Christian Neumair
5300b92170 Updated German translation. 2003-12-31 16:04:23 +00:00
Christian Neumair
0e08ebc7d4 Use ngettext for plurals (#123847). 2003-12-31 16:02:22 +00:00
Zygimantas Berucka
88ca97c8af Updated Lithuanian translation by Tomas Kuliavas.
2003-12-31  Zygimantas Berucka  <uid0@tuxfamily.org>

* lt.po: Updated Lithuanian translation by Tomas Kuliavas.
2003-12-31 09:30:11 +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
Denis Lackovic
cf60a59874 croatian translations updated 2003-12-30 19:50:43 +00:00
Denis Lackovic
25363d3d9b croatian translations updated 2003-12-30 19:39:58 +00:00
cinamod
16f9478ee3 toward bug 853775 2003-12-30 17:22:30 +00:00
cinamod
7b61ec8c3b fix bug 852354 2003-12-30 16:44:40 +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
Duarte Loreto
b23ce53ca6 Fixed typo thanks to Gustavo N. Silva.
2003-12-29  Duarte Loreto <happyguy_pt@hotmail.com>

	* pt.po: Fixed typo thanks to Gustavo N. Silva.
2003-12-29 18:45:16 +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
Görkem Çetin
ea785246b3 CVS_SILENT 2003-12-29 09:49:38 +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
Christian Rose
d2e576787c Updated Croatian translation by Robert Sedak <robert.sedak@sk.tel.hr>.
2003-12-29  Christian Rose  <menthos@menthos.com>

	* hr.po: Updated Croatian translation by
	Robert Sedak <robert.sedak@sk.tel.hr>.
2003-12-28 23:32:10 +00:00
Görkem Çetin
bcd4faf05c CVS_SILENT 2003-12-28 21:03:39 +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
Åsmund Skjæveland
2c15dd6ac4 Updated Norwegian Nynorsk translation.
2003-12-27  Åsmund Skjæveland  <aasmunds@fys.uio.no>

	* nn.po: Updated Norwegian Nynorsk translation.
2003-12-26 23:36:17 +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
Gustavo Noronha Silva
11198a1d92 finalized updated.
2003-12-25  Gustavo Noronha Silva  <kov@debian.org>

	* pt_BR.po: finalized updated.
2003-12-25 04:52:38 +00:00
Duarte Loreto
d434ebe634 Updated Portuguese translation.
2003-12-25  Duarte Loreto <happyguy_pt@hotmail.com>

	* pt.po: Updated Portuguese translation.
2003-12-25 04:19:21 +00:00
Matthias Clasen
8a15fe283b Add the missing _get_ to the name of the non-Xcursor version of this
Thu Dec 25 00:26:34 2003  Matthias Clasen  <maclas@gmx.de>

	* gdk/x11/gdkcursor-x11.c (gdk_display_get_default_cursor_size):
	Add the missing _get_ to the name of the non-Xcursor version of
	this function.  (noticed by Torsten Schoenfeld)
2003-12-24 23:28:14 +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
Gustavo Noronha Silva
f3c77419cf semi-updated translation.
2003-12-23  Gustavo Noronha Silva  <kov@debian.org>

	* pt_BR.po: semi-updated translation.
2003-12-23 04:44:21 +00:00
Laurent Dhima
5d39ad51a3 Updated Albanian translation
* sq.po: Updated Albanian translation
2003-12-22 19:30:10 +00:00
Laurent Dhima
1d8bfb8671 Updated 2003-12-22 19:28:34 +00:00
Matthias Clasen
661542ccea Fix building with --disable-modules --with-included-loaders, create an
Mon Dec 22 01:35:36 2003  Matthias Clasen  <maclas@gmx.de>

	* Makefile.am (gdk-pixbuf.loaders): Fix building with
	--disable-modules --with-included-loaders, create an
	empty gdk-pixbuf.loaders file.  (#124496, Arno Charlet, fix
	proposed by Owen Taylor)
2003-12-22 00:37:04 +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
Soeren Sandmann
d2e744ca52 Set the right properties when the window becomes a toplevel. When a window
Sun Dec 21 17:34:22 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gdk/x11/gdkwindow-x11.c (gdk_window_reparent): Set the right
	properties when the window becomes a toplevel. When a window that
	was previously a toplevel becomes a toplevel again, restore its
	window type. Also make sure the focus window is removed from the
	XID hash when it is destroyed. (#117579, reported by Morten
	Welinder, patch reviewed by Owen Taylor).
2003-12-21 16:37:43 +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
Francisco Javier F. Serrador
807bce8170 Updated Spanish translation.
2003-12-20  Francisco Javier F. Serrador  <serrador@cvs.gnome.org>

	* es.po: Updated Spanish translation.
2003-12-20 14:30:14 +00:00
Christian Rose
8b3aabbadb Updated Swedish translation.
2003-12-20  Christian Rose  <menthos@menthos.com>

	* sv.po: Updated Swedish translation.
2003-12-20 08:44:33 +00:00
Vincent van Adrighem
f63976e389 Dutch translation updated by Tino Meinen.
2003-12-20   Vincent van Adrighem  <adrighem@gnome.org>

	* nl.po: Dutch translation updated by Tino Meinen.
2003-12-20 00:57:57 +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
Christian Neumair
fc3b98b2c2 /tmp/cvsgA8OQj 2003-12-19 16:31:52 +00:00
Danilo Šegan
2e3bc126fd Updated Serbian translation. 2003-12-19 16:00:34 +00:00
Matthias Clasen
31637e1fc5 Test extra_width, not extra_height, when determining whether to set
Fri Dec 19 01:47:34 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request):
	Test extra_width, not extra_height, when determining whether to
	set extra_width.  (#129647, Jan Arne Petersen)
2003-12-19 00:47:26 +00:00
Matthias Clasen
d99c68a6f5 Add a bug number 2003-12-19 00:41:00 +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
Miloslav Trmac
c5dd510d3f Update Czech translation 2003-12-18 17:21:28 +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
Christian Rose
127e80d7b6 Updated Swedish translation.
2003-12-18  Christian Rose  <menthos@menthos.com>

	* sv.po: Updated Swedish translation.
2003-12-18 00:24:01 +00:00
Matthias Clasen
1df3e42fd0 Add gtk_message_dialog_set_markup
Thu Dec 18 01:24:35 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtk-sections.txt: Add gtk_message_dialog_set_markup
2003-12-18 00:23:21 +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
Christian Rose
fc4da568a9 Updated Swedish translation.
2003-12-16  Christian Rose  <menthos@menthos.com>

	* sv.po: Updated Swedish translation.
2003-12-16 21:42:13 +00:00
Danilo Šegan
27cd490e79 Updated Serbian translation.
2003-12-16  Danilo Šegan  <dsegan@gmx.net>

	* sr.po, sr@Latn.po: Updated Serbian translation.
2003-12-16 04:55:32 +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
Miloslav Trmac
64687f7108 Update Czech translation 2003-12-15 11:41:52 +00:00
Francisco Javier F. Serrador
d403dd8021 *es.po: Updated Spanish translation.
2003-12-15  Francisco Javier F. Serrador  <serrador@cvs.gnome.org>

	*es.po: Updated Spanish translation.
2003-12-15 09:46:12 +00:00
Danilo Šegan
1b0e9f4b13 Updated Serbian translation.
2003-12-15  Danilo Šegan  <dsegan@gmx.net>

	* sr.po, sr@Latn.po: Updated Serbian translation.
2003-12-15 08:04:53 +00:00
Matthias Clasen
e78f5232e6 Add gtk_button_[sg]et_alignment. Mon Dec 15 01:03:08 2003 Matthias Clasen
Mon Dec 15 01:03:08 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtk-sections.txt: Add gtk_button_[sg]et_alignment.
Mon Dec 15 01:03:08 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtk-sections.txt: Add gtk_button_[sg]et_alignment.
2003-12-15 00:02:00 +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
Kjartan Maraas
d5da808188 Updated Norwegian translation.
2003-12-14  Kjartan Maraas  <kmaraas@gnome.org>

	* no.po: Updated Norwegian translation.
2003-12-14 20:38:02 +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
Updated ja.po. T.Aihana
6857ba4929 2003-12-14 Updated ja.po. T.Aihana <aihana@gnome.gr.jp> 2003-12-14 08:42:38 +00:00
Tor Lillqvist
5ad2fd918a Calls to OpenClipboard() must be followed by calls to CloseClipboard().
2003-12-14  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkselection-win32.c: Calls to OpenClipboard() must be
	followed by calls to CloseClipboard(). Add a missing call to
	CloseClipboard(). Found by Adam Wright, fixes #104944. Use
	API_CALL macro in more places.
2003-12-14 02:20:14 +00:00
Tor Lillqvist
5cd59c1cbc Merge from stable:
2003-12-14  Tor Lillqvist  <tml@iki.fi>

	Merge from stable:

	* gdk/gdkdisplaymanager.c: Mark default_display static.

	* gdk/win32/gdkdnd-win32.c: Mark current_dest_drag static.

	* gdk/win32/gdkkeys-win32.c: Disable some overly verbose debugging
	output.

	* gdk/win32/gdkevents-win32.c: Clean up the debugging output from
	--gdk-debug=events. In general, output just one line of debugging
	output for each Windows message, plus one line for each GDK event
	generated. Indent all lines according to window procedure nesting
	level.

	(inner_window_procedure): Rename from real_window_procedure.

	(find_real_window_for_grabbed_mouse_event): Don't get misled when
	the point is in the non-client (decoration) area of the window
	returned by WindowFromPoint(). Return the root window in that
	case.

	(build_pointer_event_state): Test also MK_XBUTTON1 and
	MK_XBUTTON2 (buttons 4 and 5).

	(synthesize_enter_event): Track the mouse leaving the window in
	the event being generated, not the one mentioned in the Windows
	message.

	(propagate): Test for NULL parent earlier. Improves event
	generation from a grabbed pointer. Part of fix for #107320.

	(handle_stuff_while_moving_or_resizing): New function, to
	dispatch the main loop (once).

	(resize_timer_proc): New function, set to be called by an inerval
	timer during resizes/moves. Calls handle_stuff_while_moving_or_resizing().

	(gdk_event_translate): Drop unused return_exposes parameter.

	Handle WM_XBUTTONDOWN and UP messages (buttons 4 and 5).

	On WM_SYSKEYUP, generate a key release event also for just the Alt
	key.

	On WM_MOUSELEAVE, generate a leave event of type
	GDK_NOTIFY_ANCESTOR (and not UNKNOWN) if the mouse left a
	top-level window, and left the app completely.

	On WM_ENTERSIZEMOVE, set a flag, and start an interval timer that
	calls resize_timer_proc() at regular intervals. On
	WM_EXITSIZEMOVE, kill the timer.

	On WM_WINDOWPOSCHANGED, generate a configure event if necessary,
	and dispatch the main loop (by calling
	handle_stuff_while_moving_or_resizing()). Fixes #99540, idea by
	Herman Bloggs.

	* gdk/win32/gdkmain-win32.c (_gdk_win32_message_to_string): Handle
	also wintab messages.

	* gdk/win32/gdkwindow-win32.c (gdk_window_set_skip_taskbar_hint):
	Instead of using WS_EX_TOOLWINDOW, implement by setting/unsetting
	the window's owner. Fixes #118093, reported by Maxime Romano.
2003-12-14 01:57:54 +00:00
Tim Evans
d858f3b514 Implement gdk_window_set_icon_list() for Win32, with support for big and
Tue Dec  8 09:41:00 2003  Tim Evans  <t.evans@aranz.com>

	* gdk/win32/gdkwindow-win32.[ch]: Implement
	gdk_window_set_icon_list() for Win32, with support for big and
	small icons and support for alpha-channel icons under Windows
	XP. Replaces the previous implementation of gdk_window_set_icon().
	(#128762)
2003-12-14 01:06:56 +00:00
Matthias Clasen
1014c413c5 Rename from _gdk_x11_register_event_type(), added API docs.
Sun Dec 14 01:28:23 2003  Matthias Clasen  <maclas@gmx.de>

	* gdk/x11/gdkprivate-x11.h:
	* gdk/x11/gdkx.h:
	* gdk/x11/gdkevents-x11.c (gdk_x11_register_standard_event_type):
	Rename from _gdk_x11_register_event_type(), added API docs.
	* gdk/x11/gdkinput-x11.c (_gdk_input_common_init):
	* gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init): Adjust
	all callers.  (#121471, Bill Haneman)
2003-12-14 00:28:57 +00:00
Matthias Clasen
e0fe66ee83 Document that the clip mask of gc is ignored. (#101983, Sebastian Rittau)
Sat Dec 13 23:37:50 2003  Matthias Clasen  <maclas@gmx.de>

	* gdk/gdkdraw.c (gdk_draw_pixbuf): Document that the clip mask
	of gc is ignored.  (#101983, Sebastian Rittau)
2003-12-13 22:45:25 +00:00
Matthias Clasen
f83b5f37c9 Add stock_dialog_authentication_48.png. (#129255, Olivier Andrieu)
Sat Dec 13 22:37:46 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/Makefile.am (HTML_IMAGES): Add
	stock_dialog_authentication_48.png.  (#129255, Olivier Andrieu)
2003-12-13 21:37:32 +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
Christian Rose
cf98c97946 Updated Swedish translation.
2003-12-13  Christian Rose  <menthos@menthos.com>

	* sv.po: Updated Swedish translation.
2003-12-13 13:19:25 +00:00
Francisco Javier F. Serrador
8cbe8983fe Updated Spanish translation
2003-12-13  Francisco Javier F. Serrador  <serrador@cvs.gnome.org>

	* es.po: Updated Spanish translation
2003-12-13 11:26:22 +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
Miloslav Trmac
f0293295db Update Czech translation 2003-12-12 17:16:33 +00:00
Matthias Clasen
c819c45ea8 Remove deprecated functions in examples. (#129074, Olexiy Avramchenko)
Fri Dec 12 01:13:34 2003  Matthias Clasen  <maclas@gmx.de>

	* examples/gtkdial/gtkdial.c:
	* examples/menu/menu.c:
	* examples/scribble-xinput/scribble-xinput.c:
	* examples/progressbar/progressbar.c:
	* docs/tutorial/gtk-tut.sgml: Remove deprecated functions
	in examples. (#129074, Olexiy Avramchenko)
	* examples/calendar/Makefile:
	* examples/rangewidgets/Makefile:
	* examples/menu/Makefile: Allow deprecated functions in
	examples which use deprecated widgets.
2003-12-12 00:16:14 +00:00
Matthias Clasen
5d8f0a69c4 Documentation updates. 2003-12-11 23:52:59 +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
Francisco F. Serrador
184f566f1d Updated Spanish translation
2003-12-11  Francisco F. Serrador  <serrador@cvs.gnome.org>

	* es.po: Updated Spanish translation
2003-12-11 22:32:00 +00:00
Danilo Šegan
3e323ced31 Updated Serbian translation.
2003-12-11  Danilo Šegan  <dsegan@gmx.net>

	* sr.po, sr@Latn.po: Updated Serbian translation.
2003-12-11 17:18:43 +00:00
Matthias Clasen
44c206420a Move the documentation for signals inline, to get proper parameter
Thu Dec 11 01:57:05 2003  Matthias Clasen  <maclas@gmx.de>

	* gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): Move
	the documentation for signals inline, to get proper parameter
	documentation.  (#128977)
2003-12-11 00:57:20 +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
Mark McLoughlin
e09034088b include gdkspawn.h.
2003-12-10  Mark McLoughlin  <mark@skynet.ie>

        * gdk/gdk.h: include gdkspawn.h.
2003-12-10 17:04:58 +00:00
Mark McLoughlin
b79642263f s/gdk_spawn/gdk_spawn_on_screen/.
2003-12-10  Mark McLoughlin  <mark@skynet.ie>

        * gdk/linux-fb/gdkspawn-fb.c,
          gdk/win32/gdkspawn-win32.c,
          gdk/x11/gdkspawn-x11.c: (gdk_spawn_command_line_on_screen):
        s/gdk_spawn/gdk_spawn_on_screen/.
2003-12-10 14:17:07 +00:00
Mark McLoughlin
01fcbc199f Utility functions for multi-screen applications which need to ensure
2003-12-10  Mark McLoughlin  <mark@skynet.ie>

        Utility functions for multi-screen applications which need
        to ensure launched applications appear on a certain screen.
        See bug #95897.

        * gdk/gdkspawn.h: header for multi-screen launching
        support.

        * gdk/Makefile.am: install gdkspawn.h.

        * gdk/x11/Makefile.am:
        * gdk/x11/gdkspawn-x11.c:
        (gdk_spawn_make_environment_for_screen): private function
        to create an environment vector with DISPLAY set appropriately
        for the screen.
        (gdk_spawn_on_screen): multi-screen version of g_spawn_async().
        (gdk_spawn_on_screen_with_pipes): version of g_spawn_async_with_pipes().
        (gdk_spawn_command_line_on_screen): version of g_spawn_command_line_async().

        * gdk/linux-fb/Makefile.am,
          gdk/linux-fb/gdkspawn-fb.c: linux-fb impl.

        * gdk/win32/Makefile.am,
          gdk/win32/gdkspawn-win32.c: win32 impl.
2003-12-10 13:49:58 +00:00
Dmitry Mastrukov
4b7e8e2ceb ru.po: Updated Russian translation from Russian team <gnome-cyr@gnome.org>. 2003-12-10 03:57:15 +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
Matthias Clasen
3f6441ea3a Improve the GDK API for dealing with group leaders (#119375):
Wed Dec 10 00:06:24 2003  Matthias Clasen  <maclas@gmx.de>

	Improve the GDK API for dealing with group leaders (#119375):

	* gdk/gdkwindow.h:
	* gdk/x11/gdkwindow-x11.c (gdk_window_get_group): New function to
	get the group leader of a toplevel window as a GdkWindow.

	* gdk/gdkdisplay.h:
	* gdk/x11/gdkdisplay-x11.c (gdk_display_get_default_group): New
	function to get the default group leader as a GdkWindow.

	* gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add a field for
	the GdkWindow of the default group leader.

	* gdk/x11/gdkdisplay-x11.c (gdk_display_open): Construct the GdkWindow
	for the default group leader.
2003-12-09 23:12:53 +00:00
Noah Levitt
451c077578 Add keysyms Ukrainian_ghe_with_upturn, Ukrainian_GHE_WITH_UPTURN.
2003-12-09  Noah Levitt  <nlevitt@columbia.edu>

	* gdk/gdkkeysyms.h:
	* gdk/gdkkeyuni.c: Add keysyms Ukrainian_ghe_with_upturn,
	Ukrainian_GHE_WITH_UPTURN. (#128529)
2003-12-09 22:04:01 +00:00
Michael Meeks
aa9aca5f35 fix utf-8 brokenness - apologies. 2003-12-09 11:45:33 +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
Federico Mena Quintero
94dbe0c487 Recommitting changes that were moved aside to tag GTK_2_3_1
2003-12-08  Federico Mena Quintero  <federico@ximian.com>

        * gtk/migrating-GtkAction.sgml: New chapter about how to migrate
        from gnome-ui/bonobo-ui/etc. to GtkAction.

        * gtk/gtk-docs.sgml: Integrated the above.

        * gtk/Makefile.am (content_files): Added migrating-GtkAction.sgml.
2003-12-08 23:22:24 +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
ad11e10be7 Add xdgmime directory, gtkfilesystemwin32.
Mon Dec  8 12:47:01 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/Makefile.am (IGNORE_HFILES): Add xdgmime directory,
        gtkfilesystemwin32.

        * gtk/gtk-sections.txt: Some updates.
2003-12-08 22:56:52 +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
Tor Lillqvist
dfddc20628 Use <multimon.h> when compiling with MSVC and old headers. (#126933, John
2003-12-08  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkdisplay-win32.c: Use <multimon.h> when compiling
	with MSVC and old headers. (#126933, John Ehresman)
2003-12-08 22:43:51 +00:00
Owen Taylor
5b21e9ce26 === 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:31:32 +00:00
Federico Mena Quintero
4feada36e9 New chapter about how to migrate from gnome-ui/bonobo-ui/etc. to
2003-12-08  Federico Mena Quintero  <federico@ximian.com>

	* gtk/migrating-GtkAction.sgml: New chapter about how to migrate
	from gnome-ui/bonobo-ui/etc. to GtkAction.

	* gtk/gtk-docs.sgml: Integrated the above.

	* gtk/Makefile.am (content_files): Added migrating-GtkAction.sgml.
2003-12-08 22:28:27 +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
Michael Meeks
fa3ca01b17 Based on a patch by Martin Kretzschmar; #122448
2003-12-02  Michael Meeks  <michael@ximian.com>

	Based on a patch by Martin Kretzschmar; #122448

	* gdk/gdk.h: new gdk_threads_lock, gdk_threads_unlock, point to
	implementation of GDK_THREADS_ENTER / GDK_THREADS_LEAVE.
	(GDK_THREADS_ENTER, GDK_THREADS_LEAVE): use gdk_threads_[un]lock
	function pointers. Deprecate the global gdk_threads_mutex variable.

	* gdk/gdk.c (gdk_threads_impl_lock, gdk_threads_impl_unlock): new,
	extracted from GTK_THREADS_ENTER/LEAVE macros.
	(gdk_threads_init): init gtk_threads_[un]lock if not set.
	(gdk_threads_set_lock_functions): impl.

	* gdk/gdkglobals.c: add definitions of gdk_threads_[un]lock.
2003-12-08 17:13:13 +00:00
Tim Janik
47f63b8cb2 fix comment typo 2003-12-08 16:02:25 +00:00
Miloslav Trmac
71b723ede2 Update Czech translation 2003-12-08 12:14:11 +00:00
Paisa Seeluangsawat
d0b9c3b68d Added Thai (th) translation.
2003-12-07  Paisa Seeluangsawat  <paisa@users.sf.net>

        * th.po: Added Thai (th) translation.
2003-12-07 22:57:54 +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
Duarte Loreto
3774da6083 Updated and revised Portuguese translation.
2003-12-07  Duarte Loreto <happyguy_pt@hotmail.com>

	* pt.po: Updated and revised Portuguese translation.
2003-12-07 15:35:34 +00:00
Tor Lillqvist
4b328c4753 Don't use the return value from SendMessage(WM_SETICON). That is the old
2003-12-07  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkwindow-win32.c (gdk_window_set_icon): Don't use the
	return value from SendMessage(WM_SETICON). That is the old
	icon. Fixes GDI resource leak. (#128559, Tim Evans)
2003-12-07 11:03:08 +00:00
Tor Lillqvist
4e4748bc37 If we already have a pointer grab active with a grab cursor set, destroy
2003-12-07  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkevents-win32.c (gdk_pointer_grab): If we already
	have a pointer grab active with a grab cursor set, destroy that
	cursor to avoid a GDI resource leak. (#128410, Tim Evans)
2003-12-07 06:56:30 +00:00
Paisa Seeluangsawat
05f3e9b9fb Added Thai (th) translation. Added Thai (th) to ALL_LINGUAS.
2003-12-05  Paisa Seeluangsawat  <paisa@users.sf.net>

        * th.po: Added Thai (th) translation.
        * configure.in: Added Thai (th) to ALL_LINGUAS.
2003-12-06 03:13:24 +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
Christian Neumair
d861261bc2 Updated German translation. 2003-12-05 14:42:50 +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
Vincent van Adrighem
fe8219eb23 Dutch translation updated by Tino Meinen.
2003-12-04   Vincent van Adrighem  <adrighem@gnome.org>

	* nl.po: Dutch translation updated by Tino Meinen.
2003-12-04 15:34:22 +00:00
Federico Mena Quintero
ec3cf84bc1 Removed the in_change flag. (completion_idle_callback): Use a temporary
2003-12-03  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilechooserentry.c (struct _GtkFileChooserEntry): Removed
	the in_change flag.
	(completion_idle_callback): Use a temporary list store and re-set
	it on the completion rather than modifying the old one.  We are
	re-reading the folder anyway, and this gets rid of non-atomicity
	problems.
2003-12-04 02:13:27 +00:00
Miloslav Trmac
2917a471d2 Update Czech translation 2003-12-03 19:14:54 +00:00
Vincent van Adrighem
063511d4e7 Dutch translation updated by Tino Meinen.
2003-12-03   Vincent van Adrighem  <adrighem@gnome.org>

	* nl.po: Dutch translation updated by Tino Meinen.
2003-12-03 17:43:06 +00:00
Sanlig Badral
5f2c94857a Updated Mongolian translation 2003-12-03 09:55:20 +00:00
Danilo Šegan
795296f150 Updated Serbian translation.
2003-12-03  Danilo Šegan  <dsegan@gmx.net>

	* sr.po, sr@Latn.po: Updated Serbian translation.

	* POTFILES.in: Added gtk/gtkfilesystemwin32.c.
2003-12-03 03:17:25 +00:00
Åsmund Skjæveland
1c29715834 Updated Norwegian Nynorsk translation.
2003-12-02  Åsmund Skjæveland  <aasmunds@fys.uio.no>

	* nn.po: Updated Norwegian Nynorsk translation.
2003-12-02 08:54:18 +00:00
Federico Mena Quintero
bfa64d0cde Decouple impl->current_folder from the selection in the folder tree. This
2003-12-01  Federico Mena Quintero  <federico@ximian.com>

	Decouple impl->current_folder from the selection in the folder
	tree.  This is so that going to /home/federico/.foo (e.g. from a
	bookmark) will work even if show_hidden == FALSE.  The folder tree
	needs to be fixed in this case to show such folders explicitly.

	* gtk/gtkfilechooserdefault.c
	(gtk_file_chooser_default_set_current_folder): When changing
	folders, do the entry and list model work here, instead of
	tree_selection_changed().
	(struct _GtkFileChooserDefault): Added a changing_folder flag
	again, dum de dum.
	(tree_selection_changed): Use _gtk_file_chooser_set_current_folder_path().
2003-12-02 04:23:06 +00:00
Matthias Clasen
6cb4ec86a9 Remove duplicate declaration of gtk_icon_source_set_icon_name(). (#Jeff
Tue Dec  2 01:01:54 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkiconfactory.h: Remove duplicate declaration of
	gtk_icon_source_set_icon_name().  (#Jeff Franks, #128269)
2003-12-02 00:18:43 +00:00
Vincent van Adrighem
5bfa535924 Dutch translation updated by Tino Meinen.
2003-12-01   Vincent van Adrighem  <adrighem@gnome.org>

	* nl.po: Dutch translation updated by Tino Meinen.
2003-12-01 22:44:08 +00:00
Federico Mena Quintero
c5dc8cf660 Patch from Hans-Petter Jansson <hpj@ximian.com> to align the bookmarks
2003-12-01  Federico Mena Quintero  <federico@ximian.com>

	Patch from Hans-Petter Jansson <hpj@ximian.com> to align the
	bookmarks buttons with the location entry.

	* gtk/gtkfilechooserdefault.c
	(gtk_file_chooser_default_constructor): Use a GtkSizeGroup for the
	bookmarks buttons and the location entry.
2003-12-01 18:57:17 +00:00
cinamod
4f42c35a0c fix expander's +/- part coloration 2003-12-01 18:56:34 +00:00
Federico Mena Quintero
3efec0d69e Set the shortcuts tree as a drag destination.
2003-12-01  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilechooserdefault.c (create_shortcuts_tree): Set the
	shortcuts tree as a drag destination.
	(shortcuts_drag_data_received_cb): New callback.
	(get_file_info): Also fetch information on whether the file is a folder.
	(add_bookmark_button_clicked_cb): Use error_could_not_add_bookmark_dialog().
	(error_could_not_add_bookmark_dialog): New function.
	(shortcuts_add_bookmark_from_path): New helper function.
	(add_bookmark_button_clicked_cb): Use shortcuts_add_bookmark_from_path().
	(shortcuts_row_activated): We no longer need the changing_folder flag.
	(struct _GtkFileChooserDefault): Likewise.
2003-12-01 15:33:37 +00:00
Soeren Sandmann
08529cdee7 return TRUE if there are disappearing placeholders that are still visible.
Sun Nov 30 17:31:32 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c (slide_idle_handler): return TRUE if there are
	disappearing placeholders that are still visible.

	* gtk/gtktoolbar.c: formatting fixes

	* gtk/gtktoolbar.c (struct _ToolbarContent): new bit:
	disappearing, for placeholders that are going to disappear.

	* gtk/gtktoolbar.c (get_item_size): return 0 for disappearing placeholders
2003-11-30 16:37:38 +00:00
Jonathan Blandford
b49f713fb2 Patch from <chinen@jp.ibm.com> to handle RTL support for column resizers,
Sat Nov 29 00:55:28 2003  Jonathan Blandford  <jrb@gnome.org>

	* gtk/gtktreeview.c (gtk_tree_view_new_column_width):
	* gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
	Patch from <chinen@jp.ibm.com> to handle RTL support for column
	resizers, #127874
2003-11-29 06:16:11 +00:00
Matthias Clasen
6f9b92150f Don't use freed memory. (#127698, Taavi Talvik)
Fri Nov 28 00:26:24 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkfilesystemmodel.c (gtk_file_system_model_finalize):
	Don't use freed memory.  (#127698, Taavi Talvik)
2003-11-27 23:27:40 +00:00
Matthias Clasen
a2ea36c055 Remove debug g_print()s.
Fri Nov 28 00:09:10 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkfilechooserentry.c: Remove debug g_print()s.
2003-11-27 23:08:51 +00:00
Matthias Clasen
c9fca58458 Remove debug define.
Thu Nov 27 22:17:50 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkuimanager.c: Remove debug define.
2003-11-27 21:17:41 +00:00
Tim Janik
448b576dc1 allow accel activation depending on sensitivity and the attach widget.
Thu Nov 27 16:19:03 2003  Tim Janik  <timj@gtk.org>

        * gtk/gtkmenu.c: allow accel activation depending on sensitivity
        and the attach widget.

        * gtk/gtkmenuitem.c: allow accel activation depending on visibility,
        sensitivity and the parent menu.

        * gtk/gtkwidget.[hc]: introduced ::can-activate-accel signal which
        checks whether accelerators may activate a widget. the default handler
        demands the widget be sensitive and visible+viewable.

        * gtk/gtkaccelgroup.[hc]: export gtk_accel_group_activate().
2003-11-27 15:51:32 +00:00
cinamod
6e63e7f75a fix coloration in several gimp widgets 2003-11-26 18:03:14 +00:00
Miloslav Trmac
f2f0450795 Update Czech translation 2003-11-25 15:41:36 +00:00
Matthias Clasen
ab0d40b3f5 Don't show accelerators in popup menus. (#127227)
Tue Nov 25 00:10:05 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkuimanager.c (update_node): Don't show accelerators in
	popup menus.  (#127227)
2003-11-24 23:24:40 +00:00
cinamod
af05c04e31 fix menu bar bgs 2003-11-24 15:05:48 +00:00
GMT 2003 Tony Gale
d0c95b51e4 start 2.x Section 4 updates
Mon Nov 24 13:47:39 GMT 2003  Tony Gale <gale@gtk.org>

        * docs/faq/gtk-faq.sgml: start 2.x Section 4 updates
2003-11-24 13:49:16 +00:00
Soeren Sandmann
b7becec18a Make this function take a GtkRadioToolButton instead of a GtkWidget.
Mon Nov 24 04:05:15 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkradiotoolbutton.[ch]
	(gtk_radio_tool_button_new_from_widget): Make this function take a
	GtkRadioToolButton instead of a GtkWidget. (#127729, Murray
	Cumming)
2003-11-24 03:09:32 +00:00
Soeren Sandmann
07d6371108 remove variables in_dnd and leaving_dnd
Mon Nov 24 02:34:00 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c: remove variables in_dnd and leaving_dnd
2003-11-24 01:38:52 +00:00
Soeren Sandmann
cc70808fb6 remove variable n_overflowed_menu_items_when_dnd_started
Mon Nov 24 02:19:33 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c: remove variable
	n_overflowed_menu_items_when_dnd_started
2003-11-24 01:23:04 +00:00
Soeren Sandmann
2e98304e9b Rework sliding algorithm. - No more weird jumping when items are dragged
Mon Nov 24 01:47:10 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	Rework sliding algorithm.
	- No more weird jumping when items are dragged off and added to
	the toolbar,
	- More natural item movement

	* gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Many changes. This
	function is now responsible for calculating intermediate positions
	during item sliding. It is also responsible for starting sliding
	if items disappear.  Also turn off expanding when there is an
	overflow menu.
	(gtk_toolbar_begin_sliding, stop_sliding): New functions.
	(slide_idle_handler): New function. All the sliding is now done by
	gtk_toolbar_size_allocate(), so the idle handler now just checks
	if there is more sliding to be done.
	(compute_intermediate_allocation, position): new functions
	calculating intermediate steps in the slide animations. The new
	animation algorithm uses a constant speed instead of a constant
	must-be-finished-within time.
	(struct _ToolbarContent): use
	GtkAllocation goal_allocation; and
	GtkAllocation start_allocation; instead of
	gint start/goal_width;

	* gtk/gtktoolitem.c (gtk_tool_item_set_tooltip): fix typo in
	documentation
2003-11-24 01:01:43 +00:00
Matthias Clasen
d17dc738e2 Make tooltip positioning Xinerama-aware. (#127332)
Sun Nov 23 22:26:25 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktooltips.c (gtk_tooltips_draw_tips): Make tooltip
	positioning Xinerama-aware.  (#127332)
2003-11-23 21:27:50 +00:00
Matthias Clasen
94511bb111 Add a missing comma.
Sun Nov 23 21:00:33 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/tree_widget.sgml: Add a missing comma.
2003-11-23 20:00:25 +00:00
Kostas Papadimas
d526beaca1 Updated the Greek translation 2003-11-22 12:33:58 +00:00
Matthias Clasen
cc84041751 Make monitor boundaries visible in fake Xinerama mode.
Fri Nov 21 01:57:21 2003  Matthias Clasen  <maclas@gmx.de>

	* gdk/x11/gdkscreen-x11.c (init_xinerama_support): Make monitor
	boundaries visible in fake Xinerama mode.
2003-11-21 01:02:45 +00:00
Manish Singh
d263d0bcc0 cast to GTK_WIDGET() for the gtk_widget_hide() call.
Thu Nov 20 15:41:56 2003  Manish Singh  <yosh@gimp.org>

        * gtk/gtkmenu.c (gtk_menu_set_tearoff_state): cast to GTK_WIDGET()
        for the gtk_widget_hide() call.
2003-11-20 23:42:08 +00:00
Matthias Clasen
01780084d5 Remove leftover documentation of the filter functionality that got removed
Fri Nov 21 00:09:36 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/tmpl/gtkfontsel.sgml:
	* gtk/tmpl/gtkfontseldlg.sgml: Remove leftover documentation of
	the filter functionality that got removed long ago.
2003-11-20 23:10:05 +00:00
Danilo Šegan
8f5f7fea74 Another update.
2003-11-20  Danilo Šegan  <dsegan@gmx.net>

	* sr.po, sr@Latn.po: Another update.
2003-11-20 22:33:33 +00:00
Danilo Šegan
70e45cf662 Updated Serbian translation.
2003-11-20  Danilo Šegan  <dsegan@gmx.net>

	* sr.po, sr@Latn.po: Updated Serbian translation.
2003-11-20 22:28:13 +00:00
Jonathan Blandford
5b50d251d4 Patch from David Hampton to fix sorting on booleans.
Thu Nov 20 14:51:41 2003  Jonathan Blandford  <jrb@redhat.com>

        * gtk/gtktreedatalist.c (gtk_tree_data_list_compare_func): Patch
        from David Hampton to fix sorting on booleans.
2003-11-20 20:14:22 +00:00
Soeren Sandmann
fb2e12e8c8 Use gtk_widget_is_focus() instead of GTK_WIDGET_HAS_FOCUS. (#122327, Owen
Thu Nov 20 15:48:03 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtksocket.c (gtk_socket_focus): Use gtk_widget_is_focus()
	instead of GTK_WIDGET_HAS_FOCUS. (#122327, Owen Taylor. Reported
	by Frederic Crozat).
2003-11-20 15:03:27 +00:00
GMT 2003 Tony Gale
8c2e1b210f Update Section 3 to 2.x
Thu Nov 20 13:10:29 GMT 2003  Tony Gale <gale@gtk.org>

        * docs/faq/gtk-faq.sgml: Update Section 3 to 2.x
2003-11-20 13:11:41 +00:00
Federico Mena Quintero
e2240850e8 Fixes to problems reported by Iain Holmes:
2003-11-19  Federico Mena Quintero  <federico@ximian.com>

	Fixes to problems reported by Iain Holmes:

	* gtk/gtkfilechooserdefault.c (shortcuts_append_desktop): Do not
	throw up an error dialog if the desktop doesn't exist.
	(error_message): Handle the case where there is no real toplevel
	yet.
	(list_model_filter_func): Always let folders pass through (patch
	by Dave Malcolm).
2003-11-19 22:38:31 +00:00
Raymond Penners
11ff1a2a6d 0.5.2 2003-11-19 22:26:45 +00:00
Kristian Rietveld
6438147763 move function to a somewhat more logical place,
Wed Nov 19 23:19:23 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkcombobox.[ch] (gtk_combo_box_scroll_event): move function
	to a somewhat more logical place,
	(gtk_combo_box_remove_text): New function (#125262, Owen Taylor).
2003-11-19 22:26:42 +00:00
Kristian Rietveld
720873b9cc always resize the popup when it is visible, popdown when there are less
Wed Nov 19 22:15:01 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkentry.c (gtk_entry_completion_timeout): always resize
	the popup when it is visible, popdown when there are less chars
	than the minimum key length in the entry,
	(gtk_entry_completion_changed): popdown when the entry is empty.

	* gtk/gtkentrycompletion.c (gtk_entry_completion_init): set the
	size request of the vscrollbar to (-1, 0), to get a nicely sized
	completion treeview (Fixes #126573, reported by Piers Cornwell),
	(_gtk_entry_completion_resize_popup): show/hide the action_view
	based on items.
2003-11-19 21:26:27 +00:00
Federico Mena Quintero
a4cc4cd1da Turn off the dialog's separator (thanks to Iain Holmes).
2003-11-19  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_init): Turn
	off the dialog's separator (thanks to Iain Holmes).
2003-11-19 20:45:17 +00:00
Miloslav Trmac
35ccdc4d0a Update Czech translation 2003-11-19 20:31:32 +00:00
Soeren Sandmann
907483c615 set to 200 instead of 225 Impose a minimum width on items that have a
Wed Nov 19 18:15:00 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkmenu.c (DEFAULT_POPUP_DELAY): set to 200 instead of 225
	* gtk/gtkmenuitem.c (get_minimum_width): Impose a minimum width
	on items that have a submenu. (#120104).

Wed Nov 19 18:11:08 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c (struct _ToolbarContent): Add a new
	"ItemState" field indicating the overflowed-ness etc. of the item.
	(gtk_toolbar_size_allocate): update the field here.
2003-11-19 19:44:45 +00:00
Federico Mena Quintero
a3976b68b6 Added a render_icon virtual method.
2003-11-19  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilesystem.h (struct _GtkFileSystemIface): Added a
	render_icon virtual method.

	* gtk/gtkfilesystem.c (gtk_file_system_render_icon): New function.

	* gtk/gtkfilesystemunix.c (gtk_file_system_unix_render_icon):
	Implement as a stub for now.

	* gtk/gtkfilechooserdefault.c (shortcuts_insert_path): Use
	gtk_file_system_render_icon().
	(list_icon_data_func): Likewise.
	(toolbar_create): Set the toolbar style to icons only.

	* gtk/gtkfilechooser.c (gtk_file_chooser_add_shortcut_folder_uri):
	Fix doc comments.
2003-11-19 17:03:32 +00:00
Matthias Clasen
80bb353808 Call gtk_widget_hide(menu) when reattaching the menu. (#126057)
Wed Nov 19 02:18:37 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkmenu.c (gtk_menu_set_tearoff_state): Call
	gtk_widget_hide(menu) when reattaching the menu.  (#126057)
2003-11-19 01:21:46 +00:00
Kristian Rietveld
ed77f62512 only unselect all items if the treeview has focus. (Fixes bug reported by
Wed Nov 19 00:06:04 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkentrycompletion.c (gtk_entry_completion_selection_changed):
	only unselect all items if the treeview has focus. (Fixes bug
	reported by Marco Pesenti Gritti).
2003-11-18 23:12:10 +00:00
Federico Mena Quintero
5c243e9be8 Added sections section about generating previews and including extra
2003-11-18  Federico Mena Quintero  <federico@ximian.com>

	* gtk/tmpl/gtkfilechooser.sgml: Added sections section about
	generating previews and including extra widgets.

	* gtk/gtk-docs.sgml: Added a part about migrating old code to new
	widgets.

	* gtk/migrating-GtkFileChooser.sgml: New file.

	* gtk/Makefile.am (content_files): Added
	migrating-GtkFileChooser.sgml.
2003-11-18 22:50:26 +00:00
Kristian Rietveld
97dbeec935 the total number of actions is "matches + actions - 1". (Fixes #126572).
Tue Nov 18 22:26:30 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkentry.c (gtk_entry_completion_key_press): the total
	number of actions is "matches + actions - 1". (Fixes #126572).
2003-11-18 21:38:54 +00:00
Christian Persch
7cda670d12 fix mem leaks (#119435).
Tue Nov 18 21:05:05 2003  Christian Persch  <chp@cvs.gnome.org>

	* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_inserted): fix
	mem leaks (#119435).
2003-11-18 20:09:33 +00:00
Kristian Rietveld
a0e4889748 don't try to fetch the child back, since we do know that it is already
Tue Nov 18 20:51:38 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_deleted): don't
	try to fetch the child back, since we do know that it is already
	gone by now (#126493, Marco Pesenti Gritti).
2003-11-18 19:57:14 +00:00
Kristian Rietveld
e9154691d1 Fixes based on comments from Owen Taylor, #125264.
Tue Nov 18 19:47:59 2003  Kristian Rietveld  <kris@gtk.org>

	Fixes based on comments from Owen Taylor, #125264.

	* gtk/gtkcellview.[ch] (gtk_cell_view_finalize): remove unused
	variable,
	(gtk_cell_view_set_value), (gtk_cell_view_set_displayed_model): queue
	a resize,
	(gtk_cell_view_get_size_of_row): new function,
	(gtk_cell_view_set_value), (gtk_cell_view_set_valuesv),
	(gtk_cell_view_set_values), (gtk_cell_view_set_model),
	(gtk_cell_view_set_displayed_row), (gtk_cell_view_get_displayed_row):
	s/cellview/cell_view/ in the function definitions, so they match
	with the header file.

	* gtk/gtkcombobox.c (gtk_combo_box_remeasure): remove the resize
	flag again (:, and use gtk_cell_view_get_size_of_row instead of
	the measurer, remove _set_size_request call,
	(gtk_combo_box_calc_requested_width): use gtk_cell_view_get_size_of_row
	instead of the measurer,
	(gtk_combo_box_style_set): queue a resize,
	(gtk_combo_box_size_request): update of _remeasure call,
	(gtk_combo_box_init), (gtk_combo_box_cell_layout_pack_start),
	(gtk_combo_box_cell_layout_pack_end),
	(gtk_combo_box_cell_layout_clear),
	(gtk_combo_box_set_model): get rid of the measurer,
	(gtk_combo_box_cell_layout_add_attribute),
	(gtk_combo_box_cell_layout_set_cell_data_func),
	(gtk_combo_box_cell_layout_clear_attributes): ditto and queue a
	resize instead of calling _remeasure.
2003-11-18 19:02:30 +00:00
Christian Rose
7ea41146e9 Updated Swedish translation.
2003-11-18  Christian Rose  <menthos@menthos.com>

	* sv.po: Updated Swedish translation.
2003-11-18 13:58:28 +00:00
Manish Singh
477e349f84 gdk-pixbuf/Makefile.am Use install-data-hook for gdk-pixbuf.loaders and
Mon Nov 17 16:25:04 2003  Manish Singh <yosh@gimp.org>

        * gdk-pixbuf/Makefile.am
        * modules/input/Makefile.am: Use install-data-hook for
        gdk-pixbuf.loaders and gtk.immodules install generation targets.
        Fixes #112806.

        * gtk/gtkexpander.h: Apply missing declarations from #124449.
2003-11-18 00:26:51 +00:00
Matthias Clasen
d3b444a4c5 Fix for #119555, Peter Zelesny:
Tue Nov 18 00:12:55 2003  Matthias Clasen  <maclas@gmx.de>

	Fix for #119555, Peter Zelesny:

	* gdk/gdkdrawable.h: Declare gdk_drawable_copy_to_image.
	* gdk/gdkdraw.c (gdk_drawable_copy_to_image): Make public
	by removing the _ prefix.
	* gdk/gdkdraw.c, gdk/gdkpixbuf-drawable.c, gdk/gdkpixmap.c,
	gdk/gdkwindow.c: Adjust all callers.
2003-11-17 23:16:49 +00:00
Matthias Clasen
eda4f1134f Only activate if the action is sensitive. (#127187, Christian Persch)
Mon Nov 17 23:36:02 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkaction.c (gtk_action_activate): Only activate if
	the action is sensitive.  (#127187, Christian Persch)
2003-11-17 22:36:27 +00:00
Matthias Clasen
03522ef802 Add gtk_combo_box_new_with_model, gtk_combo_box_set_model.
Mon Nov 17 23:29:21 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtk-sections.txt: Add gtk_combo_box_new_with_model,
	gtk_combo_box_set_model.
2003-11-17 22:29:20 +00:00
Matthias Clasen
0725ca9d22 Add mouse wheel support. (#126517)
Mon Nov 17 23:23:49 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcombobox.c: Add mouse wheel support.  (#126517)
2003-11-17 22:24:57 +00:00
Kristian Rietveld
18154a2ea4 add _gtk_entry_completion_resize_popup.
Mon Nov 17 22:56:09 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkentryprivate.h: add _gtk_entry_completion_resize_popup.

	* gtk/gtkentry.c (gtk_entry_completion_timeout): popup when not
	mapped, else resize_popup.

	* gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup),
	(_gtk_entry_completion_popup): moved all popup resizing code to
	_gtk_entry_completion_resize_popup, and show the window when there
	are more than zero items in the completion list again (sigh).
2003-11-17 22:02:21 +00:00
Noah Levitt
2a9551f54e Check for freetype headers the way freetype wants us to.
2003-11-17  Noah Levitt  <nlevitt@columbia.edu>

	* configure.in: Check for freetype headers the way freetype
	wants us to.
2003-11-17 20:57:40 +00:00
Mark McLoughlin
835d755b9c Patch from Jaiserca <jaiserca@inf.upv.es> to add a "use_markup" property.
2003-11-17  Mark McLoughlin  <mark@skynet.ie>

        Patch from Jaiserca <jaiserca@inf.upv.es> to add a
        "use_markup" property. See bug #124449.

        * gtk/gtkexpander.c:
        (gtk_expander_class_init),
        (gtk_expander_init), (gtk_expander_set_property),
        (gtk_expander_get_property), (gtk_expander_set_label),
        (gtk_expander_set_use_markup),  (gtk_expander_get_use_markup):
        Add a "use_markup" property and use it when creating the
        child label.
2003-11-17 14:53:06 +00:00
Kristian Rietveld
04c21b2c9b Temporary size requisition fix. Will fix it for real tonight.
Mon Nov 17 12:58:32 2003  Kristian Rietveld  <kris@gtk.org>

	Temporary size requisition fix. Will fix it for real tonight.

	* gtk/gtkcombobox.c (gtk_combo_box_remeasure): add a resize flag,
	(gtk_combo_box_size_request): use gtk_combo_box_remeasure to determine
	a good width for the child,
	(gtk_combo_box_cell_layout_add_attribute),
	(gtk_combo_box_set_cell_data_func),
	(gtk_combo_box_cell_layout_clear_attributes): update.
2003-11-17 12:10:06 +00:00
Kristian Rietveld
a4e8e3dee5 grrrr. broken pipe. 2003-11-16 23:20:23 +00:00
Kristian Rietveld
d777b5b46a Fixes #124373, Murray Cumming.
Mon Nov 17 00:11:21 2003  Kristian Rietveld  <kris@gtk.org>

	Fixes #124373, Murray Cumming.

	* gtk/gtkcombobox.[ch] (gtk_combo_box_class_init): the model property
	is no longer construct only,
	(gtk_combo_box_unset_model), (gtk_combo_box_set_model_internal),
	(gtk_combo_box_menu_fill): new functions,
	(gtk_combo_box_menu_setup), (gtk_combo_box_menu_destroy),
	(gtk_combo_box_menu_row_*), (gtk_combo_box_list_setup),
	(gtk_combo_box_list_destroy): updated,
	(gtk_combo_box_new), (gtk_combo_box_new_with_model): new/changed
	functions,
	(gtk_combo_box_set_model): is now public, updated,
	(gtk_combo_box_get_model): small update.

	* gtk/gtkcomboboxentry.[ch] (gtk_combo_box_entry_class_init): the
	text_column property is no longer construct only,
	(gtk_combo_box_entry_set_text_column): now public,
	(gtk_combo_box_entry_new), (gtk_combo_box_entry_new_with_model):
	new/changed functions.

	* tests/testcombo.c: updated.
2003-11-16 23:20:15 +00:00
Matthias Clasen
01d2e36671 Reinstate fixes for (#124212, Marco Pesenti Gritti):
Sun Nov 16 22:50:58 2003  Matthias Clasen  <maclas@gmx.de>

	Reinstate 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-11-16 21:54:37 +00:00
Kristian Rietveld
ed42eb8fa6 just call gtk_cell_view_cell_layout_clear instead of trying to free the
Sun Nov 16 21:48:40 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkcellview.c (gtk_cell_view_finalize): just call
	gtk_cell_view_cell_layout_clear instead of trying to free the
	structure ourselves here. (#125726, Morten Welinder).
2003-11-16 20:53:07 +00:00
Matthias Clasen
f7357a7007 Fix parameter name mismatches which confuse gtk-doc.
Sun Nov 16 00:35:29 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkfilechooser.[hc]:
	* gtk/gtkentrycompletion.h: Fix parameter name mismatches which
	confuse gtk-doc.

Sun Nov 16 00:41:48 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtk-sections.txt: Remove gtk_tool_item_[sg]et_pack_end.

Sun Nov 16 00:32:18 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtk-sections.txt: Move GtkFileChooser out of the
	private section, in order to get the autogenerated docs
	on hierarchy, signals, properties, etc.
2003-11-15 23:44:33 +00:00
Hans Breuer
947b32b7dc updated added all the new tests
2003-11-15  Hans Breuer  <hans@breuer.org>

	* gdk/makefile.msc gdk/gdk.def
            gtk/gtk.def gtk/makefile.msc.in : updated
	* tests/makefile.msc : added all the new tests

	* gtk/gtkfilefilter.c(finalize) : initialize filter
	from object not from itself

	* gtk/gtkfilesystemwin32.[hc] : copied from gtkfilesystemunix.[hc]
	modified as less as posible to have aworking implementation
	on win32. There maybe the desire to merge the unchanged pats into
	a common base class.
	Also implemented a simple glib based bookmark handling, which
	is currently missing in gtkfilesystemunix.[hc] but can be copied
	over there.
	* gtk/gtkfilechooserwidget.c : conditional include gtkfilesystemwin32.h

	* gdk/win32/gdkwindow-win32.c : implement
	gdk_window_set_keep_above() and gdk_window_set_keep_below()

	* tests/testmerge.c : don't include unistd.h unconditionally,
	#define STDOUT_FILENO if it isn't defined

	* tests/testfilechooser.c : make it compile on win32
2003-11-15 20:35:55 +00:00
Artur Flinta
9e831c8b8e Updated Polish translation 2003-11-15 14:33:40 +00:00
Tor Lillqvist
4c860a0d3d If the window is maximized, use SW_SHOWMAXIMIZED. (#126986, John Ehresman)
2003-11-15  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkwindow-win32.c (gdk_window_focus): If the window is
	maximized, use SW_SHOWMAXIMIZED. (#126986, John Ehresman)
2003-11-15 04:22:16 +00:00
Matthias Clasen
41ee5267cb Check that the mask is NULL or a string of the same length consisting
Sat Nov 15 00:26:19 2003  Matthias Clasen  <maclas@gmx.de>

	* queryloaders.c (loader_sanity_check): Check that the mask
	is NULL or a string of the same length consisting entirely of
	' ', '!', 'x', 'z', 'n'.
2003-11-14 23:28:01 +00:00
cinamod
5df65643e2 fix background colors for brick 2003-11-14 17:51:31 +00:00
Danilo Šegan
cee5334bba Updated Serbian translation.
2003-11-14  Danilo Šegan  <dsegan@gmx.net>

	* sr.po, sr@Latn.po: Updated Serbian translation.
2003-11-13 23:25:44 +00:00
Vincent van Adrighem
50bcf6a815 Dutch translation updated by Tino Meinen.
2003-11-13   Vincent van Adrighem  <adrighem@gnome.org>

	* nl.po: Dutch translation updated by Tino Meinen.
2003-11-13 18:19:11 +00:00
Jordi Mallach
4ae0176c03 Updated Catalan translation. 2003-11-13 14:22:49 +00:00
GMT 2003 Tony Gale
84908a0eb1 Update the rest of Section 2
Thu Nov 13 12:55:29 GMT 2003  Tony Gale <gale@gtk.org>

        * docs/faq/gtk-faq.sgml: Update the rest of Section 2
2003-11-13 12:56:25 +00:00
Matthias Clasen
99a9ad8ce9 Use GTK_DATADIR/{icons,pixmaps} instead of
Thu Nov 13 01:46:32 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkicontheme.c (gtk_icon_theme_init): Use
	GTK_DATADIR/{icons,pixmaps} instead of
	GTK_DATA_PREFIX/{icons,pixmaps}.  (#123365, Marco Pesenti Gritti)
2003-11-13 00:48:03 +00:00
Matthias Clasen
bdb8bd13db Use the event window of the menuitem to determine the monitor. This fixes
* gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Use the event
	window of the menuitem to determine the monitor. This fixes some
2003-11-12 22:49:02 +00:00
Matthias Clasen
e71bcc8487 Changes to improve menu positioning on Xinerama (#108328):
Wed Nov 12 21:40:10 2003  Matthias Clasen  <maclas@gmx.de>

	Changes to improve menu positioning on Xinerama (#108328):

	* gtk/gtkmenu.c (struct _GtkMenuPrivate): Add a menu_num field
	to store the monitor on which the menu is to be positioned.

	* gtk/gtkmenu.[hc] (gtk_menu_position): Store the monitor number
	in the GtkMenuPrivate struct and fetch the monitor geometry after
	calling the position_func, in case it has been changed.

	* gtk/gtkmenu.c (gtk_menu_set_monitor): New function
	to be used in GtkMenuPositionFunc implementations for setting
	the monitor_num field in GtkMenuPrivate.

	* gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Call
	gtk_menu_set_monitor.
2003-11-12 20:53:03 +00:00
Matthias Clasen
f3c0fd5991 Clarify the label for the empty list. String change. (#95446, Tomas
Wed Nov 12 21:00:10 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkinputdialog.c (gtk_input_dialog_init): Clarify the
	label for the empty list. String change.  (#95446, Tomas Ögren)
2003-11-12 20:01:26 +00:00
Matthias Clasen
224cfe0763 Correct the definition of the values. (#123361, Marco Pesenti Gritti)
Wed Nov 12 20:57:50 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkicontheme.h (enum GtkIconLookupFlags): Correct
	the definition of the values.  (#123361, Marco Pesenti Gritti)
2003-11-12 19:58:43 +00:00
Matthias Clasen
66aa931ee9 Map KP_Separator to ','. (#122941, Egmont Koblinger)
Wed Nov 12 20:54:02 2003  Matthias Clasen  <maclas@gmx.de>

	* gdk/gdkkeyuni.c: Map KP_Separator to ','.
	(#122941, Egmont Koblinger)
2003-11-12 19:55:46 +00:00
Åsmund Skjæveland
9509dbe153 Updated Norwegian Nynorsk translation.
2003-11-12  Åsmund Skjæveland  <aasmunds@fys.uio.no>

	* nn.po: Updated Norwegian Nynorsk translation.
2003-11-12 10:21:57 +00:00
Padraig O'Briain
b0ec8fa202 *gtk/gtkcolorsel.c (gtk_color_selection_init): Add tooltip for opacity
2003-11-12  Padraig O'Briain  <padraig.obriain@sun.com>

	*gtk/gtkcolorsel.c (gtk_color_selection_init): Add tooltip for
	opacity entry widget. Change tooltip for opacity widgets. (#126426)
2003-11-12 09:22:48 +00:00
Padraig O'Briain
9d84901592 Do not let pointer position affect window menu position when popped from
2003-11-12  Padraig O'Briain  <padraig.obriain@sun.com>

	* gtk/gtkmenu.c (gtk_menu_popup): Do not let pointer position
	affect window menu position when popped from keyboard. (#102660)
2003-11-12 09:09:25 +00:00
Soeren Sandmann
6c83c38687 When we are using the old API, make all items "is_important". That way
Wed Nov 12 01:29:32 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c (gtk_toolbar_internal_insert_element): When we
	are using the old API, make all items "is_important". That way
	BOTH_HORIZ will continue to show both icon and label in old API
	mode.
2003-11-12 00:37:02 +00:00
Pablo Gonzalo del Campo
14c565729f Updated Spanish translation by Francisco Javier F. Serrador
2003-11-11  Pablo Gonzalo del Campo  <pablodc@bigfoot.com>

        * es.po: Updated Spanish translation by
                 Francisco Javier F. Serrador <serrador@arrakis.es>.
2003-11-11 20:07:01 +00:00
Pablo Gonzalo del Campo
7538a1031b Updated Spanish translation by Francisco Javier F. Serrador
2003-11-10  Pablo Gonzalo del Campo  <pablodc@bigfoot.com>

        * es.po: Updated Spanish translation by
                 Francisco Javier F. Serrador <serrador@arrakis.es>.
2003-11-10 18:53:57 +00:00
Matthias Clasen
e069d3131e Remember the new value in all cases. (#126276, Damon Chaplin)
Mon Nov 10 00:40:41 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkeventbox.c (gtk_event_box_set_above_child):
	Remember the new value in all cases.  (#126276, Damon Chaplin)
2003-11-09 23:41:15 +00:00
Matthias Clasen
65ee9f9eeb Typo fix. 2003-11-09 23:18:44 +00:00
Matthias Clasen
95f163d7d2 If neither load nor begin_load are available fall back to load_animation
Sun Nov  9 23:07:05 2003  Matthias Clasen  <maclas@gmx.de>

	* gdk-pixbuf-io.c (_gdk_pixbuf_generic_image_load): If neither
	load nor begin_load are available fall back to load_animation
	and use gdk_pixbuf_animation_get_static_image() to obtain a
	pixbuf. Inefficient, but at least doesn't crash.
2003-11-09 22:08:33 +00:00
Matthias Clasen
0af9579ea2 New function to write out the information for a single loader, factored
Sun Nov  9 21:56:20 2003  Matthias Clasen  <maclas@gmx.de>

	* queryloaders.c (write_loader_info): New function to write
	out the information for a single loader, factored out of
	query_module().
	(loader_sanity_check): New function to perform
	sanity checks on a loader.
	(query_module): Use the new functions.
2003-11-09 21:07:31 +00:00
Hasbullah Bin Pit
70ec9facd2 minor fix 2003-11-09 18:40:02 +00:00
Hasbullah Bin Pit
54a48a67ee Updated Malay translation.
2003-11-09  Hasbullah Bin Pit <sebol@ikhlas.com>

        * ms.po: Updated Malay translation.
2003-11-09 14:49:40 +00:00
Matthias Clasen
9c0bc41a17 Call the do_ functions with the toplevel as argument.
Sat Nov  8 23:06:02 2003  Matthias Clasen  <maclas@gmx.de>

	* demos/gtk-demo/main.c (row_activated_cb): Call the do_
	functions with the toplevel as argument.

	* demos/gtk-demo/geninclude.pl.in: Change the signature
	of GDoDemoFunc to take a widget argument

	* demos/gtk-demo/ui_manager.c (do_ui_manager):
	* demos/gtk-demo/tree_store.c (do_tree_store):
	* demos/gtk-demo/textview.c (do_textview):
	* demos/gtk-demo/stock_browser.c (do_stock_browser):
	* demos/gtk-demo/sizegroup.c (do_sizegroup):
	* demos/gtk-demo/pixbufs.c (do_pixbufs):
	* demos/gtk-demo/panes.c (do_panes):
	* demos/gtk-demo/menus.c (do_menus):
	* demos/gtk-demo/list_store.c (do_list_store):
	* demos/gtk-demo/images.c (do_images):
	* demos/gtk-demo/hypertext.c (do_hypertext):
	* demos/gtk-demo/editable_cells.c (do_editable_cells):
	* demos/gtk-demo/drawingarea.c (do_drawingarea):
	* demos/gtk-demo/dialog.c (do_dialog):
	* demos/gtk-demo/colorsel.c (do_colorsel):
	* demos/gtk-demo/changedisplay.c (do_changedisplay):
	* demos/gtk-demo/button_box.c (do_button_box):
	* demos/gtk-demo/appwindow.c (do_appwindow): Take a widget
	as argument, and make new windows or dialogs appear on the
	same screen.  (#80388)
2003-11-08 22:08:05 +00:00
Matthias Clasen
035b3f327a Let visible-window default to TRUE, as documented and implemented.
Sat Nov  8 21:59:30 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkeventbox.c (gtk_event_box_class_init): Let
	visible-window default to TRUE, as documented and
	implemented. (#126270 Damon Chaplin)
2003-11-08 21:01:14 +00:00
Matthias Clasen
6e6d780b8c Mark as 2.4 additions.
Sat Nov  8 01:50:17 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkicontheme.c:
	* gtk/gtkfilechooserwidget.c (gtk_file_chooser_widget_new):
	* gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_new):
	* gtk/gtkfilechooser.c (gtk_file_chooser_[un]select_all): Mark as
	2.4 additions.
2003-11-08 00:51:10 +00:00
Federico Mena Quintero
56fb0d4856 Changing GtkFileChooserEntry to use GtkEntryCompletion.
2003-11-07  Federico Mena Quintero  <federico@ximian.com>

	Changing GtkFileChooserEntry to use GtkEntryCompletion.

	* gtk/gtkfilechooserentry.c (gtk_file_chooser_entry_init): Create
	a GtkListStore for the completion list.  Create a
	GtkEntryCompletion and attach it to the chooser entry.
	(gtk_file_chooser_entry_finalize): Unref the completion store.
	(completion_match_func): New callback for the GtkEntryCompletion.
	(completion_idle_callback): Fill the completion store with filenames.
2003-11-07 23:10:19 +00:00
Matthias Clasen
96fb3e8832 Make string setters safe for self-assignment. (#122745, Soeren Sandmann)
Fri Nov  7 22:55:49 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkwindow.c (gtk_window_set_role):
	* gtk/gtkwindow.c (gtk_window_set_title):
	* gtk/gtkwidget.c (gtk_widget_set_name):
	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_title):
	* gtk/gtkbutton.c (gtk_button_set_label): Make string setters
	safe for self-assignment.  (#122745, Soeren Sandmann)
2003-11-07 21:57:20 +00:00
Dafydd Harries
1ed2fe4a64 Translation ported from gnome-2-4 branch. Go iawn. Blydi cnaf CVS. 2003-11-07 17:04:40 +00:00
Matthias Clasen
81191b4588 Fix doc comment. (#126369, Olexiy Avramchenko)
Thu Nov  6 20:41:40 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkstyle.c (gtk_style_attach): Fix doc comment.
	(#126369, Olexiy Avramchenko)
2003-11-06 19:42:39 +00:00
Danilo Šegan
4138e40651 Updated Serbian translation.
2003-11-06  Danilo Šegan  <dsegan@gmx.net>

	* sr.po, sr@Latn.po: Updated Serbian translation.
2003-11-06 12:04:09 +00:00
Matthias Clasen
be525e6873 Fold two similar strings into on. (#126204, Danilo Segan)
Thu Nov  6 00:27:27 2003  Matthias Clasen  <maclas@gmx.de>

	* io-pcx.c (gdk_pixbuf__pcx_load_increment): Fold two similar
	strings into on.  (#126204, Danilo Segan)
2003-11-05 23:28:53 +00:00
Matthias Clasen
2189dcfdbb Improve the consistency of titles. (#126193, Damon Chaplin)
Thu Nov  6 00:21:41 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcolorbutton.c (gtk_color_button_init):
	* gtk/gtkfontbutton.c (gtk_font_button_init): Improve the
	consistency of titles.  (#126193, Damon Chaplin)
2003-11-05 23:23:05 +00:00
Matthias Clasen
3110ca2f17 Set torn off menus to be transient for the toplevel they were torn off
Wed Nov  5 22:49:36 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkmenu.c (gtk_menu_set_tearoff_state): Set torn off
	menus to be transient for the toplevel they were torn off from.
	(gtk_menu_get_toplevel): Auxiliary function to find the
	toplevel of a menu.  (#54775, Jon-Kare Hellan)
2003-11-05 21:50:51 +00:00
cinamod
18db2c24e2 fix icon sizes 2003-11-05 21:19:13 +00:00
Matthias Clasen
65926243d3 Add readonly properties min-position and max-position. (#58431, Padraig
Wed Nov  5 21:07:58 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkpaned.c (gtk_paned_class_init): Add readonly properties
	min-position and max-position.  (#58431, Padraig O'Briain)
2003-11-05 20:15:19 +00:00
Matthias Clasen
0a80b63b06 Change the ranges for Saturation and Value to be 0-100 instead of 0-255,
Wed Nov  5 21:02:26 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcolorsel.c (update_color):
	(make_label_spinbutton):
	(adjustment_changed): Change the ranges for Saturation and
	Value to be 0-100 instead of 0-255, since these axes of HSV
	are usually expressed in percent.  (#121519, Gregory Merchan)
Wed Nov  5 21:02:26 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcolorsel.c (update_color):
	(make_label_spinbutton):
	(adjustment_changed): Change the ranges for Saturation and
	Value to be 0-100 instead of 0-255, since these axes of HSV
	are usually expressed in percent.  (#121519, Gregory Merchan)
2003-11-05 20:05:47 +00:00
cinamod
c6e019fbe3 menubars now have shadow=NONE 2003-11-05 17:47:36 +00:00
cinamod
524f0ba1bd scrollbar steppers are now ETCHED_IN 2003-11-05 15:10:27 +00:00
GMT 2003 Tony Gale
8e48a3bad4 More 2.x updates
Wed Nov  5 08:51:48 GMT 2003  Tony Gale <gale@gtk.org>

        * docs/faq/gtk-faq.sgml: More 2.x updates
2003-11-05 08:53:07 +00:00
cinamod
4a1bdfb977 win32 color scheme work 2003-11-04 21:59:26 +00:00
Dafydd Harries
6da5454551 Translation ported from gnome-2-4 branch. 2003-11-04 19:01:30 +00:00
Danilo Šegan
b92628c039 Updated Serbian translation.
2003-11-04  Danilo Šegan  <dsegan@gmx.net>

	* sr.po, sr@Latn.po: Updated Serbian translation.
2003-11-04 16:46:30 +00:00
GMT 2003 Tony Gale
a0fcaf3b2f More 2.x updates, fix pkg-config command error, update copyright.
Tue Nov  4 15:00:33 GMT 2003  Tony Gale <gale@gtk.org>

        * docs/faq/gtk-faq.sgml: More 2.x updates, fix
        pkg-config command error, update copyright.
2003-11-04 15:02:56 +00:00
Christian Rose
b6b6d7d256 Added missing files. Updated Swedish translation.
2003-11-04  Christian Rose  <menthos@menthos.com>

	* POTFILES.in: Added missing files.
	* sv.po: Updated Swedish translation.
2003-11-04 13:10:48 +00:00
Federico Mena Quintero
b550a979d0 Take in a path as well. Use a helper function. (shortcuts_append_home):
2003-11-03  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilechooserdefault.c (error_dialog): Take in a path as
	well.  Use a helper function.
	(shortcuts_append_home): Display an error box if necessary.
	(shortcuts_append_desktop): Likewise.
	(add_bookmark_button_clicked_cb): Likewise.
	(gtk_file_chooser_default_select_path): Likewise.
	(entry_activate): Likewise.
	(shortcuts_append_paths): New helper function.
	(shortcuts_append_file_system_roots): Use
	shortcuts_append_paths().
	(shortcuts_append_bookmarks): Likewise.
2003-11-04 01:56:56 +00:00
Vincent van Adrighem
cc997c2174 Dutch translation updated by Tino Meinen.
2003-11-04   Vincent van Adrighem  <adrighem@gnome.org>

	* nl.po: Dutch translation updated by Tino Meinen.
2003-11-03 23:15:02 +00:00
Matthias Clasen
7175a2e99c Some leftover cleanups. 2003-11-03 22:13:24 +00:00
Matthias Clasen
f8595c79cc Add G_BEGIN_DECLS/G_END_DECLS to make these usable in C++. Forgot this
Mon Nov  3 22:45:58 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkwindow-decorate.h: Add G_BEGIN_DECLS/G_END_DECLS to make
	these usable in C++. Forgot this file in my Oct 11 commit.
2003-11-03 21:46:51 +00:00
Matthias Clasen
d04d06b362 Add gtk/gtkactiongroup.c
Mon Nov  3 22:41:08 2003  Matthias Clasen  <maclas@gmx.de>

	* POTFILES.in: Add gtk/gtkactiongroup.c
2003-11-03 21:44:23 +00:00
Federico Mena Quintero
48a57faa15 Added gtkfilechooser.c, gtkfilechooserdefault.c, gtkfilesystemmodel.c,
2003-11-03  Federico Mena Quintero  <federico@ximian.com>

	* POTFILES.in: Added gtkfilechooser.c, gtkfilechooserdefault.c,
	gtkfilesystemmodel.c, gtkfilesystemunix.c.
2003-11-03 20:46:16 +00:00
Federico Mena Quintero
3dbad630ac Add a stock icon to the "Add bookmark" button.
2003-11-03  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilechooserdefault.c (create_shortcuts_tree): Add a stock
	icon to the "Add bookmark" button.

	* gtk/gtkfilesystemunix.c: Mark missing strings for translation.
	* gtk/gtkfilesystemmodel.c: Likewise.
	* gtk/gtkfilechooser.c: Likewise.
	* gtk/gtkfilechooserdefault.c: Likewise.

Mon Nov  3 20:56:28 2003  Matthias Clasen  <maclas@gmx.de>
2003-11-03 20:24:04 +00:00
Matthias Clasen
b31a2ece5c Introduce a GDK_DEBUG_XINERAMA debug flag, and make it trigger a fake 2x2
Mon Nov  3 20:56:28 2003  Matthias Clasen  <maclas@gmx.de>

	* gdk/gdk.c:
	* gdk/gdkinternals.h:
	* gdk/x11/gdkscreen-x11.c (init_xinerama_support): Introduce a
	GDK_DEBUG_XINERAMA debug flag, and make it trigger a fake 2x2
	Xinerama mode when no actual Xinerama setup is found.
2003-11-03 20:10:34 +00:00
Owen Taylor
9af0e7b6b6 Fix a residual call to gtk_window_get_private().
Sat Nov  1 12:41:04 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_unfullscreen): Fix a
        residual call to gtk_window_get_private().
2003-11-03 19:41:03 +00:00
Federico Mena Quintero
f8e51f984b Removed. (create_shortcuts_tree): Don't call the above.
2003-11-03  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilechooserdefault.c (shortcuts_select_folder): Removed.
	(create_shortcuts_tree): Don't call the above.
	(bookmarks_changed_cb): Likewise.
	(tree_selection_changed): Unselect everything from the shortcuts
	list.  This is the behavior that Mac OS has.
	(toolbar_add_item): Return the item.
	(toolbar_create): Store the up_button in the impl structure.
	(toolbar_check_sensitivity): New function to set the sensitivity
	of the "Up" button in the toolbar.
	(tree_selection_changed): Call toolbar_check_sensitivity().
2003-11-03 18:46:18 +00:00
Federico Mena Quintero
a92ff3fa5f Do not set a border width for the toplevel container. (toolbar_create):
2003-11-02  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init): Do
	not set a border width for the toplevel container.
	(toolbar_create): New function; create a simple toolbar for the
	file chooser.
	(gtk_file_chooser_default_constructor): Use a spacing of 12 for
	the table, as per the HIG.
	(gtk_file_chooser_default_init): Likewise, for the default
	implementation's vbox.

	* gtk/gtkfilesystem.c (gtk_file_system_get_parent): Added docs to
	note that NULL is a valid return value for the parent path.
2003-11-03 00:50:33 +00:00
Kostas Papadimas
44addb8d2b Updated the Greek translation 2003-11-02 16:24:31 +00:00
Åsmund Skjæveland
2e4e31a091 Updated Norwegian Nynorsk translation.
2003-11-02  Åsmund Skjæveland  <aasmunds@fys.uio.no>

	* nn.po: Updated Norwegian Nynorsk translation.
2003-11-02 11:14:40 +00:00
Owen Taylor
afa521b98e Change on activation, not selection change (temporary workaround for
Sat Nov  1 14:59:27 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkfilechooserdefault.c (shortcuts_row_activated):
        Change on activation, not selection change (temporary
        workaround for #125955, needed for keynav, likely
        the right UI anyways.)

        * gtk/gtkfilechooserdefault.c (shortcuts_select_func):
        Don't allow the separator node to be selected.

        * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_constructor):
        Set the focus chain so that the entry gets focused first.
        (Not really right after initial focusing, maybe we
        should just have a gtk_file_chooser_focus_entry() that
        we call from gtk_file_chooser_dialog on creation.)
2003-11-01 20:17:37 +00:00
Raymond Penners
73ab722107 scrollbar grippers 2003-11-01 15:28:25 +00:00
Christian Neumair
58a391009a Updated German translation. 2003-10-31 11:09:48 +00:00
Kjartan Maraas
0504e68d42 Update Norwegian translation.
2003-10-31  Kjartan Maraas  <kmaraas@gnome.org>

	* no.po: Update Norwegian translation.
2003-10-31 09:17:10 +00:00
Soeren Sandmann
eb3f5776ac delete this function (toolbar_item_is_homogeneous): cache
Fri Oct 31 02:43:34 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c (get_item_requisition): delete this function
	(toolbar_item_is_homogeneous): cache max_homogeneous_pixels
	instead of re-calculating for each item.
	(gtk_toolbar_size_allocate): Update comments
2003-10-31 02:10:03 +00:00
Soeren Sandmann
53f23a989a Only include placeholders when include_internals is TRUE.
Thu Oct 30 22:04:31 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c (gtk_toolbar_forall): Only include
	placeholders when include_internals is TRUE.
2003-10-30 22:39:11 +00:00
Soeren Sandmann
aca1b6f391 Make it work even when item 0 is a placeholder. (#125826) add an assertion
Thu Oct 30 17:57:53 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c (logical_to_physical): Make it work even when
	item 0 is a placeholder. (#125826)
	* tests/testtoolbar.c: add an assertion that
	gtk_toolbar_get_nth_item (0) != NULL
2003-10-30 17:08:49 +00:00
Soeren Sandmann
342646018d Make it work for logical == 0.
Thu Oct 30 17:40:26 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c (logical_to_physical): Make it work for
	logical == 0.
2003-10-30 16:50:11 +00:00
Soeren Sandmann
83d5006ee4 Make sure we actually return the index of a real item. (get_nth_item)
Thu Oct 30 16:20:58 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c (logical_to_physical): Make sure we actually
	return the index of a real item.
	(get_nth_item) assert that the returned items is not a
	placeholder.  (#125826, Marco Pesenti Gritti).
2003-10-30 15:30:24 +00:00
Federico Mena Quintero
993b9db533 Only paint a separator if the text is NULL, rather than also doing it if
2003-10-29  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkcellrendererseptext.c
	(gtk_cell_renderer_sep_text_render): Only paint a separator if the
	text is NULL, rather than also doing it if it is an empty string.
2003-10-29 23:10:57 +00:00
Owen Taylor
935b37eb24 Allow NULL for message_format, as described in the docs and as worked
Wed Oct 29 15:40:26 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkmessagedialog.c (gtk_message_dialog_new/
        gtk_message_dialog_new_with_format): Allow NULL
        for message_format, as described in the docs and
        as worked previously. (#125759, Richard Hult)

        * gtk/gtkmessagedialog.c (gtk_message_dialog_new_with_markup):
        Use g_markup_vprintf_escaped() to escape argumetns.

        * gtk/gtkmessagedialog.[ch]: Add gtk_message_dialog_set_markup()
        so there is some way to set literal markup.
2003-10-29 20:43:58 +00:00
Owen Taylor
6773cabf56 Move the call to gdk_error_trap_pop() to the right place, fixing a problem
Wed Oct 29 15:01:32 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkimage-x11.c (_gdk_x11_copy_to_image): Move
        the call to gdk_error_trap_pop() to the right place,
        fixing a problem where we'd pop() too many times
        when bailing out. (#123302, Thomas Leonard)
2003-10-29 20:05:40 +00:00
Owen Taylor
6e6d4033f7 Fix infinite recursion. (#125679, Christian Persch)
Wed Oct 29 12:50:02 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkfilechooserutils.c (delegate_set_current_folder):
        Fix infinite recursion. (#125679, Christian Persch)
2003-10-29 17:53:56 +00:00
GMT 2003 Tony Gale
c4526d600c further 2.x updates: mirrors,compiling,g_main_context_iteration
Wed Oct 29 13:29:15 GMT 2003  Tony Gale <gale@gtk.org>

        * docs/faq/gtk-faq.sgml: further 2.x updates:
        mirrors,compiling,g_main_context_iteration
2003-10-29 13:31:21 +00:00
Åsmund Skjæveland
dac8a14bbd Updated Norwegian Nynorsk translation. Resolved a number of CVS conflicts.
2003-10-29  Åsmund Skjæveland  <aasmunds@fys.uio.no>

	* nn.po: Updated Norwegian Nynorsk translation. Resolved a number
	of CVS conflicts.
2003-10-29 12:37:13 +00:00
Soeren Sandmann
f36e68a1e8 Add this function; remove gtk_toolbar_highlight_drop_location() and
Wed Oct 29 02:54:35 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.[ch] (gtk_toolbar_set_drop_highlight_item): Add this
	function; remove gtk_toolbar_highlight_drop_location() and
	gtk_toolbar_unhighlight_drop_location().

	Also fix bug where the number of overflowed items were miscounted.
2003-10-29 01:58:38 +00:00
Owen Taylor
077eee4dfb Remove some accidentally committed duplicate code.
Tue Oct 28 12:20:16 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_has_toplevel_focus): Remove
        some accidentally committed duplicate code.
2003-10-28 17:30:03 +00:00
GMT 2003 Tony Gale
6bbfc7d2b6 Update info on compiling GTK+
Tue Oct 28 17:06:17 GMT 2003  Tony Gale <gale@gtk.org>

        * docs/faq/gtk-faq.sgml: Update info on compiling GTK+
2003-10-28 17:07:45 +00:00
Owen Taylor
097c3fe625 Add getters corresponding to the is_active and has_toplevel_focus
Tue Oct 28 10:34:24 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.[ch] (gtk_window_is_active,
        gtk_has_toplevel_focus): Add getters corresponding to
        the is_active and has_toplevel_focus properties.
        (#122531)
2003-10-28 15:43:43 +00:00
Mark McLoughlin
6ccf2d2d09 hook up the destroy handler. (gtk_expander_destroy),
2003-10-28  Mark McLoughlin  <mark@skynet.ie>

        * gtk/gtkexpander.c:
        (gtk_expander_class_init): hook up the destroy handler.
        (gtk_expander_destroy), (gtk_expander_unrealize):
        remove the expand/collapse timeout on destroy instead
        of unrealize to avoid leaving the expander in a inconsistent
        state when unrealizing during animation.
        (gtk_expander_start_animation): remove realized check.
        (gtk_expander_set_expanded): if the widget isn't realized,
        expand immediately.
2003-10-28 15:32:21 +00:00
Owen Taylor
5f9345d829 Silently do nothing when recipient is NULL, as described in the doc
Tue Oct 28 09:44:16 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkxembed.c (_gtk_xembed_send_focus_message): Silently
        do nothing when recipient is NULL, as described in the
        doc comment. (#123107, Thomas Leonard)
2003-10-28 14:48:31 +00:00
Owen Taylor
e4a657251f Move docs inline, rewrite docs, mention memory management for the return
Tue Oct 28 09:21:29 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkmain.c (gtk_check_version): Move docs inline,
        rewrite docs, mention memory management for the return
        value. (Partly addresses #125549, Michael Natterer)
2003-10-28 14:23:28 +00:00
Padraig O'Briain
dbd3b079ff Changew index to filter_index to fix compilation error.
2003-10-28  Padraig O'Briain  <padraig.obriain@sun.com>

	* gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_remove_filter):
	Changew index to filter_index to fix compilation error.

	* gtk/gtkfilesystem.h: Correct definition of gtk_file_path_get_string.
2003-10-28 14:13:01 +00:00
Manish Singh
afad91fe8d #include <X11/extensions/Xrandr.h> if we have RandR support, for
Mon Oct 27 15:47:58 2003  Manish Singh  <yosh@gimp.org>

        * gdk/x11/gdkscreen-x11.c: #include <X11/extensions/Xrandr.h> if
        we have RandR support, for XRRUpdateConfiguration declaration.

        * gtk/gtkfilefilter.c: #include "gtkprivate.h" for _gtk_fnmatch
        declaration.

        * gtk/gtkuimanager.c (gtk_ui_manager_add_ui_from_file): Make
        length a gsize variable, since that's what g_file_get_contents()
        expects.
2003-10-27 23:50:34 +00:00
Manish Singh
208b445f0d shut up cvs 2003-10-27 23:41:12 +00:00
Owen Taylor
407851d1e1 Fix attribution for above/below EWMH work.
Mon Oct 27 12:18:49 2003  Owen Taylor  <otaylor@redhat.com>

        * NEWS: Fix attribution for above/below EWMH work.
2003-10-27 17:19:51 +00:00
KAMAGASAKO Masatoshi
f0b39126a0 Updated Japanese translation.
2003-10-28  KAMAGASAKO Masatoshi  <emerald@gnome.gr.jp>

	* ja.po: Updated Japanese translation.
2003-10-27 15:52:55 +00:00
Matthias Clasen
03cd34e13c Add "name" as a construct-only property. (#125475, Murray Cumming)
Sat Oct 25 23:30:13 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkactiongroup.c (gtk_action_group_class_init): Add "name"
	as a construct-only property.  (#125475, Murray Cumming)
2003-10-25 21:34:24 +00:00
Soeren Sandmann
c2612aa5c3 Add bug numbers to ChangeLog
Thu Oct 23 21:55:10 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	Fix bug 116297 and 125472

	* gtk/gtktoolbar.c (gtk_toolbar_highlight_drop_location): Make
	this function take an index and a GtkToolItem.

	* tests/testtoolbar.c (main): Make "Show Arrow" default to
	true. Make one of the separators !draw and expand.
	Update for new highlight_drop_location() API.

	* gtk/gtktoolitem.[ch]: Remove "pack_end" property

	* gtk/gtktoolbar.h: Formatting fixes.

	* gtk/gtktoolbar.c: Remove "pack_end" child property. Allow
	separator tool items to expand.
	(logical_to_physical, physical_to_logical): Fix off-by-one errors
	(Fix #125472, Marco Pesenti Gritti)

	* gtk/gtkseparatortoolitem.[ch]: Add new "draw" property.
	(gtk_separator_tool_item_expose) only draw if "draw" is TRUE. Also
	return FALSE, not TRUE.
	(gtk_separator_too_item_{set|get}_property,
	(gtk_separator_tool_item_{set|get}_draw): new functions
2003-10-25 20:30:54 +00:00
Søren Sandmann Pedersen
2ce4f1bc5b Broken pipe 2003-10-25 19:59:31 +00:00
Soeren Sandmann
356df7f650 Make this function take an index and a GtkToolItem.
Thu Oct 23 21:55:10 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c (gtk_toolbar_highlight_drop_location): Make
	this function take an index and a GtkToolItem.

	* tests/testtoolbar.c (main): Make "Show Arrow" default to
	true. Make one of the separators !draw and expand.
	Update for new highlight_drop_location() API.

	* gtk/gtktoolitem.[ch]: Remove "pack_end" property

	* gtk/gtktoolbar.h: Formatting fixes.

	* gtk/gtktoolbar.c: Remove "pack_end" child property. Allow
	separator tool items to expand.
	(logical_to_physical, physical_to_logical): Fix off-by-one errors
	(Fix #125472, Marco Pesenti Gritti)

	* gtk/gtkseparatortoolitem.[ch]: Add new "draw" property.
	(gtk_separator_tool_item_expose) only draw if "draw" is TRUE. Also
	return FALSE, not TRUE.
	(gtk_separator_too_item_{set|get}_property,
	(gtk_separator_tool_item_{set|get}_draw): new functions
2003-10-25 19:58:51 +00:00
Owen Taylor
3a7a64aa46 === Released 2.3.0 ===
Fri Oct 24 16:54:04 2003  Owen Taylor  <otaylor@redhat.com>

        * === Released 2.3.0 ===

        * configure.in: Remove a stray comma.

        * README.in: Fix a few notes about Xft 1 and pango-1.0.

        * NEWS: Finish updates for 2.3.0.

        * po/Makefile.in.in: Update to latest GLib version.
2003-10-24 22:16:07 +00:00
Owen Taylor
1e5c8e64f5 Relicense to be dual AFL/LGPL (and thus also GPL) rather than AFL/GPL.
Fri Oct 24 16:02:32 2003  Owen Taylor  <otaylor@redhat.com>

        * *.[ch]: Relicense to be dual AFL/LGPL (and thus also
        GPL) rather than AFL/GPL. Also update AFL version to 1.2.
2003-10-24 20:03:37 +00:00
Kristian Rietveld
2e2b780f97 Fix licensing (I managed to put it under GPL licensing instead of
Fri Oct 24 20:31:35 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkcellview.[ch], gtk/gtkcellviewmenuitem.[ch],
	gtk/gtkcombobox.[ch], gtk/gtkcomboboxentry.[ch],
	gtk/gtktreemodelfilter.[ch]: Fix licensing (I managed to put it
	under GPL licensing instead of LGPL...). (Fixes #125381, Soeren
	Sandmann).
2003-10-24 18:36:55 +00:00
Kristian Rietveld
021ec700a5 add padding to the class structure.
Fri Oct 24 20:22:40 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreemodelfilter.h: add padding to the class structure.
2003-10-24 18:26:13 +00:00
Federico Mena Quintero
e475c2684d Fixed docs. (gtk_file_chooser_remove_filter): Likewise.
2003-10-23  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilechooser.c (gtk_file_chooser_get_preview_uri): Fixed docs.
	(gtk_file_chooser_remove_filter): Likewise.
	(gtk_file_chooser_select_all): Added docs.
	(gtk_file_chooser_unselect_all): Likewise.

	* gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_new): Added docs.

	* gtk/gtkfilechooserwidget.c (gtk_file_chooser_widget_new): Added docs.
2003-10-23 23:02:38 +00:00
Federico Mena Quintero
8d7d50cb7f Added the text for the initial section, and descriptions for the signals
2003-10-23  Federico Mena Quintero  <federico@ximian.com>

	* gtk/tmpl/gtkfilechooser.sgml: Added the text for the initial
	section, and descriptions for the signals and enumerations.

	* gtk/tmpl/gtkfilechooserdialog.sgml: Added the text for the
	initial section, and a short example.

	* gtk/tmpl/gtkfilechooserwidget.sgml: Added the text for the
	initial section.
2003-10-23 22:59:34 +00:00
Matthias Clasen
588f16f1e6 Add short descriptions.
Fri Oct 24 00:25:07 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/tmpl/gtkfilefilter.sgml:
	* gtk/tmpl/gtkfilechooser.sgml:
	* gtk/tmpl/gtkfilechooserwidget.sgml:
	* gtk/tmpl/gtkfilechooserdialog.sgml: Add short descriptions.
2003-10-23 22:26:39 +00:00
Matthias Clasen
1dc3b26fb1 Add "Since: 2.4" to all API doc comments.
Thu Oct 23 23:22:15 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkfilefilter.c:
	* gtk/gtkfilechooser.c: Add "Since: 2.4" to all API doc comments.
2003-10-23 21:22:58 +00:00
Matthias Clasen
4200df5bdb Move GtkCombo and GtkOptionMenu to the "Deprecated" chapter. Add
Thu Oct 23 22:41:02 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtk-docs.sgml: Move GtkCombo and GtkOptionMenu to
	the "Deprecated" chapter. Add GtkFileChooser, GtkFileChooserDialog,
	GtkFileChooseWidget and GtkFileFilter.

	* gtk/gtkfilefilter.c (gtk_file_filter_new): Fix doc markup.
2003-10-23 20:44:13 +00:00
Matthias Clasen
6de190725c Updates. 2003-10-23 19:49:54 +00:00
Federico Mena Quintero
e577ee85c3 Added gtk_file_chooser_get_type, gtk_file_chooser_dialog_get_type,
2003-10-23  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtk.types: Added gtk_file_chooser_get_type,
	gtk_file_chooser_dialog_get_type,
	gtk_file_chooser_widget_get_type, gtk_file_filter_get_type.

	* gtk/gtk-sections.txt: Added GtkFileChooser,
	GtkFileChooserWidget, GtkFileChooserDialog, GtkFileFilter.

	* gtk/Makefile.am (IGNORE_HFILES): Added gtkcellrendererseptext.h,
	gtkfilechooserdefault.h, gtkfilechooserentry.h,
	gtkfilechooserutils.h, gtkfilesystem.h, gtkfilesystemmodel.h,
	gtkfilesystemunix.h.

	* gtk/tmpl/gtkfilechooser.sgml: New template file.

	* gtk/tmpl/gtkfilechooserdialog.sgml: Likewise.

	* gtk/tmpl/gtkfilechooserwidget.sgml: Likewise.

	* gtk/tmpl/gtkfilefilter.sgml: Likewise.
2003-10-23 19:47:13 +00:00
Kristian Rietveld
0483c1a9dd Updates for 2.3.0; changed header to match the style we used for 2.1.0.
Thu Oct 23 21:12:50 2003  Kristian Rietveld  <kris@gtk.org>

	* NEWS: Updates for 2.3.0; changed header to match the style we used
	for 2.1.0.
2003-10-23 19:19:07 +00:00
Matthias Clasen
76d7a19436 Actually assign the new leader. (#125168, Mariano Suarez-Alvarez)
Thu Oct 23 20:47:44 2003  Matthias Clasen  <maclas@gmx.de>

	* gdk/x11/gdkwindow-x11.c (gdk_window_set_group): Actually
	assign the new leader.  (#125168, Mariano Suarez-Alvarez)
2003-10-23 18:50:40 +00:00
Kristian Rietveld
3a5b5a0f78 Fix includes.
Thu Oct 23 20:21:16 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkcelllayout.c, gtk/gtkcellview.c gtk/gtkcellviewmenuitem.c,
	gtk/gtkcombobox.c, gtk/gtkcomboboxentry.c, gtk/gtkentrycompletion.c,
	gtk/gtktreemodelfilter.c, gtk/gtkcellrenderertoggle.c: Fix includes.
2003-10-23 18:25:53 +00:00
Raymond Penners
432c583ad5 0.5.1 2003-10-23 18:00:10 +00:00
cinamod
0aca654ce0 update xp_theme_defs 2003-10-23 14:20:27 +00:00
Soeren Sandmann
6c468a9388 Partial update for 2.3.0.
Thu Oct 23 15:13:56 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* NEWS: Partial update for 2.3.0.
2003-10-23 13:15:55 +00:00
Owen Taylor
9e35725237 Convert GtkOptionMenu to GtkComboBox.
Thu Oct 23 01:09:04 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkfilechooserdefault.c: Convert GtkOptionMenu to
        GtkComboBox.
2003-10-23 05:10:47 +00:00
Owen Taylor
9bca8eced6 cvsignore updates 2003-10-23 04:31:28 +00:00
Owen Taylor
b3bae3b40a gtk/gtkfilechooserutils.c gtk/gtkfilechooserprivate.[ch]: Basic framework
Wed Oct 22 23:20:04 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkfilechooser.[ch] gtk/gtkfilefilter.[ch]
        gtk/gtkfilechooserwidget.[ch] gtk/gtkfilechooserdialog.[ch]:
        gtk/gtkfilechooserutils.c gtk/gtkfilechooserprivate.[ch]:
        Basic framework for the new file selector widget.

        * gtk/gtkfilechooserdefault.[ch] gtk/gtkcellrenderersep.[ch]
        gtk/gtkfilechooserentry.[ch] gtk/gtkfilesystemmodel.[ch]:
        Initial implementation of the GtkFileChooser user interface.

        * gtk/gtkfilesystemunix.[ch]: GtkFileSystem implementation
        for Unix files.

        * configure.in gtk/Makefile.am gtk/xdgmime: Build code
        for freedesktop.org MIME system on Unix.

        * tests/testfilechooser.c: Test program for GtkFileChooser

        * tests/prop-editor.c: Add support for properties on interfaces.
2003-10-23 04:22:32 +00:00
Owen Taylor
3724a591d8 Fix some unused variables.
Tue Oct 21 16:12:51 2003  Owen Taylor  <otaylor@redhat.com>

        * demos/gtk-demo/menus.c (do_menus): Fix some unused
        variables.

        * gtk/gtkmain.c (_gtk_get_lc_ctype): Fix an unused
        variable warning
2003-10-23 03:20:54 +00:00
Federico Mena Quintero
d7c1842b55 Renamed from GtkFileChooserImplDefault to GtkFileChooserDefault.
2003-10-22  Federico Mena Quintero  <federico@ximian.com>

	* gtkfilechooserdefault.[ch]: Renamed from
	GtkFileChooserImplDefault to GtkFileChooserDefault.
2003-10-23 00:26:15 +00:00
Matthias Clasen
bc3ef97e02 Update NEWS for 2.3.0 2003-10-22 22:05:35 +00:00
Vincent van Adrighem
fa0965535b Dutch translation updated by Tino Meinen.
2003-10-22   Vincent van Adrighem  <adrighem@gnome.org>

	* nl.po: Dutch translation updated by Tino Meinen.
2003-10-22 19:00:17 +00:00
Raymond Penners
0727b51dc2 More code formatting 2003-10-22 18:41:02 +00:00
Raymond Penners
bce3094486 Code formatting 2003-10-22 18:25:50 +00:00
Kristian Rietveld
5bf43ccbb8 set ctrl_pressed and shift_pressed according to the current event state
Tue Oct 21 22:07:12 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreeview.c (gtk_tree_view_real_move_cursor): set
	ctrl_pressed and shift_pressed according to the current event
	state (if there is one). (Fixes #125063, reported by Sebastien Bacher).
2003-10-21 20:19:14 +00:00
cinamod
28087cb57d use more XP style functions 2003-10-21 18:51:29 +00:00
Federico Mena Quintero
806d18a4ae Free the info itself.
2003-10-20  Federico Mena Quintero  <federico@ximian.com>

	* gtkfilesystem.c (gtk_file_info_free): Free the info itself.

	* gtkfilechooserimpldefault.c (shortcuts_insert_path): Free the
	GtkFileInfo.
2003-10-21 01:06:30 +00:00
Kristian Rietveld
5b9a4e6997 remove the completion timeout when the user pressed on Enter/ESC. Fixes
Mon Oct 20 23:24:27 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkentry.c (gtk_entry_key_press): remove the completion
	timeout when the user pressed on Enter/ESC. Fixes the bug where the
	completion popup popped up after the user pressed on Enter (which is
	just weird). Reported by the Epiphany people (all of them).
2003-10-20 21:28:38 +00:00
Federico Mena Quintero
1e49d49a3e New utility function. (gtk_file_system_gnome_vfs_get_folder): Use
2003-10-20  Federico Mena Quintero  <federico@ximian.com>

	* gtkfilesystemgnomevfs.c (folder_child_new): New utility
	function.
	(gtk_file_system_gnome_vfs_get_folder): Use folder_child_new().
	(gtk_file_folder_gnome_vfs_get_info): Likewise.
	(directory_load_callback): Likewise.
	(monitor_callback): Likewise.

	* TODO: Removed the item about factoring out the code that creates
	FolderChild structures.
2003-10-20 20:17:35 +00:00
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
Raymond Penners
c7353d84ee Scrollbar grippers 2003-10-20 17:38:53 +00:00
cinamod
aac8660254 bump version # 2003-10-20 14:53:05 +00:00
Raymond Penners
bd40282903 gtkrc 2003-10-18 20:45:15 +00:00
Raymond Penners
52349beb92 Grippers 2003-10-18 20:37:30 +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
Raymond Penners
a0628bab9a Scrollbar fixes 2003-10-17 18:00:44 +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
Raymond Penners
e246918d1b Merged patch from Arnaud Charlet 2003-10-14 18:35:43 +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
Matthias Clasen
2baa63a100 Make it work as documented when pixmap or mask is NULL. (#124081)
Mon Oct 13 20:58:07 2003  Matthias Clasen  <maclas@gmx.de>

	* gdk/x11/gdkwindow-x11.c (gdk_window_set_icon): Make it work
	as documented when pixmap or mask is NULL.  (#124081)
2003-10-13 19:00:19 +00:00
Kristian Rietveld
a450820237 Fix changelog. Doh. 2003-10-13 18:24:44 +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
Kristian Rietveld
9607ba378a enable GTK_DISABLE_DEPRECATED again, (set_interp_type), (main): port over
Mon Oct 13 20:21:55 2003  Kristian Rietveld  <kris@gtk.org>

	* demos/testpixbuf-scale.c: enable GTK_DISABLE_DEPRECATED again,
	(set_interp_type), (main): port over from option menu to GtkComboBox.
2003-10-13 18:15:10 +00:00
Kristian Rietveld
d4627e1da4 Still uses option menus, so turn off GTK_DISABLE_DEPRECATED.
Mon Oct 13 19:41:55 2003  Kristian Rietveld  <kris@gtk.org>

	* tests/testmenus.c: Still uses option menus, so turn off
	GTK_DISABLE_DEPRECATED.
2003-10-13 17:43:48 +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
c4739fb57e Add the get_type() functions for GtkEntryCompletion, GtkTreeModelFilter,
Sun Oct 12 00:33:48 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtk.types: Add the get_type() functions for
	GtkEntryCompletion, GtkTreeModelFilter, GtkCellLayout,
	GtkComboBox, GtkComboBoxEntry.
2003-10-11 22:36:04 +00:00
Matthias Clasen
999256120a These files still use option menus, so turn off GTK_DISABLE_DEPRECATED to
Sun Oct 12 00:18:02 2003  Matthias Clasen  <maclas@gmx.de>

	* tests/testtreeview.c:
	* demos/testpixbuf-scale.c:
	* tests/prop-editor.c: These files still use option menus,
	so turn off GTK_DISABLE_DEPRECATED to fix the build.
2003-10-11 22:21:04 +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
3b2003c9a2 Included gtk_progress_bar_get_orientation() in the list of undeprecated
Sat Oct 11 00:18:46 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/tmpl/gtkprogressbar.sgml: Included
	gtk_progress_bar_get_orientation() in the list of undeprecated
	functions, use less clumsy markup for enumerations.
2003-10-10 22:20:19 +00:00
Matthias Clasen
dd548173bf Replace GtkItemFactory by GtkUIManager in the intro (again).
Fri Oct 10 23:02:58 2003  Matthias Clasen  <maclas@gmx.de>

	* demos/gtk-demo/menus.c: Replace GtkItemFactory by GtkUIManager
	in the intro (again).
2003-10-10 21:04:30 +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
Raymond Penners
52595ffaf5 Released 0.5.0 2003-10-08 19:22:37 +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
cc46d181bd New callback to propertly report radio actions.
Wed Oct  8 00:06:17 2003  Matthias Clasen  <maclas@gmx.de>

	* demos/gtk-demo/ui_manager.c (activate_radio_action): New
	callback to propertly report radio actions.

	* demos/gtk-demo/ui_manager.c (do_ui_manager): Use it here.
2003-10-07 22:07:16 +00:00
Matthias Clasen
0ad91b0ea1 Add C++ guards. (123955, Harring Figueiredo)
Tue Oct  7 23:30:00 2003  Matthias Clasen  <maclas@gmx.de>

	* gdk-pixbuf-xlib.h: Add C++ guards. (123955, Harring Figueiredo)
2003-10-07 21:32:54 +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
Raymond Penners
995c756f11 added safety 2003-10-07 20:53:15 +00:00
Raymond Penners
3d279086dd Messed up changelog, again, zzz 2003-10-07 20:41:36 +00:00
Raymond Penners
359d5c9857 Messed up changelog 2003-10-07 20:40:32 +00:00
Raymond Penners
de1c1916ea Removed debugging stuff 2003-10-07 20:31:45 +00:00
cinamod
c7f1da6b0c clean up some return values in xp_theme 2003-10-07 20:11:27 +00:00
cinamod
3b960961f5 remove C++ comments 2003-10-07 20:07:49 +00:00
Raymond Penners
ab490bdcde Lightweight theme switching 2003-10-07 19:58:28 +00:00
cinamod
bb3f3dbc15 mingw build system 2003-10-07 19:10:15 +00:00
Raymond Penners
8a93f2ff7a Fixes 2003-10-07 18:56:57 +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
cinamod
5f5323d820 define HTHEME 2003-10-07 18:21:24 +00:00
Raymond Penners
2b7bd1f817 IsThemeActive and dfns->defs 2003-10-07 18:03:34 +00:00
Danilo Šegan
231f83cfa2 Updated Serbian translation.
2003-10-07  Danilo Šegan  <dsegan@gmx.net>

	* sr.po, sr@Latn.po: Updated Serbian translation.
2003-10-07 11:34:40 +00:00
Christian Rose
396759e6c7 Updated Swedish translation.
2003-10-07  Christian Rose  <menthos@menthos.com>

	* sv.po: Updated Swedish translation.
2003-10-06 23:26:24 +00:00
Pablo Gonzalo del Campo
47c2771c8a Updated Spanish translation by Francisco Javier F. Serrador
2003-10-06  Pablo Gonzalo del Campo  <pablodc@bigfoot.com>

        * es.po: Updated Spanish translation by
                 Francisco Javier F. Serrador <serrador@arrakis.es>.
2003-10-06 21:36:16 +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
cinamod
dc825592f4 xp theme definitions for platforms NOT winxp, catch system settings changes, disable theme switching 2003-10-06 16:38:53 +00:00
Danilo Šegan
906746ae7d Updated Serbian translation.
2003-10-06  Danilo Šegan  <dsegan@gmx.net>

	* sr.po, sr@Latn: Updated Serbian translation.
2003-10-06 11:15:37 +00:00
Christian Rose
004919ef5d Updated Swedish translation somewhat.
2003-10-06  Christian Rose  <menthos@menthos.com>

	* sv.po: Updated Swedish translation somewhat.
2003-10-06 00:53:06 +00:00
Matthias Clasen
7d7bbef321 Remove an extraneous unref. (#122336, Frederic Crozat)
Sun Oct  5 23:59:03 2003  Matthias Clasen  <maclas@gmx.de>

	* tests/testsocket.c (child_read_watch): Remove an
        extraneous unref.  (#122336, Frederic Crozat)
2003-10-05 22:00: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
KAMAGASAKO Masatoshi
fe0d5d4023 Updated Japanese translation.
2003-10-05  KAMAGASAKO Masatoshi  <emerald@gnome.gr.jp>

	* ja.po: Updated Japanese translation.
2003-10-05 14:45:16 +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
Danilo Šegan
6d18d72eaa Updated Serbian translation.
2003-10-04  Danilo Šegan  <dsegan@gmx.net>

	* sr.po, sr@Latn.po: Updated Serbian translation.
2003-10-04 20:14:08 +00:00
Christian Rose
dfa30cf749 Updated Swedish translation somewhat.
2003-10-04  Christian Rose  <menthos@menthos.com>

	* sv.po: Updated Swedish translation somewhat.
2003-10-04 19:45:37 +00:00
Christian Rose
dfe79d2d6d Added missing files.
2003-10-04  Christian Rose  <menthos@menthos.com>

	* POTFILES.in: Added missing files.
2003-10-04 15:59:41 +00:00
Danilo Šegan
e73028f8fc Updated Serbian translation.
2003-10-04  Danilo Šegan  <dsegan@gmx.net>

	* sr.po, sr@Latn.po: Updated Serbian translation.
2003-10-04 01:33:59 +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
cinamod
795d24d459 fix menu delays 2003-10-03 18:17:39 +00:00
cinamod
2af224b3a5 redo how we do styles 2003-10-03 17:02:45 +00:00
cinamod
0f5490e5de catch color changes properly now 2003-10-03 16:20:25 +00:00
cinamod
1993a58518 catch theme and color changes 2003-10-03 15:54:20 +00:00
cinamod
84841faf7f don't leak as many GCs 2003-10-03 13:51:41 +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
Matthias Clasen
cd6f16f5bb Add gtkcellview.h and gtkcellviewmenuitem.h.
2003-10-02  Matthias Clasen  <maclas@gmx.de>

	* gtk/Makefile.am (IGNORE_HFILES): Add gtkcellview.h and
	gtkcellviewmenuitem.h.

	* gtk/tmpl/gtkentrycompletion.sgml:
	* gtk/tmpl/gtktreemodelfilter.sgml:
	* gtk/tmpl/gtkcelllayout.sgml:
	* gtk/tmpl/gtkcombobox.sgml:
	* gtk/tmpl/gtkcomboboxentry.sgml: New templates.

	* gtk/gtk-sections.txt:
	* gtk/gtk-docs.sgml: Add sections for GtkEntryCompletion,
	GtkTreeModelFilter, GtkCellLayout, GtkComboBox, GtkComboBoxEntry.

	* gtk/tmpl/gtktreednd.sgml: Add short description.

	* gtk/gtk-docs.sgml: Move GtkItemFactory to the "Deprecated" chapter.

	* gtk/tmpl/gtktoggletoolbutton.sgml: Fix section title.
2003-10-01 22:43:30 +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
cinamod
c0addc2e40 be more protective about when we install properties 2003-10-01 20:49:44 +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
c34b0a094b Add two missing signals.
* gdk/tmpl/keys.sgml: Add two missing signals.
2003-09-30 23:25:48 +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
Matthias Clasen
f99ba6c70f Add hint to use #GtkUIManager instead.
* gtk/tmpl/gtkitemfactory.sgml: Add hint to use #GtkUIManager instead.
2003-09-30 21:15:00 +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
Gustavo Maciel Dias Vieira
9cec9f2bc2 Applied revision by Augusta Marques da Silva <augusta.marques@gmx.net>.
2003-09-30  Gustavo Maciel Dias Vieira  <gdvieira@zaz.com.br>

        * pt_BR.po: Applied revision by Augusta Marques da Silva
        <augusta.marques@gmx.net>.
2003-09-30 15:32:06 +00:00
cinamod
f81a63fde9 add gtksetting 2003-09-30 14:44:11 +00:00
Matthias Clasen
f582c04a9c Document the "direction-changed" and "keys-changed" signals.
2003-09-30  Matthias Clasen  <maclas@gmx.de>

	* gdk/gdkkeys.c (gdk_keymap_class_init): Document the
	"direction-changed" and "keys-changed" signals.

	* gdk/gdkscreen.c (gdk_screen_class_init): Document the
	"size-changed" signal.

	* gdk/gdkdisplaymanager.c (gdk_display_manager_class_init):
	Document the "display-opened" signal.

	* gdk/gdkdisplay.c (gdk_display_close): Doc tweak.
	(gdk_display_class_init): Document the "closed" signal.

	* gdk/tmpl/keys.sgml: Small addition.

	* gdk/gdk-sections.txt: Add GdkDisplayClass and GdkScreenClass.

	* gdk-pixbuf/gdk-pixbuf-sections.txt: Add GdkPixbufLoaderClass.
2003-09-30 00:36:29 +00:00
Matthias Clasen
f434562000 Add GdkPixbufLoaderClass.
* gdk-pixbuf/gdk-pixbuf-sections.txt: Add GdkPixbufLoaderClass.
2003-09-29 23:27:41 +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
e4507b6018 Turn off GTK_DISABLE_DEPRECATED, since this test uses the
2003-09-27  Matthias Clasen  <maclas@gmx.de>

	* tests/testtext.c: Turn off GTK_DISABLE_DEPRECATED, since
	this test uses the soon-to-be-deprecated GtkItemFactory.

	* demos/gtk-demo/Makefile.am (demos): Add ui_manager.c,
	remove item_factory.c

	* demos/gtk-demo/ui_manager.c: Duplicate of item_factory.c
	using GtkUIManager instead of GtkItemFactory.
2003-09-26 23:33:46 +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
Tor Lillqvist
4a2de86c44 Don't use hardcoded DEMOCODEDIR on Windows.
2003-09-25  Tor Lillqvist  <tml@iki.fi>

	* demos/gtk-demo/main.c: Don't use hardcoded DEMOCODEDIR on Windows.

2003-09-21  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkevents-win32.c (handle_wm_paint): New
	function. Code split out from gdk_event_translate(). Needed
	because gdk_event_get_graphics_expose() couldn't do anything
	sensible otherwise. (Not that I think graphics exposes work anyway
	in gdk/win32, but at least now the code could work.)

	(gdk_event_get_graphics_expose): Call handle_wm_paint() instead of
	gdk_event_translate(), which couldn't have worked as it doesn't
	take any pre-allocated GdkEvent parameter any longer.

	(gdk_event_translate): Handle WM_MOUSEACTIVATE: Don't let
	GDK_WINDOW_TEMP windows be activated. (#122578, John Ehresman)
2003-09-25 18:48:06 +00:00
cinamod
97f1b098af set delay on popdown menus 2003-09-25 15:07:02 +00:00
cinamod
86b43475c8 set delay on popdown menus 2003-09-25 15:04:16 +00:00
KAMAGASAKO Masatoshi
944d730d7c Updated Japanese translation.
2003-09-25  KAMAGASAKO Masatoshi  <emerald@gnome.gr.jp>

	* ja.po: Updated Japanese translation.
2003-09-24 16:58:53 +00:00
Matthias Clasen
33164c02dc Demonstrate tooltips on toolitems.
2003-09-24  Matthias Clasen  <maclas@gmx.de>

	* demos/gtk-demo/appwindow.c (do_appwindow): Demonstrate tooltips
	on toolitems.
2003-09-23 23:55:02 +00:00
Matthias Clasen
a93cee89c2 Sync tooltips on toolitems.
2003-09-24  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkaction.c (connect_proxy): Sync tooltips on toolitems.

	* gtk/gtkuimanager.c (update_node): Don't complain about missing
	actions on popups. Re-set "tooltip" property on toolitems after
	adding them to parent to trigger proxy update.
2003-09-23 23:42:39 +00:00
cinamod
dc16c121f9 const some strings 2003-09-22 14:36:30 +00:00
Matthias Clasen
cf639f4168 Initially activate the JUSTIFY_RIGHT group member to test the fix for
2003-09-22  Matthias Clasen  <maclas@gmx.de>

	* tests/testmerge.c (main): Initially activate the JUSTIFY_RIGHT
	group member to test the fix for #122904.

	* gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full):
	Add the action to the group before activating it, otherwise we
	may end up with multiple active group members.  (#122904, Marco
	Pesenti Gritti)
2003-09-22 08:54:23 +00:00
Matthias Clasen
df64ae4434 Fix a copy-and-paste error. (#122800)
2003-09-22  Matthias Clasen  <maclas@gmx.de>

	* gtk/tmpl/gtktable.sgml: Fix a copy-and-paste error.  (#122800)
2003-09-22 08:30:26 +00:00
Matthias Clasen
d381967d5c Changes to make cross-process merging feasible:
2003-09-21  Matthias Clasen  <maclas@gmx.de>

	Changes to make cross-process merging feasible:

	* gtk/gtkuimanager.[hc]: Add a readonly "ui" property which holds the
	merged UI definition. Remove the "changed" signal, since its role
	is now filled by "notify::ui". Instead add a "actions-changed" signal
	which gets emitted when the set of actions changes.

	* gtk/gtktoggleactionprivate.h:
	* gtk/gtktoggleaction.[hc] (gtk_toggle_action_[sg]et_draw_as_radio):
	Add a "draw_as_radio" property to toggle actions so that they can be
	used as proxies for radio actions much like the "draw_as_radio"
	property on check menu items enables them to operate as proxies for
	radio actions.

	Prevent the "show_all" trap for action-based menus (see
	http://mail.gnome.org/archives/gtk-devel-list/2003-September/
	msg00260.html):

	* gtk/gtkmenu.c (gtk_menu_{hide,show}_all): Remove g_return_if_fail()
	calls from static functions.

	* gtk/gtkuimanager.c (update_node):
	* gtk/gtkaction.c (connect_proxy): Set "no_show_all" on constructed
	widgets whose visibility is externally controlled.

	* gtk/gtkwidget.[hc] (gtk_widget_[gs]et_no_show_all): Add a boolean
	"no_show_all" property with setter and getter. When TRUE, it keeps
	gtk_widget_{hide,show}_all() from modifying the visibility of the
	widget and its children.
2003-09-21 22:04:48 +00:00
Soeren Sandmann
8be8d7f61d Add new "tab moves focus" property (#122709)
Sun Sep 21 23:13:37 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktextview.[ch]: Add new "tab moves focus" property (#122709)
2003-09-21 21:17:44 +00:00
Tor Lillqvist
71e847d11c Don't use zip -r on the etc directory, to avoid including editor backup
2003-09-20  Tor Lillqvist  <tml@iki.fi>

	* gtk-zip.sh.in: Don't use zip -r on the etc directory, to avoid
	including editor backup files. List files we want explicitly.

	* gtk/gtkmain.c (_gtk_get_lc_ctype): New function. On Unix, just
	calls setlocale (LC_CTYPE, NULL). On Windows, looks for the
	LC_ALL, LC_CTYPE and LANG environment variables, than calls
	g_win32_getlocale().

	(gtk_get_default_language): Code snippet moved to above function,
	call it.

	* gtk/gtkimmulticontext.c (gtk_im_multicontext_get_slave)
	* gtk/gtkrc.c (gtk_rc_context_parse_file): Call
	_gtk_get_lc_ctype() instead of setlocale().
2003-09-20 23:52:16 +00:00
Raymond Penners
e95ad99afe 0.4.3 2003-09-20 09:56:27 +00:00
Matthias Clasen
c0d62354d3 Remove a pointless check. (#122710, Kjartan Maraas)
2003-09-19  Matthias Clasen  <maclas@gmx.de>

	* io-tga.c (try_preload): Remove a pointless check.
	(#122710, Kjartan Maraas)
2003-09-19 19:20:09 +00:00
Soeren Sandmann
fc3f1ef30c implement RTL flipping (#96632)
Fri Sep 19 18:15:31 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkpaned.c, gtk/gtkhpaned.c: implement RTL flipping
	(#96632)
2003-09-19 16:18:16 +00:00
Soeren Sandmann
ad709dcfea Improve documentation. (#117306, Steve Chaplin)
Fri Sep 19 13:24:54 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktreeview.c (gtk_tree_view_get_cursor): Improve
	documentation. (#117306, Steve Chaplin)
2003-09-19 11:29:10 +00:00
Christophe Merlet
85e23e7121 Updated French translation. 2003-09-19 09:39:59 +00:00
Tor Lillqvist
c1aa7651b4 Handle dead keysyms present on the US-International keyboard. For clarity,
2003-09-19  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkkeys-win32.c (update_keymap): Handle dead keysyms
	present on the US-International keyboard. For clarity, order
	keysyms in case statement according to numeric value.

	(gdk_keymap_translate_keyboard_state): Handle Caps Lock
	correctly. (#120176, Ken Rastatter and Owen Taylor)
2003-09-19 00:30:35 +00:00
Danilo Šegan
96994c9ea2 Updated Serbian translation.
2003-09-18  Danilo Šegan  <dsegan@gmx.net>

	* sr.po, sr@Latn.po: Updated Serbian translation.
2003-09-18 21:24:04 +00:00
Raymond Penners
c2cee519e3 0.4.2 2003-09-18 19:30:06 +00:00
Matthias Clasen
8a72d4b383 Call g_closure_unref() to unref a closure, not g_object_unref(). (#122637,
2003-09-18  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkaction.c (gtk_action_finalize): Call g_closure_unref() to
	unref a closure, not g_object_unref().  (#122637, Marco Pesenti Gritti)
2003-09-18 19:04:42 +00:00
Matthias Clasen
0ceb0db081 Install accelerators on actions, not on proxies, support accelerator-only
2003-09-18  Matthias Clasen  <maclas@gmx.de>

	Install accelerators on actions, not on proxies, support
	accelerator-only actions:

	* gtk/gtkmenu.c (get_accel_path): New function to get the accel path
	and its lock status either via _gtk_widget_get_accel_path() or by
	looking at the accel_path stored in the menu item itself and determining
	its lock status by peeking into the contained accel label. This was
	already (accidentally) committed a week ago.

	* gtk/gtkaction.h (gtk_action_set_accel_group):
	(gtk_action_[dis]connect_accelerator): New functions.

	* gtk/gtkaction.c (struct _GtkActionPrivate): Add accel_group,
	accel_closure and accel_count. We must have a reference to the accel_group,
	since we need it in connect_proxy. The count is necessary to ensure
	that the accelerator isn't removed before the last proxy requesting
	it has been unmerged.
	(connect_proxy): Connect the accelerator to the
	action now, only set the accel_path on the menuitem.
	(remove_proxy): Disconnect the accelerator from the action, not from
	the menuitem.
	(gtk_action_set_accel_group): Set the accel group.
	(gtk_action_[dis]connect_accelerator): Count the number of times
	this functions have been called and install/remove the accelerator if
	the count leaves/reaches zero.

	* gtk/gtkuimanager.h (GtkUIManagerItemType): Add
	GTK_UI_MANAGER_ACCELERATOR.

	* gtk/gtkuimanager.c (NodeType): Add NODE_TYPE_ACCELERATOR.
	(start_element_handler): Create NODE_TYPE_ACCELERATOR nodes from
	<accelerator> elements.
	(gtk_ui_manager_add_ui): Create NODE_TYPE_ACCELERATOR nodes when
	type is GTK_UI_MANAGER_ACCELERATOR.
	(update_node): Set the accel group on actions before creating their
	proxies. Don't set the accel group on created menus. For
	NODE_TYPE_ACCELERATOR nodes, [dis]connect the actions' accelerator.
	(print_node): Also emit <accelerator> elements.

	* tests/testmerge.c (dump_accels): Add a "Dump Accels" button.
2003-09-17 23:58:28 +00:00
Matthias Clasen
a7ad2a4663 Robustness improvements.
* gtk/gtkuimanager.c (update_node): Robustness improvements.
2003-09-17 22:44:01 +00:00
Matthias Clasen
3044d0f514 Report unexpected character data as error from the GMarkup parser,
2003-09-17  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkuimanager.c (text_handler): Report unexpected character
	data as error from the GMarkup parser, otherwise things like
	gtk_ui_manager_add_ui_from_string (ui, "Hi there!", -1, &error)
	pass unexpectedly.
2003-09-17 19:18:45 +00:00
Soeren Sandmann
77d23072c2 revert accidentally committed !redraw_on_allocate change.
Wed Sep 17 02:38:53 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c (gtk_toolbar_class_init): revert accidentally
	committed !redraw_on_allocate change.
2003-09-17 00:49:45 +00:00
Eric Warmenhoven
79439c9c7b Add gdk_window_set_keep_{above,below} stubs to fix compilation
Tue Sep 16 10:42:00 2003  Eric Warmenhoven  <eric@warmenhoven.org>

        * gdk/linux-fb/gdkwindow-fb.c: Add gdk_window_set_keep_{above,below}
        stubs to fix compilation

        * gdk/linux-fb/gdkrender-fb.c: Add gdk_shadow_fb_stop_updates stub for
        when shadowfb is disabled. Patch from pjm@cctechnol.com (#120847).

        * gdk/linux-fb/gdkmouse-fb.c: Add GDK_MOUSE_DEVICE environment
        variable. Patch from Marc Welz (#121347).
2003-09-16 17:59:20 +00:00
cinamod
db2ba3d0e0 ignore clip rect for now 2003-09-16 13:36:20 +00:00
Matthias Clasen
543b020fdc Apply egtk-format-protos. Doc tweaks.
* gtk/gtkaction.h: Apply egtk-format-protos.
	* gtk/gtkuimanager.c: Doc tweaks.

	* gtk/tmpl/gtkaction.sgml:
	* gtk/tmpl/gtkradioaction.sgml:
	* gtk/tmpl/gtkactiongroup.sgml:
	* gtk/tmpl/gtkuimanager.sgml: Updates.
2003-09-15 22:21:26 +00:00
Raymond Penners
405f24c9e6 0.4.1 2003-09-15 20:53:07 +00:00
Raymond Penners
0815d43bce Tree expanders fixed 2003-09-15 20:52:37 +00:00
Matthias Clasen
c77b0caab1 New function which implements "smart" separators by iterating once over
* gtk/gtkuimanager.c (update_smart_separators): New function which
	implements "smart" separators by iterating once over the entries of a
	menu, hiding and showing separators as necessary.
	(update_node): Mark separators used as fences of placeholders as
	hidden. Explicitly added separators are marked as smart. Call
	update_smart_separators after updating a menu or toolbar node.
	Connect update_smart_separators to "notify::visible" signal on menu
	and tool items.

	* tests/merge-[12].ui: Test smart separators.

	* gtk/tmpl/gtkuimanager.sgml: Add a paragraph about smart separators.
2003-09-15 20:35:28 +00:00
Matthias Clasen
caf380c793 Add value parameter to allow setting the currently selected group member
2003-09-15  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkactiongroup.[hc]: (gtk_action_group_add_radio_actions):
	(gtk_action_group_add_radio_actions_full): Add value parameter to allow
	setting the currently selected group member before connecting signals.
	(GtkToggleActionEntry): Separate struct for constructing toggle actions,
	including a boolean to initialize the action state before connecting
	signals.
	(gtk_action_group_add_toggle_actions):
	(gtk_action_group_add_toggle_actions_full): New functions to construct
	toggle actions from an array of GtkToggleActionEntries.

	* demos/gtk-demo/appwindow.c:
	* tests/testactions.c:
	* tests/testmerge.c: Adjust to new action group API.

	* gtk/gtk-sections.txt: Add gtk_action_group_add_toggle_actions[_full].
2003-09-15 19:51:55 +00:00
Raymond Penners
b14b12f9d2 Several last-minute fixes 2003-09-15 17:58:44 +00:00
cinamod
2344c84ea5 implement caret blink 2003-09-15 14:02:23 +00:00
KAMAGASAKO Masatoshi
9ee8236440 Updated Japanese translation.
2003-09-15  KAMAGASAKO Masatoshi  <emerald@gnome.gr.jp>

	* ja.po: Updated Japanese translation.
2003-09-15 13:22:52 +00:00
Bastien Nocera
52617a691a avoid crash when selecting a new filter and clicking a different directory
2003-09-15  Bastien Nocera  <hadess@hadess.net>

	* gtkfilefilter.c: (gtk_file_filter_filter): avoid crash when
	selecting a new filter and clicking a different directory
2003-09-15 10:27:05 +00:00
Raymond Penners
c647c4dd51 Console error messages 2003-09-14 18:54:00 +00:00
Soeren Sandmann
00029ae9ee Name the arrow "gtk-toolbar-arrow" so themes can special-case it.
Sun Sep 14 16:59:52 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c (gtk_toolbar_init): Name the arrow
	"gtk-toolbar-arrow" so themes can special-case it.
2003-09-14 15:03:07 +00:00
Soeren Sandmann
51a67a92dd sort the list of files.
Sun Sep 14 16:07:49 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/Makefile.am (gtk_c_sources): sort the list of files.
2003-09-14 14:09:37 +00:00
Soeren Sandmann
f649837613 Unref the PangoFontMetrics. Patch from Steve Chaplin (#122257).
Sun Sep 14 15:49:00 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c (toolbar_item_is_homogeneous): Unref the
	PangoFontMetrics. Patch from Steve Chaplin (#122257).
2003-09-14 13:51:27 +00:00
Tor Lillqvist
b4d13a212e Remove special-case code for WS_EX_TRANSPARENT (GDK_INPUT_ONLY) windows,
2003-09-14  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkwindow-win32.c (show_window_internal): Remove
	special-case code for WS_EX_TRANSPARENT (GDK_INPUT_ONLY) windows,
	the usefulness of which was already in doubt. Removing it fixes
	bugs #118575 and #121851.
2003-09-14 13:43:45 +00:00
Raymond Penners
b24d3fd352 sf bug 805259 2003-09-14 09:47:25 +00:00
Jonathan Blandford
9ded36af54 Merge from stable.
Fri Sep 12 16:32:53 2003  Jonathan Blandford  <jrb@redhat.com>

	Merge from stable.

	* gtk/gtktreeview.c (gtk_tree_view_button_press): only save the
	pressed button (used to determine if we want to initiate a drag later
	on) if the current grab widget is either NULL or tree_view (Reported
	by Jeroen Zwartepoorte).
2003-09-12 14:46:50 +00:00
Matthias Clasen
df1452102e Add deprecation notes. (#121955)
2003-09-12  Matthias Clasen  <maclas@gmx.de>

	* gdk/gdkdraw.c (gdk_draw_string, gdk_draw_text)
	(gdk_draw_text_wc): Add deprecation notes.  (#121955)
2003-09-11 22:09:38 +00:00
Matthias Clasen
6f81c10a54 Add table menu tests.
2003-09-11  Matthias Clasen  <maclas@gmx.de>

	* tests/testgtk.c: Add table menu tests.

	* gtk/gtkmenu.c (gtk_menu_free_private): Don't forget to free the
	GtkMenuPrivate struct itself. Pointed out by valgrind.

	* gtk/gtkuimanager.c (gtk_ui_manager_finalize): Clean up
	properly.  (#121998)
2003-09-11 21:02:24 +00:00
cinamod
fdb5605164 fix gtkrc 2003-09-11 19:22:01 +00:00
Raymond Penners
b427fbd8bc 0.4.0 2003-09-11 18:51:05 +00:00
Raymond Penners
33500b568c Notebook regression fixed 2003-09-11 18:44:39 +00:00
Federico Mena Quintero
9044d774bb Added an API point about needing a way to fetch the hpaned position so we
2003-09-10  Federico Mena Quintero  <federico@ximian.com>

	* TODO: Added an API point about needing a way to fetch the hpaned
	position so we can save it.

	* gtkfilechooser.c (_gtk_file_chooser_get_paths): Fixed API docs.
	(gtk_file_chooser_get_uris): Likewise.
	(gtk_file_chooser_get_filenames): Likewise.

	* gtkfilechooserdialog.c (file_chooser_widget_file_activated): New
	callback, calls gtk_window_activate_default().

	* testfilechooser.c (response_cb): Print the selected files if the
	user clicks OK.
2003-09-11 00:56:46 +00:00
Federico Mena Quintero
aa22566e6c Connect to "row_activated" on the file list. (list_row_activated): New
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.
2003-09-11 00:33:28 +00:00
Kristian Rietveld
e23ed60782 The table menu patch! Turns GtkMenu into a table, so you can attach menu
Wed Sep 10 22:25:04 2003  Kristian Rietveld  <kris@gtk.org>

	The table menu patch! Turns GtkMenu into a table, so you can attach
	menu items in numerous new ways! Be creative!

	Contains some bug fixes and RTL adaptions from Matthias Clasen.

	* gtk/gtkmenu.c [toplevel]: introduce ATTACH_INFO_KEY, extend
	GtkMenuPrivate, introduce AttachInfo, add child properties enum,
	(gtk_menu_free_private), (gtk_menu_get_private): we have to free
	the heights array in the private struct,
	(gtk_menu_class_init): reorder code a bit, install child properties,
	(get_attach_info), (get_child_attach): new utility functions,
	(gtk_menu_set_child_property), (gtk_menu_get_child_property): introduce
	child properties, for the attach info,
	(gtk_menu_remove): remove AttachInfo from menu item,
	(gtk_menu_real_insert): implemented algorithm to automagically place
	inserted menu items at the correct place in the table,
	(gtk_menu_size_request), (gtk_menu_size_allocate),
	(compute_child_offset): reworked/rewritten to support table menus,
	(gtk_menu_attach): new function,
	(find_child_containing), (gtk_menu_move_current): new functions to
	get table menu keynav right.

	* gtk/gtkmenu.h: add gtk_menu_attach() prototype.
2003-09-10 20:32:33 +00:00
Matthias Clasen
87c0d2651c Only remove PropertyNotify events from the stream if they have been
2003-09-10  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtksocket.c (gtk_socket_filter_func): Only remove
	PropertyNotify events from the stream if they have been handled,
	in order to enable extending the plug<->socket communication via
	properties.
2003-09-10 15:56:11 +00:00
Federico Mena Quintero
3a28082114 Use the cell renderer's "text" and "weight" properties rather than
2003-09-09  Federico Mena Quintero  <federico@ximian.com>

	* gtkfilechooserimpldefault.c (set_cell_text_bold_if_folder): Use
	the cell renderer's "text" and "weight" properties rather than
	"markup".
2003-09-10 01:26:13 +00:00
Kristian Rietveld
b78691f098 Big TreeView DnD fixage, makes drops on empty models work, makes TreeStore
Wed Sep 10 01:06:44 2003  Kristian Rietveld  <kris@gtk.org>

	Big TreeView DnD fixage, makes drops on empty models work, makes
	TreeStore DnD work and gets rid of gtk-tree-model-drop-append.
	Related bugs #95362 and #113314. I don't want to touch this code
	ever again.

	* gtk/gtktreeprivate.h (GtkTreePrivate): add empty_view_drop field.

	* gtk/gtktreednd.c (gtk_tree_get_row_drag_data): add check
	for selection_data->length.

	* gtk/gtktreeview.c (struct DestRow), (dest_row_free),
	(set_dest_row), (get_dest_row): we don't store just the row ref
	anymore, but a struct with the row ref and additional info,
	(set_destination_row): handle drops on empty space and some
	style fixes,
	(get_logical_dest_row): also return path_down_mode/drop_append_mode
	flags, handle dropping childs on their new parents, rewrite
	drop append handling into something saner,
	(gtk_tree_view_drag_motion): show a "drop possible arrow" on empty
	spaces,
	(gtk_tree_view_drag_drop): updates for updated backend,
	(gtk_tree_view_drag_data_received): updates for updated backend,
	path down mode (treestore DnD) handling,
	(gtk_tree_view_set_drag_dest_row): set empty_view_drop flag,
	when we are trying to drop a row on an empty model,
	(gtk_tree_view_get_drag_dest_row): handle empty_view_drop flag.

	* gtk/gtkliststore.c (gtk_list_store_drag_data_received),
	(gtk_list_store_row_drop_possible): style and drop-append fixes.

	* gtk/gtktreestore.c (gtk_tree_store_drag_data_received): ditto.
2003-09-09 23:13:39 +00:00
Federico Mena Quintero
4b3e2d69a5 Make the list model read in directory information as well.
2003-09-09  Federico Mena Quintero  <federico@ximian.com>

	* gtkfilechooserimpldefault.c (tree_selection_changed): Make the
	list model read in directory information as well.
	(set_cell_text_bold_if_folder): New utility function.  Sets a
	cell's text, making it bold if the file info is a folder.
	(list_name_data_func): Use set_cell_text_bold_if_folder().
	(list_mtime_data_func): Use set_cell_text_bold_if_folder().
	(list_size_data_func): Don't set anything if the file info is a
	folder.
2003-09-09 17:50:23 +00:00
Owen Taylor
243256ad4e Small doc fix 2003-09-09 15:37:54 +00:00
Federico Mena Quintero
613b441b5b Free the display_key.
2003-09-08  Federico Mena Quintero  <federico@ximian.com>

	* gtkfilesystem.c (gtk_file_info_free): Free the display_key.

	* gtkfilechooserimpldefault.c (list_mtime_data_func): New
	function.
	(create_file_list): Add a modification time column; remove the
	size column.
	(mtime_sort_func): New callback.
	(tree_selection_changed): Add a sorting function for the mtime
	column.  Have the model fetch the modification time as well.
	(tree_selection_changed): Do allow the file list model to show
	directories.

	* testfilechooser.c (my_new_from_file_at_size): Do not try to read
	non-regular files.
2003-09-09 15:18:29 +00:00
cinamod
0d7de37eb0 fix font problem in workrave 2003-09-09 15:07:33 +00:00
cinamod
7ba35e56de make a bunch of data const 2003-09-09 14:18:43 +00:00
Alexander Larsson
0217c9dbfb Implement gtk_event_box_get/set_input_only()
2003-09-08  Alexander Larsson  <alexl@redhat.com>

	* gtk/gtkeventbox.[hc]:
	Implement gtk_event_box_get/set_input_only()

	* tests/testgtk.c:
	Tests for the new input only event boxes
2003-09-08 20:04:49 +00:00
Kristian Rietveld
51f98b6a70 Fixes from David Hampton <hampton@employees.org> via gtk-devel-list.
Mon Sep  8 21:44:20 2003  Kristian Rietveld  <kris@gtk.org>

	Fixes from David Hampton <hampton@employees.org> via gtk-devel-list.

	* gtk/gtktreemodelfilter.c (gtk_tree_model_filter_elt_get_path): fix
	the call to gtk_tree_model_filter_add_root,
	(gtk_tree_model_filter_row_changed): bail out if c_path is not above
	the virtual root, allow building levels on the second try to convert
	the child path to a filter path,
	(gtk_tree_model_filter_convert_iter_to_child_iter): pass the virtual
	root when calling gtk_tree_model_filter_elt_get_path.
2003-09-08 19:51:16 +00:00
cinamod
96196a4e47 scrollbar sizes, button sizes, paned sizes 2003-09-08 13:53:25 +00:00
Laurent Dhima
0e82f3df02 Updated Albanian translation
* sq.po: Updated Albanian translation
2003-09-08 09:59:58 +00:00
Laurent Dhima
95a780bf05 Updated 2003-09-08 09:57:44 +00:00
Matthias Clasen
e8c93d56a0 Fix a C99ism. (#121640, Josh Beam)
2003-09-07  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkuimanager.c (update_node): Fix a C99ism.  (#121640,
	Josh Beam)

	Fixes for accelerator handling during (un)merging:

	* gtk/gtkuimanager.c (update_node): Move setting info-action
	after the switch, since the old action is needed in some cases.
	In cases of proxy type mismatch, disconnect the old proxy from
	the old action.

	* gtk/gtkaction.c (remove_proxy): Renamed from
	gtk_action_remove_proxy(). Move unsetting of the accelerator
	here from disconnect_proxy() in order to catch all cases of
	removing a proxy.
	(gtk_action_disconnect_proxy): Fix logic in g_return_if_fail()
	to fail if proxy isn't a proxy of action.
2003-09-06 23:52:00 +00:00
Pablo Saratxaga
cc4935c01c Added Uzbek files 2003-09-06 23:04:19 +00:00
Matthias Clasen
0a79e5e3be Make disconnect work for toolitems.
2003-09-07  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkaction.c (disconnect_proxy): Make disconnect work
	for toolitems.
2003-09-06 22:13:20 +00:00
Matthias Clasen
7db084ec5b Disconnect from prev_action, not from action. (Fix by David Hampton)
2003-09-06  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkaction.c (gtk_action_connect_proxy): Disconnect from
	prev_action, not from action.  (Fix by David Hampton)
2003-09-06 21:04:01 +00:00
Mugurel Tudor
aae316488e *** empty log message *** 2003-09-06 20:52:55 +00:00
Federico Mena Quintero
a9eaa49d88 New function. (create_directory_tree): New function. (create_file_list):
2003-09-05  Federico Mena Quintero  <federico@ximian.com>

	* gtkfilechooserimpldefault.c (create_filter): New function.
	(create_directory_tree): New function.
	(create_file_list): New function.
	(create_filename_entry): New function.
	(gtk_file_chooser_impl_default_constructor): Use the functions
	above rather than creating the whole file chooser megawidget here,
	for readability.  This will also let us rearrange the user
	interface more easily.
2003-09-06 00:50:33 +00:00
Owen Taylor
c725b0671b //bugs.xfree86.org/show_bug.cgi?id=534)
Fri Sep  5 14:15:10 2003  Owen Taylor  <otaylor@redhat.com>

        * Back out locale-dependent interpretation of
        KP_Decimal, the official XFree86 interpretation
        is that KP_Decimal => . KP_Separator => ,
        always, independent of locale.
        (#105161, Frederic Crozat,
        http://bugs.xfree86.org/show_bug.cgi?id=534)
2003-09-05 18:23:21 +00:00
Matthias Clasen
9ae676b06b Test buttons and toggle buttons as proxies.
2003-09-04  Matthias Clasen  <maclas@gmx.de>

	* tests/testmerge.c: Test buttons and toggle buttons as proxies.

	* gtk/gtktoggleaction.c (connect_proxy):
	(gtk_toggle_action_real_toggled): Support toggle buttons as proxies. Note
	that a "draw_as_radio" property is needed for check buttons similar to
	check menu items, in order to fully support button proxies for radio actions.

	* gtk/gtkaction.c (connect_proxy): Allow buttons as proxies.
2003-09-04 21:34:15 +00:00
Matthias Clasen
02a963e15b Test gtk_ui_manager_add_ui().
2003-09-04  Matthias Clasen  <maclas@gmx.de>

	* tests/testmerge.c (toggle_dynamic): Test gtk_ui_manager_add_ui().

	* gtk/gtkuimanager.h: Add GtkUIManagerItemType enum which is needed for the
	'type' argument of gtk_ui_manager_add_ui().

	* gtk/gtkuimanager.[hc] (gtk_ui_manager_add_ui): Add 'type' and 'top' arguments
	to make this function as powerful as the XML methods of adding UI.  (#120647)

	* gtk/gtk-sections.txt: Add GtkUIManagerItemType.
2003-09-04 20:39:15 +00:00
Kristian Rietveld
563746c795 Merge from stable.
Thu Sep  4 19:11:23 2003  Kristian Rietveld  <kris@gtk.org>

	Merge from stable.

	* docs/RELEASE-HOWTO: updates.
2003-09-04 17:16:53 +00:00
Matthias Clasen
6c227b5a65 Use "position" instead of "pos".
* tests/merge-2.ui: Use "position" instead of "pos".

	* gtk/gtkuimanager.c (start_element_handler): No need
	to be terse: Change the name of the "pos" attribute
	to "position".

	* gtk/tmpl/gtkuimanager.sgml: Change the name of the "pos"
	attribute to "position".
2003-09-04 09:07:23 +00:00
Matthias Clasen
0a163c7fd7 Doc tweaks. 2003-09-04 00:49:37 +00:00
Matthias Clasen
e4dbc17a65 Un-prefix GtkUIManagerNodeType and GtkUIManagerNode to shorten the names
* gtk/gtkuimanager.c: Un-prefix GtkUIManagerNodeType and
	GtkUIManagerNode to shorten the names and to make the
	GTK_UI_MANAGER_<TYPE> names available for a public enum.
2003-09-04 00:15:59 +00:00
Matthias Clasen
e6a8aa11cd Various doc tweaks.
2003-09-04  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkuimanager.c: Various doc tweaks.

	* gtk/gtkuimanager.c (start_element_handler):
	(end_element_handler): Improve error reporting.
2003-09-04 00:00:14 +00:00
Kristian Rietveld
bc61e7233b Merge from stable.
Wed Sep  3 23:18:17 2003  Kristian Rietveld  <kris@gtk.org>

	Merge from stable.

	* gtk/gtkmenu.c (gtk_menu_real_move_scroll): for the END case,
	use end_position - page_size instead of G_MAXINT, since
	gtk_menu_scroll_to doesn't CLAMP anymore internally. (Fixes #121237,
	reported by Havoc Pennington).
2003-09-03 21:26:13 +00:00
Owen Taylor
0089371123 Remove excess check that was breaking with current GObject.
Wed Sep  3 16:38:59 2003  Owen Taylor  <otaylor@redhat.com>

        * glib-interface-propreties-0.5.patch: Remove excess
        check that was breaking with current GObject.

        * gtkfilechooser.c (gtk_file_chooser_class_init):
        use the new ability to have a class_init function for
        interfaces to avoid the ugly static gboolean initialized
        hack.
2003-09-03 20:42:44 +00:00
Kristian Rietveld
1c9d02b48d Merge from stable.
Wed Sep  3 21:58:03 2003  Kristian Rietveld  <kris@gtk.org>

	Merge from stable.

	* gtk/gtkiconfactory.c (cached_icon_free): if icon->style != NULL,
	unref it. (Fixes memleak, patch from Kjartan Maraas).
2003-09-03 20:05:04 +00:00
Kristian Rietveld
eccc733f29 brooooooooken pipe. 2003-09-03 19:57:05 +00:00
Kristian Rietveld
9538b6e57c big patch from Kjartan Maraas to fix numerous typos.
Wed Sep  3 21:38:26 2003  Kristian Rietveld  <kris@gtk.org>

	* gdk/Makefile.am, gdk/linux-fb/gdkfbmanager.c, gdk/x11/gdkcolor-x11.c,
	gdk-pixbuf/io-gif.c, gtk/Makefile.am, gtk/gtkcalendar.c,
	gtk/gtkclist.c, gtk/gtkctree.c, gtk/gtkdnd.c, gtk/gtkentry.c,
	gtk/gtkhandlebox.c, gtk/gtkitemfactory.c, gtk/gtkmenu.c,
	gtk/gtknotebook.c, gtk/gtkrange.c, gtk/gtkrc.h, gtk/gtktree.c,
	gtk/gtktypeutils.h: big patch from Kjartan Maraas
	to fix numerous typos.
2003-09-03 19:56:36 +00:00
Owen Taylor
a653ea3a18 Update.
Wed Sep  3 15:32:26 2003  Owen Taylor  <otaylor@redhat.com>

        * glib-interface-propreties-{0.4,0.5}.patch: Update.

        * gtkfilechooserutils.c prop-editor.c: Update for
        newer interface-properties API.
2003-09-03 19:37:01 +00:00
cinamod
1ff4c35fdb use tooltip color, font 2003-09-03 17:40:23 +00:00
BST 2003 Tony Gale
abc6ebe0a2 Forgot to update the FAQ date from previous commit
Wed Sep  3 17:50:00 BST 2003 Tony Gale <gale@gtk.org>

 Forgot to update the FAQ date from previous commit
2003-09-03 16:50:43 +00:00
BST 2003 Tony Gale
472590010f Correct compile line for threads example.
Wed Sep  3 17:38:01 BST 2003  Tony Gale <gale@gtk.org>

        * docs/faq/gtk-faq.sgml: Correct compile line for threads example.
2003-09-03 16:39:28 +00:00
Federico Mena Quintero
36dfea8ece Removed the "extra widget" bit, implemented with the following:
2003-09-03  Federico Mena Quintero  <federico@ximian.com>

	* TODO: Removed the "extra widget" bit, implemented with the
	following:

	* gtkfilechooser.h: Added gtk_file_chooser_{set,get}_extra_widget().

	* gtkfilechooser.c (gtk_file_chooser_base_init): Install an
	"extra-widget" interface property.
	(gtk_file_chooser_set_extra_widget): Implemented.
	(gtk_file_chooser_get_extra_widget): Implemented.

	* gtkfilechooserutils.h (GtkFileChooserProp): Added
	GTK_FILE_CHOOSER_PROP_EXTRA_WIDGET.

	* gtkfilechooserutils.c (_gtk_file_chooser_install_properties):
	Added the "extra-widget" property.

	* gtkfilechooserimpldefault.c (struct _GtkFileChooserImplDefault):
	Added an extra_widget field.
	(gtk_file_chooser_impl_default_set_property): Handle the
	"extra-widget" property.
	(gtk_file_chooser_impl_default_get_property): Likewise.
	(set_preview_widget): Fix the call gtk_container_remove().  Also,
	we don't need to ref/sink/unref the preview widget, as that gets
	already done by container_add/remove.
	(set_extra_widget): New utility function.

	* testfilechooser.c (main): Add an extra widget.
2003-09-03 05:52:35 +00:00
Tor Lillqvist
fafe735f13 Don't call CloseHandle() on the HMODULE returned from GetModuleHandle().
2003-09-02  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkdisplay-win32.c (gdk_display_open): Don't call
	CloseHandle() on the HMODULE returned from GetModuleHandle().
	Didn't cause any harm, but didn't do anything useful either. When
	running a GTK+ program under MS's debugger, the CloseHandle() call
	would cause a "first-chance exception" in ntdll.dll to show up.
	(The exception is caught appropriately if you let it proceed, but
	it confuses the person using the debugger). Thanks to Bruce
	Hochstetler for noticing.
2003-09-02 23:33:02 +00:00
cinamod
15dbb7c912 respect boldness and italic 2003-09-02 22:09:49 +00:00
Federico Mena Quintero
cc4836c90b s/nonexistant/nonexistent Likewise. Likewise. Likewise.
2003-09-02  Federico Mena Quintero  <federico@ximian.com>

	* gtkfilesystem.h: s/nonexistant/nonexistent
	* gtkfilesystem.c: Likewise.
	* gtkfilesystemgnomevfs.c: Likewise.
	* gtkfilesystemunix.c: Likewise.

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

	* README: The required GtkTreeView patches are already on CVS.
	Removed the part that mentions them.
2003-09-02 20:20:46 +00:00
cinamod
4a32a34717 fix build 2003-09-02 19:21:11 +00:00
Kristian Rietveld
e5efd71486 Merge from stable.
Tue Sep  2 21:01:19 2003  Kristian Rietveld  <kris@gtk.org>

	Merge from stable.

	* gtk/gtktreeview.c (gtk_tree_view_button_press): revert the change
	to only select when button 1 is pressed introduced in the fix of
	bug #120187.
2003-09-02 19:16:11 +00:00
Matthias Clasen
2ece92c8f3 Doc addition.
* gtk/gtkactiongroup.c (gtk_action_group_new): Doc addition.
2003-09-01 23:45:54 +00:00
Matthias Clasen
7899a702ee Additions. 2003-09-01 23:20:33 +00:00
Matthias Clasen
cbbe97abf5 Shorten the names of some static functions.
2003-09-02  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkuimanager.c: Shorten the names of some static
	functions.

	Support adding and removing merge nodes dynamically (#120647,
	Anders Carlsson):

	* gtk/gtkuimanager.[ch] (gtk_ui_manager_new_merge_id): Renamed
	gtk_ui_manager_next_merge_id to gtk_ui_manager_new_merge_id
	and made it public.
	(gtk_ui_manager_add_ui): New function to add UI elements
	without juggling XML fragments, currently restricted to menuitems,
	toolitems and separators. Actions still come from registered
	action groups.
2003-09-01 22:15:16 +00:00
Soeren Sandmann
7c95897892 Fix bug where the background pixmap was being offset twice, once by the
Mon Sep  1 19:39:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gdk/gdkwindow.c (gdk_window_get_bg_gc): Fix bug where the
	background pixmap was being offset twice, once by the ts_origin in
	gdk_window_get_bg_gc(), and once by gdk_draw_rectangle().
2003-09-01 17:23:27 +00:00
KAMAGASAKO Masatoshi
e9509311dc merged Japanese translation by Takeshi AIHANA <aihana@gnome.gr.jp>.
2003-09-02  KAMAGASAKO Masatoshi  <emerald@gnome.gr.jp>

	* ja.po: merged Japanese translation by
	Takeshi AIHANA <aihana@gnome.gr.jp>.
2003-09-01 17:16:10 +00:00
Matthias Clasen
38ee74b053 Add an example UI description.
* gtk/tmpl/gtkuimanager.sgml: Add an example UI description.
2003-09-01 00:34:41 +00:00
Matthias Clasen
7cddc693b0 Make this public again, since it's occasionally useful. (#121128, Marco
2003-09-01  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkuimanager.[ch] (gtk_ui_manager_ensure_update): Make
	this public again, since it's occasionally useful.  (#121128,
	Marco Pesenti Gritti)

	* gtk/gtkaction.c: Add an "is_important" property and propagate
	it to toolitem proxies.  (#121058, Marco Pesenti Gritti)
2003-08-31 23:36:37 +00:00
Soeren Sandmann
53257cbd27 connect to "delete_event" so the application will actually quit when you
Mon Sep  1 00:32:30 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* tests/testtoolbar.c (main): connect to "delete_event" so the
	application will actually quit when you close the window
2003-08-31 22:32:49 +00:00
Matthias Clasen
4e3936c714 g_return_if_fail() if path is NULL. (gtk_ui_manager_get_node): Avoid a
2003-09-01  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkuimanager.c (gtk_ui_manager_get_widget)
	(gtk_ui_manager_get_action): g_return_if_fail() if
	path is NULL.
	(gtk_ui_manager_get_node): Avoid a segfault if path is empty.
	(gtk_ui_manager_finalize): Remove the idle on finalize. (#121125,
	Marco Pesenti Gritti)
2003-08-31 22:29:42 +00:00
Matthias Clasen
9d13ef764e Fix some typos in docs.
* gtk/gtktoolitem.c: Fix some typos in docs.
2003-08-31 14:01:07 +00:00
Matthias Clasen
2c41fc0918 Add gtktoggleactionprivate.h
2003-08-31  Matthias Clasen  <maclas@gmx.de>

	* gtk/Makefile.am (IGNORE_HFILES): Add gtktoggleactionprivate.h

	* gtk/tmpl/gtkuimanager.sgml:
	* gtk/gtk-sections.txt: Replace gtk_ui_manager_activate by
	gtk_ui_manager_get_action.

	* gtk/gtkuimanager.[ch] (gtk_ui_manager_get_action): New function,
	replaces gtk_ui_manager_activate().  (#120658)

	* tests/testmerge.c: Use gtk_ui_manager_get_action() instead of
	gtk_ui_manager_activate().
2003-08-31 13:49:15 +00:00
Matthias Clasen
320bba9f37 Additions.
2003-08-31  Matthias Clasen  <maclas@gmx.de>

	* gtk/tmpl/gtkuimanager.sgml:
	* gtk/tmpl/gtkactiongroup.sgml:
	* gtk/tmpl/gtkaction.sgml:
	* gtk/tmpl/gtktoggleaction.sgml:
	* gtk/tmpl/gtkradioaction.sgml: Additions.

	* gtk/gtk-sections.txt: Updates.

	* gtk/gtk.types: Add GtkAction, GtkActionGroup, GtkToggleAction,
	GtkRadioAction and GtkUIManager.

	* gtk/gtkaction.c:
	* gtk/gtkactiongroup.c: Some doc tweaks.

	* gtk/gtkuimanager.[hc]: Get rid of the remove_widget signal. It
	wasn't emitted anyway. Some doc tweaks.
2003-08-31 00:27:15 +00:00
Matthias Clasen
0a49f658c5 Add some docs.
2003-08-31  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkactiongroup.c: Add some docs.

	* gtk/gtkuimanager.[hc]: Get rid of the remove_widget signal. It
	wasn't emitted anyway.
2003-08-30 22:26:32 +00:00
Matthias Clasen
e5eaa52b07 Connect to "destroy" on toolbar, rather than to "remove" on handlebox.
2003-08-30  Matthias Clasen  <maclas@gmx.de>

	* tests/testmerge.c (add_widget): Connect to "destroy" on toolbar,
	rather than to "remove" on handlebox.

	* gtk/gtkuimanager.[hc] (gtk_ui_manager_activate): New method to
	activate an action found by following a path.  (#120658)

	* tests/testmerge.c: Add a button to test gtk_ui_manager_activate().
2003-08-30 21:18:43 +00:00
Matthias Clasen
5f6d00b486 Put toolbars in handleboxes.
2003-08-30  Matthias Clasen  <maclas@gmx.de>

	* tests/testmerge.c (add_widget): Put toolbars in handleboxes.

	* gtk/gtkuimanager.[hc]: Add a boolean property, "add_tearoffs" with
	setter and getter. If it is set, add tearoff menu items to regular
	menus, but not to popups. Add a signal "changed", which gets emitted
	when the merged ui has changed.

	* tests/testmerge.c: Add button to test the generation of tearoff
	menu items.
2003-08-29 23:33:54 +00:00
Matthias Clasen
e430c2439a Put toolbars in handleboxes.
* tests/testmerge.c (add_widget): Put toolbars in handleboxes.
2003-08-29 23:23:44 +00:00
cinamod
d536cdde02 some tooltips work -waiting for gtk 2.4 2003-08-29 22:45:18 +00:00
Matthias Clasen
879880e746 Add a boolean property, "add_tearoffs" with setter and getter. If it is
2003-08-30  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkuimanager.[hc]: Add a boolean property, "add_tearoffs" with
	setter and getter. If it is set, add tearoff menu items to regular
	menus, but not to popups.

	* tests/testmerge.c: Add button to test the generation of tearoff
	menu items.
2003-08-29 22:42:37 +00:00
cinamod
a5c6a1759d better font handling 2003-08-29 22:10:07 +00:00
cinamod
8f51ccc0e7 toolbar chevrons 2003-08-29 21:00:14 +00:00
Matthias Clasen
87248d53a2 Actually group the actions together rather than putting each in its own
2003-08-29  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full): Actually group the actions
	together rather than putting each in its own group.
2003-08-29 20:21:01 +00:00
Matthias Clasen
e3e7b75557 Set "draw_as_radio" on proxy menu items for radio actions.
2003-08-29  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkradioaction.c (create_menu_item): Set "draw_as_radio" on proxy menu items
	for radio actions.
2003-08-29 19:50:55 +00:00
Matthias Clasen
7dbeafb657 Use g_strtod instead of strtod.
* gtk/gtkgamma.c (gamma_ok_callback): Use g_strtod instead of strtod.
2003-08-29 19:38:07 +00:00
Søren Sandmann Pedersen
9542740711 Forgot to actually commit this file 2003-08-29 19:28:44 +00:00
Soeren Sandmann
ce00fa8982 Fix use of uninitialized variable.
Fri Aug 29 21:40:01 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full):
	Fix use of uninitialized variable.

	* gtk/gtktextutil.c
	(_gtk_text_util_append_special_char_menuitems): add const cast to
	get rid of warning
2003-08-29 19:26:58 +00:00
Matthias Clasen
24fb8e7d6f Also support "draw_as_radio".
2003-08-29  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcheckmenuitem.c (gtk_check_menu_item_get_property):
	(gtk_check_menu_item_set_property): Also support "draw_as_radio".
2003-08-29 19:19:44 +00:00
Matthias Clasen
2ed71f131e Install "draw_as_radio" as a separate property, not as an alias of
2003-08-29  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Install "draw_as_radio"
	as a separate property, not as an alias of "inconsistent".
2003-08-29 19:15:26 +00:00
Soeren Sandmann
545b40a1b3 Only treat buttons as homogeneous when they are narrower than 13 time the
Fri Aug 29 20:32:07 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c: Only treat buttons as homogeneous when they
	are narrower than 13 time the estimated character width of the
	font. (#107781, David Bordoley)

	* gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_init): Check
	here if the GtkToggleButton is active. This may be the case if it
	is a radio button.

	* gtk/gtktoolbar.c: Clarify documentation wrt. GtkSignalFunc
	vs. void (*) (GtkWidget, gpointer). (#107495, Mariano
	Suarez-Alvarez).

	* gtk/gtkcheckmenuitem.[ch]: new "draw_as_radio"
	property. (#111207, David Bordoley).

	* gtk/gtktoggletoolbutton.c
	(gtk_toggle_tool_button_create_menu_proxy): use new
	"draw_as_radio" property on the menu item when the item is a radio
	tool button

	* gtk/gtktoolbutton.c (gtk_tool_button_create_menu_proxy): Fixes
	to only pay attention to the "use_underline" property when the
	button label comes from the "label" property.
2003-08-29 18:28:23 +00:00
Laurent Dhima
4ec7006f28 Added "sq" to ALL_LINGUAS
* configure.in: Added "sq" to ALL_LINGUAS
2003-08-29 12:27:48 +00:00
Laurent Dhima
29130da180 Added Albanian translation by Besnik Bleta <besnikbleta@hotmail.com>
* sq.po: Added Albanian translation by Besnik Bleta <besnikbleta@hotmail.com>
2003-08-29 12:25:00 +00:00
Laurent Dhima
a8167edf4a Added Albanian file
* sq.po: Added Albanian file
2003-08-29 12:22:47 +00:00
cinamod
b75882291f better non-XP handle boxes 2003-08-28 18:36:17 +00:00
Matthias Clasen
ce940e61a5 Improve PointerHint docs. Explain is_hint field in GdkEventMotion.
2003-08-28  Matthias Clasen  <maclas@gmx.de>

	* gdk/tmpl/events.sgml: Improve PointerHint docs.
	* gdk/tmpl/event_structs.sgml: Explain is_hint field in GdkEventMotion.
	(#120542)
	* gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state): Markup
	fix in the docs.
2003-08-27 22:59:47 +00:00
Matthias Clasen
cbc20c4dde Change the XML format: <Root> element is replaced by <ui>, <menu> element
2003-08-28  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkuimanager.c: Change the XML format:
	<Root> element is replaced by <ui>,
	<menu> element is replaced by <menubar>,
	<submenu> element is replaced by <menu>,
	<dockitem> element is replaced by <toolbar>,
	<popups> element is gone,
	verb attribute is replaced by action,
	name defaults to action or the element name.

	* gtk/gtkactiongroup.[hc]: Replace GtkActionGroupEntry by GtkActionEntry
	and GtkRadioActionEntry. GtkActionEntry is simplified by removing
	the user_data, entry_type and extra_data fields, GtkRadioActionEntry is
	further simplified by removing the callback. The user_data can now be
	specified as an argument to gtk_action_group_add_actions(). There is
	a new method gtk_action_group_add_radio_actions(), which is similar
	to gtk_action_group_add_actions(), but takes GtkRadioActionEntrys
	and a callback parameter in addition to the user_data. The callback
	is connected to the ::changed signal of the first group member.
	There are _full() variants taking a GDestroyNotify of
	gtk_action_group_add_[radio_]actions().

	* gtk/gtkradioaction.[hc]: Add a ::changed signal which gets emitted
	on every member of the radio group when the active member is changed.
	Add an integer property "value", and a getter for the value of "value"
	on the currently active group member.

	* tests/testactions.c:
	* tests/testmerge.c:
	* tests/merge-[123].ui:
	* demos/gtk-demo/appwindow.c: Adjust to these changes.

	* gtk/gtktoolbar.c (gtk_toolbar_append_element): Trivial doc fix.
2003-08-27 22:22:28 +00:00
Anders Carlsson
bebc663c5a Focus the text view, so the tool bar won't have focus.
2003-08-27  Anders Carlsson  <andersca@gnome.org>

	* demos/gtk-demo/appwindow.c (do_appwindow): Focus the
	text view, so the tool bar won't have focus.
2003-08-27 17:18:50 +00:00
cinamod
ccdf6b9bc9 tooltips, handle boxes, menus, toolbars 2003-08-26 21:53:30 +00:00
Raymond Penners
b1b4498b0e 0.3.0 2003-08-26 18:45:08 +00:00
Owen Taylor
d8c62d66c2 Fix variable declaration not at start of block. (#120371, Damien Carbery)
Tue Aug 26 09:57:38 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkkeys-x11.c (update_keymaps): Fix variable
        declaration not at start of block. (#120371, Damien Carbery)
2003-08-26 14:04:52 +00:00
Frédéric Crozat
a3344d22b6 My firstname is Frederic, not Federico :) 2003-08-26 07:47:40 +00:00
Matthias Clasen
720bdb8daf Use gssize for length, not gsize.
2003-08-26  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkuimanager.[hc] (gtk_ui_manager_add_ui_from_string): Use gssize
	for length, not gsize.

	* gtk/gtkuimanager.c: Refactor the XML format a bit: rename <Root> to
	<ui> and make it optional in strings. Rename verb to action, <dockitem>
	to <toolbar>, <menu> to <menubar>, <submenu> to <menu>.

	* demos/gtk-demo/appwindow.c:
	* tests/testactions.c:
	* tests/testmerge.c:
	* tests/merge-1.ui:
	* tests/merge-2.ui:
	* tests/merge-3.ui: Adjust to the new XML format.
2003-08-26 00:13:59 +00:00
Owen Taylor
2be259b24a Since we add one to the layout's reported width to account for the cursor,
Mon Aug 25 19:55:55 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktextview.c (gtk_text_view_update_layout_width):
        Since we add one to the layout's reported width to
        account for the cursor, we need to subtract one when
        setting the wrap width for the layout. (Fixes infinite
        loop (#120325, Federico Crozat)

        * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
        Be a bit more careful about rounding when converting
        wrapped width from Pango units to pixels.
2003-08-26 00:06:18 +00:00
Matthias Clasen
5e8c963498 Rename GtkMenuMerge to GtkUIManager 2003-08-25 23:15:12 +00:00
Matthias Clasen
77af2d637c Rename GtkMenuMerge to GtkUIManager. 2003-08-25 23:13:47 +00:00
Matthias Clasen
3cb958de19 Make the previous commit compile. 2003-08-25 22:56:02 +00:00
Owen Taylor
eb41026147 Send the focus on to the parent when there was no focus widget before and
Wed Aug 20 21:26:49 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkplug.c (gtk_plug_focus): Send the focus on
        to the parent when there was no focus widget before
        and no focus widget after - that is, when there are
        no focusable widgets. (#108678, help tracking it
        down from Padraig O'Briain, Federico Mena Quintero, )

        * gtk/gtkxembed.[ch]: Move various shared utilities
        for the XEMBED protocol eused by GtkPlug and GtkSocket
        here.

        * gtk/gtkxembed.[ch] gtkplug.c gtksocket.c: Implement
        a flag bit that is sent with focus mesages to indicate
        that the focus has wrapped around on the toplevel;
        use this bit to catch infinite loops when there is no
        focusable widget at ll in the entire toplevel.

        * tests/testsocket.c (child_read_watch): Remove an
        extraneous unref.

        * gtk/gtkplug.c gtk/gtksocket.c gtk/gtkxembed.h:
        Up XEMBED protocol version to 1, add logic for
        sending the right version in XEMBED_EMBEDDED_NOTIFY.

        * gtk/gtksocket.c (gtk_socket_add_window): Send
        the embedder window in the XEMBED_EMBEDDED_NOTIFY
        as the spec requires.
2003-08-25 21:46:57 +00:00
Owen Taylor
9eb2d7c261 Don't include page->menu_label - causes various problems, including
Mon Aug 25 17:28:04 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtknotebook.c (gtk_notebook_forall): Don't
        include page->menu_label - causes various problems,
        including #12047.
2003-08-25 21:34:49 +00:00
Kristian Rietveld
43d9992934 Merge from stable.
Mon Aug 25 23:21:43 2003  Kristian Rietveld  <kris@gtk.org>

	Merge from stable.

	Fixes #115871, reported by Michael Natterer.

	* gtk/gtktreeprivate.h: added GtkTreeSelectMode enum,
	added ctrl_pressed and shift_pressed bitfields,
	(_gtk_tree_selection_internal_select_node): replace GdkModifierType
	arg with GtkTreeSelectMode.

	* gtk/gtktreeselection.c (gtk_tree_selection_set_mode),
	(gtk_tree_selection_select_path), (gtk_tree_selection_unselect_path),
	(_gtk_tree_selection_internal_select_node): all updated for
	GdkModifierType -> GtkTreeSelectMode move.

	* gtk/gtktreeview.c (gtk_tree_view_button_press): set ctrl_pressed
	and shift_pressed around selection handling block,
	(gtk_tree_view_real_select_cursor_row),
	(gtk_tree_view_real_toggle_cursor_row),
	(gtk_tree_view_real_selection_cursor_parent),
	(gtk_tree_view_real_set_cursor): use ctrl_pressed and shift_pressed,
	instead of checking the event state. And also updates for the
	GdkModifierType -> GtkTreeSelectMode move.
2003-08-25 21:33:00 +00:00
Owen Taylor
fb6914efe1 Send the focus on to the parent when there was no focus widget before and
Wed Aug 20 21:26:49 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkplug.c (gtk_plug_focus): Send the focus on
        to the parent when there was no focus widget before
        and no focus widget after - that is, when there are
        no focusable widgets. (#108678, help tracking it
        down from Padraig O'Briain, Federico Mena Quintero, )

        * gtk/gtkxembed.[ch]: Move various shared utilities
        for the XEMBED protocol eused by GtkPlug and GtkSocket
        here.

        * gtk/gtkxembed.[ch] gtkplug.c gtksocket.c: Implement
        a flag bit that is sent with focus mesages to indicate
        that the focus has wrapped around on the toplevel;
        use this bit to catch infinite loops when there is no
        focusable widget at ll in the entire toplevel.

        * tests/testsocket.c (child_read_watch): Remove an
        extraneous unref.

        * gtk/gtkplug.c gtk/gtksocket.c gtk/gtkxembed.h:
        Up XEMBED protocol version to 1, add logic for
        sending the right version in XEMBED_EMBEDDED_NOTIFY.

        * gtk/gtksocket.c (gtk_socket_add_window): Send
        the embedder window in the XEMBED_EMBEDDED_NOTIFY
        as the spec requires.
2003-08-25 21:16:25 +00:00
Owen Taylor
378005c65e Fix up CapsLock and NumLock handling for non-XKB. Add a special case hack
Mon Aug 25 16:15:41 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkkeys-x11.c: Fix up CapsLock and
        NumLock handling for non-XKB. Add a special case
        hack for NumLock on Sun servers. (Patch from
        Robert Basch, #115819)
2003-08-25 20:22:39 +00:00
Matthias Clasen
04a47f28c2 Remove C99isms. (Morten Welinder)
2003-08-25  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkactiongroup.c (gtk_action_group_add_actions): Remove C99isms. (Morten
	Welinder)
2003-08-25 18:43:14 +00:00
Matthias Clasen
bfa5c5aa4e Hooks for translation of label and tooltip in GtkActionGroupEntries.
2003-08-25  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkactiongroup.[hc] (gtk_action_group_set_translate_func,
	gtk_action_group_set_translation_domain): Hooks for translation of
	label and tooltip in GtkActionGroupEntries.  (#120620)
2003-08-24 23:11:14 +00:00
Matthias Clasen
32c6a944cf Namespace the enum values properly. Sorry about the resize grip trouble,
2003-08-25  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkactiongroup.h (GtkActionGroupEntryType): Namespace the enum
	values properly. Sorry about the resize grip trouble, Owen.  (#120621)

	* gtk/gtkactiongroup.c:
	* demos/gtk-demo/appwindow.c:
	* tests/testmerge.c:
	* tests/testactions.c: Use new GtkActionGroupEntryType enum.
2003-08-24 22:06:52 +00:00
Owen Taylor
b374ae3fb4 Remove reference to gtkresizegrip.h.
Sun Aug 24 17:14:44 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtk.h: Remove reference to gtkresizegrip.h.
2003-08-24 21:16:15 +00:00
Owen Taylor
d199f896cf Fix accidental commit of references to gtkresizegrip.[ch]
Sun Aug 24 17:03:44 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/Makefile.am: Fix accidental commit of references
        to gtkresizegrip.[ch]
2003-08-24 21:06:33 +00:00
Owen Taylor
02f3976e37 Fix some missing initializations of rc_file->directory.
Sun Aug 24 17:00:03 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkrc.c: Fix some missing initializations of
        rc_file->directory.
2003-08-24 21:03:39 +00:00
Matthias Clasen
a6781eb5ec Add a few forgotten Since: 2.4 markers. 2003-08-24 20:48:27 +00:00
Matthias Clasen
20667ea755 New templates.
2003-08-24  Matthias Clasen  <maclas@gmx.de>

	* gtk/tmpl/gtkmenumerge.sgml:
	* gtk/tmpl/gtkaction.sgml:
	* gtk/tmpl/gtkactiongroup.sgml:
	* gtk/tmpl/gtkradioaction.sgml:
	* gtk/tmpl/gtktoggleaction.sgml: New templates.

	* gtk/gtk-docs.sgml:
	* gtk/gtk-sections.txt: Add GtkMenuMerge, GtkAction, GtkActionGroup,
	GtkRadioAction, GtkToggleAction.
2003-08-24 20:47:37 +00:00
Matthias Clasen
e7e395652c A model-view separation for menus and toolbars, using the EggMenu code by
2003-08-24  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkaction.[ch]:
	* gtk/gtktoggleaction.[ch]:
	* gtk/gtktoggleactionprivate.h:
	* gtk/gtkradioaction.[ch]:
	* gtk/gtkactiongroup.[ch]:
	* gtk/gtkmenumerge.[ch]: A model-view separation for menus and
	toolbars, using the EggMenu code by James Henstridge.

	* gtk/gtk.h: Include new headers.
	* gtk/Makefile.am: Add new files.

	* tests/testactions.c: Test for actions.
	* tests/testmerge.c: Test for menu merging.
	* tests/merge-[123].ui: Test data for testmerge.
	* tests/Makefile.am: Add testactions and testmerge.

	* demos/gtk-demo/appwindow.c: Use GtkMenuMerge to construct the
	menubar and toolbar.
2003-08-24 19:58:30 +00:00
Anders Carlsson
9897d659c0 Use gdk_draw_pixbuf.
2003-08-24  Anders Carlsson  <andersca@gnome.org>

	* libegg/iconlist/eggiconlist.c: (egg_icon_list_paint_item),
	(egg_icon_list_paint_rubberband):
	Use gdk_draw_pixbuf.

	(egg_icon_list_item_unref):
	Call destroy_notify on the list item. Reported by Edd Dumbill.
2003-08-24 17:28:23 +00:00
Owen Taylor
f977168c41 Fix problem where rc_file->directory wasn't always getting set. (#120549,
Sat Aug 23 21:40:18 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkrc.c (gtk_rc_context_parse_one_file): Fix
        problem where rc_file->directory wasn't always getting
        set. (#120549, Luis Villa)
2003-08-24 02:31:20 +00:00
Wang Jian
a8ea1bc420 *** empty log message *** 2003-08-23 17:57:44 +00:00
Raymond Penners
14554b4496 Fixes 2003-08-23 11:39:36 +00:00
Raymond Penners
f245464c67 Tooltip colors 2003-08-23 09:21:06 +00:00
Metin Amiroff
afdd8676be Updated Azerbaijani translation.
2003-08-23  Metin Amiroff <metin@karegen.com>

	* az.po: Updated Azerbaijani translation.
2003-08-23 08:41:09 +00:00
Christian Rose
206dac1add Added "ne" to ALL_LINGUAS. Added Nepali translation by Pawan Chitrakar
2003-08-22  Christian Rose  <menthos@menthos.com>

	* configure.in: Added "ne" to ALL_LINGUAS.
	* po/ne.po: Added Nepali translation by
	Pawan Chitrakar <pawan@nplinux.org>.
2003-08-22 11:04:44 +00:00
Kristian Rietveld
91abb70b1e fix changelog 2003-08-21 20:15:44 +00:00
Owen Taylor
22a6d585c8 Keep a list of current GtkRcFiles being parsed, not just the directories
Thu Aug 21 16:00:36 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkrc.c: Keep a list of current GtkRcFiles
        being parsed, not just the directories for those
        files. Use that to catch recursion. (Part of
        #114988)
2003-08-21 20:06:17 +00:00
Kristian Rietveld
0321556d15 Thu Aug 21 21:27:45 2003 Kristian Rietveld <kris@gtk.org>A
Merge from stable.

	Fix option menu scrolling (#119821, Owen Taylor).

	* gtk/gtkmenu.c (gtk_menu_scroll_to): remove logic introduced
	by #80484 and the CLAMP,
	(get_menu_height): new function,
	(gtk_menu_real_move_scroll): sort of moved the CLAMP here to correct
	new_offset to handle page up/down right.
2003-08-21 19:42:44 +00:00
Owen Taylor
c7c5a7ddaa Change the interpretation of consumed_modifiers so that it contains: -
Thu Aug 21 15:17:42 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkkeys-x11.c: Change the interpretation
        of consumed_modifiers so that it contains:
         - Modifiers combinations actually found in
           state.
         - Single modifier modifier combinations.
        But not multi-modifier combinations that aren't
        in event->state. Document. (#100439)
2003-08-21 19:23:39 +00:00
Kristian Rietveld
28a466a69c Slightly modified patch from Yann Rouillard to improve selection behavior
Thu Aug 21 20:53:46 2003  Kristian Rietveld  <kris@gtk.org>

	Slightly modified patch from Yann Rouillard to improve selection
	behavior with the mouse. Fixes #120187.

	* gtk/gtktreeview.c (gtk_tree_view_button_press): only
	select/deselect items on the first button press of button 1,
	expand checks for row_activated to include triple clicks.
2003-08-21 19:00:29 +00:00
Kristian Rietveld
5ff0e3fabe Merge from stable.
Thu Aug 21 01:33:51 2003  Kristian Rietveld  <kris@gtk.org>

	Merge from stable.

	* gtk/gtkspinbutton.c (gtk_spin_button_size_request): always round
	approximate digit widths up, to avoid truncation, convert to
	pango pixels when we have the full string width instead of converting
	the approx digit width to pango pixels, take inner border and
	interior focus into account correctly. (Fixes #116368, patch from
	Morten Welinder).
2003-08-20 23:47:19 +00:00
Søren Sandmann Pedersen
4983f3adc5 Add bugnumber to ChangeLog 2003-08-20 23:17:44 +00:00
Noah Levitt
6f1a9d469c Don't look at the same directory twice (in simple cases). (#120342)
2003-08-20  Noah Levitt  <nlevitt@columbia.edu>

	* gtk/queryimmodules.c: Don't look at the same directory twice (in
	simple cases). (#120342)
2003-08-20 22:05:24 +00:00
Soeren Sandmann
c8a9d2839c Make the layers in the paint stack have their own pixmap instead of
Wed Aug 20 22:04:47 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gdk/gdkwindow.c: Make the layers in the paint stack have their
	own pixmap instead of sharing one.

	* tests/testgtk.c (create_get_image): Fixes to make the window fit
	on an 800x600 screen
2003-08-20 21:11:25 +00:00
Kristian Rietveld
a36775060d Merged from stable.
Wed Aug 20 22:03:25 2003  Kristian Rietveld  <kris@gtk.org>

	Merged from stable.

	* gtk/gtkspinbutton.c (start_spinning): change the type of step
	to gdouble, since it gets it's data from a gdouble (Fixes #113547).
2003-08-20 20:20:00 +00:00
Raymond Penners
d5cf3f17d9 Disabled alternating color rules 2003-08-20 00:18:54 +00:00
Raymond Penners
badb53eb1e Make files & tree expanders 2003-08-20 00:07:23 +00:00
Owen Taylor
55b0689a1d Substantially rework the handling of status windows:
Mon Aug 18 17:19:12 2003  Owen Taylor  <otaylor@redhat.com>

        * modules/input/gtkimcontextxim.[ch]: Substantially
        rework the handling of status windows:

         - Store the current StatusWindow in the
           GtkIMContextXIM structure and vice-versa, so we
           don't have to hunt the window hierarchy on
           cleanup.
         - Use the Gtkidget hierarchy instead of/or as well
           as the GdkWindow hierarchy when finding the toplevel;
           this helps for things like GtkHandlebox
         - Watch GtkWidget::hierarchy_changed to catch
           changes in the toplevel without changes in the
           GdkWindow (reparenting)
         - Never create the GtkWindow for the status window
           unless we have text to display.
         - Various cleanups, add lots of comments.

        (#115077, much help from Takuro Ashie and Hidetoshi
        Tajima in tracking this down and figuring out a fix.)

        * modules/input/gtkimcontextxim.c (gtk_im_context_xim_focus_in):

        * modules/input/gtkimcontextxim.c: Track the current
        screen for each toplevel so that we show the status
        window on the right screen. (#116340, James Su)

        * modules/input/gtkimcontextxim.c: If create a new IC
        when we currently have the focus, call XSetICFocus()
        on it.

        * modules/input/gtkimcontextxim.c (get_im): Fix bug
        with multiple open screens.
2003-08-19 21:17:18 +00:00
Owen Taylor
f9063a1122 Replace client_window field with 'priv' pointer, retaining binary
Tue Aug 19 14:37:46 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkimmulticontext.[ch] (struct _GtkIMMulticontext):
        Replace client_window field with 'priv' pointer,
        retaining binary compatibility.

        * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_slave):
        save use_preedit/cursor_location/focus status and set
        up the new slave appropriately. (#118651, Botond Botyanszki)
2003-08-19 19:24:39 +00:00
Owen Taylor
ccfd33c5a5 Don't use impl->position_info.clip_rect for toplevels. (#107068, reported
Tue Aug 19 13:58:50 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll):
        Don't use impl->position_info.clip_rect for toplevels.
        (#107068, reported by Thomas Mirlacher)
2003-08-19 18:32:12 +00:00
Owen Taylor
df58bb7f8a Add a fallback for unaligned source data for FORMAT_ARGB_MASK. (#117217)
Mon Aug 18 11:48:51 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdrawable-x11.c (convert_to_format):
        Add a fallback for unaligned source data for
        FORMAT_ARGB_MASK. (#117217)
2003-08-18 16:02:46 +00:00
Owen Taylor
7a3ce1dbf9 Rework handling of REBUILD_PNGS, so that we also don't try to REBUILD_PNGS
Mon Aug 18 10:51:57 2003  Owen Taylor  <otaylor@redhat.com>

        * configure.in: Rework handling of REBUILD_PNGS,
        so that we also don't try to REBUILD_PNGS when
        cross-compiling and there is no gdk-pixbuf-csource.
        But give an error if gtk/stock-icons/gtkstockpixbufs.h
        is not in the source tree. (Note that REBUILDS_PNG
        was set backwards before, which is why you always
        had to manually recreate gtkstockpixbufs.h!)
2003-08-18 15:19:32 +00:00
Owen Taylor
a22048876f Add the correct alignment magic for Sun compiler and for GCC to get the
Mon Aug 18 10:25:29 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk-pixdata.c (gdk_pixdata_to_csource): Add the correct
        alignment magic for Sun compiler and for GCC to get
        the strings aligned. (Patch from Brian Cameron, #117217)
2003-08-18 15:17:03 +00:00
Owen Taylor
e1700ed253 Add a missing gtk/ in the path to libgtk.la. (#120080, Benedikt Spranger)
Mon Aug 18 10:19:55 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk+-2.0-uninstalled.pc.in: Add a missing gtk/ in the
        path to libgtk.la. (#120080, Benedikt Spranger)
2003-08-18 14:23:14 +00:00
Metin Amiroff
e8da2c611a Updated Azerbaijani translation.
2003-08-18  Metin Amiroff <metin@karegen.com>

	* az.po: Updated Azerbaijani translation.
2003-08-18 10:09:19 +00:00
Owen Taylor
34c550243f Make the list of default languages more comprehensive. (Suggestion of Fco.
Sat Aug 16 10:34:49 2003  Owen Taylor  <otaylor@redhat.com>

        * modules/input/imcedilla.c: Make the list of default
        languages more comprehensive. (Suggestion of
        Fco. Javier F. Serrador)

Sat Aug  9 12:47:11 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdk.c (gdk_arg_context_parse): Fix broken
        parentheses when skipping args.
2003-08-16 14:44:00 +00:00
Kristian Rietveld
4e6ec12ec3 Fix major bug in row ref handling, so the new combo box will actually work
Sat Aug 16 16:22:23 2003  Kristian Rietveld  <kris@gtk.org>

	Fix major bug in row ref handling, so the new combo box
	will actually work right (:. Bug #107748. Patch written
	with help from Tim Janik.

	The basic idea is to update the row refs in a closure,
	before the actual signal is emitted (rather than having
	the model connect signal handlers).

	* gtk/gtktreemodel.c (gtk_tree_model_base_init): change
	g_signal_new calls for row_inserted, row_deleted and
	rows_reordered to use the new marshallers,
	(row_inserted_marshall), (row_deleted_marshall),
	(rows_reordered_marshall): the new marshallers,
	(gtk_tree_row_ref_inserted_callback): renamed to
	gtk_tree_row_ref_inserted since it isn't a callback
	anymore and gets called by the marshaller now,
	(gtk_tree_row_ref_deleted_callback): likewise,
	(gtk_tree_row_ref_reordered_callback): likewise,
	(connect_ref_callbacks), (disconnect_ref_callbacks):
	removed,
	(gtk_tree_row_reference_new_proxy),
	(gtk_tree_row_reference_free),
	(gtk_tree_row_reference_inserted),
	(gtk_tree_row_reference_deleted),
	(gtk_tree_row_reference_reordered): updated.
2003-08-16 14:39:33 +00:00
Danilo Šegan
bf131342e1 Updated Serbian translation.
2003-08-16  Danilo Šegan  <dsegan@gmx.net>

	* sr.po, sr@Latn.po: Updated Serbian translation.
2003-08-15 23:29:33 +00:00
Owen Taylor
d270a00d21 Improve Cedilla handling - based on a patch from Gustavo De Nardin,
Fri Aug 15 16:54:39 2003  Owen Taylor  <otaylor@redhat.com>

        Improve Cedilla handling - based on a patch from Gustavo
        De Nardin, #111334

        * modules/input/imcedilla.c po/POTFILES.in: Input method that
        produces C_WITH_CEDILLA rather than C_WITH_ACUTE for
        dead_acute+c combinations. Make this the default for
        fr and pt.

        * gtk/gtkimmulticontext.c (gtk_im_multicontext_get_slave):
        Use LC_CTYPE instead of LC_MESSAGES to pick the default
        input method.

Fri Aug 15 17:00:19 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkimcontextsimple.c: Fix missing compose sequence
        for Multi_key+c+apostrophe.
2003-08-15 21:30:44 +00:00
Kristian Rietveld
4254bdbb67 Merged from stable.
Fri Aug 15 21:57:34 2003  Kristian Rietveld  <kris@gtk.org>

	Merged from stable.

	* gtk/gtktreeview.c (gtk_tree_view_adjustment_changed): stop editing
	on vertical scrolling. (#108035, reported by Tim Janik).
2003-08-15 20:07:40 +00:00
Kristian Rietveld
15885321cb Merged from stable.
Fri Aug 15 20:06:42 2003  Kristian Rietveld  <kris@gtk.org>

	Merged from stable.

	* gtk/gtktreeview.c (gtk_tree_model_sort_row_changed),
	(gtk_tree_model_sort_level_find_insert),
	(gtk_tree_model_sort_insert_value): fix off-by-one error.
	(#109292 continued, patch from Yann Rouillard).
2003-08-15 18:13:54 +00:00
Kristian Rietveld
2e299387a7 (Note: This is not exactly the same as the patch which went in gtk-2-2).
Fri Aug 15 19:43:14 2003  Kristian Rietveld  <kris@gtk.org>

	(Note: This is not exactly the same as the patch which went in
	 gtk-2-2).

	* gtk/gtktreeview.c (gtk_tree_view_class_init),
	(gtk_tree_view_key_press), (gtk_tree_view_search_key_press_event):
	Also support the up, down, left, right, home, end, page up and
	page down keys on the numpad. (#119419, reported by Alex Larsson).
2003-08-15 17:47:18 +00:00
Owen Taylor
e44f6a8a00 Fixes for X/Cygwin builds of GTK+ (#107623, Masahiro Sakai):
Fri Aug 15 12:34:04 2003  Owen Taylor  <otaylor@redhat.com>

        Fixes for X/Cygwin builds of GTK+ (#107623, Masahiro Sakai):

        * configure.in (GDK_DEP_LIBS_FOR_X): Make sure that
        we link libgtk against X explicitely, since we
        make GTK+ calls for plug/socket.

        * gtk/queryimmodules.c: Use USE_LA_MODULES and
        G_MODULE_SUFFIX here.

        * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_image): Protect
        XShmPutImage with #ifdef USE_SHM.
2003-08-15 16:50:57 +00:00
Owen Taylor
03813f369a Don't reposition the cursor when we aren't trying to complete. (Fixes
Thu Aug 14 18:25:39 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkfilesel.c (gtk_file_selection_populate):
        Don't reposition the cursor when we aren't trying
        to complete. (Fixes problems with selection on
        startup, #108433, reported by Mark Finlay.)

        * gtk/gtkfilesel.c (gtk_file_selection_populate): Remove
        code that tried to position the cursor after the common
        prefix when there was one, it wasn't working, and
        would be hard to fix. Just always put the cursor
        at the end when completing.
2003-08-14 22:30:28 +00:00
Owen Taylor
27be4e9b70 If getting the current directory fails because of encoding conversion
Thu Aug 14 17:58:23 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkfilesel.c (get_current_dir_utf8): If getting
        the current directory fails because of encoding
        conversion problems, walk up textually to parent
        directories until we can convert. (#113627)
2003-08-14 22:00:27 +00:00
Matthias Clasen
18088aa0fb Improve doc comment wording. (#119754, Doug Quale)
2003-08-14  Matthias Clasen  <maclas@gmx.de>

	* gdk-pixdata.c (gdk_pixdata_to_csource): Improve doc comment
	wording.  (#119754, Doug Quale)
2003-08-13 22:14:49 +00:00
Owen Taylor
a649119906 Remove usage of menu_shell->ignore leave which was to deal with stray
Wed Aug 13 17:01:49 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkmenushell.[ch] (gtk_menu_shell_enter_notify):
        Remove usage of menu_shell->ignore leave which was
        to deal with stray events we no longer get because
        we do grabbing differently. Comment it as unused in
        the header. (#115837, Keith Bissett)
2003-08-13 21:13:09 +00:00
Owen Taylor
91d3768017 Fix some places that weren't properly Xinerama-ified.
Wed Aug 13 16:32:43 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkmenu.c (gtk_menu_position, gtk_menu_window_size_request):
        Fix some places that weren't properly Xinerama-ified.

        * gtk/gtkmenu.c: Fix problem with windows that scroll
        at the top of the screen.
2003-08-13 20:45:37 +00:00
Owen Taylor
4001482cb5 connect_after() to key-press-event on the entry, so input methods get
Wed Aug 13 11:34:53 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkcombo.c (gtk_combo_init): connect_after() to
        key-press-event on the entry, so input methods get access to
        key presses before GtkCombo customization.
        (#115451, Botond Botyanszki)
2003-08-13 16:34:35 +00:00
Anders Carlsson
296c4b41bf Add an important column.
2003-08-13  Anders Carlsson  <andersca@gnome.org>

	* tests/testtoolbar.c: (set_important_func), (important_toggled),
	(create_items_list):
	Add an important column.
2003-08-13 09:02:57 +00:00
Owen Taylor
b3bafcf180 Protect against reentrancy from ::focus-out handlers. (#118129, Felipe
Tue Aug 12 15:00:15 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_real_set_focus): Protect
        against reentrancy from ::focus-out handlers.
        (#118129, Felipe Heidrich)
2003-08-12 19:16:06 +00:00
Owen Taylor
43811f5dc0 Remove GDK_LOCK_MASK before calling gdk_keymap_translate_keyboard_state so
Tue Aug 12 14:27:42 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkkeyhash.c (_gtk_key_hash_lookup): Remove
        GDK_LOCK_MASK before calling
        gdk_keymap_translate_keyboard_state so bindings
        and accelerators are independent of the Caps-lock
        key. (#115384, reported by Toni Willberg)
2003-08-12 18:38:16 +00:00
Raymond Penners
f87cb63be3 Menu colors 2003-08-11 19:55:17 +00:00
Matthias Clasen
3c9624c396 Reformat to 80 columns. 2003-08-11 19:14:37 +00:00
Matthias Clasen
506672298b Reformat all my entries to 80 columns. 2003-08-11 19:06:17 +00:00
Owen Taylor
35f964d54e Add missing break statements (#119494, Soeren Sandmann)
Mon Aug 11 12:07:14 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkevents-x11.c (get_real_window): Add missing
        break statements (#119494, Soeren Sandmann)
2003-08-11 16:08:27 +00:00
Owen Taylor
370728f8bf Mark parent public as well; it's extensively accessed in existing code, so
Mon Aug 11 11:10:07 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwidget.h: Mark parent public as well; it's
        extensively accessed in existing code, so there is
        no advantage in making people use get_parent().
        (Tweak to #119463 fix)
2003-08-11 15:18:27 +00:00
Matthias Clasen
424433f1a4 Add support for EWMH "Above" and "Below" window states. (105100, Manuel Clos) 2003-08-10 23:37:37 +00:00
Matthias Clasen
19d81dab2b Copy newer versions of JH_CHECK_XML_CATALOG and JH_PATH_XML_CATALOG from
* acinclude.m4: Copy newer versions of JH_CHECK_XML_CATALOG and JH_PATH_XML_CATALOG from
	gtk-doc to enable configuring without xmlcatalog in PATH.  (#119115)
2003-08-10 22:30:02 +00:00
Matthias Clasen
219ddba928 Mark some members as public. Document public GtkWidget members.
* gtk/gtkwidget.h (struct _GtkWidget): Mark some members as public.
	* gtk/tmpl/gtkwidget.sgml: Document public GtkWidget members.
2003-08-09 23:01:31 +00:00
Noah Levitt
005194bc4b Elaborate a bit more in the docs on GdkFilterFunc and GdkFilterReturn.
2003-08-09  Noah Levitt  <nlevitt@columbia.edu>

	* gdk/gdkevents.h:
	* docs/reference/gdk/tmpl/windows.sgml: Elaborate a bit more in the
	docs on GdkFilterFunc and GdkFilterReturn.
2003-08-09 06:19:43 +00:00
Matthias Clasen
e26259ddea Add DND support to GtkCalendar. The selected date is dragged as text,
* gtk/gtkcalendar.c: Add DND support to GtkCalendar. The selected date is dragged
	as text, formatted via strftime %x. Text drops are accepted if g_date_set_parse()
	can make sense of the text. A dedicated data format for date DND has not been
	introduced yet, since there didn't seem to be sufficient consensus on such a format
	on xdg-list.  (#117297)
2003-08-08 23:01:17 +00:00
Matthias Clasen
6e1e7d30fc Get the information about the first day of the week from the locale using
* gtk/gtkcalendar.c: Get the information about the first day of the week from
	the locale using another instance of the "magic translated string" technique.
	Ignore the display option GTK_CALENDAR_WEEK_START_MONDAY with a warning.  (#87977)
2003-08-08 22:44:14 +00:00
Matthias Clasen
40f0f447f7 Complete the RTL flipping support for GtkCalendar, make it possible to
* gtk/gtkcalendar.c: Complete the RTL flipping support for GtkCalendar, make it
	possible to flip the headings using the "magic translated string" technique.
	Translators, note the comment in gtk_calendar_init() explaining this.
2003-08-08 22:17:34 +00:00
Matthias Clasen
35b3fd8915 Add and hook in gtk_calendar_scroll, to let the mouse wheels select the
2003-08-09  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcalendar.c:  Add and hook in gtk_calendar_scroll,
	to let the mouse wheels select the month. Scrolling down
	moves forward in time. (#53134, Abigail Brady)
2003-08-08 22:03:25 +00:00
Matthias Clasen
699e1c74ef Fix a segfault. (#115284, Jan Kratochvil)
2003-08-08  Matthias Clasen  <maclas@gmx.de>

	* gdk/gdkregion-generic.c (gdk_region_spans_intersect_foreach): Fix a segfault.  (#115284,
	Jan Kratochvil)
2003-08-08 21:39:19 +00:00
Tor Lillqvist
ad24b9cad6 Print also the root coordinates for events that have such. Print
2003-08-08  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkevents-win32.c (print_event): Print also the root
	coordinates for events that have such. Print coordinates for enter
	and leave events.

	(gdk_event_translate): Don't use event uninitialixed in the
	return_exposes branch of the WM_PAINT handler.

	* gdk/win32/gdkwindow-win32.c (gdk_window_new,
	_gdk_windowing_window_get_pointer, _gdk_windowing_window_at_pointer):
	Must offset top-level window coordinates here, too.
2003-08-08 07:16:16 +00:00
Matthias Clasen
3d0b5b8d42 Hide the resize grip when maximized or fullscreen.
2003-08-08  Matthias Clasen  <maclas@gmx.de>

	* demos/gtk-demo/appwindow.c (do_appwindow): Hide the resize grip when maximized or fullscreen.
2003-08-07 23:03:41 +00:00
Tor Lillqvist
5155f3ca66 gdk/win32/gdkinput-win32.h Drop the GdkEvent* parameter, it wasn't used.
2003-08-07  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkinput-win32.h
	* gdk/win32/gdkinput-win32.c (_gdk_input_configure_event,
	_gdk_input_enter_event): Drop the GdkEvent* parameter, it wasn't
	used.

	* gdk/win32/gdkevents-win32.c (gdk_event_translate): Adapt caller
	accordingly, in fact an uninitialised variable was dereferenced.


	[Win32] Add support for multiple monitors.

	* gdk/win32/gdkprivate-win32.h
	* gdk/win32/gdkglobals-win32.c: New global variables for
	multiple-monitor info: _gdk_num_monitors, _gdk_monitors, and
	_gdk_offset_x and _gdk_offset_y.

	* gdk/win32/gdkdisplay-win32.c (count_monitor, enum_monitor): New
	functions, enumeration functions passed to EnumDisplayMonitors().

	(gdk_display_open): If the EnumDisplayMonitors() and
	GetMonitorInfo() API is present (on Win98, Win2000 and newer), use
	if to find out monitor info.

	Calculate the offset between Win32 coordinates (relative to the
	primary monitor's origin (and thus negative on monitors to the
	left of or above it), and GDK's (visible coordinates should be
	non-negative).

	* gdk/win32/gdkscreen-win32 (gdk_screen_get_n_monitors,
	gdk_screen_get_monitor_geometry): Use information collected above.

	(gdk_window_move, gdk_window_move_resize_window_get_geometry):
	Subtract _gdk_offset_{x,y} from GDK root window coordinates.

	(gdk_window_get_geometry, gdk_window_get_origin,
	gdk_window_get_frame_extents): For top-level windows, add
	_gdk_offset_{x,y} to GDK root window coordinates

	Still need to handle multiple monitors in
	gdk_window_fullscreen(). Probably should make the window
	fullscreen on the monitor where the cursor is?

	* gdk/win32/gdkevents-win32.c: Add _gdk_offset_{x,y} to all GDK
	root window coordinates in GdkEvents.


	[Win32] Fix geometry hint handling. Add support for resize
	increment and base size, and aspect ratio geometry hints. The
	"gridded geometry" test in testgtk now works beautifully.

	* gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
	Turns out this function shouldn't actually ever modify the
	window's size, just store the hints. (Old code kept for a while
	inside #if 0.)

	(gdk_window_set_hints): Remove presumably broken code that handles
	the position hints, this function is obsolete anyway.

	* gdk/win32/gdkevents-win32.c: Drop the current_{x,y}_root
	variables, not used.

	(adjust_drag): New function, used to implement resize increment
	hints.

	(gdk_event_translate): Handle WM_SIZING, implement resize
	increment and base size, and aspect ratio geometry hints here. The
	WM_GETMINMAXINFO handler takes care of the minimum and maximum
	size hints as before. Fix the WM_GETMINMAXINFO handler to take
	into account window decorations. No need to modify the
	ptMaxPosition and ptMaxSize fields in the MINMAXINFO struct,
	the defaults are fine.

	* gdk/win32/gdkprivate-win32.h
	* gdk/win32/gdkwindow-win32.c (_gdk_win32_adjust_client_rect,
	_gdk_win32_get_adjusted_client_rect): New helper functions.
2003-08-07 22:17:18 +00:00
Matthias Clasen
9bfaab6e77 Reset the toplevel->have_* flags before iterating over the _NET_WM_STATE
2003-08-07  Matthias Clasen  <maclas@gmx.de>

	* gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed): Reset the toplevel->have_* flags before
	iterating over the _NET_WM_STATE atoms.  (#119217)
2003-08-07 21:11:35 +00:00
Owen Taylor
bccfe54807 Fix a bug where on theme change, resize/redraw wasn't properly getting
Thu Aug  7 16:49:29 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwidget.c (gtk_widget_set_style_internal):
        Fix a bug where on theme change, resize/redraw wasn't
        properly getting queued on toplevel windows. (#116346,
        Rajkumar Siva)

        * gtk/gtkwidget.c (gtk_widget_invalidate_widget_windows):
        Fix bug where wrong coordinates were used for toplevel
        window.
2003-08-07 21:03:18 +00:00
Owen Taylor
6f627e53dc Remove leftover page_num variable (Archit Baweja)
Thu Aug  7 16:40:21 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtknotebook.c (gtk_notebook_remove): Remove leftover
        page_num variable (Archit Baweja)
2003-08-07 20:41:11 +00:00
Matthias Clasen
5708dcee6c Use g_strtod() to cope with C libraries with crippled locale support.
2003-08-07  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkspinbutton.c (gtk_spin_button_default_input): Use g_strtod() to cope with C libraries with
	crippled locale support.  (#115293)
2003-08-07 18:54:51 +00:00
Hans Breuer
1ea3b45078 finally use TrackMouseEvent (only if the new window not known to Gdk) to
2003-08-07  Hans Breuer  <hans@breuer.org>

	* gdk/win32/gdkevents-win32.c : finally use TrackMouseEvent
	(only if the new window not known to Gdk) to get proper
	leave notification, and get rid of the wrong placed
	tooltips, bug #102283

	(gdk_event_translate) : small code reordering to not get
	GDK_MOTION_NOTIFY for still mouse and get back tooltips on
	menus, bug #117367
2003-08-07 15:10:16 +00:00
Guntupalli Karunakar
2818fee132 Updated Hindi translation 2003-08-07 11:48:00 +00:00
Tor Lillqvist
209dc33b3b gdk/gdk.def Add missing function, trivially implement.
2003-08-07  Tor Lillqvist  <tml@iki.fi>

	* gdk/gdk.def
	* gdk/win32/gdkfont-win32.c (gdk_fontset_load_for_display): Add
	missing function, trivially implement.
2003-08-07 03:30:38 +00:00
Matthias Clasen
6091eabc39 Don't cut descenders when rendering. (#118646, Charles Kerr)
2003-08-07  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkctree.c (draw_row): Don't cut descenders when rendering.  (#118646, Charles Kerr)
2003-08-06 22:56:50 +00:00
Hans Breuer
8bc4568fa8 initialize bits to 0 (probably default on NT)
2003-08-06  Hans Breuer  <hans@breuer.org>

	* gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new) :
	initialize bits to 0 (probably default on NT)

	now really ...
2003-08-06 22:13:48 +00:00
Hans Breuer
d3b962ce0f initialize bits to 0 (probably default on NT)
2003-08-06  Hans Breuer  <hans@breuer.org>

	* gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new) :
	initialize bits to 0 (probably default on NT)
2003-08-06 22:08:33 +00:00
Hans Breuer
76cb03f43f now it works as intended ;-)
2003-08-06  Hans Breuer  <hans@breuer.org>

	* gdk/win32/gdkwindow-win32.c (gdk_window_set_icon) :
	now it works as intended ;-)
2003-08-06 21:01:00 +00:00
Raymond Penners
6ec4aefa64 Progress bars 2003-08-06 20:05:39 +00:00
Hans Breuer
d2c64e305c set HWND_NOTOPMOST for modal==FALSE, fixes bug #118435
2003-08-04  Hans Breuer  <hans@breuer.org>

	* gdk/win32/gdkwindow-win32.c(gdk_window_set_modal_hint) :
	set HWND_NOTOPMOST for modal==FALSE, fixes bug #118435

	* gdk/win32/gdkwindow-win32.c : implement gdk_window_[un]fullscreen
	(gdk_window_{move,resize,move_rezize})) : noop if FULLSCREEN

	* gdk/win32/gdkwindow-win32.c (gdk_window_set_icon) :
	against all expectations it is basically ony a call with WM_SETICON
	needed (the visual effect is there, though colors or mask are
	still somewhat wrong).
	* gdk/win32/gdkwindow-win32.h : place to store the HICON

	* gdk/win32/gdkdrawabke.win32.c : readded the conditional end
	pixel drawing as it was fixed at 1999-08-23

	gtk/gtk.def : updated
2003-08-05 22:24:35 +00:00
Raymond Penners
3f416961dc Text entry 2003-08-05 19:55:33 +00:00
Raymond Penners
857c1b8f5b Lots of changes 2003-08-05 19:34:17 +00:00
Matthias Clasen
fae5833c89 Add a "Hypertext" demo. 2003-08-05 19:16:01 +00:00
Matthias Clasen
7ef86d232b Add bug number. 2003-08-05 18:29:55 +00:00
Owen Taylor
411821fa48 Add a missing break. (#119156, Callum McKenzie)
Tue Aug  5 10:07:08 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkmessagedialog.c (gtk_message_dialog_get_property):
        Add a missing break. (#119156, Callum McKenzie)
2003-08-05 14:10:00 +00:00
Soeren Sandmann
094657e85b New positioning algorithm.(#116649)
Tue Aug  5 00:24:13 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkmenu.c (gtk_menu_position): New positioning
	algorithm.(#116649)
2003-08-04 22:09:02 +00:00
Soeren Sandmann
6f6d3a2202 add new "is_important" property
Fri Aug  1 15:26:46 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c, gtk/toolitem.c: add new "is_important"
	property

	* gtk/gtkradiotoolbutton.c
	(gtk_radio_tool_button_new_from_widget): Don't take a stock id

	* gtk/gtkradiotoolbutton.c
	(gtk_radio_tool_button_new_with_stock_from_widget): make this
	function take a stock_id.

	* gtk/toolbar: documentation
2003-08-04 21:13:55 +00:00
Owen Taylor
72f1116387 Fix problem where use_xshm was getting set wrong if MIT_SHM wasn't found.
Mon Aug  4 14:53:46 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init):
        Fix problem where use_xshm was getting set wrong if
        MIT_SHM wasn't found. (George Lebel)
2003-08-04 19:02:36 +00:00
Tor Lillqvist
b9987ad725 2003-08-04 Tor Lillqvist <tml@iki.fi
* gdk/win32/gdkevents-win32.c (apply_filters): Fix braino:
	actually use the passed-in filter list. The function also needs a
	GdkWindow parameter, as filter functions expect
	GdkEvent::any.window to be valid. (#119034, Hans Breuer)
2003-08-04 15:27:49 +00:00
Matthias Clasen
e5d0f500c6 Clarify misleading explanation of rowstride. (#119000)
2003-08-03  Matthias Clasen  <maclas@gmx.de>

	* gdk-pixbuf.c (gdk_pixbuf_get_rowstride):
	* gdk-pixbuf-data.c (gdk_pixbuf_new_from_data): Clarify misleading explanation of
	rowstride.  (#119000)
2003-08-03 21:51:24 +00:00
Matthias Clasen
ee18c33dc9 Improve wording of the docs, avoid the term "virtual screen". (#119030,
2003-08-03  Matthias Clasen  <maclas@gmx.de>

	* gdk/x11/gdkscreen-x11.c (gdk_screen_get_n_monitors):
	(gdk_screen_get_monitor_geometry): Improve wording of the docs, avoid the
	term "virtual screen".  (#119030, Tor Lillquist)
2003-08-03 20:50:58 +00:00
Matthias Clasen
0df78ed774 Use g_setenv() instead of putenv(). 2003-08-02 21:35:44 +00:00
Owen Taylor
88c1c94651 Requires glib-2.3.0, pango-1.2.0.
Sat Aug  2 12:53:16 2003  Owen Taylor  <otaylor@redhat.com>

        * configure.in: Requires glib-2.3.0, pango-1.2.0.

        * configure.in: Require Xft version 2,
        remove code for handling older versions of pango and Xft.
        Many miscellaneous improvements to X checks

        * acinclude.m4: Add GTK_ADD_LIB() macro for adding
        a library to a variable, avoiding dups.

        * gdk/x11/gdkfont-x11.c (gdk_font_from_description_for_display):
        Always load "fixed"

        * gdk/x11/gdk*-x11.[ch]: Remove support for Xft1 and
        for pangox.
2003-08-02 17:50:09 +00:00
Sajith VK
c466752212 The mass commit 2003-08-02 12:48:03 +00:00
Matthias Clasen
3d4c726c48 Accept drops with the wrong format, since the KDE color chooser
2003-08-02  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcolorsel.c (color_sample_drop_handle)
	(palette_drop_handle):
	* gtk/gtkcolorbutton.c (gtk_color_button_drag_data_received):  Accept drops with the
	wrong format, since the KDE color chooser incorrectly drops application/x-color with
	format 8.
2003-08-02 09:22:38 +00:00
Tor Lillqvist
3dc24f5893 Fix gdk/win32 window geometry handling again. The window position in a
2003-08-02  Tor Lillqvist  <tml@iki.fi>

	Fix gdk/win32 window geometry handling again. The window position
	in a GDK_CONFIGURE event should be that of the client area, not of
	the window decorations. (I was confused by the term "window
	border" in X11. It does *not* mean the window manager
	decorations. There are no X11-style window borders in Win32.)
	Also, this time do take the geometry hints into account
	appropriately when moving windows. Now testgtk's gravity test's
	move buttons work OK. There are stil problems with taking gravity
	into account when showing a hidden window.

	* gdk/win32/gdkwindow-win32.h: Keep a whole GdkGeometry as hints
	instead of separate fields.

	* gdk/win32/gdkevents-win32.c (handle_configure_event): Don't
	adjust for decorations.

	* gdk/win32/gdkwindow-win32.c (get_outer_rect,
	adjust_for_gravity_hints): New functions.
	(gdk_window_move, gdk_window_resize, gdk_window_move_resize): Use
	above functions, take geometry hints into account.
	(gdk_window_set_geometry_hints): Size hints specicy client area,
	not including decorations.
2003-08-02 02:05:12 +00:00
Owen Taylor
6796cc5fa5 Always return an absolute path (#115590), fix a problem where you could
Fri Aug  1 17:10:22 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkfilesel.c (cmpl_completion_fullname): Always
        return an absolute path (#115590), fix a problem where
        you could crash the file selector with a looong name
        by returning a newly allocated buffer.
2003-08-01 21:20:21 +00:00
Owen Taylor
28bac57670 Fix obvious reallocation bug in rarely or never hit code path (#118071,
Fri Aug  1 16:44:51 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkfilesel.c (update_cmpl): Fix obvious reallocation
        bug in rarely or never hit code path (#118071,
        Tor Lillqvist)
2003-08-01 20:46:44 +00:00
Owen Taylor
10a3ddf6cc If the check for missing depths, try actually creating pixmaps of the
Fri Aug  1 16:30:13 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdrawable-x11.c (_gdk_x11_have_render):
        If the check for missing depths, try actually creating pixmaps
        of the depths to deal with Xinerama not reporting
        all the depths it should. (#115822)
2003-08-01 20:37:56 +00:00
Owen Taylor
f149c99977 Patch from Denis Mikhalkin to forward KeyRelease events as well as
Fri Aug  1 15:33:59 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtksocket.c: Patch from Denis Mikhalkin to
        forward KeyRelease events as well as KeyPress events.
        (#115597)
2003-08-01 19:51:05 +00:00
Owen Taylor
4fbca22e4a g_set_prgname("<unknown>") if argc is 0 as well, instead of leaving it
Fri Aug  1 15:06:25 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdk.c (gdk_parse_args): g_set_prgname("<unknown>")
        if argc is 0 as well, instead of leaving it unset.
        (#116023, Michael Meeks)
2003-08-01 19:28:19 +00:00
Richard Allen
f47431b226 Added is translation (Not complete yet) 2003-08-01 15:25:49 +00:00
Soeren Sandmann
d047149856 make show_arrow default to TRUE; ignore the property when api_mode !=
Thu Jul 31 23:09:02 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c (gtk_toolbar_class_init): make show_arrow
	default to TRUE; ignore the property when api_mode != NEW_API
2003-07-31 20:49:48 +00:00
Matthias Clasen
5e79f817bd Rename parameter pixbuf to icon, to pacify gtk-doc.
2003-07-31  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkwindow.c (gtk_window_set_default_icon): Rename parameter pixbuf to icon, to
	pacify gtk-doc.
2003-07-31 18:58:15 +00:00
Matthias Clasen
b0b336a3d6 Fix formatting of drag-motion example. 2003-07-31 18:47:39 +00:00
Soeren Sandmann
029cae40f5 add padding to subclasses of GtkToolItem
Thu Jul 31 15:33:33 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtk*tool*.h: add padding to subclasses of GtkToolItem
2003-07-31 15:26:40 +00:00
Soeren Sandmann
e5d590d8fc remove unused overflow_item field.
Thu Jul 31 15:29:28 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolitem.c (struct _GtkToolItemPrivate): remove unused
	overflow_item field.
2003-07-31 13:09:29 +00:00
Soeren Sandmann
03e53fd340 make _gtk_tool_item_toolbar_reconfigured() an internal function
Wed Jul 30 21:11:13 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolitem.h: make _gtk_tool_item_toolbar_reconfigured()
	an internal function

	* gtk/gtktoolitem.h: remove unused declaration of
	_gtk_tool_item_get_drag_window().
2003-07-30 20:14:54 +00:00
Soeren Sandmann
dfca5a2aac swap icon_widget and label arguments to match BonoboUIToolbarButton.
Wed Jul 30 17:03:58 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbutton.[ch]:
	(gtk_tool_button_new): swap icon_widget and label arguments to
	match BonoboUIToolbarButton.

	* gtk/gtktoolbar.h: un-deprecate gtk_toolbar_{set|unset}_style().
2003-07-30 18:35:08 +00:00
Matthias Clasen
1144aa35a5 Some updates to the DND signal docs.
2003-07-30  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkwidget.c (gtk_widget_class_init): Some updates to the DND signal docs.
2003-07-29 23:42:27 +00:00
Tor Lillqvist
09f777e5ea Fix for #108007, #112402, #117042: There was confusion in gdk/win32 at
2003-07-29  Tor Lillqvist  <tml@iki.fi>

	Fix for #108007, #112402, #117042: There was confusion in
	gdk/win32 at various places whether a window position refers to
	the decoration position or the client area position. Also whether
	window size includes decorations or not.

	The correct interpretation apparently is that in GDK (like in
	X11), a top-level window position means the decoration's position,
	but size means the window's inner size (client area size). In the
	Win32 API, the window size usually includes the decorations,
	though.

	* gdk/win32/gdkevents-win32.c (decode_key_lparam): Move inside
	#ifdef G_ENABLE_DEBUG.
	(handle_configure_event): New function, generates GDK_CONFIGURE
	events from WM_SIZE and WM_MOVE messages. Even if no event is
	generated because of the event mask, still set the private
	position and size fields. Calculate position and size correctly.
	(gdk_event_translate): Call handle_configure_event().

	* gdk/win32/gdkgeometry-win32.c: Cosmetics.

	* gdk/win32/gdkwindow-win32.c: Use GDI_CALL() and API_CALL()
	macros. Cosmetic debugging output changes.
	(SafeAdjustWindowRectEx): Remove. If an application wants to
	locate a window outside of the screen, it's not GDK's business to
	prevent it. And anyway, with multiple monitors, negative
	coordinates are perfectly normal.
	(gdk_window_new): Adjust the window size for decorations after
	_gdk_window_init_position() has done its job. (But the big window
	code currently is presumably broken on Win32 anyway.)
	(gdk_window_move): The position passed in is supposed to be that
	of the window border, so don't need to adjust for decorations.
	(gdk_window_resize, gdk_window_move_resize): Simplify somewhat.
2003-07-29 23:35:40 +00:00
Soeren Sandmann
05ce8747c2 Move documentation inline from template files.
Tue Jul 29 13:55:44 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c (gtk_toolbar_set_style,
	gtk_toolbar_prepend_element, gtk_toolbar_append_element,
	gtk_toolbar_insert_space, gtk_toolbar_prepend_space,
	gtk_toolbar_append_space, gtk_toolbar_insert_item,
	gtk_toolbar_prepend_item, gtk_toolbar_append_item,
	gtk_toolbar_set_tooltips, gtk_toolbar_set_orientation,
	gtk_toolbar_new, gtk_toolbar_prepend_item):

	Move documentation inline from template files.

	* gtk/gtktoolbar.c (gtk_toolbar_insert_element,
	gtk_toolbar_insert_widget, gtk_toolbar_prepend_widget,
	gtk_toolbar_append_widget, gtk_toolbar_remove_space,
	gtk_toolbar_insert_stock, gtk_toolbar_unset_icon_size,
	gtk_toolbar_get_icon_size, gtk_toolbar_set_icon_size,
	gtk_toolbar_get_tooltips, gtk_toolbar_unset_style,
	gtk_toolbar_get_style, gtk_toolbar_get_orientation)

	Copy documentation from stable that was added after the EggToolbar
	branched.

	* gtk/gtktoolbar.h: deprecate gtk_toolbar_unset_icon_size()
2003-07-29 12:16:02 +00:00
Sven Neumann
ac209d13a3 Resurrected documentation that got lost when the window parameter was
2003-07-29  Sven Neumann  <sven@gimp.org>

	* gdk/tmpl/pixmaps.sgml: Resurrected documentation that got lost
	when the window parameter was renamed to drawable.
2003-07-29 09:08:22 +00:00
Soeren Sandmann
fa62c79f38 Commit autogenerated changes, so patches will make sense.
Mon Jul 28 18:21:34 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk+/docs/: Commit autogenerated changes, so patches will make
	sense.
2003-07-28 16:08:20 +00:00
Yuri Syrota
1a5ffa0277 Updated ukrainian translation 2003-07-28 09:16:53 +00:00
Tor Lillqvist
165375eb5c On Win9x, the keyboard state returned by GetKeyboardState() doesn't
2003-07-27  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkevents-win32.c (build_key_event_state): On Win9x,
	the keyboard state returned by GetKeyboardState() doesn't
	distinguish between the left and right Control and Alt keys. Thus
	we cannot detect AltGr (which is supposed to be left Control +
	right Alt) the same way as on NT-based systems, but have to accept
	either Control + either Alt as AltGr.
2003-07-27 21:58:44 +00:00
Matthias Clasen
5473dbef79 Fix function name in warning message. (#118156, Tim-Philipp Müller)
2003-07-27  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach): Fix function name in
	warning message.  (#118156, Tim-Philipp Müller)
2003-07-27 21:42:20 +00:00
Matthias Clasen
a27d91b237 is-expander and is-expanded are boolean properties, not ints. (#118359,
2003-07-27  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): is-expander and is-expanded are
	boolean properties, not ints.  (#118359, Josh Parsons)
2003-07-27 21:33:54 +00:00
Sajith VK
6706cdf877 ok 2003-07-27 11:19:14 +00:00
Soeren Sandmann
c9714692aa don't request toggle_space when the image width is 0.
Sat Jul 26 15:21:27 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkimagemenuitem.c
	(gtk_image_menu_item_toggle_size_request): don't request
	toggle_space when the image width is 0.
2003-07-26 13:22:42 +00:00
Tor Lillqvist
63f745738d gdk/win32/gdkprivate-win32.h New flags _gdk_input_locale_is_ime and
2003-07-25  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkprivate-win32.h
	* gdk/win32/gdkglobals-win32.c: New flags _gdk_input_locale_is_ime
	and _gdk_keyboard_has_altgr.

	* gdk/win32/gdkevents-win32.c: Lots of changes. Most important
	ones detailled here.

	Code that has been ifdeffed out for a long time removed. Remove
	some really old doc comments that were left behind for some public
	functions, the official ones are in the X11 backend anyway. Change
	GDK_WINDOW_OBJECT() calls to GdkWindowObject casts. Reformat
	multi-line boolean expressions to have the operators at ends of
	lines.

	As mouse capture with SetCapture() indeed seems to work OK, no
	need to have the correspoinding macro USE_SETCAPTURE and ifdefs.

	Ifdef out the gdk-ping-msg stuff. I don't remember why it was
	needed at some time, and things seem to work fine now without
	(knock on wood).

	Ifdef out the search for some Latin locale keyboard layout being
	loaded. Not used currently, but might be needed after all, if we
	decide that we want to be able to generate ASCII control character
	events with a non-Latin keyboard.

	(assign_object): New helper function, handles the g_object_ref()
	and unref() calls when assigning GObject pointers.

	(generate_crossing_events): Also generate the GDK_NOTIFY_INTERIOR
	enter event when the pointer has moved to an ancestor window. Was
	left out by mistake.

	(gdk_window_is_ancestor): Renamed from gdk_window_is_child().

	(gdk_pointer_grab, gdk_pointer_ungrab): Implement the confine_to
	functionality, using ClipCursor().

	(find_window_for_mouse_event): Splice part of code into new
	function find_real_window_for_grabbed_mouse_event().

	(fixup_event, append_event, apply_filters): New functions, code
	refactored out from elsewhere.

	(synthesize_enter_or_leave_event, synthesize_leave_event,
	synthesize_enter_event,
	synthesize_leave_events,synthesize_enter_events): Also take a
	GdkCrossingMode parameter, in preparation to generating
	GDK_CROSSING_GRAB and GDK_CROSSING_UNGRAB events.

	(fixup_event, append_event, fill_key_event_string): New functions,
	code refactoring.

	(vk_from_char, build_keypress_event, build_keyrelease_event):
	Removed as part of dropping WM_CHAR handling.

	(build_key_event_state,gdk_event_translate): Call
	GetKeyboardState(), once, for each keyboard message, instead of
	several calls to GetKeyState() here and there.

	(gdk_event_translate): Fix bugs #104516, #104662, #115902. While
	at it, do some major refactoring, and some fixes for potential
	problems noticed while going through the code.

	Don't handle WM_CHAR at all. Only handle WM_KEYDOWN and
	WM_KEYUP. Don't need the state variables related to whether to
	wait for WM_CHAR or not, and whether the current key is
	AltGr. Remove lots of complexity. Thus don't need the
	use_ime_composition flag.

	Not handling WM_CHAR means dead key handling will have to be taken
	care of by GTK, but that seems to work fine, so no worry.

	Another side-effect is that Alt+keypad digits don't work any
	longer, but it's better to learn to use GTK's ISO14755 support is
	anyway.

	Be more careful in checking whether AltGr is involved. Only
	attempt to handle it if the keyboard actually has it. And
	explicitly check for *left* Control plus *right* Alt being
	pressed. Still, allow (left) Alt and/or (right) Control with AltGr
	chars.

	Handle keys using similar code as in the X11 backend. As we have
	built a keymap in gdkkeys-win32.c anyway, use it by calling
	gdk_keymap_translate_keyboard_state() to look up the keysym from
	the virtual key code and keyboard state. Build the key event
	string in exactly the same way as the X11 backend.

	If an IME is being used, don't generate GDK events for keys
	between receiving WM_IME_STARTCOMPOSITION and
	WM_IME_ENDCOMPOSITION, as those keys are for the IME.

	For WM_IME_COMPOSITION, handle all the Unicode chars returned from
	the IME, not just the first one.

	gdk_event_translate() is still quite complex, could split the
	message handler cases out into separate functions.

	On mouse events, when the mouse is grabbed, use
	find_real_window_for_grabbed_mouse_event() in order to be able to
	generate correct crossing events.

	No longer take a pre-allocated GdkEvent as parameter. Instead,
	allocate events as needed and append them to the queue. (This is
	different from how gdk_event_translate() in the X11 backend
	works.) This change made the code much clearer, especially in the
	cases where we have to generate several GDK events for one Windows
	message.  Return FALSE if DefWindowProc() should be called, TRUE
	if not. If DefWindowProc() should not be called, also return the
	value to be returned from the window procedure.

	(Previously, the interaction with gdk_event_translate()'s caller
	was much more complex, when we had to indicate whether the
	already-queued event should be left in the queue or removed, and
	in addition also had to indicate whether to call DefWindowProc()
	or not, and what value to return from the window procedure if
	not.)

	Don't use a separate "private" variable required to be pointing to
	the GdkWindowObject of the "window" variable at all times. Just
	use casts, even if looks a bit uglier.

	Notice destroyed windows as early as possible, and break out of
	the messsage switch.

	Use _gdk_pointer_root as current_window when the pointer is
	outside GDK's top-level windows.

	On WM_INPUTLANGCHANGE, set _gdk_input_locale_is_ime as
	appropriate, based on ImmIsIME().

	(gdk_event_translate, gdk_event_send_client_message_for_display,
	gdk_screen_broadcast_client_message): Implement client messages.
	Use a registered Windows message to pass GDK client messages. Note
	that the amount of user data is restricted to four bytes, as it is
	carried in the LPARAM. (The WPARAM is used for the message type
	"atom".)

	(real_window_procedure): Adapt for new gdk_event_translate()
	interface.

	* gdk/win32/gdkmain-win32.c (_gdk_windowing_init): Set
	_gdk_input_locale_is_ime initially.

	* gdk/win32/gdkwindow-win32.c: Use g_object_ref()/unref() instead
	of g_colormap_ref()/unref().

	(gdk_window_new): Made code a bit more like the X11 one, pretend
	to handle screens (although we just have one for now).

	* gdk/x11/gdkevents-x11.c
	(gdk_event_send_client_message_for_display,
	gdk_screen_broadcast_client_message): Document the user data
	limitation on Win32.

	* gdk/win32/gdkevents-win32.c (print_event): More complete enter
	and leave notify detail output.

	* gdk/win32/gdkkeys-win32.c (update_keymap): Make dead keys
	visible to GDK and GTK. Store the corresponding GDK_dead_* keysym
	for those, so that the GtkIMContextCimple compose tables will
	work. Deduce if the keyboard layout has the AltGr key, and set the
	above flag accordingly.
2003-07-26 01:54:59 +00:00
Matthias Clasen
98e5b6e608 Document DND signals. 2003-07-25 23:34:37 +00:00
Yuri Syrota
b15ba50885 Updated Ukrainian translation 2003-07-25 18:58:24 +00:00
Matthias Clasen
5a6f47c799 Make the "Input Methods" insensitive when editing isn't possible.
2003-07-24  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktextview.c (popup_targets_received): Make the "Input Methods" insensitive
	when editing isn't possible.  (#118150)
2003-07-24 18:50:38 +00:00
Frédéric Crozat
a5e2f158a8 Don't use deprecated gdk-pixbuf code.
* libegg/iconlist/eggiconlist.c: (egg_icon_list_paint_item):
        Don't use deprecated gdk-pixbuf code.
2003-07-24 13:12:23 +00:00
Matthias Clasen
b8118e6507 Preserve the aspect ratio. (#118145, Owen Taylor)
2003-07-24  Matthias Clasen  <maclas@gmx.de>

	* gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_size): Preserve the aspect ratio.  (#118145,
	Owen Taylor)
2003-07-23 22:55:34 +00:00
Owen Taylor
3264c0b679 Return parent path for dummy paths.
Wed Jul 23 18:43:20 2003  Owen Taylor  <otaylor@redhat.com>

        * gtkfilesystemmodel.c (_gtk_file_system_model_get_path):
        Return parent path for dummy paths.
2003-07-23 22:45:01 +00:00
Owen Taylor
971bd6274e Move ChangeLog entry here 2003-07-23 22:30:52 +00:00
Owen Taylor
d97d7df947 Add over-big test case for preview (much of size from a modified copy of
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.
2003-07-23 22:30:32 +00:00
Matthias Clasen
a19781c504 Close loader before unref'ing it. (#118146, Owen Taylor)
2003-07-23  Matthias Clasen  <maclas@gmx.de>

	* gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_size): Close loader before unref'ing
	it.  (#118146, Owen Taylor)
2003-07-23 21:39:11 +00:00
Matthias Clasen
d5d9ecbf80 Make the hue spinbutton wrap. (#118097, John Darrington)
2003-07-23  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcolorsel.c (gtk_color_selection_init): Make the hue
	spinbutton wrap.  (#118097, John Darrington)
2003-07-23 21:00:15 +00:00
Matthias Clasen
1e61721472 Mention Xnest as a way to debug GTK+ apps.
* docs/faq/gtk-faq.sgml: Mention Xnest as a way to debug GTK+ apps.
2003-07-23 18:58:48 +00:00
Owen Taylor
733f4489ad File filter objects.
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.
2003-07-23 15:31:10 +00:00
Jonathan Blandford
96ba7bb65e use XDG_DATA_HOME instead of XDG_CONFIG_HOME.
* xdgmime/xdgmime.c (xdg_mime_init): use XDG_DATA_HOME instead of
        XDG_CONFIG_HOME.
2003-07-22 19:39:10 +00:00
Matthias Clasen
7ba06b2936 It is GTK_DEST_DEFAULT_DROP, not GTK_DRAG_DEFAULT_DROP. (#117917,
2003-07-21  Matthias Clasen  <maclas@gmx.de>

	* gtk/tmpl/gtkdnd.sgml: It is GTK_DEST_DEFAULT_DROP, not GTK_DRAG_DEFAULT_DROP. (#117917,
	Tim-Philipp Müller)
2003-07-21 21:37:32 +00:00
Hans Breuer
d72a9b7011 readded as binary 2003-07-20 15:50:55 +00:00
Hans Breuer
364272b5b9 new file to build it all ... added to EXTRA_DIST
2003-07-20  Hans Breuer  <hans@breuer.org>

	* makefile.msc : new file to build it all
	* Makefile.am : ... added to EXTRA_DIST

	* gdk/makefile.msc gtk/stock-icons/makefile.msc
	  gtk/makefile.msc.in tests/makefile.msc : updated

	* gdk/gdk.def gtk/gtk.def : export a bunch of new
	functions

	* gtk/gtkbbox.c : use g_return_val_if_fail() if
	there is a value to return

	* gtk/gtkfontsel.c gtk/gtkiconfactory.c :
	static correctness

	* gtk/gtkicontheme.c : ported to use GTimeVal instead of
	struct timeval and GTK_DATA_PREFIX instead of GTK_DATADIR

	* gtk/gtkicontheme.c : use HAVE_LC_MESSAGES

	* gtk/gtkimmulticontext.c : use gtkprivate.h

	* gtk/stock-icons/stock_color_picker_25.png
	  gtk/stock-icons/stock_jump_to_rtl_16.png
	  gtk/stock-icons/stock_jump_to_rtl_24.png
	  gtk/stock-icons/stock_redo_rtl_16.png
	  gtk/stock-icons/stock_redo_rtl_24.png
	  gtk/stock-icons/stock_undelete_rtl_16.png
	  gtk/stock-icons/stock_undelete_rtl_24.png
	  gtk/stock-icons/stock_undo_rtl_16.png :
	  gtk/stock-icons/stock_undo_rtl_24.png :
	readded as binary
2003-07-20 15:50:14 +00:00
Hans Breuer
c80e5e66e8 removed to re-add as binary 2003-07-20 15:46:16 +00:00
Hans Breuer
4689575d1c updated
2003-03-01  Hans Breuer  <hans@breuer.org>

	* makefile.msc : updated

	* gdk_pixbuf.def : export a bunch of new functions
2003-07-20 15:43:41 +00:00
Soeren Sandmann
9fee53684d remove leftover request of {xy}thickness
Sat Jul 19 22:39:24 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolitem.c (gtk_tool_item_size_request): remove
	leftover request of {xy}thickness
2003-07-19 20:24:33 +00:00
Soeren Sandmann
27f361c238 don't attempt to add a NULL icon to the box.
Sat Jul 19 16:26:02 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbutton.c (gtk_tool_button_construct_contents): don't
	attempt to add a NULL icon to the box.
2003-07-19 14:10:48 +00:00
Soeren Sandmann
52de946c3d only redraw tabs on focus in/out.
Sat Jul 19 12:13:20 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtknotebook.c (gtk_notebook_focus_in|out): only redraw tabs
	on focus in/out.
2003-07-19 09:54:30 +00:00
Matthias Clasen
a314e4c2ec Add authentication icon. 2003-07-18 23:43:26 +00:00
Matthias Clasen
1fd4cd2fa4 New function. (#64562)
2003-07-19  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkbbox.h:
	* gtk/gtkbbox.c (gtk_button_box_get_child_secondary): New function. (#64562)
2003-07-18 23:08:51 +00:00
Soeren Sandmann
0c8511d269 Fix C99 declaration
Sat Jul 19 00:18:40 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkwindow.c (gtk_window_set_default_icon): Fix C99
	declaration

	* gtk/gtkwidget.c (gtk_widget_queue_shallow_draw): new function
	(gtk_widget_real_focus_{in|out}_event): queue shallow draws
	instead of full draws.
2003-07-18 22:12:51 +00:00
Matthias Clasen
7fa902f60b Add properties decorated and gravity. (#80234)
2003-07-18  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkwindow.c: Add properties decorated and gravity.  (#80234)
2003-07-18 22:00:20 +00:00
Matthias Clasen
eaae0a6b61 Add a new keybinding signal, move_viewport. (gtk_text_view_move_viewport):
2003-07-18  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktextview.c (gtk_text_view_class_init): Add a new keybinding signal, move_viewport.
	(gtk_text_view_move_viewport): New function which implements the move_viewport functionality.
	(gtk_text_view_move_cursor_internal): If the cursor is not visible, move the viewport. (#78669)

	* gtk/gtkenums.h (GtkScrollStep): New enumeration, used for move_viewport argument.

	* gtk/gtkstatusbar.c (gtk_statusbar_class_init): Add a has_resize_grip property.  (#111779)

	* gtk/gtkwindow.h:
	* gtk/gtkwindow.c (gtk_window_set_default_icon): New method.  (#95816)

	* gtk/gtkmessagedialog.h:
	* gtk/gtkmessagedialog.c (gtk_message_dialog_add_buttons): New method.
	(#65501, Sebastian Rittau)
2003-07-18 18:52:03 +00:00
Soeren Sandmann
1a7bac8d2a use gtk_widget_queue_resize_noredraw().
Fri Jul 18 20:06:57 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktextview.c (changed_handler): use
	gtk_widget_queue_resize_noredraw().
2003-07-18 17:53:01 +00:00
Jody Goldberg
b42280f708 fix cut-n-paste-o
2003-07-16  Jody Goldberg <jody@gnome.org>

	* gdk/x11/gdkwindow-x11.c (gdk_window_focus) : fix cut-n-paste-o
2003-07-18 17:42:17 +00:00
Soeren Sandmann
5171637f92 Add this API.
Fri Jul 18 19:55:50 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkwidget.c (gtk_widget_queue_resize_no_redraw): Add this
	API.
2003-07-18 17:37:15 +00:00
Soeren Sandmann
80560b9d3d By popular request give toolbuttons a border.
Fri Jul 18 18:43:01 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	By popular request give toolbuttons a border.

	* gtk/gtktoolitem.c
	(gtk_tool_item_size_allocate):
	(gtk_tool_item_size_request): don't request and allocate a border
	around the child

	* gtk/gtktoolbutton.c
	(gtk_tool_button_size_allocate):
	(gtk_tool_button_size_request): remove these functions

	* gtk/gtktoolbar.c
	(gtk_toolbar_size_request):
	(gtk_toolbar_size_allocate): request and allocate a border if we
	have a shadow.
2003-07-18 16:25:31 +00:00
Anders Carlsson
62a7160df0 Add stresstest-toolbar 2003-07-18 07:50:54 +00:00
Matthias Clasen
a6a10ee028 Split correction into multiple pieces if no single weight is large enough
2003-07-18  Matthias Clasen  <maclas@gmx.de>

	* pixops/pixops.c (correct_total): Split correction into multiple pieces if no single weight is large
	enough to apply the unsplit correction.  (#117431, problem reported by Tomas Ögren)
2003-07-17 22:47:10 +00:00
Kristian Rietveld
e733ed3e72 Merged from stable.
Thu Jul 17 19:24:51 2003  Kristian Rietveld  <kris@gtk.org>

	Merged from stable.

	Fixes issues pointed out by Morten Welinder in #115140.

	* gtk/gtktreeview.c (gtk_tree_view_size_request): fix comment,
	(do_validate_rows): update validated_area with a logic OR instead
	of a bitwise OR,
	(validate_rows_handler): make the if statement match the one in
	validate_rows(), so we don't leak the timeout.
2003-07-17 17:32:00 +00:00
Kristian Rietveld
fd9992d8e6 Merged from stable.
Thu Jul 17 19:12:02 2003  Kristian Rietveld  <kris@gtk.org>

	Merged from stable.

	* gtk/gtktreeview.c (gtk_tree_view_remove_widget): the treeview
	should only grab focus back if the "cell_editable" widget still
	has focus. (Fixes #110104, testcase provided by Marco Pesenti
	Gritti).
2003-07-17 17:15:48 +00:00
Kristian Rietveld
c400b654ca Merged from stable.
Thu Jul 17 19:06:34 2003  Kristian Rietveld  <kris@gtk.org>

	Merged from stable.

	* gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
	Don't set attr.event_mask twice, those things were meant to be
	ORred. (#115139, pointed out by Morten Welinder).
2003-07-17 17:09:57 +00:00
Kristian Rietveld
bdce65ea3f Merged from stable.
Thu Jul 17 16:11:21 2003  Kristian Rietveld  <kris@gtk.org>

	Merged from stable.

	* gtk/gtktreeview.c (gtk_tree_view_rows_reordered): stop editing
	if needed. (Fixes #115869, reported by Michael Natterer).
2003-07-17 14:15:03 +00:00
Owen Taylor
c80a3b3d3b auto-ize.
Wed Jul 16 16:50:31 2003  Owen Taylor  <otaylor@redhat.com>

        * configure.ac Makefile.am: auto-ize.

        * xdgmime/: Add freedesktop.org MIME spec implementatin
        by Jonathan Blandford.

        * gtkfilesystem.[ch]: Add gtk_file_info_render_icon()
        gtk_file_info_set/get_icon_type to do icon handling
        based on MIME type. Add a simple icon caching system.

        * gtkfilesystemgnomevfs.c: Implement ensure_types()
        so that extending the set of types for a loaded
        directory works. Set the MIME type to get the default
        icon handling.

        * gtkfilesystemunix.c: Look up the MIME type using
        xdgmime.

        * gtkfilechooserimpldefault.c: Display icons in the list.

        * glib-interface-properties-0.3.patch: New revision
        of interface properties patch.
2003-07-16 21:16:39 +00:00
Owen Taylor
7e54248bc3 auto-ize.
Wed Jul 16 16:50:31 2003  Owen Taylor  <otaylor@redhat.com>

        * configure.ac Makefile.am: auto-ize.

        * xdgmime/: Add freedesktop.org MIME spec implementatin
        by Jonathan Blandford.

        * gtkfilesystem.[ch]: Add gtk_file_info_render_icon()
        gtk_file_info_set/get_icon_type to do icon handling
        based on MIME type. Add a simple icon caching system.

        * gtkfilesystemgnomevfs.c: Implement ensure_types()
        so that extending the set of types for a loaded
        directory works. Set the MIME type to get the default
        icon handling.

        * gtkfilesystemunix.c: Look up the MIME type using
        xdgmime.

        * gtkfilechooserimpldefault.c: Display icons in the list.
2003-07-16 21:07:38 +00:00
Mark McLoughlin
bc8567d488 make pixbuf_cache static to avoid possible symbol conflicts.
2003-07-15  Mark McLoughlin  <mark@skynet.ie>

        * pixbuf-render.c: make pixbuf_cache static to avoid
        possible symbol conflicts.
2003-07-15 11:40:19 +00:00
Matthias Clasen
225b8ccea7 New templates.
2003-07-15  Matthias Clasen  <maclas@gmx.de>

	* gtk/tmpl/gtkseparatortoolitem.sgml:
	* gtk/tmpl/gtkradiotoolbutton.sgml:
	* gtk/tmpl/gtktoggletoolbutton.sgml: New templates.

	* gtk/gtk-docs.sgml: Include gtkseparatortoolitem.xml, gtkradiotoolbutton.xml and
	gtktoggletoolbutton.xml.

	* gtk/gtk.types: Add gtk_separator_tool_item_get_type, gtk_radio_tool_button_get_type and
	gtk_toggle_tool_button_get_type.

	* gtk/gtk-sections.txt: Add GtkSeparatorToolItem, GtkRadioToolButton and GtkToggleToolButton
	sections.
2003-07-14 23:09:32 +00:00
Matthias Clasen
a0829aa499 API doc updates. 2003-07-14 22:13:33 +00:00
Matthias Clasen
36121795d9 Add gtk_tool_button_get_type and gtk_tool_item_get_type.
2003-07-13  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtk.types: Add gtk_tool_button_get_type and gtk_tool_item_get_type.

	* gtk/tmpl/gtktoolbutton.sgml:
	* gtk/tmpl/gtktoolitem.sgml:
	* gtk/gtk-docs.sgml:
	* gtk/gtk-sections.txt: Add new toolbar api.

	* gtk/tmpl/gtkdnd.sgml: Remove docs for gtk_drag_begin(), which are now inline.
2003-07-13 20:51:14 +00:00
Matthias Clasen
ba55b6f15b Rename parameter target_list back to targets, to pacify gtk-doc.
2003-07-13  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkdnd.c (gtk_drag_begin): Rename parameter target_list back to targets, to pacify gtk-doc.
2003-07-13 20:50:24 +00:00
Matthias Clasen
b9db8ea3ea New function to load an image from a file at a specified size. (#105326,
2003-07-13  Matthias Clasen  <maclas@gmx.de>

	* gdk-pixbuf.h:
	* gdk-pixbuf-io.c (gdk_pixbuf_new_from_file_at_size): New function to load an image from a file at a
	specified size.  (#105326, Dom Lachowicz)
2003-07-13 19:43:09 +00:00
Soeren Sandmann
c6ce9c1564 Fix leaks of label_text, label_widget and icon_widget. (#117312, Christian
Sun Jul 13 15:57:57 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbutton.c (gtk_tool_button_finalize): Fix leaks of
	label_text, label_widget and icon_widget. (#117312,
	Christian Persch)
2003-07-13 19:29:54 +00:00
Søren Sandmann Pedersen
1a5a17d629 Revert accidentally committed changes. 2003-07-13 02:42:40 +00:00
Søren Sandmann Pedersen
31d6d0aab6 Broken pipe 2003-07-13 02:33:25 +00:00
Soeren Sandmann
d77b4c1448 new properties "horizontal-offset" and "vertical-offset" that determines
Sun Jul 13 01:37:51 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkmenu.c (gtk_menu_class_init): new properties
	"horizontal-offset" and "vertical-offset" that determines the
	position of the menu when it is a submenu.

	* gtk/gtkmenuitem.c (gtk_menu_item_position_menu): position
	submenus according to new vertical- and horizontal-offset
	properties.
2003-07-12 23:25:14 +00:00
Kristian Rietveld
497de299e8 Merged from stable.
Sat Jul 12 16:16:04 2003  Kristian Rietveld  <kris@gtk.org>

	Merged from stable.

	* gtk/gtktreeview.c (gtk_tree_view_drag_data_received): special
	case drags to "0", scroll to the top after dropping. (Fixes #94968,
	reported by Alp Toker).
2003-07-12 14:25:32 +00:00
Kristian Rietveld
c5037bdb50 Merged from stable.
Sat Jul 12 16:08:32 2003  Kristian Rietveld  <kris@gtk.org>

	Merged from stable.

	* demos/gtk-demo/editable_cells.c (cell_edited): fixup bad
	code (#115784, Owen Taylor).
2003-07-12 14:10:31 +00:00
Kristian Rietveld
79fceb3a8b Merged from stable.
Sat Jul 12 16:01:03 2003  Kristian Rietveld  <kris@gtk.org>

	Merged from stable.

	* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property):
	free the old text and extra_attrs *after* we parsed the new
	markup string. (Fixes #114485, reported by Owen Taylor).
2003-07-12 14:04:42 +00:00
Kristian Rietveld
1719b20af4 Merged from stable.
Sat Jul 12 15:51:33 2003  Kristian Rietveld  <kris@gtk.org>

	Merged from stable.

	Fixes #113904, testcase provided by Rene Seindal.

	* gtk/gtktreeview.c (gtk_tree_view_button_press): set
	pressed_button to -1 when a row has been activated,
	(gtk_tree_view_motion_bin_window): only start a drag if there's
	a button being pressed.
2003-07-12 13:58:13 +00:00
Kristian Rietveld
97ddec66d6 Merged from stable.
Sat Jul 12 15:51:18 2003  Kristian Rietveld  <kris@gtk.org>

	Merged from stable.

	* gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): use
	gdk_window_get_pointer instead of gdk_display_get_window_at_pointer
	to avoid a roundtrip (#110272, Owen Taylor).
2003-07-12 13:44:31 +00:00
Kristian Rietveld
e680d2f564 Merged from stable.
Sat Jul 12 15:28:26 2003  Kristian Rietveld  <kris@gtk.org>

	Merged from stable.

	This patch really really fixes scrolling. Related bugs: #81627,
	testcase provided by Timo Sirainen, #111500, testcase provided by
	manu, #113241, reported by Pedro Gimeno/Michael Natterer.

	*  gtk/gtktreeview.c (validate_visible_area): scrolling to a dy
	which is equal to the lower border of the window means scrolling
	to an invisible row, always update the dy when scrolling to an
	invisible row, corrected area_above/below calculations for
	invisible rows, when walking the tree correct the size
	subtracted for invalidated rows, fix wrong logic in comment.
2003-07-12 13:32:00 +00:00
Matthias Clasen
aa013939bf Use g_strfreev() to free mime_types. (#117219, Steve Chaplin)
2003-07-11  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkicontheme.c (pixbuf_supports_svg): Use g_strfreev() to free mime_types.
	(#117219, Steve Chaplin)

	* queryloaders.c (query_module): Handle absolute filenames properly. (#117170, Jens Elkner)

	* gdk-pixbuf-io.c: Mention that NULL-terminated arrays returned by
	gdk_pixbuf_format_get_mime_types() and gdk_pixbuf_format_get_extensions() must be
	freed with g_strfreev().
2003-07-11 20:36:25 +00:00
Owen Taylor
50da0ae808 gdk/x11/gdkevents-x11.c (get_real_window) gdk/x11/gdkinput-x11.c
Tue Jul  8 20:11:04 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkevents-x11.c (get_real_window)
        gdk/x11/gdkinput-x11.c (_gdk_input_common_init)
        gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init)
        gdk/x11/gdkprivate-x11.h (_gdk_windowing_image_init)
        Don't assume that all events start with XEventAny - Xkb events
        don't! (#105745). So, only do that for core events, and for
        non-core events, add a system for registering event types
        that start with XEventAny.

        * gdk/x11/gdkevents-x11.c (gdk_event_translate):
        Check to see if the result of gdk_window_lookup_for_display()
        is actually a window.
2003-07-11 19:57:01 +00:00
Owen Taylor
7f8ae32c1d Add gtk_file_chooser_set_current_name() to set the current entry contents.
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.
2003-07-11 19:18:36 +00:00
Kristian Rietveld
10d77dd6da make the path != NULL check a silent assert, so it follows the g_free()
Fri Jul 11 20:48:14 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreemodel.c (gtk_tree_path_free): make the path != NULL
	check a silent assert, so it follows the g_free() behaviour.
2003-07-11 19:00:25 +00:00
Matthias Clasen
65d5d68524 Add gtkcolorbutton.c and gtkfontbutton.c.
2003-07-11  Matthias Clasen  <maclas@gmx.de>

	* POTFILES.in: Add gtkcolorbutton.c and gtkfontbutton.c.

2003-07-11  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkstatusbar.c (gtk_statusbar_init): Center statusbar contents
	vertically.  (#109823, Joe Shaw)
2003-07-11 18:40:21 +00:00
Morten Welinder
469f6e87a5 Fix memory access error. (#69436)
2003-07-11  Morten Welinder  <terra@gnome.org>

	* gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixbuf): Fix memory
	access error.  (#69436)
2003-07-11 17:32:49 +00:00
Kristian Rietveld
b05ee303e7 (And of course it just had to go wrong. I forgot to commit ChangeLog) 2003-07-11 12:52:51 +00:00
Kristian Rietveld
edef7d00d9 Landing GtkTreeModelFilter and the completion code. (Test program and
Fri Jul 11 14:32:43 2003  Kristian Rietveld  <kris@gtk.org>

	Landing GtkTreeModelFilter and the completion code. (Test program
	and documentation will follow next week).

	* gtk/gtkcellayout.[ch], gtk/gtkentrycompletion.[ch],
	gtk/gtktreemodelfilter.[ch], gtk/gtkentryprivate.h: new files.

	* gtkentry.[ch]: added gtk_entry_{get,set}_completion, wrote
	necessary code to hook up completion.

	* gtktreeviewcolumn.c: made GtkTreeViewColumn implement the new
	GtkCellLayout interface.

	* gtkmarshalers.list: added BOOLEAN:OBJECT,BOXED.

	* gtk/gtk.h, gtk/Makefile.am, po/POTFILES.in: all updated for the new
	source files.
2003-07-11 12:51:24 +00:00
Kristian Rietveld
8aafd6bb16 Merge from stable.
Wed Jul  9 19:48:26 2003  Kristian Rietveld  <kris@gtk.org>

	Merge from stable.

	* gdk/gdkdisplay.c (gdk_display_get_window_at_pointer): don't
	directly return from ->window_at_pointer, but set win_x and win_y
	first if needed. (Fixes #110166, reported by Arno Charlet).

	* gdk/gdkwindow.c (gdk_window_get_composite_drawable): change
	function to accept GdkDrawables and not just GdkWindows. This was
	already done in some other functions a while back, but this patch
	got lost for some reason.
2003-07-09 18:00:21 +00:00
Kristian Rietveld
b960ba4f02 dear cvs, please SHUT UP love, -kris
dear cvs,
  please SHUT UP
love,
  -kris
2003-07-09 17:57:51 +00:00
Matthias Clasen
1f012b369b Consider the text direction when sorting children. (#116540, Soeren
2003-07-09  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcontainer.c (gtk_container_focus_sort_tab): Consider the text direction
	when sorting children.  (#116540, Soeren Sandmann)
2003-07-08 22:49:35 +00:00
Owen Taylor
8500d9458e Change _gdk_x11_send_xevent_async() to
Tue Jul  8 17:36:21 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkasync.[ch] gdk/gdkdnd-x11.c:
        Change _gdk_x11_send_xevent_async() to
        _gdk_x11_send_client_message_async() avoid using Xlib
        internals that are different on Solaris.
        (#116917, Morten Welinder)
2003-07-08 22:27:47 +00:00
Matthias Clasen
4a8650e98b Fix the example. (#116575)
2003-07-08  Matthias Clasen  <maclas@gmx.de>

	* gtk/tmpl/gtkfilesel.sgml: Fix the example.  (#116575)
2003-07-08 21:51:44 +00:00
Matthias Clasen
f7657d313e Doc addition. (#116501, Doug Quale)
2003-07-08  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcontainer.c (gtk_container_remove): Doc addition. (#116501, Doug Quale)
2003-07-08 21:31:09 +00:00
Soeren Sandmann
d523e1a2b1 remove strange #define fix cut'n'paste error use instance private data use
Tue Jul  8 21:35:22 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoggletoolbutton.h: remove strange #define
	* gtk/gtktoolbutton.h: fix cut'n'paste error
	* gtk/gtktoolbutton.c (gtk_tool_button_init): use instance
	private data
	* gtk/gtktoolitem.c (gtk_tool_item_class_init): use instance
	private data instead of g_new0()
	* gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_init): use
	instance private data
2003-07-08 20:28:24 +00:00
Soeren Sandmann
81785924f9 remove GDK_EXPOSURE_MASK for INPUT_ONLY window same same same same
Tue Jul  8 21:10:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkbutton.c (gtk_button_realize): remove GDK_EXPOSURE_MASK
	for INPUT_ONLY window
	* gtk/gtkmenuitem.c (gtk_menu_item_realize): same
	* gtk/gtknotebook.c (gtk_notebook_realize): same
	* gtk/gtkexpander.c (gtk_expander_realize): same
	* gtk/gtkrange.c (gtk_range_realize): same

	Fix #116303
2003-07-08 18:59:16 +00:00
Soeren Sandmann
7913e63f69 remove correction on x when detail is "menuitem". With the new menu look
Tue Jul  8 19:57:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkstyle.c (gtk_default_draw_arrow): remove correction on x
	when detail is "menuitem". With the new menu look is isn't needed
	anymore.

	* gtk/gtktoolitem.c (gtk_tool_item_toolbar_reconfigured): queue a
	resize here, so that tool items will get a chance to relayout
	themselves based on the toolbar configuration.

	change DEFAULT_SPACE_SIZE to 4 instead of 5

	* gtk/gtktoolbar.c
	Get rid of "!GTK_BIN (item)->child means separator". Separators
	are widgets in their own right

	change DEFAULT_SPACE_SIZE to 4 instead of 5

	(get_space_size): remove this function
	(toolbar_item_is_homogeneous): new function

	* gtk/gtkseparatortoolitem.c
	(gtk_separator_tool_item_size_request): new function.

Tue Jul  8 14:10:35 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoggletoolbutton.h: use private data, add new
	internal function _gtk_toggle_tool_button_get_button()

	* gtk/gtktoolbutton.h: move to private data

	* gtk/gtkradiotoolbutton.c, gtk/gtktoolbutton.c: updates for new
	private data.
2003-07-08 18:20:45 +00:00
Soeren Sandmann
b3b16bebcf fix a type check, (#116947, Krasimir Angelov)
Tue Jul  8 12:50:20 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbutton.c (gtk_tool_button_get_icon_widget): fix a
	type check, (#116947, Krasimir Angelov)

	* gtk/gtktoolbar.c: Use new GtkToolItem accessors.

	* gtk/gtktoolitem.[ch]: Use a private struct to hold the instance
	data. Not instance private data yet, because of bug 116921.

	* gtk/gtktoolitem.h: new accessors:
		gtk_tool_item_get_homogeneous ()
		gtk_tool_item_get_expand ()
		gtk_tool_item_get_pack_end ()
		gtk_tool_item_get_use_drag_window ()
2003-07-08 10:58:23 +00:00
Pablo Saratxaga
f74f620ca9 updated Walloon file 2003-07-07 21:12:23 +00:00
Soeren Sandmann
71ff822803 remove accidentally committed debugging spew
Mon Jul  7 16:50:32 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkcellrenderertext.c
	(gtk_cell_renderer_text_class_init): remove accidentally committed
	debugging spew

	* gtk/gtktoolbar.c
	(gtk_toolbar_paint_space_line): remove this function
	(gtk_toolbar_expose): always propagate expose, even if the item is
	a separator item

	* gtk/gtkseparatortoolitem.c
	(gtk_separator_tool_item_expose): moved here from gtktoolbar.c
	(get_space_size): new function.
	(get_space_style): new function
2003-07-07 14:35:31 +00:00
Owen Taylor
c084f54145 gtk/gtkdnd.c (_gtk_drag_source_handle_event) Remove use of
Sun Jul  6 13:00:20 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkdnd.c (_gtk_drag_source_handle_event)
        * gtk/gtkdnd.c (gtk_drag_begin_internal):  Remove use
        of GDK_POINTER_MOTION_HINT_MASK.

        * gtk/gtkdnd.c (gtk_drag_update_idle): Move updating
        of the drag into an idle as a superior form of
        expose compression.

        * gtk/gtkdnd.c (gtk_drag_begin_internal): Move default icon
        creation here, so that we have an icon at the start
        of the drag (e.g., when retrieving the window cache
        information.)
2003-07-06 18:56:44 +00:00
Owen Taylor
d7226f50e6 Move default icon creation here, so that we have an icon at the start of
Sun Jul  6 11:56:48 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkdnd.c (gtk_drag_begin_internal): Move default icon
        creation here, so that we have an icon at the start
        of the drag (e.g., when retrieving the window cache
        information.)
2003-07-06 16:13:11 +00:00
Soeren Sandmann
e9b612a8a1 better drawing of GtkMenuItem add notes about GtkMenu remove leftover
Sun Jul  6 17:21:23 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* docs/widget_geometry.txt: better drawing of GtkMenuItem
	* docs/widget_geometry.txt: add notes about GtkMenu
	* gtk/gtkstyle.c: remove leftover "#include "gtkhandlebox.h""
2003-07-06 15:33:56 +00:00
Soeren Sandmann
c8515b2f8d add vertical_padding style property.
Sat Jul  5 10:34:00 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

        * gtk/gtkmenu.c: add vertical_padding style property.

        * gtk/gtkmenuitem.c: add style properties toggle_spacing,
        arrow_spacing and horizontal_padding. Also center separators and
        make them a bit taller.

        * gtk/*menuitem.c: use new style properties.

        * docs/widget_geometry.txt: Add note about GtkMenuItem

        * gtk/gtkstyle.c
        (gtk_default_draw_vline, gtk_default_draw_hline):
        fix +/-1 errors.

        (gtk_default_draw_shadow): draw a black border around menus.

        * gtk/gtkvseparator, gtk/gtkhseparator.c, gtk/gtkmenuitem.c: fix
        calls to gtk_paint_hline() and gtk_paint_vline() (they take x1,
        x2 and y1, y2 respectively, not x, width and y, height).
2003-07-06 13:14:28 +00:00
Owen Taylor
ba999da1d8 Lookup all the atoms in the target list at once.
Sat Jul  5 09:55:38 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdnd-x11.c (precache_target_list): Lookup
        all the atoms in the target list at once.

        * gdk/x11/gdkdnd-x11.c (gdk_drag_get_protocol_for_display):
        Local drag short-circuit.

        * gdk/x11/gdkdnd-x11.c (gdk_drag_motion): For the
        local case, poke the actions in directly instead of
        going through xdnd_set_actions.

        * gdk/x11/gdkdnd-x11.c (xdnd_read_actions): Short-circuit
        the local case.

        * gdk/x11/gdkdnd-x11.c (xdnd_manage_source_filter): Don't
        XSelectInput()/add a filter if the drag is local.

        * gdk/x11/gdkdnd-x11.c (gdk_drag_get_selection):
        Simplify handling of "XdndSelection".

        * gdk/x11/gdkevents-x11.c (gdk_event_send_client_message_to_all_recurse): Somehow,
        a WM_STATE => _NET_WM_STATE change hand been made here.

        * gdk/x11/gdkproperty-x11.c (_gdk_x11_precache_atoms): Free
        xatom_names, not atom_names.

        * tests/testdnd.c (target_drag_motion): Make the trashcan
        open again. (Got lost in deprecation cleanup.)
2003-07-05 15:02:35 +00:00
Owen Taylor
e5561940f2 Move the grabs up earlier, so we don't get a big pile of uncompressed
Sat Jul  5 00:49:32 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkdnd.c (gtk_drag_begin): Move the grabs up
        earlier, so we don't get a big pile of uncompressed
        motion events before the grab takes effect.

        * gtk/gtkdnd.c (gtk_drag_update_icon): Call
        gdk_window_process_all_updates() so that the area
        we are dragging over gets a change to redraw.

        * gtk/gtkdnd.c (_gtk_drag_dest_handle_event): Use
        gdk_window_get_position(), not gdk_window_get_origin().

        * gdk/x11/gdkwindow-x11.[ch] (gdk_window_have_shape_ext)
        gdkdisplay-x11.h: use XShapeQueryExtension to
        avoid duplicate XQueryExtension when we actually
        use it. Remove unnecessary caching in GdkDisplayX11.
2003-07-05 05:27:11 +00:00
Owen Taylor
58a7f9f72a Function to get a range of information about all the children of a window
Fri Jul  4 23:49:22 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkasync.[ch] (_gdk_x11_get_window_child_info):
        Function to get a range of information about all the
        children of a window in a single pass.

        * gdk/x11/gdkdnd-x11.c (get_client_window_at_coords_recurse)
        gdk/x11/gdkdnd-x11.c (gdk_window_cache_new): Use
        _gdk_x11_get_window_child_info() to greatly reduce
        the number of roundtrips.
2003-07-05 04:22:06 +00:00
Owen Taylor
60149b3275 Add a function to XSendEvent() and call a calback on failure/success.
Fri Jul  4 22:57:18 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkasync.[ch] (_gdk_send_xevent_async): Add
        a function to XSendEvent() and call a calback on
        failure/success.

        * gdk/x11/gdkdnd-x11.c (xdnd_send_xevent): Short-circuit
        messages to the same process, use _gdk_send_xevent_async().
2003-07-05 03:02:21 +00:00
Owen Taylor
8625065817 Split toplevel-specific pieces of GdkWindowImplX11 into a separate
Fri Jul  4 22:26:27 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkwindow-x11.[ch] gdkevents-x11.c: Split
        toplevel-specific pieces of GdkWindowImplX11 into
        a separate GdkToplevelX11 structure.
2003-07-05 02:34:52 +00:00
Owen Taylor
bce0622bd6 Fix some leftover fields.
Fri Jul  4 22:05:09 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkasync.c (struct _SetInputFocusState): Fix
        some leftover fields.
2003-07-05 02:06:04 +00:00
Owen Taylor
9bedbf662d Use asynchronously _gdk_x11_set_input_focus_safe to avoid having to trap
Fri Jul  4 15:57:52 2003  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
	Use asynchronously _gdk_x11_set_input_focus_safe
	to avoid having to trap errors and XSync().

	* gdk/x11/gdkwindow-x11.c (gdk_window_focus): Use
	_gdk_x11_set_input_focus_safe() here as well.

	* gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed):
	Rework handling of property notifies on _NET_WM_STATE
	so that we ignore _NET_WM_DESKTOP notifies unless we
	really care.

	* gdk/x11/gdkimage-x11.c (gdk_image_check_xshm): Use
	XShmQueryExtension() rather than XQueryExtension() to
	avoid extra rountrip.

	* gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_init):
	Remove unused call to XGetWindowAttributes()

	* gdk/x11/gdkdisplay-x11.c (gdk_display_open): Remove
	unused call to XGetKeyboardControl().

	* gdk/x11/gdkdisplay-x11.c gdk/gdk.def (gdk_display_flush):
	Add (#99571)

	* gdk/win32/gdkevents-win32.c gdk/linux-fb/gdkevents-fb.c
	No-op implementations of gdk_display_flush().

	* gdk/gdkwindow.c (gdk_window_process_all_updates): Use
	gdk_display_flush() rather than gdk_flush() to avoid
	XSync().

	* gdk/x11/gdkwindow-x11.c (update_wm_hints)
	gdk/x11/gdkwindow-x11.h: Centralize all handling of WM_HINTS here
	so that we don't have to get the property back from the server.

	* gdk/x11/gdkwindow-x11.c (show_window_internal): Store
	the serial of when we map a toplevel to allow optimizing
	out notifies on _NET_WM_STATE/_NET_WM_DESKTOP.

	* gdk/x11/gdkevents-x11.c (gdk_event_translate): Don't
	XTranslateCoordinates() for override-redirect windows.

Fri Jul  4 15:59:27 2003  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkwindow-x11.c (gdk_window_set_group): Remove comment
	about setting window group after the window is mapped from docs
	- nothing the ICCCM forbids that.

	* gdk/x11/gdkcursor-x11.c (gdk_display_get_maximal_cursor_size):
	Fix g_return_val_if_fail() in void return function.

	* configure.in: Fix misplaced comma that was resulting
	in XShm always being disabled.
2003-07-05 01:54:05 +00:00
Soeren Sandmann
eaab3748ed remove this accidentally committed file.
Fri Jul  4 19:55:49 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* tests/stresstest-toolbar: remove this accidentally committed
	file.

	* tests/stresstest-toolbar.c: really add this new test
2003-07-04 17:38:08 +00:00
Soeren Sandmann
f91ae4ed6f new test for removing items
Fri Jul  4 19:06:31 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* tests/stresstest-toolbar.c: new test for removing items

	* tests/testtoolbar.c: add a popup menu

	* gtk/gtkcontainer.c (gtk_container_remove): add hack to avoid
	  assert widget->parent == container when the container is a
	  toolbar.

	* gtk/gtktoolbar.c (gtk_toolbar_remove_tool_item): Make much
	simpler. Also make correct.

	* gtk/gtktoolbar.c (gtk_toolbar_button_press): make
	popup_context_menu a boolean handled signal.
2003-07-04 16:48:40 +00:00
Tor Lillqvist
aac21b6f6a We can calculate the width and height of the bounding rectangle only after
2003-07-04  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_polygon,
	gdk_win32_draw_segments, gdk_win32_draw_lines): We can calculate
	the width and height of the bounding rectangle only after the
	minumum x and y have been found, and need a separate loop for
	it. Thanks to Bruce Hochstetler for providing a sample program
	exhibiting the bug.
2003-07-04 00:23:03 +00:00
Matthias Clasen
44f044e6cd Support saving ICOs and CURs. 2003-07-03 23:37:34 +00:00
Tor Lillqvist
7b08cb1796 Add gdk_string_to_compound_text_for_display. (#116537, Peter Zelezny)
2003-07-03  Tor Lillqvist  <tml@iki.fi>

	* gdk/gdk.def: Add gdk_string_to_compound_text_for_display.
	(#116537, Peter Zelezny)
2003-07-03 23:16:44 +00:00
Owen Taylor
f728c3d298 Add a test program from gnome-desktop.
* tests/Makefile.am test/testicontheme.c: Add a test
        program from gnome-desktop.
2003-07-03 21:26:35 +00:00
Ross Burton
8f5c1b6a3c Use the theme colours for rubber banding 2003-07-03 13:10:41 +00:00
Soeren Sandmann
1f8942769b Insert cast to fix warning. Assign something to old_value to quiet gcc
Thu Jul  3 03:13:20 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkpaned.c (gtk_paned_set_child_property): Insert cast to
	fix warning. Assign something to old_value to quiet gcc

	* gtk/gtkcalendar.c
	(start_spinning): gtk_timeout_add->g_timeout_add

	* gtk/gtkicontheme.c
	(theme_lookup_icon): Make it compile (remove double semicolon)

	* gtk/gtktoolbutton.c
	(gtk_tool_button_class_init): Long comment about properties.
	(gtk_tool_button_class_init): Improve text for "use_underline"
	property
	(gtk_tool_button_create_menu_proxy): Fix up to use_mnemonic based
	on whether the passed-in label has use_mnemonic set
	(gtk_tool_button_create_menu_proxy): Split image cloning out in
	new function. Make that function also handle image with pixbuf
	storage.
	(gtk_tool_button_construct_contents): Use gtk_widget_destroy()
	instead of gtk_container_remove().
	(gtk_tool_button_construct_contents): Fix eliding bug

	* gtk/gtktoolbar.c
	(gtk_toolbar_finalize): New function. Unref tooltips, pointed out
	by Morten Welinder
	(gtk_toolbar_button_press): Make popup_context_menu signal provide
	coordinates and button number

	* tests/testtoolbar.c (main): Add new pixbuf toolbutton

	* tests/apple-red.png: new file
2003-07-03 01:02:04 +00:00
Owen Taylor
9e3f0c6f5f Document named icon system.
Wed Jul  2 18:15:21 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/Makefile.am gtk/gtk-docs.sgml gtk/gtksections.txt
        gtk/tmpl/gtkicontheme.sgml: Document named icon system.

        * gtk/tmpl/gtkrc.sgml: Mention specifying named icons
        as @"icon-name".

        * gtk/tmpl/gtkimage.sgml: Add a cross-reference to stock
        icons.
2003-07-02 22:45:30 +00:00
Owen Taylor
9adac9b2fa add gtkicontheme.c
Wed Jul  2 18:00:32 2003  Owen Taylor  <otaylor@redhat.com>

        * POTFILES.in: add gtkicontheme.c
2003-07-02 22:44:25 +00:00
Owen Taylor
a72aed4ea2 Implement a loader for named themed icon based on from gnome-desktop
Wed Jul  2 18:00:56 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkicontheme.[ch]: Implement a loader for
        named themed icon based on from gnome-desktop library
        by Alex Larsson.

        * gtk/gtkiconthemeparser.[ch]: .ini file parsing code
        from gnome-desktop.

        * gtk/gtkiconfactory.[ch]: Add
        gtk_icon_source_set/get_icon_name() to allow stock icons
        to be based off of named theme icons.

        * gtk/gtkiconfactory.c: Rework sources so that the source
        is *either* a pixbuf, or a filename, or an icon name,
        instead of the pixbuf/filename mix it was before. Put a
        workaround for get_pixbuf() so that it can return the
        filename pixbuf, e.g, for render_icon().

        * gtk/gtkiconfactory.c: Make the default setup use
        themed icons, and add builtin icons to the default
        icon theme for all the standard pixbufs, so we
        don't rely on actually having an icon theme on disk.

        * gtk/gtkrc.c: Add support for @"icon-name" to specify
        a themed icon for a stock icon source.

        * tests/Makefile.am test/testicontheme.c: Add a test
        program from gnome-desktop.

        * gdk/x11/gdkevents-x11.c gtk/gtksettings.c: Add
        Net/IconThemeName / gtk-icon-theme-name setting.

        * gtk/gtkiconfactory.c (ensure_cache_up_to_date): Actually
        update the icon cache serial so we don't continually

        * gtk/gtkwidget.c: Fix a couple of references in doc comments
        to ::direction_set that should have been to ::direction-changed
2003-07-02 22:44:09 +00:00
Owen Taylor
8982aa6723 Attach the style to the widget.
Wed Jul  2 14:45:41 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktoolbar.c (gtk_toolbar_realize): Attach the
        style to the widget.
2003-07-02 18:56:35 +00:00
Soeren Sandmann
2669847342 Add new toolbar headers
Wed Jul  2 15:42:26 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtk.h: Add new toolbar headers

	* tests/testtoolbar.c: new file

	* tests/Makefile.am (noinst_PROGRAMS): Add testtoolbar.c

	* gtk/gtkexpander.c (gtk_expander_class_init): Make it compile

Tue Jul  1 22:49:25 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c:
	(gtk_toolbar_remove_tool_item): Fix bug where list is changed
	inside a for loop (pointed out by Morten Welinder).
	(gtk_toolbar_focus_home_or_end): Minor formatting change

	Comments from Owen:

	* gtk/gtktoolbutton.c: remove copy of elide_underscores(). Use
	gtk_toolbar_elide_underscores instead.

	* gtk/gtktoolbar.c: rename signal from focus_ends to
	focus_home_or_end.
	(_gtk_toolbar_elide_underscores): export this as an internal
	function.
	(gtk_toolbar_move_focus): add comment explaining difference to
	gtk_toolbar_focus();
	(gtk_toolbar_list_children_in_focus_order): Make TAB_FORWARD and
	TAB_BACKWARD focus the right widgets in RTL mode

	* gtk/gtktoolbutton.c (gtk_tool_button_new): Change to take
	"label" and "icon" parameters

	* gtk/gtktoolbutton.[ch]: remove icon_set property.
2003-07-02 14:04:43 +00:00
Matthias Clasen
39f5280dcb Improve docs. (116364, Morten Welinder)
2003-07-01  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkspinbutton.c (gtk_spin_button_set_digits): Improve docs.  (116364, Morten Welinder)
2003-07-01 20:49:01 +00:00
Matthias Clasen
a12306e621 Add a test for GtkFontButton and GtkColorButton. 2003-07-01 20:02:31 +00:00
Matthias Clasen
7fa24c92de New docs for new widgets. 2003-07-01 19:59:59 +00:00
Matthias Clasen
b0b5e9f90f Add color and font picker widgets. 2003-07-01 19:52:07 +00:00
Matthias Clasen
7f5968aa07 Add GtkExpander docs. 2003-07-01 19:46:22 +00:00
Tor Lillqvist
f976beaf41 WindowFromPoint() wants screen coordinates (#115422, Tim Evans).
2003-07-01  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkwindow-win32.c (_gdk_windowing_window_get_pointer):
	WindowFromPoint() wants screen coordinates (#115422, Tim Evans).
2003-07-01 11:14:46 +00:00
Matthias Clasen
7de2603d95 Add gdk_cursor_new_from_pixbuf(), gdk_display_supports_cursor_alpha(),
2003-07-01  Matthias Clasen  <maclas@gmx.de>

	* gdk/gdk-sections.txt: Add
	gdk_cursor_new_from_pixbuf(), gdk_display_supports_cursor_alpha(),
	gdk_display_supports_cursor_color(), gdk_display_get_default_cursor_size() and
	gdk_display_get_maximal_cursor_size().
2003-06-30 22:32:06 +00:00
Matthias Clasen
eb7135adb5 Check for Xcursor.
2003-07-01  Matthias Clasen  <maclas@gmx.de>

	* configure.in: Check for Xcursor.

	* gdk/x11/gdkcursor-x11.c:
	* gdk/gdkdisplay.h:
	* gdk/gdkcursor.h: RGBA cursor support based on Xcursor. New functions:
	gdk_cursor_new_from_pixbuf(), gdk_display_supports_cursor_alpha(),
	gdk_display_supports_cursor_color(), gdk_display_get_default_cursor_size() and
	gdk_display_get_maximal_cursor_size().  (#69436)
2003-06-30 22:30:54 +00:00
Tor Lillqvist
33902a67f0 New function, callback proc for EnumWindows().
2003-06-30  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkdnd-win32.c (find_window_enum_proc): New function,
	callback proc for EnumWindows().
	(gdk_drag_find_window_for_screen): Actually take the drag_window
	argument into account: Instead of using WindowFromPoint(), use
	EnumWindows(), to be able to skip the drag_window. (#116320, Tony
	M Brown, Herman Bloggs)

	* gdk/win32/*.c: Replace gdk_drawable_ref()/unref() and
	gdk_window_ref()/unref() calls with g_object_ref()/unref().
	Consistently use %p format in debugging output of pointers and
	HANDLEs.
2003-06-30 21:58:24 +00:00
Mark McLoughlin
c921fdf53b kill some stray characters breaking the build.
2003-06-30  Mark McLoughlin  <mark@skynet.ie>

        * gtk/gtkexpander.h: kill some stray characters
        breaking the build.
2003-06-30 13:10:12 +00:00
Mark McLoughlin
281a95549c Add GtkExpander. See discussion in bug #60553.
2003-06-30  Mark McLoughlin  <mark@skynet.ie>

        Add GtkExpander. See discussion in bug #60553.

        * gtk/gtkexpander.[ch]: add.

        * gtk/Makefile.am: build gtk-expander.[ch].

        * docs/widget_geometry.txt: add info on the layout
        of GtkExpander.
2003-06-30 12:57:57 +00:00
Mohammad DAMT
453bf966a6 Updated Indonesian translation
2003-06-30  Mohammad DAMT  <mdamt@bisnisweb.com>

	* id.po: Updated Indonesian translation
2003-06-30 03:42:25 +00:00
Soeren Sandmann
fa336d283a gtkradiotoolbutton.c gtkradiotoolbutton.h gtktoggletoolbutton.c
Mon Jun 30 01:20:19 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtkradiotoolbutton.c
	* gtkradiotoolbutton.h
	* gtktoggletoolbutton.c
	* gtktoggletoolbutton.h
	* gtktoolbutton.c
	* gtktoolbutton.h
	* gtktoolitem.c
	* gtktoolitem.h
	* gtktoolbar.c
	* gtktoolbar.h
	* gtkseparatortoolitem.c
	* gtkseparatortoolitem.h

	New toolbar.
2003-06-29 23:34:20 +00:00
Matthias Clasen
8de1773384 Additions. 2003-06-29 22:32:32 +00:00
Matthias Clasen
2074c53819 More formatting fixes for docs. 2003-06-29 21:16:06 +00:00
Matthias Clasen
1249d82acb Doc comment fix. 2003-06-29 20:28:14 +00:00
Pablo Saratxaga
eb136ac91b updated Walloon file 2003-06-29 09:20:33 +00:00
Matthias Clasen
4d3c01795c Stop discriminating against 32bpp ICOs a): Use the byte size of the image
2003-06-28  Matthias Clasen  <maclas@gmx.de>

	* io-ico.c (DecodeHeader): Stop discriminating against 32bpp ICOs a): Use the byte
	size of the image as a heuristic when selecting the bitmap  to load - this lets us
	select 32bpp bitmaps which come after a 8bpp bitmap.
	(OneLineTransp): Stop discriminating against 32bpp ICOs b): Don't overwrite the
	alpha channel of 32bpp ICOs.
	(gdk_pixbuf__ico_image_load_increment): Stop decoding the header unnecessarily.
2003-06-28 20:04:18 +00:00
Tor Lillqvist
323bcc614d Fix for #111028, thanks to J. Ali Harlow, who writes: I found that the
2003-06-28  Tor Lillqvist  <tml@iki.fi>

	Fix for #111028, thanks to J. Ali Harlow, who writes:
	I found that the GdkPixmap->GdkImage reference really isn't
	important. It's only really there to have somewhere convenient to
	store the location of the pixel data in the pixmap and as an easy
	way of accessing the dimensions of that data. I have therefore put
	together a fix which removes this reference entirely which seems
	to solve the problem.

	* gdk/win32/gdkpixmap-win32.h (struct _GdkPixmapImplWin32):
	Instead of a pointer to a GdkImage, keep a pointer to the pixels
	directly.

	* gdk/win32/gdkimage-win32.c (_gdk_win32_setup_pixmap_image): Remove.
	(_gdk_win32_new_image): New function, replacing the above. Creates
	a GdkImage without any associated GdkPixmap.
	(gdk_image_new_bitmap, _gdk_image_new_for_depth): Use it instead.

	* gdk/win32/gdkprivate-win32.h: Remove from here, too.

	* gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap)
	* gdk/win32/gdkdrawable-win32.c (blit_from_pixmap)
	* gdk/win32/gdkgc-win32.c (_gdk_win32_bitmap_to_hrgn)
	* gdk/win32/gdkmain-win32.c (_gdk_win32_drawable_description):
	* gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize,
	gdk_pixmap_new, gdk_bitmap_create_from_data, gdk_pixmap_foreign_new)
	Corresponding changes.
2003-06-28 01:12:51 +00:00
Soeren Sandmann
8597f10089 Make it compile with C89 compilers.
Fri Jun 27 03:56:59 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite): Make
	it compile with C89 compilers.

Thu Jun 26 21:41:16 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktreeviewcolumn.c
	(gtk_tree_view_column_cell_set_cell_data): only set "is_expander"
	and "is_expanded" if the new value is different fromt he old one.
2003-06-27 02:38:44 +00:00
BST 2003 Tony Gale
74275373e0 Fix typos. Update thread example I missed yesterday.
Wed Jun 25 18:59:15 BST 2003  Tony Gale <gale@gtk.org>

        * docs/faq/gtk-faq.sgml: Fix typos. Update
        thread example I missed yesterday.
2003-06-25 18:01:14 +00:00
Fatih Demir
010fa9a5da Update 2003-06-25 01:47:25 +00:00
Matthias Clasen
3ec234a6c5 Add a blurb for shadow_type.
2003-06-24  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkspinbutton.c (gtk_spin_button_class_init): Add a blurb for shadow_type.

	* gtk/gtkwidget.c (gtk_widget_class_install_style_property_parser):
	(gtk_widget_class_list_style_properties): Use same parameter names as in
	header (to silence gtk-doc).

	* gtk/gtkalignment.c (gtk_alignment_[gs]et_padding): Fix doc comments.
2003-06-24 21:55:40 +00:00
BST 2003 Tony Gale
7395e4dacd Thread support updates from Owen. Various suggestions from Steve Chaplin.
Tue Jun 24 20:00:45 BST 2003  Tony Gale <gale@gtk.org>

        * docs/faq/gtk-faq.sgml: Thread support updates
        from Owen. Various suggestions from Steve Chaplin.
2003-06-24 19:02:52 +00:00
Mohammad DAMT
2baea29719 Updated Indonesian translation
2003-03-24  Mohammad DAMT  <mdamt@bisnisweb.com>

	* id.po: Updated Indonesian translation
2003-06-24 04:40:24 +00:00
Matthias Clasen
d927f2a26c Move GtkIMContext to "Abstract Base Classes", since its abstract.
2003-06-24  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtk-docs.sgml: Move GtkIMContext to "Abstract Base Classes", since its abstract.

	* gtk/tmpl/gtkaccessible.sgml:
	* gtk/tmpl/gtkimmulticontext.sgml:
	* gtk/tmpl/gtkimcontextsimple.sgml:
	* gtk/tmpl/gtkimcontext.sgml:
	* gtk/tmpl/gtkviewport.sgml:
	* gtk/tmpl/gtkcellrenderertext.sgml:
	* gtk/tmpl/gtkcellrendererpixbuf.sgml:
	* gtk/tmpl/gtkcelleditable.sgml:
	* gtk/tmpl/gtktreemodelsort.sgml:
	* gtk/tmpl/gtktreednd.sgml:
	* gtk/tmpl/gtktreesortable.sgml: Add short descriptions.
2003-06-23 22:59:01 +00:00
Matthias Clasen
87d528d71c Add RTL variants of stock icons.
2003-06-23  Matthias Clasen  <maclas@gmx.de>

	* gtk/Makefile.am (HTML_IMAGES): Add RTL variants of stock icons.

	* gtk/tmpl/gtkstock.sgml: Document RTL variants of stock icons.
2003-06-23 21:51:44 +00:00
Matthias Clasen
3806847935 Remove the pointless refusal to load images with dubious disposal mode on
2003-06-23  Matthias Clasen  <maclas@gmx.de>

	* io-gif.c (gif_get_frame_info): Remove the pointless refusal to load images with dubious
	disposal mode on the first frame. Just ignore it, as everybody else does.
2003-06-23 20:20:15 +00:00
Matthias Clasen
e7444133cb Typo fix. 2003-06-22 19:42:13 +00:00
Matthias Clasen
de07fd2a7e Add gdk_pixbuf_loader_new_with_mime_type.
2003-06-22  Matthias Clasen  <matthias@localhost.localdomain>

	* gdk-pixbuf/gdk-pixbuf-sections.txt: Add gdk_pixbuf_loader_new_with_mime_type.
2003-06-22 19:08:12 +00:00
Matthias Clasen
a378391aaa Reset block_count to 0 for all application extensions, otherwise the data
2003-06-22  Matthias Clasen  <matthias@localhost.localdomain>

	* io-gif.c (gif_get_extension): Reset block_count to 0 for all application extensions, otherwise the data blocks
	of unknown extensions are not propertly skipped.

	Second half of the fix for #106962, handle frames extending beyond the logical screen:

	* io-gif.c (clip_frame): New helper function to clip a rectangle to the logical screen size of the gif.
	(maybe_update): New helper function to call update_func only if the rectangle is not completely off-bounds.
	(gif_get_lzw): Read frames extending outside the logical screen size, but be careful clip to the logical screen size
	when operating on the composite pixbuf and when calling update_func.
	(gif_init): Set the animation size to the logical screen size.
	(gif_get_frame_info): Don't refuse to load images with frames extending beyond the logical screen size.

	* io-gif-animation.c (gdk_pixbuf_gif_anim_frame_composite): Be careful to clip all rectangles to the logical screen
	size, also handle the fact that frames may be completely off-bounds.
2003-06-22 18:08:33 +00:00
Metin Amiroff
1a3ba4fde0 Updated Azerbaijani translation.
2003-06-22  Metin Amiroff <metin@karegen.com>

	* az.po: Updated Azerbaijani translation.
2003-06-22 14:36:08 +00:00
Tor Lillqvist
7bd1444723 Mention dup'd bug#s. 2003-06-22 00:56:49 +00:00
Tor Lillqvist
25359a2a06 When emulating X11's automatic grab on button down, pass owner_events as
2003-06-21  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkevents-win32.c (gdk_event_translate): When
	emulating X11's automatic grab on button down, pass owner_events
	as FALSE. According to the XLib spec, automatic grabs use True for
	owner_events when OwnerGrabButtonMask is selected, and I don't see
	the X11 backend doing that. (#110271)
	(find_window_for_pointer_event): Improve debugging output.
2003-06-22 00:21:03 +00:00
Matthias Clasen
d77e5a3341 Merge from 2.2 2003-06-21 00:46:49 +00:00
Matthias Clasen
4c6bcae486 Another question. 2003-06-18 22:41:06 +00:00
Matthias Clasen
247c311bd8 Add a question about changing fonts. (#114747)
2003-06-19  Matthias Clasen  <maclas@gmx.de>

	* gtk/question_index.sgml: Add a question about changing fonts.
	(#114747)
2003-06-18 22:08:42 +00:00
Tor Lillqvist
36485f1ce1 Look for DLLs also in the bin subdirectory, where libtool 1.5 installs
2003-06-17  Tor Lillqvist  <tml@iki.fi>

	* gtk-zip.sh.in (DLLDIR): Look for DLLs also in the bin
	subdirectory, where libtool 1.5 installs them.

	* README.win32: Point to FSF's binary Win32 distribution of
	gettext-runtime.
2003-06-17 23:49:40 +00:00
Dmitry Mastrukov
6fa19beb31 ru.po: Updated Russian translation from Russian team <gnome-cyr@gnome.org>. 2003-06-17 09:24:54 +00:00
Matthias Clasen
fcffe5a1ab Add rule to regenerate man pages from Docbook. (man_MANS): Add
2003-06-17  Matthias Clasen  <maclas@gmx.de>

	* gdk-pixbuf/Makefile.am: Add rule to regenerate man pages from
	Docbook.
	(man_MANS): Add gdk-pixbuf-csource.1, gdk-pixbuf-query-loaders.1.
	(content_files): Add gdk-pixbuf-csource.xml,
	gdk-pixbuf-query-loaders.xml.

	* gdk-pixbuf/gdk-pixbuf-csource.xml: New refentry, containing the
	former gdk-pixbuf/gdk-pixbuf-csource.1, converted to Docbook.

	* gdk-pixbuf/gdk-pixbuf-query-loaders.xml: New refentry.

	* gdk-pixbuf/gdk-pixbuf-csource.1:
	* gdk-pixbuf/gdk-pixbuf-query-loaders.1: Man pages generated from
	the .xml sources.

	* gdk-pixbuf/gdk-pixbuf.sgml: Include gdk-pixbuf-csource.xml and
	gdk-pixbuf-query-loaders.xml.

	* gtk/Makefile.am: Add rule to regenerate man pages from Docbook.
	(man_MANS): Add gtk-query-immodules-2.0.1
	(content_files): Add gtk-query-immodules-2.0.xml

	* gtk/gtk-query-immodules-2.0.xml: New refentry.

	* gtk/gtk-query-immodules-2.0.1: Man page generated from the .xml
	source.

	* gtk/gtk-docs.sgml: Include gtk-query-immodules-2.0.xml.


	* acinclude.m4 (JH_PATH_XML_CATALOG, JH_CHECK_XML_CATALOG): New
	macros to check for XML catalog contents and path, borrowed from
	gtk-doc.
	* configure.in: New option --enable-man to enable regeneration of
	man pages from Docbook, if the necessary tools are found.
2003-06-17 00:37:28 +00:00
Matthias Clasen
5e4a3fbab1 Add autogenerated indices.
2003-06-17  Matthias Clasen  <mc2@YAST_ASK>

	* gtk/gtk-docs.sgml:
	* gdk-pixbuf/gdk-pixbuf.sgml:
	* gdk/gdk-docs.sgml: Add autogenerated indices.
2003-06-16 23:19:37 +00:00
Matthias Clasen
ec280c7b32 Document new properties as 2.4 additions.
2003-06-15  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcalendar.c (gtk_calendar_class_init):
	* gtk/gtknotebook.c (gtk_notebook_class_init):
	* gtk/gtkalignment.c (gtk_alignment_class_init):
	* gtk/gtkpaned.c (gtk_paned_class_init): Document new properties
	as 2.4 additions.

	* gtk/gtkwidget.c (gtk_widget_class_init): Move inline signal docs
	to the proper place, immediately before the g_signal_new() call.

	* gtk/gtktextiter.h: Make the flags-nature of GtkTextSearchFlags
	more obvious.  (#115122, Jeff Franks)
2003-06-14 22:27:14 +00:00
Christian Rose
ee9683ceec Updated Swedish translation.
2003-06-14  Christian Rose  <menthos@menthos.com>

	* sv.po: Updated Swedish translation.
2003-06-14 14:24:59 +00:00
Pablo Gonzalo del Campo
1da6506621 Updated Spanish translation by Francisco Javier F. Serrador
2003-06-12  Pablo Gonzalo del Campo  <pablodc@bigfoot.com>

        * es.po: Updated Spanish translation by
                 Francisco Javier F. Serrador <serrador@arrakis.es>.
2003-06-12 21:54:45 +00:00
Anders Carlsson
79895e30d3 Special case pixmaps. (#114880)
2003-06-12  Anders Carlsson  <andersca@codefactory.se>

	* gtk/gtkwidget.c: (event_window_is_still_viewable):
	Special case pixmaps. (#114880)
2003-06-12 20:49:18 +00:00
Matthias Clasen
ce294c13a6 Fix some typos.
2003-06-11  Matthias Clasen  <maclas@gmx.de>

	* gtk/tmpl/gtkdnd.sgml: Fix some typos.
2003-06-11 23:12:17 +00:00
Matthias Clasen
54de319059 Document child-notify and drag-data-received signals. Owen, we need to
2003-06-12  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkwidget.c: Document child-notify and drag-data-received
	signals. Owen, we need to figure out where the best place for
	these comments in the source is. I currently put them in front of
	the signals enum.
2003-06-11 23:10:28 +00:00
Kristian Rietveld
9d7deb84ca silly typo fix. s/seperator/separator/. This gets rid of the assert spam
Thu Jan 12 01:01:19 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
	silly typo fix. s/seperator/separator/. This gets rid of the
	assert spam when using TreeView.
2003-06-11 23:02:34 +00:00
Dmitry Mastrukov
eacaad7713 ru.po: Updated Russian translation from Russian team <gnome-cyr@gnome.org>. 2003-06-11 09:30:40 +00:00
Pablo Gonzalo del Campo
af562a29b5 Updated Spanish translation by Juan Manuel García Molina
2003-06-10  Pablo Gonzalo del Campo  <pablodc@bigfoot.com>

	* es.po: Updated Spanish translation by
                 Juan Manuel García Molina <juanma_gm@wanadoo.es>.
2003-06-10 19:18:16 +00:00
Hidetoshi Tajima
66933a6bdd New function for XIM instantiate callback. New function where call to
Tue Jun 10 11:23:48 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>

	* modules/input/gtkimcontextxim.c (xim_instantiate_callback): New
	function for XIM instantiate callback.
	* modules/input/gtkimcontextxim.c (xim_info_try_im): New function
	where call to XOpenIM() or XRegisterIMInstantiateCallback() is
	actually made.
	* modules/input/gtkimcontextxim.c (xim_destroy_callback): New function
	for XIM's destroy callback.
	* modules/input/gtkimcontextxim.c (get_im): add a check if info->im
	is set or not - if it's not set, call xim_info_try_im() to try to
	initiaize it.
	* modules/input/gtkimcontextxim.c (reinitialize_ic): reset
	filter_key_release flag of the context.
	* modules/input/gtkimcontextxim.c (get_ic_real): removed
	* modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic): move
	code from the removed get_ic_real().

	For XIM instantiation, destruction and re-instantiation. With
	this, Gtk+ apps will be able to connect or reconnect to the XIM,
	when it starts after the apps, or when the XIM gets lost and recover.
	(#113099, #107782).
2003-06-10 18:24:29 +00:00
Kristian Rietveld
801531ca88 Merged from stable.
Mon Jun 10 01:12:31 2003  Kristian Rietveld  <kris@gtk.org>

	Merged from stable.

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_get_size):
	check if width is !null, not *width. Doh.
2003-06-09 23:12:46 +00:00
Kristian Rietveld
bf2e5fc154 Merged from stable.
Tue Jun 10 01:09:33 2003  Kristian Rietveld  <kris@gtk.org>

	Merged from stable.

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
	Remove the weird dx logic, get all cell_area and background_area
	calculations right. Not sure what was up with it before. (Fixes
	#110989, testcase from Vasco Alexandre da Silva Costa).
2003-06-09 23:10:20 +00:00
Soeren Sandmann
171fd90cd3 Make it compile with C89 compilers
Tue Jun 10 00:58:23 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* tests/testgtk.c: Make it compile with C89 compilers
2003-06-09 22:50:54 +00:00
Matthias Clasen
31d85b7ed0 Add gtk_text_view_[gs]et_overwrite().
2003-06-10  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtk-sections.txt: Add gtk_text_view_[gs]et_overwrite().
2003-06-09 22:26:55 +00:00
Matthias Clasen
056bd0092d Install boolean property "overwrite". (gtk_text_view_[gs]et_property):
2003-06-10  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktextview.c (gtk_text_view_class_init): Install boolean
	property "overwrite".
	(gtk_text_view_[gs]et_property): Handle "overwrite".
	* gtk/gtktextview.[hc] (gtk_text_view_[gs]et_overwrite): Getter
	and setter for "overwrite" property.  (#110241, Jeroen Zwartepoorte)
2003-06-09 22:25:00 +00:00
Matthias Clasen
4363aee1b1 Install boolean child properties "resize" and "shrink".
2003-06-09  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkpaned.c (gtk_paned_class_init): Install boolean child
	properties "resize" and "shrink".
	(gtk_paned_[gs]et_child_property): Implementations of
	GtkContainer::[gs]et_child_property.
	* tests/testgtk.c (toggle_resize, toggle_shrink): Use the new
	paned child properties instead of remove/add hacks.  (#114667,
	Soeren Sandmann)
2003-06-09 22:04:34 +00:00
Owen Taylor
cf56667494 Back out event->window test - it wasn't needed because of the call to
Mon Jun  9 16:18:11 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtknotebook.c (gtk_notebook_button_press): Back
        out event->window test - it wasn't needed because
        of the call to get_widget_coordinates().

        * gtk/gtknotebook.c (gtk_notebook_button_press): Remove
        call to gtk_widget_grab_focus() when not clicking on
        any tabs. (Real fix for #114534)
2003-06-09 20:29:16 +00:00
Owen Taylor
85d8c33706 Use application/x-rootwindow-drop for root window drops. (#108670, Alex
Sun Jun  8 22:03:09 2003  Owen Taylor  <otaylor@redhat.com>

        * tests/testdnd.c: Use application/x-rootwindow-drop for
        root window drops. (#108670, Alex Larsson)

        * gdk/x11/gdkdnd-x11.c (gdk_drag_motion) gtk/gtkdnd.c (gtk_drag_drop):
        Accept either application/x-rootwin-drop (what GTK+ has always used)
        or application/x-rootwindow-drop (what the XDND standard specifies).
2003-06-09 02:13:42 +00:00
Owen Taylor
075958ac88 Before delivering an event to a widget, check that (if relevant), the
Fri Jun  6 11:07:33 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwidget.c (event_window_still_viewable):
        Before delivering an event to a widget, check that
        (if relevant), the event's window is still viewable.
        (#105642, Dennis Björklund)

        * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy):
        NULL out private->parent, since after destruction
        it might not be valid any more.

        * gdk/gdkwindow.c (gdk_window_is_viewable): Fix some
        accesses before g_return_val_if_fail(). Treat
        DESTROYED windows as unmapped.
2003-06-09 01:55:01 +00:00
Owen Taylor
0815e69c8e Recompute unconditionally in gtk_entry_style_set, and in a new
Thu Jun  5 09:28:03 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkentry.c: Recompute unconditionally in
        gtk_entry_style_set, and in a new gtk_label_screen_changed().
        Protect the guts of recompute_idle_func() with
        gtk_widget_has_screen(). (#114040, Morten Welinder)
        Fix FALSE/0 confusion.
2003-06-08 17:43:15 +00:00
Soeren Sandmann
d94c09a118 swap G and B. Fixes (#114669)
Sun Jun  8 18:27:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gdk/gdkpixbuf-drawable.c (G8fromRGB565): swap G and B.
	Fixes (#114669)
2003-06-08 16:15:16 +00:00
Owen Taylor
16400b3a1a Fix bug with set_adjustment (viewport, NULL);
Sun Jun  8 11:27:29 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkviewport.c (viewport_set_adjustment): Fix bug with
        set_adjustment (viewport, NULL);
2003-06-08 15:34:30 +00:00
Matthias Clasen
d3ba9631d0 Add rtl variants of undo, redo, undelete and revert. (#96633)
2003-06-07  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkiconfactory.c (get_default_icons):
	* gtk/stock-icons/stock_{undo,redo,undelete,revert}_rtl_{16,24}.png:
	* gtk/stock-icons/Makefile.am: Add rtl variants of undo, redo,
	undelete and revert.  (#96633)
2003-06-07 09:38:36 +00:00
Owen Taylor
0b7c616a24 Many fixes, along with extensive cleanups and refactoring of code to
Fri Jun  6 16:25:44 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkviewport.c: Many fixes, along with extensive cleanups and
        refactoring of code to reduce duplication; fixes include:

        - gtk_viewport_realize(): Position the window correct from adjustment
        values. (#110737, Michael Natterer)

        - Remove some division-by-zero checks in places where there is no
        longer division. (#110737)

        - gtk_viewport_class_init: Make the hadjustment/vadjustment properties
        G_PARAM_CONSTRUCT, so that there will always be adjustments, even
        if gtk_viewport_new isn't used (#101135, Thomas Leonard).

        - Switch over to encapsulated lazy-creation for hadjustment/
        vadjustment; even with the CONSTRUCT property, we need this after
        destroy.

        - When updating the adjustment, immediate set their values to
        match the the current range of the viewport, and update the
        viewport position to match the value of the new adjustments.
        (Part of #1165
2003-06-06 23:08:14 +00:00
Tor Lillqvist
f91ae98003 Fix typo.
2003-06-06  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkprivate-win32.h: Fix typo.
2003-06-06 23:06:29 +00:00
Tor Lillqvist
37ccf562d7 Set graphics_exposures and subwindow_mode, too, even if they aren't
2003-06-06  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Set
	graphics_exposures and subwindow_mode, too, even if they aren't
	currently used.
2003-06-06 22:55:55 +00:00
Kristian Rietveld
e0e04dd847 Merged from stable.
Fri Jun  6 23:38:23 2003  Kristian Rietveld  <kris@gtk.org>

	Merged from stable.

	* gtk/gtktreeview.c (do_expand_collapse),
	(expand_collapse_timeout), (cancel_arrow_animation): made
	expand_collapse_timeout a wrapper with locks around
	do_expand_collapse, made cancel_arrow_animation use
	do_expand_collapse. Fixes threadlock. (Fixes #111286, patch from
	Peter Bloomfield).
2003-06-06 21:42:52 +00:00
Hidetoshi Tajima
16191e5274 Add a 'finalizing' flag to keep preedit-[start,changed,end] signals from
Fri Jun  6 11:05:45 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>

	* modules/input/gtkimcontextxim.h (struct _GtkIMContextXIM):
	* modules/input/gtkimcontextxim.c (preedit_start_callback,
	preedit_draw_callback, preedit_done_callback): Add a 'finalizing' flag
	to keep preedit-[start,changed,end] signals from being called during
	finalization (#111861).
2003-06-06 19:42:10 +00:00
Noah Levitt
e793749779 Ignore button presses that are not on the tab (#114534).
2003-06-05  Noah Levitt  <nlevitt@columbia.edu>

	* gtk/gtknotebook.c (gtk_notebook_button_press): Ignore button
	presses that are not on the tab (#114534).
2003-06-06 02:00:45 +00:00
Owen Taylor
ff5da26286 Conditionalize deendencies for gdk-pixbuf-csource on cross-compilation
Thu Jun  5 20:35:40 2003  Owen Taylor  <otaylor@redhat.com>

        * demos/Makefile.am: Conditionalize deendencies for
        gdk-pixbuf-csource on cross-compilation (#112391, J. Ali Harlowe).
        Buildtest-inline-pixbufs.h in srcdir. Don't try to build
        test-inline-pixbufs.h if we don't have libpng.

        * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h):
        Add a dependency on gdk-pixbuf.loaders when not
        cross-compiling, remove the dependency on gdk-pixbuf-csource
        when not cross compiling.
2003-06-06 00:52:20 +00:00
Owen Taylor
d4ed293db4 Handle gtk_window_get_geometry_info() returning NULL. (#107311, John
Thu Jun  5 20:12:51 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_get_default_size): Handle
        gtk_window_get_geometry_info() returning NULL.
        (#107311, John Finlay)
2003-06-06 00:17:48 +00:00
Owen Taylor
27c08ab4b0 Subtract off twice the border width from the width/height, not 1x the
Thu Jun  5 19:24:33 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktoolbar.c (gtk_toolbar_expose): Subtract off
        twice the border width from the width/height, not
        1x the border width. (#106336, Rodney Dawes)
2003-06-05 23:37:03 +00:00
Owen Taylor
9cb6de1fa5 If at the end of the buffer, move to the end iter - parallels behavior of
Thu Jun  5 15:33:38 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
        If at the end of the buffer, move to the end iter -
        parallels behavior of move_iter_to_previous_line.
        (#81960, Padraig O'Briain)
2003-06-05 23:08:48 +00:00
Owen Taylor
6bbdea92f7 #80023, Yao Zhang, TOKUNAGA Hiroyuki
Thu Jun  5 16:12:54 2003  Owen Taylor  <otaylor@redhat.com>

        #80023, Yao Zhang, TOKUNAGA Hiroyuki

        * gtk/gtktextlayout.c (gtk_text_layout_get_cursor_locations):
        Account for the preedit cursor offset if the iter passed
        in is at the same place as the insertion cursor.

        * gtk/gtktextview.c (gtk_text_view_get_cursor_location):
        Encapsulate getting the insertion cursor location.

        * gtk/gtktextview.c (gtk_text_view_update_im_spot_location):
        Pass the real y/height to the IM context. Take
        text_view->x/yoffset into account.
2003-06-05 23:04:49 +00:00
Owen Taylor
4d5b395f2c Never scroll on focus in (#81893, Patch from Paolo Maggi)
Thu Jun  5 16:52:54 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktextview.[ch]: Never scroll on focus in
        (#81893, Patch from Paolo Maggi)

        * gtk/gtktextview.c (gtk_text_view_scroll_[h]pages):
        Scroll to the current cursor location before handling
        the action, in case the user just tabbed in
        and the cursor is offscreen.
2003-06-05 22:59:35 +00:00
Owen Taylor
de425c5d0f #107883, Gustavo Giráldez
Thu Jun  5 17:20:40 2003  Owen Taylor  <otaylor@redhat.com>

         #107883, Gustavo Giráldez

        * gtk/gtktextlayout.c (gtk_text_layout_emit_changed):
        Split out the case where we know we changed, and
        already dealt with our cached line being invalidated
        from external calls to gtk_text_layout_changed.

        * gtk/gtktextlayout.c (gtk_text_layout_changed):
        Check if the invalidate yrange intersects our
        cached line, and clear it if necessary.
2003-06-05 22:28:48 +00:00
Tor Lillqvist
72a70cb646 Handle global filters.
2003-06-05  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle global
	filters.
2003-06-05 22:05:14 +00:00
Matthias Clasen
fc82265675 Fix for #84668, reported by Torbjrn Andersson:
2003-06-05  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktextview.c: Fix for #84668, reported by Torbjrn Andersson:
	(gtk_text_view_grab_notify):
	(gtk_text_view_state_changed): Implement these
	to unobscure cursor when grab shadowed or insensitised.
	(gtk_text_view_unobscure_mouse_cursor): New function to undo the
	effect of gtk_text_view_obscure_mouse_cursor(). Code lifted from
	gtk_text_view_motion_event().
	(gtk_text_view_motion_event): Use gtk_text_view_obscure_mouse_cursor().
2003-06-05 19:34:03 +00:00
Matthias Clasen
4c7356281f New keybinding signal for (un)selecting the whole buffer. Bound to
2003-06-05  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktextview.c (select_all): New keybinding signal for
	(un)selecting the whole buffer. Bound to C-a/C-\.  (see #107889)
2003-06-05 19:23:31 +00:00
Matthias Clasen
487a0a0756 Fix a typo. 2003-06-05 00:43:40 +00:00
Matthias Clasen
8992434c4f Add some questions. 2003-06-05 00:41:28 +00:00
Matthias Clasen
1fd7856d8f Replace deprecated gtk_timeout_* functions by their GLib counterparts.
* gtk/gtkcalendar.c (calendar_timer):
	(stop_spinning): Replace deprecated gtk_timeout_* functions by
	their GLib counterparts.  (#114429)
2003-06-05 00:38:37 +00:00
Matthias Clasen
f114b14ac3 Document restriction on types.
2003-06-05  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktreestore.c (gtk_tree_store_new):
	* gtk/gtkliststore.c (gtk_list_store_new): Document restriction on
	types.
2003-06-04 23:53:35 +00:00
Owen Taylor
f9a478644e When drawing underlines, join up adjacent runs where possible, so we don't
Wed Jun  4 19:42:17 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkpango.c (gdk_draw_layout_line_with_colors):
        When drawing underlines, join up adjacent runs
        where possible, so we don't get changes in
        shaper/font/etc. breaking underlines. (#103662,
        Kang Jeong-Hee)
2003-06-04 23:47:23 +00:00
Jonathan Blandford
0f635335e2 Slightly modified patch from Owen Taylor <otaylor@redhat.com> to improve
Wed Jun  4 19:22:58 2003  Jonathan Blandford  <jrb@redhat.com>

        * gtk/gtktreemodelsort.c (gtk_tree_model_sort_level_find_insert):
        Slightly modified patch from Owen Taylor <otaylor@redhat.com> to
        improve the speed of inserting rows into an already sorted list,
        #109292
2003-06-04 23:44:52 +00:00
Owen Taylor
76fc08a3fc Keep track of when we have a clip mask set for the GC, and when we unset
Wed Jun  4 19:24:28 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkgc-x11.c gdk/x11/gdkprivate-x11.h: Keep
        track of when we have a clip mask set for the GC,
        and when we unset it, or switch to a clip region,
        immediately call XSetClipMask (..., None) to avoid
        Xlib caching stale data. (#111806)

        * gtk/gtktextdisplay.c: Don't set a clip mask
        when drawing alpha pixmaps; it isn't necessary any more.
        (#111806)
2003-06-04 23:26:52 +00:00
Owen Taylor
c1ccc9b9a4 gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): Use
Wed Jun  4 18:27:44 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
        gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator):
        Use GTK_WIDGET_IS_SENSITIVE(), not GTK_WIDGET_SENSITIVE
        (#92548, Tim Evans)

        * gtk/gtkcheckmenuitem.c (gtk_real_check_menu_item_draw_indicator)
        gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator): If
        Use state_type = STATE_INSENSITIVE for insensitive menu items.
2003-06-04 22:44:10 +00:00
Kristian Rietveld
5afcde9a25 Merged from stable.
Wed Jun  4 21:25:35 2003  Kristian Rietveld  <kris@gtk.org>

	Merged from stable.

	* gtk/gtktreeview.c (gtk_tree_view_drag_begin): use a silent
	assert for get_info. (reported by Michael Natterer),
	(gtk_tree_view_expand_all_emission_helper),
	(gtk_tree_view_expand_all_helper): emit row_expanded for all
	expanded rows during an _expand_all operation. (Fixes #111280,
	reported by Benjamin Bayart).
2003-06-04 19:24:17 +00:00
Owen Taylor
eb6debd4e0 Don't respond to pings on a root window; prevents infinite loops if we are
Tue Jun  3 18:32:30 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Don't
        respond to pings on a root window; prevents infinite
        loops if we are selecting for SubstructureNotify on the
        root window. (#111945, Sergey V. Udaltsov)
2003-06-03 22:43:15 +00:00
Owen Taylor
84ebfb7efa #71597, reported by Morten Welinder
Tue Jun  3 17:39:16 2003  Owen Taylor  <otaylor@redhat.com>

        #71597, reported by Morten Welinder

        * gdk/gdkpixbuf-drawable.c (rgb888amsb): Fix and simplify
        (Patch from Christian Petig)

        * gdk/gdkpixbuf-drawable.c (rgb{555,565}{a,}{msb,lsb}):
        Major rewrite of 555 and 565 conversion routines:

        - Move all the bit shifting into a small block of macros,
          eliminating much duplication of complicated arithmetic.
        - Get rid of 2-pixels at a time code, which was buggy,
          hard to maintain, caused unaligned accesses, and
          probably didn't actually perform any better.
        - Simplify cases where different data types were
          used for the little and big endian cases, use
          GUINT16_SWAP_LE_BE() where appropriate.
2003-06-03 22:09:11 +00:00
Owen Taylor
794a3a9fbc Remove bad optimization for src_rowstride == dest_stride. (Didn't consider
Tue Jun  3 15:05:47 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdrawable-x11.c (convert_to_format): Remove
        bad optimization for src_rowstride == dest_stride.
        (Didn't consider the case where we were copying only
        partial widths of a wider source buffer)
        (#113034, reported by Hans Petter Jansson)
2003-06-03 19:12:37 +00:00
Michael Natterer
ace98abaaa reenabled button_release events for xinput devices. (#113948)
2003-06-03  Michael Natterer  <mitch@gimp.org>

	* gdk/x11/gdkinput-x11.c (_gdk_input_common_find_events):
	reenabled button_release events for xinput devices. (#113948)
2003-06-03 18:47:20 +00:00
Christian Rose
6e8aa0a124 Added "li" to ALL_LINGUAS. Added Limburgish translation by Mathieu van
2003-06-03  Christian Rose  <menthos@menthos.com>

	* configure.in: Added "li" to ALL_LINGUAS.
	* po/li.po: Added Limburgish translation by
	Mathieu van Woerkom <mathieu.brabants.org>.
2003-06-03 12:55:27 +00:00
Abel Cheung
a23704322b Added gdk-pixbuf/io-pcx.c and gtk/gtkcalendar.c
2003-06-03  Abel Cheung  <maddog@linux.org.hk>

	* POTFILES.in: Added gdk-pixbuf/io-pcx.c and
	  gtk/gtkcalendar.c
2003-06-03 08:24:30 +00:00
Owen Taylor
a99d7348c6 Don't map the event window if the notebook isn't mapped. (#113980, Richard
Mon Jun  2 18:58:54 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtknotebook.c (gtk_notebook_size_allocate): Don't
        map the event window if the notebook isn't mapped. (#113980,
        Richard Reich)
2003-06-02 23:05:45 +00:00
Matthias Clasen
375a6f4836 Document data_length == -1, add an example. (#97290)
2003-06-03  Matthias Clasen  <maclas@gmx.de>

	* gdk-pixdata.c (gdk_pixbuf_new_from_inline): Document
	data_length == -1, add an example.  (#97290)
2003-06-02 22:46:28 +00:00
Noah Levitt
17e785f414 Converted from broken-TSCII to UTF-8.
2003-06-02  Noah Levitt  <nlevitt@columbia.edu>

	* ta.po: Converted from broken-TSCII to UTF-8.
2003-06-02 21:57:16 +00:00
Sven Neumann
b5059b9873 added a missing cast.
2003-06-02  Sven Neumann  <sven@gimp.org>

	* gtk/gtkprogress.c (gtk_progress_changed): added a missing cast.

	* gdk/gdkrgb.c (gdk_rgb_try_colormap): removed an unused variable.
2003-06-02 14:14:41 +00:00
Matthias Clasen
5d15f30279 Fix misleading documentation of rowstride. (#113924, Noah Levitt)
2003-06-01  Matthias Clasen  <maclas@gmx.de>

	* gdk-pixdata.h (struct _GdkPixdata): Fix misleading documentation
	of rowstride.  (#113924, Noah Levitt)
2003-05-31 23:52:49 +00:00
Matthias Clasen
8f0e4cf634 Minor improvements to alignment padding documentation. 2003-05-31 23:39:02 +00:00
Matthias Clasen
eed0e982f5 Add some hints and an example to the docs. (#98427)
2003-06-01  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkwindow.c (gtk_window_parse_geometry): Add some hints and
	an example to the docs.  (#98427)
2003-05-31 23:33:09 +00:00
Christophe Merlet
328b5872a4 Updated French translation. 2003-05-31 11:05:45 +00:00
Murray Cumming
6006834d46 Added 4-sided padding as properties with gtk_alignment_get_padding() and
2003-05-30  Murray Cumming  <murrayc@usa.net>

        * gtk/gtkalignment.[h|c]: Added 4-sided padding as properties with
        gtk_alignment_get_padding() and gtk_aligment_set_padding(). This
        uses the new private data system - see g_type_class_add_private() in
        gtk_alignment_class_init() and the use of GTK_ALIGNMENT_GET_PRIVATE().
2003-05-30 18:29:32 +00:00
Matthias Clasen
717961aa8c gtk/gtknotebook.c Changed guint to GtkNotebookArrow in the signature of
2003-05-30  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtknotebook.c
	Changed guint to GtkNotebookArrow in the signature of
	gtk_notebook_draw_arrow() for Solaris builds to go through.
	(#114043, Anand Subramanian)
2003-05-30 16:25:55 +00:00
Hidetoshi Tajima
96d86dc4d5 typo 2003-05-30 01:33:09 +00:00
Hidetoshi Tajima
8b8b1ec435 use GETTEXT_PACKAGE to get a translation for "Default"(#113850).
Thu May 29 18:30:55 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>

	* modules/input/imipa.c:
	use GETTEXT_PACKAGE to get a translation for "Default"(#113850).
2003-05-30 01:31:15 +00:00
Hidetoshi Tajima
3e08d91b19 use GETTEXT_PACKAGE to get a translation for "Default"(#113850).
Thu May 29 18:08:01 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>

	* gtk/gtkimmodule.c (_gtk_im_module_list):
	use GETTEXT_PACKAGE to get a translation for "Default"(#113850).
2003-05-30 01:09:05 +00:00
Hidetoshi Tajima
156e978f87 make "Default" label of default input method localizable. use translations
Thu May 29 09:34:05 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>

        * gtk/gtkimmodule.c (_gtk_im_module_list): make "Default"
        label of default input method localizable.
        * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
        use translations of input method context names
        * modules/input/imam-et.c, modules/input/imcyrillic-translit.c,
          modules/input/iminuktitut.c, modules/input/imthai-broken.c,
          modules/input/imti-er.c, modules/input/imti-et.c
          modules/input/imviqr.c, modules/input/imxim.c
        use GETTEXT_PACKAGE instead of "gtk+" for domain name.
        (#113850).
2003-05-30 00:37:58 +00:00
Kristian Rietveld
763672696a Merged from stable.
Thu May 29 18:23:01 2003  Kristian Rietveld  <kris@gtk.org>

	Merged from stable.

	* gtk/gtktreeview.c (gtk_tree_view_button_press): put the focus
	grab separate, the user might clear the tree in the focus-in
	callback. (Fixes #113086, testcase from Felipe Heidrich).
2003-05-29 16:28:42 +00:00
Kristian Rietveld
d718b97350 Merged from stable.
Thu May 29 18:06:26 2003  Kristian Rietveld  <kris@gtk.org>

	Merged from stable.

	* gtk/gtktreeview.c (gtk_tree_model_set_model): reset a bunch
	of row reference when we unset the model. Also reset
	dy and top_row_dy. (Fixes #109289, patch from Owen Taylor).
2003-05-29 16:16:05 +00:00
Kristian Rietveld
7554c3dfae Merged from stable.
Thu May 29 17:12:19 2003  Kristian Rietveld  <kris@gtk.org>

	Merged from stable.

	* gtk/gtktreeview.c (gtk_tree_view_set_cursor_on_cell): cancel
	the current editing, if it exists. (Fixes #108956, reported by
	Michael Natterer).
2003-05-29 15:16:00 +00:00
Kristian Rietveld
4a03ea2334 Merged from stable.
Thu May 29 17:06:09 2003  Kristian Rietveld  <kris@gtk.org>

	Merged from stable.

	* gtk/gtktreeview.c (check_selection_helper): new function,
	(gtk_tree_view_row_deleted): traverse the tree from the
	deleted node to see whether the selection changed, instead of
	just checking this node. (Fixes #107400, reported by 'Duncan').
2003-05-29 15:09:47 +00:00
Kristian Rietveld
c906acd086 Merged from stable.
Thu May 29 16:31:34 2003  Kristian Rietveld  <kris@gtk.org>

	Merged from stable.

	* gtk/gtktreeview.c (gtk_tree_view_maybe_begin_dragging_row),
	(gtk_tree_view_drag_begin): set the DnD icon in _drag_begin
	instead of _maybe_begin_dragging_row, so the icon can be
	overridden by apps. (Fixes #104374, patch from Daniel Elstner).
2003-05-29 14:36:03 +00:00
Kristian Rietveld
bdff7cdb1a Merged from stable.
Thu May 29 16:14:04 2003  Kristian Rietveld  <kris@gtk.org>

	Merged from stable.

	* gtk/gtktreeview.c (gtk_tree_view_start_editing): correct
	cell_area x/width for the expander if needed. (Fixes #101748,
	reported by Dave Cook and Mariano Suarez-Alvarez).
2003-05-29 14:22:05 +00:00
Kristian Rietveld
fcabeed616 check if tree/node are still the same after _internal_select_node. (Fixes
Thu May 29 16:01:38 2003  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreeview.c (gtk_tree_view_real_set_cursor): check
	if tree/node are still the same after _internal_select_node.
	(Fixes #92256, reported by edscott).
2003-05-29 14:06:20 +00:00
Kristian Rietveld
c378989102 Fixes #75745, reported by Richard Hult. Merged from stable.
Thu May 29 15:38:30 2003  Kristian Rietveld  <kris@gtk.org>

	Fixes #75745, reported by Richard Hult. Merged from stable.

	* gtk/gtktreeview.c (gtk_tree_view_bin_expose): set/unset
	GTK_CELL_RENDERER_FOCUSED flag whether the current node is the
	cursor or not.

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
	if we are rendering a cursor row, and the cell the be
	processed has focus, then set the GTK_CELL_RENDERER_FOCUSED
	flag (else we unset it).
2003-05-29 13:47:32 +00:00
Matthias Clasen
83c626bbe0 Remove dubious bitfields of unspecified signedness. (#112919, Morten
2003-05-27  Matthias Clasen  <maclas@gmx.de>

	* io-wbmp.c: Remove dubious bitfields of
	unspecified signedness.  (#112919, Morten Welinder)gdk-p

	* gdk-pixdata.c (gdk_pixdata_to_csource): Replace all occurances
	of g_string_new ("") by g_string_new (NULL). (#106975, Morten Welinder)

	* gtk/gtkwindow-decorate.c:
	* gtk/gtktreeprivate.h:
	* gtk/gtkdnd.c:
	* gdk/win32/gdkwindow-win32.h:
	* gdk/linux-fb/gdkprivate-fb.h:
	* gdk/linux-fb/gdkkeyboard-fb.c: Remove dubious bitfields of
	unspecified signedness.  (#112919, Morten Welinder)

	* gtk/queryimmodules.c (escape_string):
	* gtk/gtktextbtree.c (_gtk_text_btree_get_text):
	* gtk/gtksettings.c (_gtk_settings_parse_convert):
	* gtk/gtkrc.c (gtk_rc_parse_assignment):
	* gtk/gtkinputdialog.c (gtk_input_dialog_set_key):
	* gdk/x11/gdkdisplay-x11.c (escape_for_xmessage): Replace all
	occurances of g_string_new ("") by g_string_new (NULL). (#106975,
	Morten Welinder)
2003-05-27 21:21:00 +00:00
Tor Lillqvist
fd99f43ac5 Only include the Default and Emacs themes' gtkrc files. Include
2003-05-27  Tor Lillqvist  <tml@iki.fi>

	* gtk-zip.sh.in: Only include the Default and Emacs themes' gtkrc
	files. Include share/gtk-doc/{gdk-pixbuf,gdk,gtk}.

	* gdk/Makefile.am: libgdk-win32-2.0.la depends on
	win32/libgdk-win32.la.

	* gtk/gtk.def: Add gtk_tree_view_column_cell_get_position.
2003-05-27 18:36:19 +00:00
Matthias Clasen
1499455d25 Document allowed values for adjustments which are used in scrollbars.
* gtk/tmpl/gtkadjustment.sgml: Document allowed values for
	adjustments which are used in scrollbars.  (#108448, Ernst Lippe)
2003-05-26 22:58:28 +00:00
Matthias Clasen
61e5565d51 Fix example. (#113604, Julien Moutte)
2003-05-27  Matthias Clasen  <maclas@gmx.de>

	* gtk/tmpl/gtkradiomenuitem.sgml: Fix example.  (#113604,
	Julien Moutte)
2003-05-26 22:35:16 +00:00
Søren Sandmann Pedersen
4f8d1b2f8b Forgot Changelog 2003-05-24 20:04:12 +00:00
Soeren Sandmann
5150ccfcc4 Make the minimum scrollbar slider length 21 instead of 7.
Sat May 24 22:19:13 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkscrollbar.c (gtk_scrollbar_class_init): Make the minimum
	scrollbar slider length 21 instead of 7.
2003-05-24 20:03:08 +00:00
Matthias Clasen
ed1468ba4c Add support for up to four scroll arrows. Control their display by new
2003-05-23  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtknotebook.c: Add support for up to four scroll
	arrows. Control their display by new style properties
	"has_forward_stepper", "has_backward_stepper",
	"has_secondary_forward_stepper" and
	has_secondary_backward_stepper". (#110540)

	* gtk/gtknotebook.h (struct _GtkNotebook): Make in_child and
	click_child three bits wide, add
	has_{before,after}_{previous,next} fields.
2003-05-22 22:34:31 +00:00
Matthias Clasen
a32adaf4f9 Update color on focus out of hex_entry. (#112665) (hex_focus_out): New
2003-05-23  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcolorsel.c (gtk_color_selection_init): Update color on
	focus out of hex_entry.  (#112665)
	(hex_focus_out): New signal handler for focus out of hex entry.
2003-05-22 22:25:11 +00:00
Matthias Clasen
e837bae836 (gtk_file_selection_set_filename): Add a hint about opening
directories.  (#113175)
2003-05-22 00:25:50 +00:00
Owen Taylor
c1d40c0293 g_return_if_fail() if GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE
Wed May 21 19:01:06 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwidget.c (gtk_widget_realize):
        g_return_if_fail() if
        GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget).
        (#107872, Christian Reis)
2003-05-21 23:08:27 +00:00
Matthias Clasen
524e2278cd Some keynav improvements for the "Rename File" and "Create Directory"
2003-05-22  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkfilesel.c (gtk_file_selection_create_dir):
	(gtk_file_selection_rename_file): Some keynav improvements for the
	"Rename File" and "Create Directory" subdialogs: Enter in entry
	activates default, default is "Create"/"Rename", Escape cancels
	dialog.  (#113110)
2003-05-21 22:54:53 +00:00
Matthias Clasen
81c9d969d3 Use XftDrawSetClipRectangles(), since we're inside HAVE_XFT2 anyway.
2003-05-22  Matthias Clasen  <maclas@gmx.de>

	* gdk/x11/gdkdrawable-x11.c (gdk_x11_drawable_update_xft_clip):
	Use XftDrawSetClipRectangles(), since we're inside HAVE_XFT2
	anyway.  (#113476)
2003-05-21 22:37:35 +00:00
Owen Taylor
e47517cdbb Always queue a resize ... we rely on the size-allocate to do the update,
Wed May 21 15:53:14 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkprogress.c (gtk_progress_set_format_string,
        gtk_progress_set_show_text): Always queue a resize ...
        we rely on the size-allocate to do the update, plus a
        different format can actually change our size requisition.
        (#111052)

        * gtk/gtkprogress.c (gtk_progress_changed): Track
        ::changed as well as ::value_changed, and queue a
        resize on ::changed when necessary.

        * gtk/gtkprogress.c (gtk_progress_set_adjustment):
        Call gtk_progress_changed() here to update or
        queue a resize as necessary.
2003-05-21 21:23:35 +00:00
Hidetoshi Tajima
611a2667e6 added composing rules of Greek acceted letters, patch by Vasilis Vasaitis
Wed May 21 14:06:13 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>

	* gtk/gtkimcontextsimple.c: added composing rules of
	Greek acceted letters, patch by Vasilis Vasaitis (#107507)
2003-05-21 21:09:05 +00:00
Hidetoshi Tajima
539ad89f76 gtk settings for XIMPreeditNone and XIMStatusNone. (#105909)
* gtk/gtkenums.h (enum GtkIMPreeditStyle, GtkIMStatusStyle):
	* modules/input/gtkimcontextxim.c (preedit_style_change, status_style_change):
	gtk settings for XIMPreeditNone and XIMStatusNone. (#105909)
2003-05-21 20:21:41 +00:00
Matthias Clasen
b5adee991a A loader for PCX files. (#113035, Josh Beam)
2003-05-21  Matthias Clasen  <maclas@gmx.de>

	* pixbufloader_pcx.def:
	* io-pcx.c: A loader for PCX files.  (#113035, Josh Beam)

	* gdk-pixbuf-io.c:
	* Makefile.am: Add PCX loader.
2003-05-21 20:20:07 +00:00
Hidetoshi Tajima
ec288c7017 code that can check the compose table for ascending order, by Vasilis
* gtk/gtkimcontextsimple.c:
	code that can check the compose table for ascending order,
	by Vasilis Vasaitis (#104862).
2003-05-21 19:14:06 +00:00
Owen Taylor
e1fb536724 We need to pass the unmasked state to
Wed May 21 12:52:01 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkkeyhash.[ch] (_gtk_key_hash_looku): We need
        to pass the unmasked state to gdk_keymap_translate_keyboard_state()
        to handle the case where a modifier not in the mask
        (like Num_Lock) changes the key value, so replace
        the masked state with a state/mask pair. (#106913,
        Olivier Ripoll)

        * gtk/gtkwindow.c gtk/gtkbinding.c: Update to pass
        in state/mask pair to _gtk_key_hash_lookup()
2003-05-21 17:49:49 +00:00
Hidetoshi Tajima
534710deac fix a memory leak, free input context list (#113259).
* modules/input/gtkimcontextxim.c (xim_info_display_closed):
	fix a memory leak, free input context list (#113259).
2003-05-21 04:59:13 +00:00
Matthias Clasen
33bb3d4401 Make calendar controls spin. (#112540)
2003-05-21  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcalendar.c: Make calendar controls spin.  (#112540)
2003-05-20 22:37:57 +00:00
Owen Taylor
04e26775a0 Silently accept a missing gtk.immodules file, some people want to run
Tue May 20 17:27:24 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkimmodule.c (gtk_im_module_init): Silently
        accept a missing gtk.immodules file, some people
        want to run without one. (#112406, patch from
        Arnaud Charlet)
2003-05-20 21:30:21 +00:00
Owen Taylor
12ebd97fc2 Fix height/width confusion (#113370, Xan Lopez)
Tue May 20 17:05:31 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.c (gtk_window_compute_hints): Fix
        height/width confusion (#113370, Xan Lopez)
2003-05-20 21:14:29 +00:00
Owen Taylor
ef6053684b Comprehensively zero all unused parts of client messages (Mainly Motif DND
Tue May 20 15:09:29 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdnd-x11.c gdk/x11/gdkwindow-x11.c: Comprehensively
        zero all unused parts of client messages (Mainly Motif DND
        and EWMH). Also, fix a couple places where we were putting
        contents into Motif DND messages that didn't belong.
        (#113361, EWMH problem reported by Lubos Lunak)

        * gtk/gtkselection.c (_gtk_selection_request): Handle the
        case where the property type for the multiple atoms is
        ATOM_PAIR by doing the conversions ourselve. This is
        needed for Xt inter-operation.
2003-05-20 21:01:08 +00:00
Arafat Medini
27a0a3bf22 Added Arabic translation
2003-05-19 Arafat Medini <lumina@silverpen.de>

	* ar.po: Added Arabic translation
2003-05-20 13:43:05 +00:00
Matthias Clasen
ed1ac0e2c6 Improve progressive loading from slow sources: (#107368)
2003-05-19  Matthias Clasen  <maclas@gmx.de>

	Improve progressive loading from slow sources:  (#107368)

	* io-gif-animation.c (gdk_pixbuf_gif_anim_get_iter): Initialize
	first_loop_slowness.
	(gdk_pixbuf_gif_anim_iter_advance): Don't wrap during loading if
	the datasource falls behind the speed of the display.

	* io-gif-animation.h: Add a loading flag to GdkPixbufGifAnim and
	first_loop_slowness to GdkPixbufGifAnimIter.
2003-05-19 21:44:03 +00:00
Matthias Clasen
69c1943972 Add docs.
2003-05-19  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtksettings.c (gtk_rc_property_parse_border,
	gtk_rc_property_parse_color, gtk_rc_property_parse_enum,
	gtk_rc_property_parse_flags, gtk_rc_property_parse_requisition):
	Add docs.
2003-05-19 00:55:20 +00:00
Matthias Clasen
96d4721e00 Add docs.
2003-05-19  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkwidget.c (gtk_widget_class_install_style_property,
	gtk_widget_class_install_style_property_parser): Add docs.
2003-05-19 00:10:22 +00:00
KAMAGASAKO Masatoshi
736b40a849 Updated Japanese translation.
2003-05-18  KAMAGASAKO Masatoshi  <emerald@gnome.gr.jp>

	* ja.po: Updated Japanese translation.
2003-05-18 12:32:57 +00:00
Christophe Merlet
99c359cb07 Updated French translation. 2003-05-17 16:45:52 +00:00
Matthias Clasen
d548d98252 Add navigation for object properties, so that you can easily edit the
2003-05-17  Matthias Clasen  <maclas@gmx.de>

	* tests/prop-editor.c: Add navigation for object properties, so
	that you can easily edit the properties of the parent of a widget.
	(#113152)
2003-05-16 22:14:30 +00:00
Owen Taylor
a410bfa04e Add a (gint32 *) => (guint32 *) cast. (#108615, Rick Jones)
Wed May 14 18:24:50 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk-pixdata.c (gdk_pixdata_deserialize): Add a
        (gint32 *) => (guint32 *) cast. (#108615, Rick Jones)
2003-05-14 22:26:41 +00:00
Owen Taylor
ba270fe70c Patch from Vasilis Vasaitis to fix Greek_IOTAdi[a]eresis inconsistency and
Wed May 14 17:45:32 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkkeysyms.h gdk/gdkkeynames.c gdk/gdkkeyuni.c:
        Patch from Vasilis Vasaitis to fix Greek_IOTAdi[a]eresis
        inconsistency and leave the old name as an aliass (#104873)
2003-05-14 21:46:59 +00:00
Owen Taylor
24ca56559f Patch from Charles Schmidt to add missing notify (#108305)
Wed May 14 16:40:09 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkframe.c (gtk_frame_set_label_widget): Patch
        from Charles Schmidt to add missing notify (#108305)
2003-05-14 21:26:19 +00:00
Owen Taylor
d4d077677c Remove unecessary g_return_if_fail(). (#105500, Morten Welinder.)
Wed May 14 16:00:51 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkgc-x11.c: Remove unecessary g_return_if_fail().
        (#105500, Morten Welinder.)
2003-05-14 20:02:25 +00:00
Hidetoshi Tajima
cf74247186 use type of guint32 instead of gumake for XNFilterEvents event
* modules/input/gtkimcontextxim.c (get_ic_real): use type of guint32
	instead of gumake for XNFilterEvents event mask(#110493).
2003-05-14 16:05:53 +00:00
Anders Carlsson
c3afabd5be Don't cast a gchar to a GObject. (#112762)
2003-05-11  Anders Carlsson  <andersca@codefactory.se>

	* gtk/gtkdnd.c (gtk_drag_source_unset_icon): Don't cast a gchar to
	a GObject. (#112762)
2003-05-11 12:35:40 +00:00
Christophe Merlet
d9f309d5b5 Updated French translation. 2003-05-08 23:42:14 +00:00
Sven Neumann
f35dd52762 set the HAVE_X11R6 automake conditional to false if not compiling for X11.
2003-05-08  Sven Neumann  <sven@gimp.org>

	* configure.in: set the HAVE_X11R6 automake conditional to false
	if not compiling for X11.
2003-05-08 18:22:22 +00:00
Matthias Clasen
0823a10aaf Some calendar improvements. 2003-05-08 00:25:51 +00:00
Kwok-Koon Cheung
7c92440c59 Updated traditional Chinese translation.
* zh_TW.po: Updated traditional Chinese translation.
2003-05-07 16:02:17 +00:00
Owen Taylor
629a0e1424 Patch from James Henstridge to update to automake-1.7 (#109542)
Tue May  6 16:50:52 2003  Owen Taylor  <otaylor@redhat.com>

        Patch from James Henstridge to update to automake-1.7
        (#109542)

        * autogen.sh: update to call newer tools.

        * configure.in: various updates, to use M4 macros to put
        variables that change each release at the top.
        Use AC_HELP_STRING to format help strings.
        Use AC_CONFIG_COMMANDS to generate gdkconfig.h.

        * Makefile.am: require Automake 1.7.  Remove gdk-2.0.pc and
        gtk+-2.0.pc on uninstall.  Pass --enable-gtk-doc to configure
        during distcheck.

        * docs/reference/*/Makefile.am: simplify to use the gtk-doc.make
        makefile fragment.

        * */Makefile.am: don't use STRIP_BEGIN/STRIP_END.
        Use BUILT_SOURCES where appropriate.
        Build generated files in builddir rather than srcdir.
        Fix uninstall and distclean targets to satisfy distcheck.

        ===

        * gdk/*/Makefile.am: Remove the hacks to get gdkenumtypes.h
        built first, since we are now using BUILT_SOURCES.

        * gdk/Makefile.am: Remove an outdated comment about gdk_headers.

        * demos/gtk-demo/Makefile.am: Fix srcdir != buildd problem
        with geninclude.pl.

        * configure.in: Update versions to 2.3.0.
2003-05-06 21:55:41 +00:00
Tor Lillqvist
2e58122c79 Fix for #110165 (thanks to Arnaud Charlet):
2003-05-06  Tor Lillqvist  <tml@iki.fi>

	Fix for #110165 (thanks to Arnaud Charlet):

	* gdk/win32/gdkevents-win32.c (build_keypress_event,
	build_keyrelease_event): For unshifted control char, use
	lowercase ASCII keyval.
	(gdk_event_translate): Similarily, when handling WM_SYSKEYDOWN and
	UP (i.e. Alt-something), if it's an unshifted ASCII letter, use
	lowercase keyval. Use build_key_event_state() here, too, instead
	of minor code duplication.
2003-05-06 21:44:55 +00:00
Matthias Clasen
ae0bb11c8e Don't include strings.h, it's not needed anymore. (#112388)
2003-05-06  Matthias Clasen  <maclas@gmx.de>

	* tests/testmultidisplay.c: Don't include strings.h, it's not
	needed anymore.  (#112388)

	* examples/menu/itemfactory.c:
	* docs/tutorial/gtk-tut.sgml: Remove an unneeded include from the
	itemfactory example.
2003-05-06 21:33:22 +00:00
Owen Taylor
a4d70c594e Fix PROP_HAS_FOCUS/ PROP_IS_FOCUS confusion. (#111333, Jody Goldberg)
Tue Apr 22 15:12:19 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwidget.c (gtk_widget_class_init): Fix PROP_HAS_FOCUS/
        PROP_IS_FOCUS confusion. (#111333, Jody Goldberg)
2003-05-05 22:13:31 +00:00
Matthias Clasen
b533fc3ae5 Improve the docs about cross-process embedding a bit. (#112101, #112006)
2003-05-05  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtk-docs.sgml:
	* gtk/tmpl/gtksocket.sgml: Improve the docs about cross-process
	embedding a bit.  (#112101, #112006)
2003-05-05 18:13:59 +00:00
Matthias Clasen
362580fbdd Actually set the icon type to the stock icon type. (#111735, Dave
2003-05-05  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkdnd.c (gtk_drag_source_set_icon_stock):  Actually set the
	icon type to the stock icon type.  (#111735, Dave Bordoley)
2003-05-05 18:08:10 +00:00
Christian Rose
04180437cb Added sr and sr@Latn to ALL_LINGUAS. Removed sp, it's replaced by sr@Latn.
2003-05-05  Christian Rose  <menthos@menthos.com>

	* configure.in: Added sr and sr@Latn to ALL_LINGUAS.
	Removed sp, it's replaced by sr@Latn.
	* po/sr.po, po/sr@Latn.po: Added Serbian translation by
	Danilo Šegan <dsegan@gmx.net>.
2003-05-05 08:53:25 +00:00
Matthias Clasen
be9972bb3b Remove some accidentally committed changes. 2003-05-01 20:16:29 +00:00
BST 2003 Tony Gale
59a8793121 GTK+ 2.x updates, mainly from Gonzalo Odiard
Wed Apr 30 22:09:11 BST 2003  Tony Gale <gale@gtk.org>

        * docs/faq/gtk-faq.sgml: GTK+ 2.x updates, mainly from
        Gonzalo Odiard
2003-04-30 21:10:52 +00:00
Hasbullah Bin Pit
5b39d2e927 Updated Malay translation.
2003-04-29  Hasbullah Bin Pit <sebol@ikhlas.com>

        * ms.po: Updated Malay translation.
2003-04-29 16:26:15 +00:00
Jonathan Blandford
e6b9af39bf destroy the search data iff the destroy func isn't NULL.
Mon Apr 28 18:03:29 2003  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreeview.c (gtk_tree_view_destroy): destroy the search
	data iff the destroy func isn't NULL.
 ----------------------------------------------------------------------
2003-04-28 22:04:00 +00:00
Owen Taylor
72413c402c Accept libtool-1.5. (#111480)
Thu Apr 24 19:12:05 2003  Owen Taylor  <otaylor@redhat.com>

        * autogen.sh (have_libtool): Accept libtool-1.5. (#111480)
2003-04-24 23:54:06 +00:00
Matthias Clasen
691a5fd50a Add sanity checks for GError handling. (#108345) 2003-04-24 18:51:07 +00:00
Abel Cheung
89ef7509b1 Added "am" "mk" "ta" to ALL_LINGUAS.
2003-04-23  Abel Cheung  <maddog@linux.org.hk>

	* configure.in: Added "am" "mk" "ta" to ALL_LINGUAS.
2003-04-23 17:01:44 +00:00
Owen Taylor
c12fc8803d Fix capitalization of UTF-8. (#106419, Roozbeh Pournader)
Tue Apr 22 15:33:51 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkfilesel.c (open_new_dir): Fix capitalization
        of UTF-8. (#106419, Roozbeh Pournader)
2003-04-22 19:36:28 +00:00
Owen Taylor
df7e4d0c5e Only check for XFT2 if we found pango-xft (#105692, Jon Nall)
Tue Apr 22 15:17:25 2003  Owen Taylor  <otaylor@redhat.com>

        * configure.in: Only check for XFT2 if we found pango-xft
        (#105692, Jon Nall)
2003-04-22 19:22:18 +00:00
BST 2003 Tony Gale
1764a70aa3 add note about version converage.
Tue Apr 22 19:43:01 BST 2003  Tony Gale <gale@gtk.org>

        * docs/faq/gtk-faq.sgml: add note about version converage.
2003-04-22 18:44:18 +00:00
Owen Taylor
e4b73d8a72 Fix prototype for activate_key. (#108927, Jason D. Hildebrand)
Mon Apr 21 19:02:16 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtksocket.c (activate_key): Fix prototype for
        activate_key. (#108927, Jason D. Hildebrand)
2003-04-22 18:33:45 +00:00
Sanlig Badral
c40ab61ea9 *** empty log message *** 2003-04-22 16:25:19 +00:00
Owen Taylor
e45e57297f Remove geninclude.pl from CVS and don't dist it either, it is generated.
Mon Apr 21 18:42:51 2003  Owen Taylor  <otaylor@redhat.com>

        * demos/gtk-demo/Makefile.am demos/gtk-demo/geninclude.pl:
        Remove geninclude.pl from CVS and don't dist it either,
        it is generated. (#108970, Rich Kinder)
2003-04-21 22:49:21 +00:00
Owen Taylor
21694abd64 Remove a couple of obsolete comments, fix another comment. (#109737,
Mon Apr 21 18:35:48 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkobject.h: Remove a couple of obsolete comments,
        fix another comment. (#109737, Britton Kerin)
2003-04-21 22:39:43 +00:00
Owen Taylor
e97e0e5435 Free the source list, not just it's contents (Patch from Charles Kerr,
Mon Apr 21 18:29:03 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkiconfactory.c (gtk_icon_set_unref): Free
        the source list, not just it's contents (Patch
        from Charles Kerr, #108243)
2003-04-21 22:33:03 +00:00
Owen Taylor
355a5ee8ab Patch from Alex Larsson fixing problem with restacking during DND.
Mon Apr 21 18:13:46 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdnd-x11.c (gdk_window_cache_filter): Patch
        from Alex Larsson fixing problem with restacking during
        DND. (#108671)
2003-04-21 22:18:05 +00:00
Owen Taylor
dd6426b51e Calling XFlush() after ungrabbing, to avoid problems if the app
Mon Apr 21 15:07:29 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdisplay-x11.c (gdk_display_keyboard/pointer_ungrab):
        Calling XFlush() after ungrabbing, to avoid problems if
        the app subsequently blocks on a long-running operation.
        (#106520, reported by Rajkumar Siva)
2003-04-21 19:11:45 +00:00
Owen Taylor
feff41c77b Add SKIP_TASKBAR/SKIP_PAGER to set of properties we might set on map.
Fri Apr 18 17:42:45 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkwindow-x11.c (set_initial_hints): Add
        SKIP_TASKBAR/SKIP_PAGER to set of properties we
        might set on map. (#110019, problem reported
        by Loban Rahman)
2003-04-21 19:03:15 +00:00
Owen Taylor
d64b24ffc2 Check for XAddConnectionWatch()/X11R6, and if found, disable XIM and use
Fri Apr 18 16:31:49 2003  Owen Taylor  <otaylor@redhat.com>

        * configure.in gdk/x11/gdkdisplay-x11.c modules/input/Makefile.am:
        Check for XAddConnectionWatch()/X11R6, and if found, disable XIM and
        use of XAddConnectionWatch. Remove --enable-xim config option.
        Should fix building on X11R6 (#110523, Albert Chin)
2003-04-21 01:10:06 +00:00
Owen Taylor
b3097032f8 Fix for the case when gdk_event_copy() is called on a non-allocated event.
Fri Apr 18 17:14:33 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkevents.c (gdk_event_copy): Fix for the
        case when gdk_event_copy() is called on a non-allocated
        event. (#109716, reported by Rich Burridge)
2003-04-18 21:24:43 +00:00
Owen Taylor
89b2a072ff Fix pointer arithmetic on 'void *'. (#108322)
Fri Apr 18 16:57:44 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdrawable-x11.c (draw_with_images/pixmaps):
        Fix pointer arithmetic on 'void *'. (#108322)
2003-04-18 20:59:49 +00:00
Owen Taylor
ac2ef34988 Check for XAddConnectionWatch()/X11R6, and if found, disable XIM and use
Fri Apr 18 16:31:49 2003  Owen Taylor  <otaylor@redhat.com>

        * configure.in gdk/x11/gdkdisplay-x11.c modules/input/Makefile.am:
        Check for XAddConnectionWatch()/X11R6, and if found, disable XIM and
        use of XAddConnectionWatch. Remove --enable-xim config option.
        Should fix building on X11R6 (#110523, Albert Chin
2003-04-18 20:53:37 +00:00
Owen Taylor
dcaf1b80e2 Patch from Morten Welinder to catch Sun servers with a broken
Fri Apr 18 15:56:46 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdisplay-x11.[ch] gdk/x11/gdkdrawable-x11.[ch]:
        Patch from Morten Welinder to catch Sun servers with a
        broken implementation of the RENDER extension. (#108309)
2003-04-18 20:21:44 +00:00
Owen Taylor
5e5dd39adf Use gdk_free_compound_text(), not g_free(). (#107643, Michael Zucchi)
Fri Apr 18 15:30:38 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkwindow-x11.c (set_text_property): Use
        gdk_free_compound_text(), not g_free(). (#107643,
        Michael Zucchi)
2003-04-18 19:33:37 +00:00
Owen Taylor
f964a0e1f8 Fix wrong use of base_finalize. (#105126, Sven Neumann)
Fri Apr 18 15:11:50 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdisplay-x11.c (_gdk_display_x11_get_type)
        gdk/x11/gdkscreen-x11.c (_gdk_screen_x11_get_type): Fix
        wrong use of base_finalize. (#105126, Sven Neumann)
2003-04-18 19:18:27 +00:00
Owen Taylor
cfd2e98362 Fix '/' vs. '*' problem in aspect ration computations. (#108237)
Fri Apr 18 15:06:00 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/gdkwindow.c (gdk_window_constrain_size): Fix
        '/' vs. '*' problem in aspect ration computations. (#108237)
2003-04-18 19:09:03 +00:00
Owen Taylor
0e815d2ff0 You don't get a XkbMapNotify event if you get a XkbNewKeyboardNotify
Fri Apr 18 14:15:09 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdisplay-x11.c (gdk_display_open):
        * gdk/x11/gdkevents-x11.c (gdk_event_translate): You
        don't get a XkbMapNotify event if you get a XkbNewKeyboardNotify
        event, so select for both. (#108406, Egmont Koblinger)
2003-04-18 18:51:20 +00:00
Jonathan Blandford
331b692e05 remove infinite loop caused by not clearing the scroll_to_path.
Thu Apr 17 09:57:44 2003  Jonathan Blandford  <jrb@gnome.org>

        * gtk/gtktreeview.c (validate_visible_area): remove infinite loop
        caused by not clearing the scroll_to_path.
2003-04-17 14:00:45 +00:00
Matthias Clasen
59bd288630 Doc additions and fixes. 2003-04-15 22:51:04 +00:00
Raymond Penners
0d4391195b Started changelog 2003-04-15 18:32:56 +00:00
Raymond Penners
aba99542bf Merged with Arnaud Charlet + notebook TOP changes 2003-04-15 18:31:55 +00:00
Michael Natterer
b45f8ef250 added checks to ensure that the iter is not reordered to its own position.
2003-04-14  Michael Natterer  <mitch@gimp.org>

	* gtk/gtkliststore.c (gtk_list_store_move): added checks to ensure
	that the iter is not reordered to its own position. Prevents model
	corruption for the case that the store contains only a single item
	(fixes bug #108387).

	Unrelated:

	* gtk/gtkliststore.c (gtk_list_store_insert): g_list_alloc() the
	new list element later so we don't leak it if we decide to return
	early.

	* gtk/gtktreeselection.c (_gtk_tree_selection_internal_select_node):
	set selection->tree_view->priv->anchor to NULL after freeing it.
2003-04-14 12:02:57 +00:00
Pauli Virtanen
9f53ec5d3b Updated Finnish translation.
2003-04-13  Pauli Virtanen  <pauli.virtanen@hut.fi>

	* fi.po: Updated Finnish translation.
2003-04-13 20:45:31 +00:00
Matthias Clasen
82b76f2926 Additions.
2003-04-13  Matthias Clasen  <maclas@gmx.de>

	* gtk/tmpl/gtkenums.sgml: Additions.

	* gtk/tmpl/gtkvruler.sgml:
	* gtk/tmpl/gtkhruler.sgml:
	* gtk/tmpl/gtkgamma.sgml:
	* gtk/tmpl/gtkcurve.sgml:
	* gtk/tmpl/gtkruler.sgml: Fix some typos and add some markup.
2003-04-12 23:29:46 +00:00
Matthias Clasen
913e6e9ea9 Document.
2003-04-13  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktreeviewcolumn.c
	(gtk_tree_view_column_cell_get_position): Document.

	* gtk/gtktextbuffer.c (gtk_text_buffer_select_range):
	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_[sg]et_expand):
	* gtk/gtkbutton.c (gtk_button_[sg]et_focus_on_click): Document
	these as 2.4 additions.
2003-04-12 22:25:21 +00:00
Matthias Clasen
e2abcc2dea Add a bunch of new functions.
2003-04-13  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtk-sections.txt: Add a bunch of new functions.
2003-04-12 22:22:36 +00:00
Paul Duffy
1d907d065d Updated Irish Translation (ga.po)
2003-04-11 Paul Duffy <dubhthach@frink.nuigalway.ie>
Updated Irish Translation (ga.po)
2003-04-11 12:11:10 +00:00
Matthias Clasen
0f2b4b0b69 Typo fix. 2003-04-09 18:20:09 +00:00
Matthias Clasen
136ae57786 Typo fixes. 2003-04-09 18:18:23 +00:00
Matthias Clasen
41b83abc8a Typo fix. 2003-04-09 17:58:54 +00:00
Owen Taylor
af6bc44d86 - Disconnect signal connections when appropriate. - Listen to
Wed Apr  9 12:28:04 2003  Owen Taylor  <otaylor@redhat.com>

        * gtkfilesystemmodel.c:
        - Disconnect signal connections when appropriate.
        - Listen to ::roots-changed on the file system
        - When the last reference count on a child is
          removed, queue an idle to unload the parent.

        * gtkfilesystemgnomevfs.c
        - When URI's outside of file:/// are acessed,
          add toplevel URI's to the list of roots.
        - Improve display name computations

        * gtkfilechooserentry.c: Don't complete on empty
        file parts; free stored folder when base directory
        changes.

        * gtkfilechooser.c: Fill in some docs.
2003-04-09 16:52:13 +00:00
Owen Taylor
1926dbc1f6 Flush after ungrabbing the server.
Mon Apr  7 19:43:15 2003  Owen Taylor  <otaylor@redhat.com>

        * gdk/x11/gdkdisplay-x11.c (gdk_x11_display_ungrab): Flush
        after ungrabbing the server.

        * gdk/x11/gdkimage-x11.c: Remove some no-longer-needed
        calls to XFlush().

        * gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_at_pointer):
        Use gdk_x11_display_grab/ungrab.
2003-04-07 23:47:59 +00:00
Matthias Clasen
ade1ae83d8 typo fix 2003-04-07 22:38:36 +00:00
Matthias Clasen
0230821081 Add GTK_WRAP_WORD_CHAR. (#110086, David Brigada)
* gtk/gtktextlayout.c (set_para_values):
	* gtk/gtkenums.h (GtkWrapMode): Add GTK_WRAP_WORD_CHAR.  (#110086,
	David Brigada)
2003-04-07 18:19:46 +00:00
Matthias Clasen
c4dd1bd3f9 Fix numerous misspellings of possessive "its". (#110027, Doug Quale) 2003-04-07 00:16:43 +00:00
Matthias Clasen
065df1c008 Add deprecation info. 2003-04-06 23:42:35 +00:00
Owen Taylor
7388eeaa2b Fix double free.
Fri Apr  4 18:29:27 2003  Owen Taylor  <otaylor@redhat.com>

        * gtkfilechooserentry.c: Fix double free.
2003-04-04 23:36:37 +00:00
Owen Taylor
bc3fb55c1b Move interface definition into a private header so it can refer to
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.
2003-04-04 22:43:12 +00:00
Metin Amiroff
a013536bef Updated Azerbaijani translaion.
2003-04-04  Metin Amiroff <metin@karegen.com>

	* az.po: Updated Azerbaijani translaion.
2003-04-04 15:22:10 +00:00
Matthias Clasen
0d92566119 Only use files from the current directory if it looks like the srcdir.
2003-04-03  Matthias Clasen  <maclas@gmx.de>

	* demos/gtk-demo/main.c (demo_find_file): Only use files from the
	current directory if it looks like the srcdir.  (#109357)
2003-04-02 23:06:16 +00:00
Soeren Sandmann
b5d8a668bd add property focus_on_click
Wed Apr  2 23:02:26 2003  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkbutton.[ch] (gtk_button_class_init): add property
	focus_on_click

	* gtk/gtkwindow.c (gtk_window_focus): make arrow keyboard
	navigation not wrap around.
2003-04-02 21:50:45 +00:00
Matthias Clasen
8653097b33 Return 0 if lower == upper. (#109155)
2003-04-02  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkprogress.c (gtk_progress_get_percentage_from_value):
	Return 0 if lower == upper.  (#109155)
	(gtk_progress_get_current_percentage): Use
	gtk_progress_get_percentage_from_value().
2003-04-02 21:00:41 +00:00
Dmitry Mastrukov
4a50e7a17a be.po: Updated Belarusian translation from Belarusian team <i18n@mova.org>. 2003-04-02 04:01:33 +00:00
Owen Taylor
192167b0f8 Exploit the fact that all our filters are separable to simplify the
Tue Apr  1 15:33:51 2003  Owen Taylor  <otaylor@redhat.com>

        * pixops/pixops.c (make_weights): Exploit the fact that all
        our filters are separable to simplify the calculation of
        the weight tables. (Based on a patch from Brian Cameron.)

        * pixops/Makefile.am pixbuf-transform-math.ltx:
        Add a short article describing how the math in pixops.c
        works.
2003-04-01 20:57:25 +00:00
Matthias Clasen
01bb2521fa Fix formatting of examples.
* gtk/tmpl/gtkmessagedialog.sgml: Fix formatting of examples.
2003-03-31 22:41:55 +00:00
Matthias Clasen
44dff2b540 Fix docs. (#109510, Noah Levitt)
2003-04-01  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkimcontext.c (gtk_im_context_focus_in): Fix docs.
	(#109510, Noah Levitt)
2003-03-31 22:37:04 +00:00
Matthias Clasen
b10031de0d Fix the example. (#109563)
2003-04-01  Matthias Clasen  <maclas@gmx.de>

	* gtk/tmpl/gtkfilesel.sgml: Fix the example.  (#109563)
2003-03-31 22:26:32 +00:00
Raphael Finkel
f73236e378 Updated Yiddish translation by Raphael Finkel <raphael@cs.uky.edu>.
2003-03-31  Raphael Finkel <raphael@cs.uky.edu>

	* yi.po: Updated Yiddish translation by
	Raphael Finkel <raphael@cs.uky.edu>.
2003-03-31 20:51:51 +00:00
Jonathan Blandford
bc480055d1 null initialize reorder's members so Purify won't complain.
Mon Mar 31 13:52:13 2003  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkrbtree.c (_gtk_rbtree_reorder): null initialize reorder's
	  members so Purify won't complain.

	* gtk/gtkliststore.c (gtk_list_store_sort): ditto.
2003-03-31 19:51:48 +00:00
Jonathan Blandford
89911e24da null initialize reorder's members so Purify won't complain.
Mon Mar 31 13:52:13 2003  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkrbtree.c (_gtk_rbtree_reorder): null initialize reorder's
	members so Purify won't complain.
2003-03-31 19:44:06 +00:00
Matthias Clasen
60ea9cad6f Add a new property, role, corresponding to gtk_window_[gs]et_role().
2003-03-31  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkwindow.c: Add a new property, role, corresponding to
	gtk_window_[gs]et_role().  (#93904)
2003-03-31 18:07:00 +00:00
Tor Lillqvist
6db39098cc Actually commit updates I thought I already had committed. (#108818) 2003-03-31 17:54:47 +00:00
Jonathan Blandford
3b30570aad fix crash. Patch from Markus Lausser <sgop@users.sourceforge.net>
Sun Mar 30 03:57:42 2003  Jonathan Blandford  <jrb@gnome.org>

	* gtk/gtktreeselection.c (gtk_tree_selection_get_selected_rows):
	fix crash.  Patch from Markus Lausser <sgop@users.sourceforge.net>
2003-03-30 09:15:13 +00:00
Matthias Clasen
e042bc63dd Set state of labels back to normal before reparenting back. (#102387)
2003-03-29  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Set state
	of labels back to normal before reparenting back.  (#102387)
2003-03-29 00:48:28 +00:00
Matthias Clasen
b9c6a4fd2a Set a default window title to match the GtkFontSelectionDialog behavior.
2003-03-29  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): Set
	a default window title to match the GtkFontSelectionDialog behavior.

	(gtk_color_selection_dialog_new): Don't call
	gtk_window_set_title() if title is NULL.  (bug #101975, Daniel Elstner)
2003-03-29 00:44:29 +00:00
Matthias Clasen
490ebddc8c Fix for bug #78499:
2003-03-29  Matthias Clasen  <maclas@gmx.de>

	Fix for bug #78499:

	* gtk/gtkentry.h (struct _GtkEntry): Add flags select_words and
	select_lines.

	* gtk/gtkentry.c (gtk_entry_button_press): Set select_words and
	select_lines on double/triple click.

	* gtk/gtkentry.c (gtk_entry_motion_notify): Implement
	select-by-words and select-by-lines behaviour.
2003-03-29 00:39:23 +00:00
Matthias Clasen
bdd6e817d3 Fix the previous commit. 2003-03-29 00:19:50 +00:00
Matthias Clasen
feefa270e3 Fixes for bug #56248:
2003-03-29  Matthias Clasen  <maclas@gmx.de>

        Fixes for bug #56248:

	* gtk/gtknotebook.c (stop_scrolling): New function to remove the
	timer and queue a redraw.
	(gtk_notebook_grab_notify):
	(gtk_notebook_state_changed): New functions to call stop_scrolling()
	if necessary.
	(gtk_notebook_button_release): Use stop_scrolling().
	(gtk_notebook_draw_arrow): Fix drawing of insensitive arrows.

	* gtk/gtkrange.c (stop_scrolling): New function to remove the
	grab, remove the timer and queue a redraw.
	(gtk_range_grab_notify):
	(gtk_range_state_changed): New functions to call stop_scrolling()
	if necessary.
	(gtk_range_button_release): Use stop_scrolling().

	* gtk/gtkspinbutton.c (gtk_spin_button_grab_notify):
	(gtk_spin_button_state_changed): Redraw after stop_spinning.
	(gtk_spin_button_stop_spinning): Reset click_child to correct the
	drawing of the arrows.
	(gtk_spin_button_button_release): Use a local copy of click_child,
	since stop_spinning() resets it.
2003-03-29 00:11:32 +00:00
Matthias Clasen
357833d9a3 Add C-A-PgUp and C-A-PgDown as alternatives to the A-less variants.
2003-03-29  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtknotebook.c (gtk_notebook_class_init): Add C-A-PgUp and
	C-A-PgDown as alternatives to the A-less variants.  (#97860)
2003-03-28 23:44:23 +00:00
Owen Taylor
b4c81288e4 Finish monitoring, add a TODO, fill in details in README, fix some missing finalization chainups 2003-03-27 00:10:25 +00:00
Christian Rose
74d32c9a86 Updated Yiddish translation by Raphael Finkel <raphael@cs.uky.edu>.
2003-03-26  Christian Rose  <menthos@menthos.com>

	* yi.po: Updated Yiddish translation by
	Raphael Finkel <raphael@cs.uky.edu>.
2003-03-26 21:30:31 +00:00
Owen Taylor
79491c1d25 Add a construct-only 'file_system' property, split test case into testfilechooser, testfilechooser-vfs 2003-03-26 17:09:26 +00:00
Owen Taylor
5ef90224aa - Add GnomeVFS backend
- Add gtk_file_info_get_display_key()
- Start switching from file_added => files_added
- Switch over to Nautilus-like Loading.../Empty
2003-03-26 16:24:35 +00:00
Sven Neumann
b33894c5a5 rewrote the function that does node and arrow prelighting, queue all
2003-03-26  Sven Neumann  <sven@gimp.org>

	* gtk/gtktreeview.c: rewrote the function that does node and arrow
	prelighting, queue all redraws from here (Fixes bug #108792).
2003-03-26 13:41:00 +00:00
Owen Taylor
bb320fcb5b Add GtkFileSystem::parse, and a chooser entry with completion 2003-03-25 00:11:06 +00:00
Owen Taylor
74cb697ef3 Make incrememtal searching work, some bug fixes 2003-03-24 15:41:40 +00:00
Pablo Gonzalo del Campo
0e572e4a77 Updated Spanish translation by Carlos Perelló Marín
2003-03-24  Pablo Gonzalo del Campo  <pablodc@bigfoot.com>

	* es.po: Updated Spanish translation by
          Carlos Perelló Marín <carlos@gnome-db.org>.
2003-03-24 13:35:41 +00:00
Richard Kinder
e5a153df95 Fix for #108788 - GError set to FALSE rather than NULL. 2003-03-24 02:31:30 +00:00
Christian Rose
758cdc5b18 Updated Yiddish translation by Raphael Finkel <raphael@cs.uky.edu>.
2003-03-23  Christian Rose  <menthos@menthos.com>

	* yi.po: Updated Yiddish translation by
	Raphael Finkel <raphael@cs.uky.edu>.
2003-03-23 02:18:29 +00:00
Michael Natterer
a5a2846731 copy stock_color_picker_25.png, don't copy stock_save_24.png twice.
2003-03-22  Michael Natterer  <mitch@gimp.org>

	* gtk/Makefile.am: copy stock_color_picker_25.png, don't copy
	stock_save_24.png twice.

	* gtk/tmpl/gtkstock.sgml: use it for GTK_STOCK_COLOR_PICKER
	instead of stock_colorselector_24.png.
2003-03-22 19:13:07 +00:00
Owen Taylor
fe1c0a8bfd Add sorting, a size column.
Try making the tree view on the left auto-expand/collapse when
  the selection changes.
Some bug fixes.
2003-03-21 23:59:22 +00:00
Owen Taylor
d9748614f1 Add some documentation comments, fix some missing statics 2003-03-21 21:26:38 +00:00
813 changed files with 474972 additions and 229034 deletions

7021
ChangeLog

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -22,8 +22,8 @@ GTK+ requires the following packages:
Simple install procedure
========================
% gzip -cd gtk+-2.2.0.tar.gz | tar xvf - # unpack the sources
% cd gtk+-2.2.0 # change to the toplevel directory
% gzip -cd gtk+-2.3.2.tar.gz | tar xvf - # unpack the sources
% cd gtk+-2.3.2 # change to the toplevel directory
% ./configure # run the `configure' script
% make # build GTK
[ Become root if necessary ]
@@ -35,7 +35,7 @@ The Details
Complete information about installing GTK+ and related libraries can be found
in the file:
docs/reference/gtk/docs/reference/gtk/html/gtk-building.html
docs/reference/gtk/html/gtk-building.html
Or online at:

View File

@@ -35,7 +35,7 @@ The Details
Complete information about installing GTK+ and related libraries can be found
in the file:
docs/reference/gtk/docs/reference/gtk/html/gtk-building.html
docs/reference/gtk/html/gtk-building.html
Or online at:

View File

@@ -1,10 +1,10 @@
## Makefile.am for GTK+
SRC_SUBDIRS = gdk-pixbuf gdk gtk modules demos tests contrib
SUBDIRS = po $(SRC_SUBDIRS) docs build m4macros
SUBDIRS = po po-properties $(SRC_SUBDIRS) docs build m4macros
# require automake 1.4
AUTOMAKE_OPTIONS = 1.4
AUTOMAKE_OPTIONS = 1.7
EXTRA_DIST = \
HACKING \
@@ -16,6 +16,7 @@ EXTRA_DIST = \
README.cvs-commits \
README.win32 \
config.h.win32 \
makefile.msc \
gtk-zip.sh.in \
sanitize-la.sh \
po/README.translators \
@@ -148,6 +149,10 @@ install-data-hook:
rm -f gdk-2.0.pc && cp -f gdk-$(GDKTARGET)-2.0.pc gdk-2.0.pc && \
rm -f gtk+-2.0.pc && cp -f gtk+-$(GDKTARGET)-2.0.pc gtk+-2.0.pc)
uninstall-local:
rm -f $(DESTDIR)$(pkgconfigdir)/gdk-2.0.pc
rm -f $(DESTDIR)$(pkgconfigdir)/gtk+-2.0.pc
dist-hook:
if test -f $(srcdir)/INSTALL.in && test -f $(srcdir)/README.in ; then \
CONFIG_FILES="INSTALL:$(srcdir)/INSTALL.in README:$(srcdir)/README.in" \
@@ -181,26 +186,4 @@ snapshot:
$(MAKE) dist distdir=$(PACKAGE)-snap`date +"%Y%m%d"`
# This is a version of the automake-1.4 distcheck rule modified
# to pass --enable-gtk-doc to ./configure
#
mydistcheck: dist
-rm -rf $(distdir)
GZIP=$(GZIP_ENV) $(TAR) zxf $(distdir).tar.gz
mkdir $(distdir)/=build
mkdir $(distdir)/=inst
dc_install_base=`cd $(distdir)/=inst && pwd`; \
cd $(distdir)/=build \
&& ../configure --srcdir=.. --prefix=$$dc_install_base --enable-gtk-doc \
&& $(MAKE) $(AM_MAKEFLAGS) \
&& $(MAKE) $(AM_MAKEFLAGS) dvi \
&& $(MAKE) $(AM_MAKEFLAGS) check \
&& $(MAKE) $(AM_MAKEFLAGS) install \
&& $(MAKE) $(AM_MAKEFLAGS) installcheck \
&& $(MAKE) $(AM_MAKEFLAGS) dist
-rm -rf $(distdir)
@banner="$(distdir).tar.gz is ready for distribution"; \
dashes=`echo "$$banner" | sed s/./=/g`; \
echo "$$dashes"; \
echo "$$banner"; \
echo "$$dashes"
DISTCHECK_CONFIGURE_FLAGS = --enable-gtk-doc

447
NEWS
View File

@@ -1,3 +1,450 @@
Overview of Changes from GTK+ 2.3.1 to GTK+ 2.3.2
=================================================
* GdkPixbuf
- Add functions to save pixbufs to non-file locations. [Tim Evans]
- Add a function to determine the type and size of a file without
loading it completely. [Matthias Clasen]
- Turn pixbuf attributes into construct-only properties. [Matthias]
- Fix building gdk-pixbuf with --disable-modules --with-included-loaders.
[Matthias, Owen Taylor]
* Fix the logic for changing the toplevelness of a window. [Soeren Sandmann]
* Do not interpret distant clicks as double clicks, using a
new double-click-distance setting. [Matthias]
* Improve the GDK API for dealing with group leaders. [Matthias]
* Utility function for application launching in multi-screen scenarios.
[Mark McLoughlin]
* Support big and small and alpha-blended icons under Win32. [Tim Evans]
* Misc Win32 improvements [Tor Lillquist, Hans]
* GtkFileChooser [Federico]
- Fix new filename entry in Save mode [Jan Arne Petersen]
- Improved the look of GtkFileChooserDefault. [Tuomas Kuosmanen]
- Added support for file system volumes such as CD-ROMs,
floppies, and network shares.
- Add a "New Folder" button for Save mode in GtkFileChooser.
- Better support for Folder mode.
* GtkTreeView
- Speed up by adding a fixed height mode. [Kristian Rietveld]
- Add a single-paragraph mode and a language property to
GtkCellRendererText [Kristian Rietveld]
- Add a editing-canceled signal to GtkCellRenderer [Federico Mena Quintero]
- Misc GtkTreeView bug fixes [Kristian, Soeren, Jonathan Blandford]
* Add a way to list the supported targets of a clipboard. [Dom Lachowicz]
* Add stock icons: harddisk, indent, unindent. [Hans Breuer, Jody Goldberg]
* Improve the GtkCalendar drawing code. [Matthias]
* GtkCalendar supports starting the week on any day [Matthias]
* Make GtkToolbar compatible with 2.2 again [Soeren]
* Misc GtkToolbar fixes and API improvements [Christian Persch,
Olivar Avramchenko, Jody, Soeren]
* Misc GtkUIManager fixes and API improvements. [Jody, Matthias, Jeff Franks]
* Add a way to lock individual accelerator paths [Matthias]
* Add gtk_menu_shell_cancel() to emit the "cancel" signal on
a menu shell. [Matthias]
* Fix dynamic menus. [Matthias, Michael Meeks]
* Add xalign, yalign properties to GtkButton. [Jody]
* Implement or improve RTL support in GtkComboBox, GtkCellView,
GtkViewport [Semion Chichelnitsky, Matthias, Kristian]
* Support for "no focus" windows. [Matthias]
* Documentation improvements [Matthias, Federico, Manish, Murray Cumming,
Theppitak Karoonboonyanan]
* FAQ updates [Tony Gale]
* Split the translations into two domains: ui strings and
error messages go to gtk20, property nicks and blurbs to
gtk20-properties. [Matthias]
* New and updated translations (af,ar,bn,br,cs,cy,da,de,es,et,fa,fr,ga,hr,
it,ja,ko,lt,mn,ms,nl,nn,no,pl,pt,pt_BR,ru,sr,sr@Latn,sv,sq,wa)
Other contributors: Olivier Andrieu, Herman Bloggs, Anders Carlsson,
Marco Pesenti Gritti, Bill Haneman, Alexander Larsson, Noah Levitt,
Kjartan Maraas, Evan Martin, Tim-Philipp Müller, Christian Neumair,
Joshua N Pritikin, Sebastian Rittau, Daniel Rogers, Manish Singh,
Torsten Schoenfeld, Alexander Winston, Johannes Weißl, Morten Welinder,
Adam Wright
Overview of Changes in GTK+-2.3.1
=================================
* Improve sanity checks on gdk-pixbuf loaders [Matthias Clasen]
* GDK
- Add GDK_DEBUG=xinerama that fakes a 2x2 Xinerama mode [Matthias]
- Make gdk_drawable_copy_to_image public [Matthias, Peter Zelezny]
* Misc Win32 bug fixes [Tor Lillqvist, John Ehresman, Tim Evans]
* Action-based menu/toolbar API [Matthias]
- Add "name" construct-only parameter to GtkActionGroup
- Bug fixes [Marco Pesenti Gritti, Christian Persch]
* Change ranges for Saturation/Value to be 0-100 in GtkColorSelection
[Gregory Merchan, Matthias]
* GtkComboBox [Kristian Rietveld]
- Make model and text_column properties not construct-only [Murray Cumming]
- Fix sizing
- Add mouse wheel support [Matthias]
* Various GtkEntryCompletion bug fixes [Kristian, Piers Cornwell, Marco]
* GtkExpander
- Add a "use_markup" property, gtk_expander_set/get_use_markup
- Fix bugs when unrealizing/destroying [Mark McLoughlin]
* GtkFileChooser [Federico Mena Quintero]
- Add a GtkFileSystemWin32 [Hans]
- Use GtkEntryCompletion in GtkFileChooserEntry
- Add a render_icon to GtkFileSystemIface to allow the
GnomeVFS backend to supply appropriate icons
- Improve selection handling in bookmarks list [Federico, Owen Taylor]
- Support drops on the bookmarks list
- Display error dialogs on failed operations
- Many UI tweaks [Federico, Iain Holmes,Hans-Petter Jansson]
- Ignore filters for folders [Dave Malcom]
- Misc file chooser bug fixes [Owen, Christian Persch, Taavi Talvik]
* Menus
- Make torn-off menus transient-for the window they were torn from
[Matthias, Jon-Kare Hellan]
- Fix menu positioning for Xinerama, add gtk_menu_set_monitor()
for use by position functions [Matthias]
- Tweak menu delay parameters, add a default width [Soeren Sandmann]
* Make g_message_dialog_new_with_markup() automatically escape
arguments, add g_message_dialog_set_markup() [Owen]
* Add read-only min-position/max-position properties to GtkPaned
* GtkToolbar [Soeren]
- Support gaps in the toolbar with expand=true/draw=false separators
- Improve drop-location preview handling
- Take a GtkRadioToolButton as the parameter to
gtk_radio_tool_button_new_from_widget [Murray Cumming]
- Many misc toolbar bug fixes [Soeren, Marco]
* GtkTreeView bug fixes [Morten Welinder, David Hampton]
* Add gtk_window_is_active()/gtk_has_toplevel_focus() getters
to go along with properties [Owen Taylor]
* Add gtk_widget_can_activate_accel() / ::can-activate-accel
signal to fix handling of accelerators on insensitive parent
menu-items. [Tim Janik]. (*Note*: the details here will probably
change, since similar problems for mnemonics aren't handled.)
* Implement or improve RTL support in GtkAlignment, GtkCombo,
GtkNotebook, GtkScrolledWindow, GtkTreeView, GtkViewport.
[IBM L3 NLS Support Team]
* Fix string setters for self-assignment [Matthias, Soeren]
* Finish multi-head handling in gtk-demo [Matthias]
* Fix install rules for generating gdk-pixbuf.loaders [Manish Singh]
* Reference doc improvements [Matthias, Soeren,
Federico Mena Quintero, Michael Natterer, Owen Taylor, Olexiy Avramchenko]
* FAQ updates [Tony Gale]
* New and updated translations (ca,cs,cy,de,el,es,ja,mn,nl,nn,no,pl,pt,sr,
sr@Latn,sv,th)
Other contributors: Jorn Baayen,Damon Chaplin, Jeff Franks, Diego Gonzalez,
Richard Hult, Egmont Koblinger, Thomas Leonard, Ross McFarland,
Padraig O'Briain, Tomas Ögren, Danilo Segan
Overview of Changes from GTK+-2.2.x to GTK+-2.3.0
=================================================
* New Widgets
- GtkFileChooser: a replacement for GtkFileSelection with
replaceable backends, many new API features, better user
interface (UI is still a work in progress) [Owen Taylor,
Federico Mena Quintero]
- New combo box widgets: GtkComboBox, GtkComboBoxEntry [Kristian Rietveld]
- New "disclosure triangle" widget: GtkExpander [Marc McLoughlin]
- "Picker button" widgets based on code from libgnomeui:
GtkFontButton, GtkColorButton [Matthias Clasen]
* Widget improvements:
- Autocompletion for entries: GtkEntryCompletion [Kristian]
- Add separate padding for all 4 sides of GtkAlignment [Murray Cumming]
- Add input-only event boxes for trapping events [Alex Larsson]
- Support RTL flipping for GtkHPaned, tab navigation [Soeren, Matthias]
- Support up to four scroll arrows on GtkNotebook and make which
ones are displayed themeable. [Matthias]
- GtkCalendar improvements: make the arrows spin, support RTL flipping,
automatic week start selection, DND support, improve API
for setting options [Matthias]; mousewheel support [Abigail Brady]
- New properties: GtkButton::focus_on_click, GtkCheckMenuItem::draw_as_radio
[Soeren, Matthias]
- New functions: gtk_window_set_default_icon(),
gtk_message_dialog_add_buttons(), gtk_button_box_get_child_secondary()
[Matthias]
- Add missing "role", "decorated", "gravity" properties for GtkWindow,
"has_resize_grip" for GtkStatusBar. [Matthias]
- Add child properties for GtkPaned [Matthias, Soeren]
* Menus
- New action-based menu API: GtkUIManager, GtkActionGroup,
GtkAction, etc. [James Henstridge, Matthias, Soeren Sandmann,
Marco Pesenti Gritti, Philip Langdale]
- Support for tabular menus [Kristian]
- New positioning algorithm for popup menus [Soeren]
* GtkTextView [Matthias]
- Add properties "accepts_tab" [Soeren], "overwrite" property
[Jeroen Zwarepoorte], "buffer"
- Add gtk_text_buffer_select_range()
- Implement drag-selection by words/lines (also for Gtkentry)
- Some fixes to invisible text handling
- Add support for GTK_WRAP_WORD_CHAR [David Brigada]
- Clean up handling of horizontal paging
- Fix scrolling with non-visible cursor
- Add internals documentation [Havoc Pennington]
* GtkToolbar [Soeren]
- Add a more constistent and extensible toolbar API; preserve
old API for backwards compatibility [James, Anders Carlsson, Owen]
- Support for sliding buttons like OS X
- Keyboard navigation
- Support "priority text"
- Overflow menu
- Better handling of really wide buttons [David Bordoley]
- Drawing improvements
- Support context menu
* GtkTreeView [Kristian Rietveld]
- Handle RTL [Matthias, Jonathan]
- Add expand flag to column packing parameters [Jonathan, Kristian]
- gtk_tree_path_free now silently returns on NULL paths
- Move row reference updating code to closures
- Fix TreeView DnD: make TreeStore DnD work, make drops on empty views work,
get rid of gtk-tree-model-drop-append.
- Add a filtering tree model: GtkTreeModelFilter [Kristian]
* gdk-pixbuf
- Add a loader for PCX files [Josh Beam]
- Improve calculation of filter weights for scaling [Brian Cameron, Owen]
- Support TGA files with arbitrary origins [Matthias]
- Add gdk_pixbuf_loader_new_with_mime_type() [Dom Lachowicz]
gdk_pixbuf_new_from_file_at_size() [Dom, Owen, Matthias]
- Add saving support for ICO and CUR
- Improve handling of GIFs with oversized frames [Matthias]
* GDK:
- Support for full-color / alpha-channel cursors [Matthias]
- Remove support for non-X fonts and for pango-1.0; always require Xft2 [Owen]
- Fix handling of recursive calls to gdk_window_begin_paint() [Soeren]
- Many small changes to reduce round trips on startup;
add gdk_display_flush() [Owen]
- Use Xlib asynchronous APIs to reduce roundtrips on startup
and during DND [Owen]
- Other changes to improve DND for large-latency connections [Owen]
- Add support for EWMH "above" and "below" states [Manuel Clos] (also
in GtkWindow)
- Add Add GDK_MOUSE_DEVICE envvar for linux-fb backend [Marc Welz]
- Other small linux-fb fixes [Eric Warmenhoven]
* Miscellaneous
- Add support for named themable icons; use this facility to
provide the default stock icon images [Owen Taylor, based
on code by Alex Larsson]
- Add gtk_widget_queue_resize_no_redraw() for more efficient
resizing; use for GtkTextView. Redraw less on focus changes. [Soeren]
- Add gtk_widget_queue_resize_no_redraw() [Soeren]
- Default theme improvements, especially for menus. Add some
more style properties. [Soeren]
- Add authentication stock icon [Matthias, art by Jakub Steiner]
- Allow "none" to be set for input method GtkSettings [Hidetoshi Tajima]
- Convert build system to automake-1.7; many cleanups and
improvements. [James Henstridge, Owen]
- Win32 fixes for new widgets [Hans]
- Add right-to-left variants of some stock icons [Matthias]
* Documentation
- Use XML source for man pages; add man pages for tools that didn't
have them before [Matthias]
- Tutorial improvements [Sebasitian Rittau, Tony Gale, Roger Leigh, Matthias]
- FAQ improvements [Tony, Gonzalo Odiard, Owen]
- Misc documentation improvements [Matthias, Frederic Lespez, Tomas Ogren,
Martin Pool, Mariano Suarez-Alvarez]
* Deprecations
- GtkItemFactory [Replaced by GtkUIManager]
- GtkCombo, GtkOptionMenu [Replaced by GtkComboBox]
- Miscellaneous functions that were renamed in
GTK+-2.0 and GTK+-2.2 [Matthias, Manish Singh, Soeren]
Other contributors: Krasimir Angelov, Archit Baweja, Sebastien Bacher,
Steve Chaplin, John Darrington, Daniel Elstner, Marco Pesenti Gritti,
Jody Goldberg, David Hampton, Richard Kinder, Christian Persch,
Roozbeh Pournader, Christian Reis, Christian Rose, Joe Shaw,
Vasilis Vasaitis, Morten Welinder
----------------------------------------------------------------------
Overview of Changes in GTK+ 2.2.4
=================================
* Revert TreeView fix which broke context menus in different applications
[Kristian Rietveld]
* Typo fixes [Kjartan Maraas]
* Make pressing END not put the menu in scrolling mode [Kris]
* Misc bug fixes [Tor Lillqvist, Bruce Hochstetler, Kjartan, Tony Gale]
* New and updated translations (sq, cy, hi, nl, de, es, zh_CN, ja, no, el)
Overview of Changes in GTK+ 2.2.3
=================================
* GdkPixbuf [Matthias Clasen]
- Fix some problems with overflows when scaling down [Tomas Ögren]
- Many GIF bug fixes [Matthias, Federico Mena Quintero]
- Prefer 32-bpp ICOs, fix bugs with them
- Fix problem with absolute filenames and gdk-pixbuf-query-loaders
[Jens Elker]
- Make gdk-pixbuf-csource include alignment magic [Brian Cameron]
* Win32 [Tor Lillqvist]
- Add multiple monitor support
- Major event and key handling rewrite, including IME fixes
- Fix handling of toplevel window positions
- Add support for all window geometry hints (gridded geometry, etc.)
- Fix DND to ignore drag window [Tony M Brown, Herman Bloggs]
- Fix GdkImage memory leak [J. Ali Harlow]
- Remove leftover OwnerGrabButtonMask emulation (fixes lots)
- Misc bug fixes [Many from Hans Breuer, Tim Evans]
- Build fixes and improvements [Peter Zelezny]
* X11
- Fix extremely common crash where we interpreted the timestamp
field of a XKB event as a window ID and found a pixmap that matched.
[Owen Taylor, with essential backtrace from Kjartan Maraas]
- Fix CapsLock and NumLock for non-XKB [Robert Basch]
- Fix problems with, eg. Ctrl-Alt-Backspace hiding Cntrl-Backspace [Owen]
- Workaround Xinerama servers reporting wrong depths [Owen]
* GtkTreeView [Kristian Rietveld]
- Fix scrolling once more [Pedro Gimeno, Michael Natterer, Timo Sirainen]
- Don't get confused by the Control key when handling selection
from an accelerator like <Control>B [Michael Natterer]
- Many misc fixes [Matthias, Marco Pesenti Gritti, Tim Janik, Alex Larsson,
Tim-Philipp Müller, Michael Natterer, Josh Parsons, Yann Rouillard,
Rene Seindel, Owen Taylor, Alp Toker, Morten Welinder]
* Input methods
- Handle input methods exiting and starting while the
app is running [Hidetoshi Tajima]
- Fix infinite loop when closing input methods [Owen,
Takuro Ashie, Hidetoshi]
- Add a 'cedilla' input method with c+acute => cedilla and use
as the default for languages that use cedilla. [Gustavo De Nardin,
Owen, Fco. Javier F. Serrador]
- Fix status window for multihead [Owen, James Su]
- Remember imcontext attributes when switching methods [Owen,
Botond Botyanszki]
* GtkFileSelection [Owen]
- Fix selection of "UntitledN" on initial map [Mark Finlay]
- Fix an annoying bug with cursor positioning on failed completion
- Misc Fixes [Owen, Tor]
* Other widgets
- Fix problem with GtkOptionMenus coming up in the wrong place [Kristian]
- Fix problem with spinbuttons not getting enough space [Morten Welinder,
Kristian]
- Fix an infinite loop when resizing GtkTextView [Owen, Frederic Crozat]
- Don't include menu labels in gtk_notebook_forall [Owen]
- Fix problem with XEMBED (GtkPlug) clients that don't take focus stealing
focus [Owen]
- Accept color drops with wrong format from KDE [Matthias]
* Fix problem from gnome-theme-manager playing tricks and
making event->window a pixmap. [Anders Carlsson]
* Ignore Caps-lock when matching accelerators
* Fix 5-year-old bug where toplevels didn't fully refresh properly
on theme change [Owen, Rajkumar Siva]
* Don't require precompiled gdk-pixbuf-csource when cross-compiling
from a tarball [Owen]
* Documentation improvements [Matthias, Noah Levitt, Tor, Doug Quale,
Morten Welinder]
* Misc bug fixes [Keith Bissett, Botond Botyanszki, Damien Carbery,
Arno Charlet, Felipe Heidrich, Charles Kerr, George Lebl, Noah, Tor,
Callum McKenzie, Michael Meeks, Denis Mikhalkin, Thomas Mirlacher,
Kristian, Masahiro Sakai, Soeren Sandmann, Benedikt Spranger, Owen,
Luis Villa]
* New and updated translations (ar,az,cs,cy,be,de,es,fi,fr,he,hi,hu,id,is,it,
ko,lt,ml,mn,nl,ne,no,pl,pt,pt_BR,ru,sk,sr,sr@Latn,ta,wa,zh_TW,zh_CN)
Overview of Changes in GTK+ 2.2.2
=================================
* GdkPixbuf [Matthias Clasen]
- Fix animation of slow-loading progressive GIFS
- Fix long-standing animated GIF display bug with transparency
- Misc bug and portability fixes [Rick Jones, Tim Mooney, Marijn Ross]
* GDK [Owen Taylor]
- Draw continuous underlines between Pango layout runs when
possible [Kang Jeong-Hee]
- Fix gdk_pixbuf_from_drawable() for big endian [Christian Petig]
Major rewrite of 16-bit handling for pixbuf_from_drawable()
* X11 backend [Owen]
- Fix build on X11R5 [Albert Chin]
- Fix switching keyboard layouts while running [Egmont Koblinger]
- Work around RENDER extension bugs on certain Sun X servers [Morten Welinder]
- Zero unused fields in client messages we send Lubos Lunak]
- Fix occasional segfault when drawing pixbufs [Hans Petter Jansson]
- Fix wrong initializaiton that was keeping XShm from being used.
* Win32 backend [Tor Lillqvist]
- Tweak line drawing
- Mouse/cursor fixes [Allin Cottrell]
- Better handling of floppy drives in GtkFileSelection
- Misc fixes [Arnaud Charlet, Cedric Gustin, Martyn Russell]
* Input methods [Hidetoshi Tajima]
- Add rules for Greek accents to GtkIMContextSimple [Vasilis Vasaitis]
- Fix sorting of rules in GtkIMContextSimple [Vasilis]
- Miscellaneous GtkIMContextXIM fixes
- Fix translation of input context names
* Fix keyboard accelerators/bindings on Numeric Keypad [Owen, Olivier Ripoll]
* Add Delete to GtkEntry context menu, Delete/Select All
to GtkTextView context menu [Matthias]
* Keynav tweaks in GtkFileSelection, GtkColorSel [Matthias]
* Add C-A-PgUp/Down as alternative notebook page switching keys [Matthias]
* GtkTextView
- Fix redrawing on color-only changes [Owen, Gustavo Giráldez]
- Don't scroll to cursor on focus in [Paolo Maggi]
- Fix spot location reported to input method [Owen, TOKUNAGA Hiroyuki,
Yao Zhang]
- Miscellaneous bug fixes [Torbjörn Andersson, Matthias, Manual Clos,
Padraig O'Briain, Owen]
* GtkTreeView [Kristian Rietveld]
- Fix prelighting [Sven Neumann]
- Set drag cursor earlier to allow apps to override [Daniel Elstner]
- Speed up insertions into GtkTreeModelSort [Owen, Jonathan Blandford]
- Get background/cell area handling right in GtkTreeViewColumn [Vasco
Alexandre da Silva Costa]
- Bug fixes [Benjamin Bayart, Jonathan Blandford, Peter Bloomfield,
Dave Cook, Felipe Heidrich, Richard Hult, Markus Lausser, Michael Natterer,
Mariano Suarez-Alvarez, Owen]
* Fix handling of border width for GtkToolbar [Rodney Dawes]
* Rewrite adjustment handling of GtkViewport, fixing many bugs
[Owen, Thomas Leonard, Michael]
* Misc bug fixes [Dennis Björklund, Jonathan, Dave Bordoley, Rich Burridge,
Anders Carlsson, Arnaud, Matthias, Vasco Alexandre da Silva Costa,
Tim Evans, Larry Ewing, John Finlay, Jeff Franks, Jody Goldberg,
Jason D. Hildebrand, Charles Kerr, Alex Larsson, Noah Levitt, Xan Lopez,
Loban Rahman, Richard Reich, Soeren Sandmann, Charles Schmidt,
Rajkumar Siva, Owen, Sergey V. Udaltsov, Morten Welinder, Michael Zucchi]
* Code cleanups [Matthias, Glynn Foster, Britton Kerin, Sven Neumann,
Doug Quale, Manish Singh, Morten Welinder]
* Switch to using libtool-1.5
* Build fixes [Matthias, J. Ali Harlow, Rich Kinder, Jon Nall, Sven,
Christian Rose]
* Documentation improvements [Matthias, Noah Levitt, Sven Neumann]
* New and updated translations (am,az,be,ca,cs,cy,da,de,el,es,fa,fi,fr,id,
it,ko,li,ml,mn,ms,nl,no,pl,pt,sr,sr@Latn,sv,ta,uk,yi,zh_TW)
Overview of Changes in GTK+ 2.2.1
=================================
* Win32 [Tor Lillqvist]
- Improve setting of window position / decorations
- Implement gdk_pixmap_foreign_new() [Naofumi Yasufuku]
- Fix various file selection bugs
- Improve scheme for locating pixbuf loader modules
- Miscellaneous fixes [Alex Shaduri, Kenichi SUTO, Ed Woods]
* GtkTreeView [Kristian Rietveld]
- made GtkTreeSortable work as the documentation advertises [Jarek Dukat]
- fixed gtk_tree_view_set_sort_column_id so you can disable sorting [Soeren
Sandmann, Jarek Dukat]
- TreeView search now works on all values transformable by GValue and not
just strings [Muktha Narayan]
- _move/_swap fixage in the Stores [Matthew Tuck, Paolo Maggi]
- a lot of misc bug fixes [Alex Duggan, Carlos Garnacho Parro, Hans Petter
Jansson, Kjartan Maraas, Soeren, Dave Camp, Murray Cumming, Dave Cook,
Gaël Le Mignot, Vasco Alexandre da Silva Costa]
* GtkTextView [Matthias Clasen]
- Fix keynav with invisible cursor
- Fix misdrawing of cursor [Owen Taylor] and selection
- Many miscellaneous fixes [Narayana Pattipati, Daniel Elstner]
* Fix problem with accidental inclusion of a main() [Matthias]
* Documentation improvements [Matthias, Havoc Pennington]
* Fix problem with GtkColorsel and pixmap themes [Daniel]
* Fix race condition with GdkRGB in PseudoColor [Shivaram Upadhyayula]
* Warning fixes [Manish Singh]
* configure fixes [Akira Tagoh]
* New and updated translations (ca,de,es,et,ko,mn,pl,pt,vi,zh_CN)
* Miscellaneous bug fixes [Matthias, Daniel, Martin Gansser, Louis Garcia,
Tommi Komulainen, Thomas Leonard, Ian Peters, Arvind Samptur,
Soeren Sandmann, Hidetoshi Tajima, Owen]
----------------------------------------------------------------------
Overview of Changes in GTK+ 2.2.0
=================================
* Fix problem with the DND code and event filters [Bolian Yin, Owen Taylor]

26
README
View File

@@ -1,7 +1,7 @@
General Information
===================
This is GTK+ version 2.2.0. GTK+ is a multi-platform toolkit for
This is GTK+ version 2.3.2. GTK+ is a multi-platform toolkit for
creating graphical user interfaces. Offering a complete set of widgets,
GTK+ is suitable for projects ranging from small one-off projects to
complete application suites.
@@ -62,31 +62,13 @@ Release notes
from the library, on others not. In no case can applications
use these private symbols.
* GTK+-2.2 can be build either with Pango-1.0 and version 1 of
the Xft library or Pango-1.2 and version 2 of the Xft library
(Xft is used to to display anti-aliased fonts) By default, GTK+ and
Pango are built so that applications will not have explicit dependencies
on either version of Xft. To make sure that your application will be
binary compatible with future versions of GTK+:
- Do not configure Pango or GTK+ with the --enable-static or
--enable-explicit-deps options, since they will cause dependencies
on the particular version of Xft.
- Do not use Xft version 1 directly in your applications.
* GTK+-2.3 now requires version 2 of Xft; old fashioned core X
fonts are no longer supported.
* There is a bug in the Xft library in XFree86-4.1 and possibly previous
versions that causes random crashes when using the Pango Xft
backend. If you want to use Xft fonts, you should upgrade to
XFree86-4.2.
* Xft support is on by default when using Xft2 but off by
default when using Xft1. To change this default, set the
variable GDK_USE_XFT to '1' or '0'. For instance, to
turn on Xft fonts when Xft1.
GDK_USE_XFT=1
export GDK_USE_XFT
at least XFree86-4.2.
* The gdk_pixbuf_xlib library included in the contrib/ directory of GTK+
is provided on a as-is basis and has not been tested at all. No

View File

@@ -62,31 +62,13 @@ Release notes
from the library, on others not. In no case can applications
use these private symbols.
* GTK+-2.2 can be build either with Pango-1.0 and version 1 of
the Xft library or Pango-1.2 and version 2 of the Xft library
(Xft is used to to display anti-aliased fonts) By default, GTK+ and
Pango are built so that applications will not have explicit dependencies
on either version of Xft. To make sure that your application will be
binary compatible with future versions of GTK+:
- Do not configure Pango or GTK+ with the --enable-static or
--enable-explicit-deps options, since they will cause dependencies
on the particular version of Xft.
- Do not use Xft version 1 directly in your applications.
* GTK+-2.3 now requires version 2 of Xft; old fashioned core X
fonts are no longer supported.
* There is a bug in the Xft library in XFree86-4.1 and possibly previous
versions that causes random crashes when using the Pango Xft
backend. If you want to use Xft fonts, you should upgrade to
XFree86-4.2.
* Xft support is on by default when using Xft2 but off by
default when using Xft1. To change this default, set the
variable GDK_USE_XFT to '1' or '0'. For instance, to
turn on Xft fonts when Xft1.
GDK_USE_XFT=1
export GDK_USE_XFT
at least XFree86-4.2.
* The gdk_pixbuf_xlib library included in the contrib/ directory of GTK+
is provided on a as-is basis and has not been tested at all. No

View File

@@ -67,13 +67,22 @@ references to the wntab32x library from the makefile before building.
Libintl
=======
GTK wants to be built with the GNU "intl" library for
internationalisation (i18n). Get the version ported to Win32 (not a
very big deal) from the web site mentioned above. The "intl" library
as gets built as a DLL called libintl-1.dll. If you don't want any
i18n stuff, undefine ENABLE_NLS, HAVE_GETTEXT and HAVE_LIBINTL in the
config.h.win32 file, and remove references to the intl library from
the makefiles.
Before building GTK+ you must also have GNU gettext. Get prebuilt
binaries of gettext-runtime (0.12.1 or newer) from your nearest GNU
ftp mirror. If you use gcc, you will also have to edit the libintl.h
file from gettext a tiny bit: Change the
# if __GNUC__ >= 2 && !defined __APPLE_CC__ && (defined __STDC__ || defined __cplusplus)
line to
# if __GNUC__ >= 2 && !defined __APPLE_CC__ && !defined __MINGW32__ && (defined __STDC__ || defined __cplusplus)
around line 102.
If you use libtool, you will also have to copy intl.lib to libintl.a
so that libtool will find them. Alternatively, use pexports and
dlltool to generate a gcc import library.
ActiveIMM
=========

View File

@@ -10,3 +10,70 @@ AC_DEFUN([GLIB_AC_DIVERT_BEFORE_HELP],
[AC_DIVERT_PUSH(AC_DIVERSION_NOTICE)dnl
$1
AC_DIVERT_POP()])])])
# GTK_ADD_LIB(VAR,LIBNAME)
# ---------------------------------
# Helper macro to add a -lBlah to a variable, avoiding repeats
# Note that this needs to be quoted when used in an enclosing macro
AC_DEFUN([GTK_ADD_LIB],
[ case "$$1 " in
*-l$2[[\ \ ]]*) ;;
*) $1="-l$2 $$1" ;;
esac
])
# Checks the location of the XML Catalog
# Usage:
# JH_PATH_XML_CATALOG([ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
# Defines XMLCATALOG and XML_CATALOG_FILE substitutions
AC_DEFUN([JH_PATH_XML_CATALOG],
[
# check for the presence of the XML catalog
AC_ARG_WITH([xml-catalog],
AC_HELP_STRING([--with-xml-catalog=CATALOG],
[path to xml catalog to use]),,
[with_xml_catalog=/etc/xml/catalog])
jh_found_xmlcatalog=true
XML_CATALOG_FILE="$with_xml_catalog"
AC_SUBST([XML_CATALOG_FILE])
AC_MSG_CHECKING([for XML catalog ($XML_CATALOG_FILE)])
if test -f "$XML_CATALOG_FILE"; then
AC_MSG_RESULT([found])
else
jh_found_xmlcatalog=false
AC_MSG_RESULT([not found])
fi
# check for the xmlcatalog program
AC_PATH_PROG(XMLCATALOG, xmlcatalog, no)
if test "x$XMLCATALOG" = xno; then
jh_found_xmlcatalog=false
fi
if $jh_found_xmlcatalog; then
ifelse([$1],,[:],[$1])
else
ifelse([$2],,[AC_MSG_ERROR([could not find XML catalog])],[$2])
fi
])
# Checks if a particular URI appears in the XML catalog
# Usage:
# JH_CHECK_XML_CATALOG(URI, [FRIENDLY-NAME], [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
AC_DEFUN([JH_CHECK_XML_CATALOG],
[
AC_REQUIRE([JH_PATH_XML_CATALOG],[JH_PATH_XML_CATALOG(,[:])])dnl
AC_MSG_CHECKING([for ifelse([$2],,[$1],[$2]) in XML catalog])
if $jh_found_xmlcatalog && \
AC_RUN_LOG([$XMLCATALOG --noout "$XML_CATALOG_FILE" "$1" >&2]); then
AC_MSG_RESULT([found])
ifelse([$3],,,[$3
])dnl
else
AC_MSG_RESULT([not found])
ifelse([$4],,
[AC_MSG_ERROR([could not find ifelse([$2],,[$1],[$2]) in XML catalog])],
[$4])
fi
])

View File

@@ -13,10 +13,10 @@ FILE=gdk
DIE=0
have_libtool=false
if libtool --version < /dev/null > /dev/null 2>&1 ; then
libtool_version=`libtoolize --version | libtoolize --version | sed 's/^[^0-9]*\([0-9.][0-9.]*\).*/\1/'`
if libtoolize --version < /dev/null > /dev/null 2>&1 ; then
libtool_version=`libtoolize --version | sed 's/^[^0-9]*\([0-9.][0-9.]*\).*/\1/'`
case $libtool_version in
1.4*)
1.4*|1.5*)
have_libtool=true
;;
esac
@@ -25,34 +25,34 @@ if $have_libtool ; then : ; else
echo
echo "You must have libtool 1.4 installed to compile $PROJECT."
echo "Install the appropriate package for your distribution,"
echo "or get the source tarball at ftp://ftp.gnu.org/pub/gnu/"
echo "or get the source tarball at http://ftp.gnu.org/gnu/libtool/"
DIE=1
fi
(gtkdocize --version) < /dev/null > /dev/null 2>&1 || {
echo
echo "You must have gtk-doc installed to compile $PROJECT."
echo "Install the appropriate package for your distribution,"
echo "or get the source tarball at http://ftp.gnome.org/pub/GNOME/sources/gtk-doc/"
DIE=1
}
(autoconf --version) < /dev/null > /dev/null 2>&1 || {
echo
echo "You must have autoconf installed to compile $PROJECT."
echo "libtool the appropriate package for your distribution,"
echo "or get the source tarball at ftp://ftp.gnu.org/pub/gnu/"
echo "Install the appropriate package for your distribution,"
echo "or get the source tarball at http://ftp.gnu.org/gnu/autoconf/"
DIE=1
}
have_automake=false
if automake-1.4 --version < /dev/null > /dev/null 2>&1 ; then
automake_version=`automake-1.4 --version | grep 'automake (GNU automake)' | sed 's/^[^0-9]*\(.*\)/\1/'`
case $automake_version in
1.2*|1.3*|1.4)
;;
*)
have_automake=true
;;
esac
fi
if $have_automake ; then : ; else
if automake-1.7 --version < /dev/null > /dev/null 2>&1 ; then
AUTOMAKE=automake-1.7
ACLOCAL=aclocal-1.7
else
echo
echo "You must have automake 1.4-p6 installed to compile $PROJECT."
echo "Get ftp://ftp.gnu.org/pub/gnu/automake/automake-1.4-p6.tar.gz"
echo "(or a newer version if it is available)"
echo "You must have automake 1.7.x installed to compile $PROJECT."
echo "Install the appropriate package for your distribution,"
echo "or get the source tarball at http://ftp.gnu.org/gnu/automake/"
DIE=1
fi
@@ -72,13 +72,9 @@ if test -z "$AUTOGEN_SUBDIR_MODE"; then
fi
fi
case $CC in
*xlc | *xlc\ * | *lcc | *lcc\ *) am_opt=--include-deps;;
esac
if test -z "$ACLOCAL_FLAGS"; then
acdir=`aclocal-1.4 --print-ac-dir`
acdir=`$ACLOCAL --print-ac-dir`
m4list="glib-2.0.m4 glib-gettext.m4"
for file in $m4list
@@ -95,13 +91,15 @@ if test -z "$ACLOCAL_FLAGS"; then
done
fi
aclocal-1.4 $ACLOCAL_FLAGS
$ACLOCAL $ACLOCAL_FLAGS || exit 1
# optionally feature autoheader
(autoheader --version) < /dev/null > /dev/null 2>&1 && autoheader
libtoolize --force || exit 1
gtkdocize || exit 1
automake-1.4 -a $am_opt
autoconf
autoheader || exit 1
$AUTOMAKE --add-missing || exit 1
autoconf || exit 1
cd $ORIGDIR
if test -z "$AUTOGEN_SUBDIR_MODE"; then
@@ -109,4 +107,4 @@ if test -z "$AUTOGEN_SUBDIR_MODE"; then
echo
echo "Now type 'make' to compile $PROJECT."
fi
fi

View File

@@ -1,8 +1,49 @@
# require autoconf 2.52
AC_PREREQ(2.52)
# Process this file with autoconf to produce a configure script.
AC_INIT(gdk/gdktypes.h)
# require autoconf 2.54
AC_PREREQ(2.54)
# Making releases:
# GTK_MICRO_VERSION += 1;
# GTK_INTERFACE_AGE += 1;
# GTK_BINARY_AGE += 1;
# if any functions have been added, set GTK_INTERFACE_AGE to 0.
# if backwards compatibility has been broken,
# set GTK_BINARY_AGE and GTK_INTERFACE_AGE to 0.
m4_define([gtk_major_version], [2])
m4_define([gtk_minor_version], [3])
m4_define([gtk_micro_version], [2])
m4_define([gtk_version],
[gtk_major_version.gtk_minor_version.gtk_micro_version])
m4_define([gtk_interface_age], [0])
m4_define([gtk_binary_age], [302])
# This is the X.Y used in -lgtk-FOO-X.Y
m4_define([gtk_api_version], [2.0])
# Define a string for the earliest version that this release has
# forward/backwards binary compatibility with. This is used for module
# locations. (Should this be backwards-compat instead?)
#
#GTK_BINARY_VERSION=$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION.$LT_CURRENT
m4_define([gtk_binary_version], [2.2.0])
# required versions of other packages
m4_define([glib_required_version], [2.3.2])
m4_define([pango_required_version], [1.2.0])
m4_define([atk_required_version], [1.0.1])
AC_INIT([gtk+], [gtk_version],
[http://bugzilla.gnome.org/enter_bug.cgi?product=gtk+],
[gtk+])
AC_CONFIG_SRCDIR([gdk/gdktypes.h])
# Save this value here, since automake will set cflags later
cflags_set=${CFLAGS+set}
AM_INIT_AUTOMAKE(no-define)
AM_CONFIG_HEADER(config.h)
#
# For each of the libraries we build, we define the following
@@ -15,31 +56,14 @@ AC_INIT(gdk/gdktypes.h)
# foo_DEP_CFLAGS: All cflags this module requires
# Save this value here, since automake will set cflags later
cflags_set=${CFLAGS+set}
dnl we to AC_DIVERT_PUSH/AC_DIVERT_POP these variable definitions so they
dnl are available for $ac_help expansion (don't we all *love* autoconf?)
GLIB_AC_DIVERT_BEFORE_HELP([
#
# Making releases:
# GTK_MICRO_VERSION += 1;
# GTK_INTERFACE_AGE += 1;
# GTK_BINARY_AGE += 1;
# if any functions have been added, set GTK_INTERFACE_AGE to 0.
# if backwards compatibility has been broken,
# set GTK_BINARY_AGE and GTK_INTERFACE_AGE to 0.
#
GTK_MAJOR_VERSION=2
GTK_MINOR_VERSION=2
GTK_MICRO_VERSION=0
GTK_INTERFACE_AGE=0
GTK_BINARY_AGE=200
GTK_VERSION=$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION.$GTK_MICRO_VERSION
dnl This is the X.Y used in -lgtk-FOO-X.Y
GTK_API_VERSION=2.0
])dnl
GTK_MAJOR_VERSION=gtk_major_version
GTK_MINOR_VERSION=gtk_minor_version
GTK_MICRO_VERSION=gtk_micro_version
GTK_INTERFACE_AGE=gtk_interface_age
GTK_BINARY_AGE=gtk_binary_age
GTK_VERSION=gtk_version
GTK_API_VERSION=gtk_api_version
GTK_BINARY_VERSION=gtk_binary_version
AC_SUBST(GTK_MAJOR_VERSION)
AC_SUBST(GTK_MINOR_VERSION)
AC_SUBST(GTK_MICRO_VERSION)
@@ -47,6 +71,7 @@ AC_SUBST(GTK_INTERFACE_AGE)
AC_SUBST(GTK_BINARY_AGE)
AC_SUBST(GTK_API_VERSION)
AC_SUBST(GTK_VERSION)
AC_SUBST(GTK_BINARY_VERSION)
# libtool versioning
#LT_RELEASE=$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION
@@ -55,59 +80,32 @@ AC_SUBST(GTK_VERSION)
#LT_AGE=`expr $GTK_BINARY_AGE - $GTK_INTERFACE_AGE`
#LT_CURRENT_MINUS_AGE=`expr $LT_CURRENT - $LT_AGE`
LT_RELEASE=$GTK_MAJOR_VERSION.0
LT_CURRENT=`expr 100 '*' $GTK_MINOR_VERSION + $GTK_MICRO_VERSION - $GTK_INTERFACE_AGE`
LT_REVISION=$GTK_INTERFACE_AGE
LT_AGE=`expr $GTK_BINARY_AGE - $GTK_INTERFACE_AGE`
LT_CURRENT_MINUS_AGE=`expr $LT_CURRENT - $LT_AGE`
AC_SUBST(LT_RELEASE)
AC_SUBST(LT_CURRENT)
AC_SUBST(LT_REVISION)
AC_SUBST(LT_AGE)
m4_define([lt_current], [m4_eval(100 * gtk_minor_version + gtk_micro_version - gtk_interface_age)])
m4_define([lt_revision], [gtk_interface_age])
m4_define([lt_age], [m4_eval(gtk_binary_age - gtk_interface_age)])
LT_VERSION_INFO="lt_current:lt_revision:lt_age"
LT_CURRENT_MINUS_AGE=m4_eval(lt_current - lt_age)
AC_SUBST(LT_VERSION_INFO)
AC_SUBST(LT_CURRENT_MINUS_AGE)
# Define a string for the earliest version that this release has
# forward/backwards binary compatibility with. This is used for module
# locations. (Should this be backwards-compat instead?)
#
#GTK_BINARY_VERSION=$GTK_MAJOR_VERSION.$GTK_MINOR_VERSION.$LT_CURRENT
GTK_BINARY_VERSION=2.2.0
AC_SUBST(GTK_BINARY_VERSION)
#
# gdk-pixbuf gets versioned separately, and for now, using standard
# libtool versioning, not GTK+-style versioning
#
GDK_PIXBUF_MAJOR=$GTK_MAJOR_VERSION
GDK_PIXBUF_MINOR=$GTK_MINOR_VERSION
GDK_PIXBUF_MICRO=$GTK_MICRO_VERSION
GDK_PIXBUF_MAJOR=gtk_major_version
GDK_PIXBUF_MINOR=gtk_minor_version
GDK_PIXBUF_MICRO=gtk_micro_version
GDK_PIXBUF_VERSION="${GDK_PIXBUF_MAJOR}.${GDK_PIXBUF_MINOR}.${GDK_PIXBUF_MICRO}"
AC_SUBST(GDK_PIXBUF_MAJOR)
AC_SUBST(GDK_PIXBUF_MINOR)
AC_SUBST(GDK_PIXBUF_MICRO)
AC_SUBST(GDK_PIXBUF_VERSION)
## Versions of dependencies
GLIB_REQUIRED_VERSION=2.1.4
PANGO_REQUIRED_VERSION=1.0.1
ATK_REQUIRED_VERSION=1.0.1
# For automake.
VERSION=$GTK_VERSION
PACKAGE=gtk+
GETTEXT_PACKAGE=gtk20
AC_SUBST(GETTEXT_PACKAGE)
AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE")
# Save this value here, since automake will set cflags later
cflags_set=${CFLAGS+set}
dnl Initialize automake stuff
AM_INIT_AUTOMAKE($PACKAGE, $VERSION, no-define)
# Specify a configuration file
AM_CONFIG_HEADER(config.h)
dnl Initialize libtool
AC_PROG_CC
@@ -115,16 +113,7 @@ AM_DISABLE_STATIC
AC_LIBTOOL_WIN32_DLL
AM_PROG_LIBTOOL
dnl XXXX Hack: Set AS and ASFLAGS so that automake 1.5 will be happy
AS="\${CC}"
ASFLAGS="\${CFLAGS}"
AC_SUBST(AS)
AC_SUBST(ASFLAGS)
dnl XXXX Hack: Set CCAS and CCASFLAGS so that automake 1.6 will be happy
CCAS="\${CC}"
CCASFLAGS="\${CFLAGS}"
AC_SUBST(CCAS)
AC_SUBST(CCASFLAGS)
AM_PROG_AS
dnl Initialize maintainer mode
AM_MAINTAINER_MODE
@@ -156,38 +145,47 @@ case "$host" in
esac
AC_MSG_RESULT([$os_win32])
AM_CONDITIONAL(OS_WIN32, test "$os_win32" = "yes")
AM_CONDITIONAL(OS_UNIX, test "$os_win32" != "yes")
if test "$os_win32" = "yes"; then
AC_CHECK_PROG(ms_librarian, lib.exe, yes, no)
fi
AM_CONDITIONAL(MS_LIB_AVAILABLE, test x$ms_librarian = xyes)
dnl figure debugging default, prior to $ac_help setup
dnl
GLIB_AC_DIVERT_BEFORE_HELP([
if test `expr $GTK_MINOR_VERSION \% 2` = 1 ; then
debug_default=yes
else
debug_default=minimum
fi
])dnl
m4_define([debug_default],
m4_if(m4_eval(gtk_minor_version % 2), [1], [yes], [minimum]))
dnl declare --enable-* args and collect ac_help strings
AC_ARG_ENABLE(debug, [ --enable-debug=[no/minimum/yes] turn on debugging [default=$debug_default]],,enable_debug=$debug_default)
AC_ARG_ENABLE(shm, [ --enable-shm support shared memory if available [default=yes]],
echo $enable_shm, enable_shm="yes")
AC_ARG_ENABLE(ansi, [ --enable-ansi turn on strict ansi [default=no]],
, enable_ansi=no)
AC_ARG_ENABLE(xim, [ --enable-xim support XIM [default=yes]],
, enable_xim="yes")
AC_ARG_ENABLE(xkb, [ --enable-xkb support XKB [default=maybe]],
, enable_xkb="maybe")
AC_ARG_ENABLE(rebuilds, [ --disable-rebuilds disable all source autogeneration rules],,enable_rebuilds=yes)
AC_ARG_ENABLE(debug,
AC_HELP_STRING([--enable-debug=@<:@no/minimum/yes@:>@],
[turn on debugging @<:@default=debug_default@:>@]),,
enable_debug=debug_default)
AC_ARG_ENABLE(shm,
[AC_HELP_STRING([--enable-shm],
[support shared memory if available [default=yes]])],,
[enable_shm="yes"])
AC_ARG_ENABLE(ansi,
[AC_HELP_STRING([--enable-ansi],
[turn on strict ansi [default=no]])],,
[enable_ansi=no])
AC_ARG_ENABLE(xkb,
[AC_HELP_STRING([--enable-xkb],
[support XKB [default=maybe]])],,
[enable_xkb="maybe"])
AC_ARG_ENABLE(rebuilds,
[AC_HELP_STRING([--disable-rebuilds],
[disable all source autogeneration rules])],,
[enable_rebuilds=yes])
AC_ARG_WITH(xinput, [ --with-xinput=[no/yes] support XInput ])
AC_ARG_WITH(xinput,
[AC_HELP_STRING([--with-xinput=@<:@no/yes@:>@], [support XInput])])
AC_ARG_WITH(wintab, [ --with-wintab=DIRECTORY use Wintab API with win32 backend])
AC_ARG_WITH(ie55, [ --with-ie55=DIRECTORY IE5.5 libs and headers (for Active IMM)])
AC_ARG_WITH(wintab,
[AC_HELP_STRING([--with-wintab=DIRECTORY],
[use Wintab API with win32 backend])])
AC_ARG_WITH(ie55,
[AC_HELP_STRING([--with-ie55=DIRECTORY],
[IE5.5 libs and headers (for Active IMM)])])
GLIB_AC_DIVERT_BEFORE_HELP([
if test "$platform_win32" = yes; then
@@ -212,9 +210,15 @@ gtktargetlib=libgtk-$gdktarget-$GTK_API_VERSION.la
AC_SUBST(gdktargetlib)
AC_SUBST(gtktargetlib)
AC_ARG_ENABLE(shadowfb, [ --disable-shadowfb disable shadowfb support for linux-fb],,enable_shadowfb=yes)
AC_ARG_ENABLE(shadowfb,
[AC_HELP_STRING([--disable-shadowfb],
[disable shadowfb support for linux-fb])],,
[enable_shadowfb=yes])
AC_ARG_ENABLE(fbmanager, [ --enable-fbmanager enable framebuffer manager support (GtkFB)],enable_fbmanager=yes,enable_fbmanager=no)
AC_ARG_ENABLE(fbmanager,
[AC_HELP_STRING([--enable-fbmanager],
[enable framebuffer manager support (GtkFB)])],,
enable_fbmanager=no)
if test "x$enable_debug" = "xyes"; then
test "$cflags_set" = set || CFLAGS="$CFLAGS -g"
@@ -304,7 +308,10 @@ ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
## calls. Oh, also the later pkg-config calls don't include
## the version requirements since those make the module lists
## annoying to construct
PKG_CHECK_MODULES(BASE_DEPENDENCIES, glib-2.0 >= $GLIB_REQUIRED_VERSION atk >= $ATK_REQUIRED_VERSION pango >= $PANGO_REQUIRED_VERSION)
PKG_CHECK_MODULES(BASE_DEPENDENCIES,
[glib-2.0 >= glib_required_version dnl
atk >= atk_required_version dnl
pango >= pango_required_version])
if test "$os_win32" != yes; then
# libtool option to control which symbols are exported
@@ -321,9 +328,9 @@ dnl * See whether to include shared library dependencies *
dnl ******************************************************
AC_ARG_ENABLE(explicit-deps,
[ --enable-explicit-deps=[yes/no/auto] use explicit dependencies in .pc files [default=auto]],
enable_explicit_deps="$enableval",
enable_explicit_deps=auto)
[AC_HELP_STRING([--enable-explicit-deps=@<:@yes/no/auto@:>@],
[use explicit dependencies in .pc files [default=auto]])],,
[enable_explicit_deps=auto])
AC_MSG_CHECKING([Whether to write dependencies into .pc files])
case $enable_explicit_deps in
@@ -389,9 +396,12 @@ AC_SUBST(STRIP_BEGIN)
AC_SUBST(STRIP_END)
# i18n stuff
ALL_LINGUAS="az be bg ca cs cy da de el en_GB es et eu fa fi fr ga gl he hi hr hu ia id it ja ko lt lv ml mn ms nl nn no pl pt pt_BR ro ru sk sl sp sr sv tr uk vi wa yi zh_TW zh_CN"
ALL_LINGUAS="af am ar az be bg bn br ca cs cy da de el en_GB es et eu fa fi fr ga gl he hi hr hu ia id it ja ko li lt lv mk ml mn ms ne nl nn no pl pt pt_BR ro ru sk sl sq sr sr@Latn sv ta th tr uk uz uz@Cyrl vi wa yi zh_CN zh_TW"
AM_GLIB_GNU_GETTEXT
LIBS="$LIBS $INTLLIBS"
AC_OUTPUT_COMMANDS([case "$CONFIG_FILES" in *po-properties/Makefile.in*)
sed -e "/POTFILES =/r po-properties/POTFILES" po-properties/Makefile.in > po-properties/Makefile
esac])
AM_GLIB_DEFINE_LOCALEDIR(GTK_LOCALEDIR)
@@ -448,10 +458,10 @@ AC_TRY_COMPILE([#include <dirent.h>], [DIR *dir;],
GLIB_PACKAGES="gobject-2.0 gmodule-2.0"
AM_PATH_GLIB_2_0($GLIB_REQUIRED_VERSION, :,
AM_PATH_GLIB_2_0(glib_required_version, :,
AC_MSG_ERROR([
*** GLIB $GLIB_REQUIRED_VERSION or better is required. The latest version of
*** GLIB is always available from ftp://ftp.gtk.org/.]),
*** GLIB glib_required_version or better is required. The latest version of
*** GLIB is always available from ftp://ftp.gtk.org/pub/gtk/.]),
gobject gmodule gthread)
dnl
@@ -634,7 +644,9 @@ fi
AC_MSG_CHECKING(whether to build gmodulized gdk-pixbuf)
AC_ARG_ENABLE(modules, [ --disable-modules disable dynamic module loading])
AC_ARG_ENABLE(modules,
[AC_HELP_STRING([--disable-modules],
[disable dynamic module loading])])
dynworks=false
deps=
@@ -674,9 +686,15 @@ fi
dnl We allow people to disable image loaders explicitely, but if they don't we error
dnl out so that people don't accidentally build without them.
AC_ARG_WITH(libpng, [ --without-libpng disable PNG loader for gdk-pixbuf])
AC_ARG_WITH(libjpeg, [ --without-libjpeg disable JPEG loader for gdk-pixbuf])
AC_ARG_WITH(libtiff, [ --without-libtiff disable TIFF loader for gdk-pixbuf])
AC_ARG_WITH(libpng,
[AC_HELP_STRING([--without-libpng],
[disable PNG loader for gdk-pixbuf])])
AC_ARG_WITH(libjpeg,
[AC_HELP_STRING([--without-libjpeg],
[disable JPEG loader for gdk-pixbuf])])
AC_ARG_WITH(libtiff,
[AC_HELP_STRING([--without-libtiff],
[disable TIFF loader for gdk-pixbuf])])
dnl Test for libtiff
if test x$with_libtiff != xno && test -z "$LIBTIFF"; then
@@ -778,12 +796,6 @@ dnl Test for libpng
*** from CVS.])
fi
REBUILD_PNGS=\#
if test -z "$LIBPNG"; then
REBUILD_PNGS=
fi
AC_SUBST(REBUILD_PNGS)
AC_SUBST(LIBTIFF)
AC_SUBST(LIBJPEG)
AC_SUBST(LIBPNG)
@@ -795,7 +807,14 @@ AM_CONDITIONAL(BUILD_DYNAMIC_MODULES, $dynworks)
#
AC_MSG_CHECKING(pixbuf loaders to build)
AC_ARG_WITH(included_loaders, [ --with-included-loaders=LOADER1,LOADER2,... build the specified loaders into gdk-pixbuf (only used if module loading disabled)])
dnl due to an autoconf bug, commas in the first arg to
dnl AC_HELP_STRING cause problems.
dnl AC_HELP_STRING([--with-included-loaders=LOADER1 LOADER2 ...],
dnl [build the specified loaders into gdk-pixbuf (only used if module loading disabled)])
AC_ARG_WITH(included_loaders,
[ --with-included-loaders=LOADER1,LOADER2,...
build the specified loaders into gdk-pixbuf (only
used if module loading disabled)])
if $dynworks; then
:
@@ -806,7 +825,7 @@ else
fi
fi
all_loaders="png,bmp,wbmp,gif,ico,ani,jpeg,pnm,ras,tiff,xpm,tga"
all_loaders="png,bmp,wbmp,gif,ico,ani,jpeg,pnm,ras,tiff,xpm,tga,pcx"
included_loaders=""
# If no loaders specified, include all
if test "x$with_included_loaders" = xyes ; then
@@ -898,6 +917,11 @@ fi
AM_CONDITIONAL(USE_MMX, test x$use_mmx_asm = xyes)
REBUILD_PNGS=
if test -z "$LIBPNG"; then
REBUILD_PNGS=#
fi
dnl Look for a host system's gdk-pixbuf-csource if we are cross-compiling
AM_CONDITIONAL(CROSS_COMPILING, test $cross_compiling = yes)
@@ -905,10 +929,20 @@ AM_CONDITIONAL(CROSS_COMPILING, test $cross_compiling = yes)
if test $cross_compiling = yes; then
AC_PATH_PROG(GDK_PIXBUF_CSOURCE, gdk-pixbuf-csource, no)
if test x$GDK_PIXBUF_CSOURCE = xno; then
AC_MSG_ERROR(Could not find a gdk-pixbuf-csource in your PATH)
REBUILD_PNGS=#
fi
fi
if test ! -f $srcdir/gtk/stock-icons/gtkstockpixbufs.h &&
test "x$REBUILD_PNGS" = "x#" ; then
AC_MSG_ERROR([
*** gtkstockpixbufs.h is not in the tree, and cannot be built
*** because you don't have libpng, or (when cross-compiling) you
*** don't have a prebuilt gdk-pixbuf-csource on the host system.])
fi
AC_SUBST(REBUILD_PNGS)
GDK_PIXBUF_PACKAGES="gmodule-2.0 gobject-2.0"
GDK_PIXBUF_EXTRA_LIBS="$STATIC_LIB_DEPS $MATH_LIB"
GDK_PIXBUF_EXTRA_CFLAGS=
@@ -928,6 +962,7 @@ AC_SUBST(GDK_PIXBUF_DEP_CFLAGS)
GDK_EXTRA_LIBS=$GDK_WLIBS
GDK_EXTRA_CFLAGS=
GTK_DEP_LIBS_FOR_X=
FREETYPE_LIBS=
FREETYPE_CFLAGS=
@@ -952,7 +987,8 @@ if test "x$gdktarget" = "xlinux-fb" || test "x$gdktarget" = "xx11" ; then
AC_MSG_CHECKING([For sufficiently new FreeType (at least 2.0.1)])
AC_TRY_COMPILE([
#include <freetype/freetype.h>
#include <ft2build.h>
#include FT_FREETYPE_H
#include FT_ERRORS_H
],
[(void)1;],:,have_freetype=false)
@@ -972,88 +1008,44 @@ fi
if test "x$gdktarget" = "xx11"; then
# We start off with the libraries from Pango
if $PKG_CONFIG --exists pangox ; then : ; else
AC_MSG_ERROR([pangox Pango backend is required for x11 target])
fi
## be sure we also have Pango built with xft support
if $PKG_CONFIG --exists pangoxft ; then
PANGO_PACKAGES="pangoxft pangox"
have_xft=true
AC_DEFINE(HAVE_XFT)
## be sure we also have Pango built with Xft2 support
if $PKG_CONFIG --exists 'pangoxft >= 1.2.0' ; then
if $have_freetype ; then
:
else
AC_MSG_ERROR([pangoxft Pango backend found but did not find freetype libraries])
AC_MSG_ERROR([Xft Pango backend found but did not find freetype libraries])
fi
else
PANGO_PACKAGES="pangox"
have_xft=false
AC_MSG_ERROR([Pango 1.2.0 and Xft backend is required for x11 target])
fi
AM_CONDITIONAL(HAVE_XFT, $have_xft)
if $PKG_CONFIG --exists xft ; then
AC_DEFINE(HAVE_XFT2, 1, [Define if we have Xft, version 2])
if $PKG_CONFIG --exists xft ; then : ; else
AC_MSG_ERROR([Xft version 2 is required for x11 target])
fi
#
# If Pango included the shared library dependencies from X11 in
# the pkg-config output, then we use that (to avoid duplicates).
# but if they were omitted to avoid binary compatibility problems
# but if they were omitted to avoid binary compatibility problems,
# then we need to repeat the checks.
#
x_libs="`$PKG_CONFIG --libs $PANGO_PACKAGES`"
x_libs="`$PKG_CONFIG --libs pangoxft`"
case "$x_libs" in
*-lX11*) pango_omitted_x_deps=no ;;
*) pango_omitted_x_deps=yes ;;
esac
x_cflags="`$PKG_CONFIG --cflags $PANGO_PACKAGES`"
x_cflags="`$PKG_CONFIG --cflags pangoxft`"
x_extra_libs=
AC_PATH_XTRA
if test x$no_x = xyes ; then
AC_MSG_ERROR([X development libraries not found])
fi
if test $pango_omitted_x_deps = yes ; then
AC_PATH_XTRA
if test x$no_x = xyes ; then
AC_MSG_ERROR([X development libraries not found])
fi
x_libs="$X_LIBS -lX11 $X_EXTRA_LIBS"
#
# Checks for Xft/XRender
#
if test $have_xft = true ; then
have_xft=false
if pkg-config --exists pangoxft '>=' 1.1.0 ; then
x_libs="`pkg-config --libs xft` -lX11 $FREETYPE_LIBS $X_EXTRA_LIBS"
have_xft=true
else
gtk_save_cppflags="$CPPFLAGS"
CPPFLAGS="$CPPFLAGS $x_cflags"
AC_CHECK_LIB(Xrender, XRenderFindFormat,
[AC_CHECK_LIB(Xft, XftFontOpen,
[AC_CHECK_HEADER(X11/Xft/XftFreetype.h,
have_xft=true,:)],
:,-lXrender -lXext $x_libs $FREETYPE_LIBS)]
,:,-lXext $x_libs)
if $have_xft ; then
x_libs="$X_LIBS -lXft -lXrender -lXext -lX11 $FREETYPE_LIBS $X_EXTRA_LIBS"
fi
CPPFLAGS="$gtk_save_cppflags"
fi
if $have_xft ; then
:
else
AC_MSG_ERROR([pangoxft Pango backend found, but Xft not found])
fi
fi
# Old versions of Xft didn't necessarily include -lX11 in the output
x_libs="`pkg-config --libs xft` -lX11 $X_EXTRA_LIBS"
fi
## Strip the .la files
@@ -1074,22 +1066,23 @@ if test "x$gdktarget" = "xx11"; then
if test "x$enable_shm" = "xyes"; then
# Check for the Xext library (needed for XShm extention)
AC_CHECK_LIB(Xext, XShmAttach,
if test -z "`echo $x_libs | grep "\-lXext" 2> /dev/null`"; then
x_extra_libs="-lXext"
fi,
[GTK_ADD_LIB(x_extra_libs,Xext)],
# On AIX, it is in XextSam instead, but we still need -lXext
AC_CHECK_LIB(XextSam, XShmAttach,
if test -z "`echo $x_libs | grep "\-lXext" 2> /dev/null`"; then
x_extra_libs="-lXextSam -lXext"
else
x_extra_libs="-lXextSam"
fi, , $x_libs_for_checks),
[AC_CHECK_LIB(XextSam, XShmAttach,
[GTK_ADD_LIB(x_extra_libs,Xext)
GTK_ADD_LIB(x_extra_libs,XextSam)
], , -lXext $x_libs_for_checks)],
$x_libs_for_checks)
fi
GDK_PIXBUF_XLIB_EXTRA_CFLAGS="$x_cflags"
# Don't ever pull in the pangoxft libraries for gdk-pixbuf-x11
GDK_PIXBUF_XLIB_EXTRA_LIBS="$x_extra_libs $x_libs"
GDK_PIXBUF_XLIB_EXTRA_LIBS="$X_LIBS -lX11 $x_extra_libs $X_EXTRA_LIBS"
# GTK+ uses some X calls, so needs to link against X directly
if test $enable_explicit_deps != yes ; then
GTK_DEP_LIBS_FOR_X="$X_LIBS -lX11 $X_EXTRA_LIBS"
fi
# Check for Xinerama extension (Solaris impl or Xfree impl)
@@ -1104,11 +1097,9 @@ if test "x$gdktarget" = "xx11"; then
use_solaris_xinerama=yes, use_solaris_xinerama=no)
if test "x$use_solaris_xinerama" = "xyes"; then
AC_CHECK_HEADER(X11/extensions/xinerama.h,
if test -z "`echo $x_extra_libs $x_libs | grep "\-lXext" 2> /dev/null`"; then
x_extra_libs="-lXext $x_extra_libs"
fi
[GTK_ADD_LIB(x_extra_libs,Xext)
AC_DEFINE(HAVE_SOLARIS_XINERAMA)
AC_DEFINE(HAVE_XINERAMA), use_solaris_xinerama=no, -lXext $x_libs_for_checks)
AC_DEFINE(HAVE_XINERAMA)], use_solaris_xinerama=no, -lXext $x_libs_for_checks)
fi
AC_MSG_CHECKING(for Xinerama support on Solaris)
AC_MSG_RESULT($use_solaris_xinerama);
@@ -1118,12 +1109,10 @@ if test "x$gdktarget" = "xx11"; then
use_xfree_xinerama=yes
AC_CHECK_LIB(Xinerama, XineramaQueryExtension,
[AC_CHECK_HEADER(X11/extensions/Xinerama.h,
x_extra_libs="-lXinerama $x_extra_libs"
if test -z "`echo $x_extra_libs $x_libs | grep "\-lXext" 2> /dev/null`"; then
x_extra_libs="-lXext $x_extra_libs"
fi
[GTK_ADD_LIB(x_extra_libs,Xext)
GTK_ADD_LIB(x_extra_libs,Xinerama)
AC_DEFINE(HAVE_XFREE_XINERAMA)
AC_DEFINE(HAVE_XINERAMA),
AC_DEFINE(HAVE_XINERAMA)],
use_xfree_xinerama=no,
[#include <X11/Xlib.h>])],
use_xfree_xinerama=no, -lXext $x_libs_for_checks)
@@ -1137,10 +1126,8 @@ if test "x$gdktarget" = "xx11"; then
# Check for shaped window extension
AC_CHECK_LIB(Xext, XShapeCombineMask,
if test -z "`echo $x_extra_libs $x_libs | grep "\-lXext" 2> /dev/null`"; then
x_extra_libs="-lXext $x_extra_libs"
fi
AC_DEFINE(HAVE_SHAPE_EXT),
[GTK_ADD_LIB(x_extra_libs,Xext)
AC_DEFINE(HAVE_SHAPE_EXT)],
,
$x_libs_for_checks)
@@ -1151,11 +1138,20 @@ if test "x$gdktarget" = "xx11"; then
,
$x_libs_for_checks)
# Check for XIM support.
# Generic X11R6 check needed for XIM support; we could
# probably use this to replace the above, but we'll
# leave the separate XConvertCase check for clarity
if test "x$enable_xim" = "xyes"; then
GTK_XIM_FLAGS="-DUSE_XIM"
have_x11r6=false
AC_CHECK_LIB(X11, XAddConnectionWatch,
have_x11r6=true,
,
$x_libs_for_checks)
if $have_x11r6; then
AC_DEFINE(HAVE_X11R6,1,[Define if we have X11R6])
fi
AM_CONDITIONAL(HAVE_X11R6, $have_x11r6)
# Check for XKB support.
@@ -1178,7 +1174,7 @@ if test "x$gdktarget" = "xx11"; then
if test "x$with_xinput" = "xxfree" || test "x$with_xinput" = "xyes"; then
AC_DEFINE(XINPUT_XFREE)
x_extra_libs="-lXi $x_extra_libs"
GTK_ADD_LIB(x_extra_libs, Xi)
else
AC_DEFINE(XINPUT_NONE)
fi
@@ -1190,14 +1186,24 @@ if test "x$gdktarget" = "xx11"; then
AC_CHECK_LIB(Xrandr, XRRUpdateConfiguration,
[AC_CHECK_HEADER(X11/extensions/Xrandr.h,
# RANDR requires RENDER
if test -z "`echo $x_extra_libs $x_libs | grep "\-lXrender" 2> /dev/null`"; then
x_extra_libs="-lXrender $x_extra_libs"
fi
x_extra_libs="-lXrandr $x_extra_libs"
AC_DEFINE(HAVE_RANDR, 1, Have the Xrandr extension library),
[GTK_ADD_LIB(x_extra_libs, Xrender)
GTK_ADD_LIB(x_extra_libs, Xrandr)
AC_DEFINE(HAVE_RANDR, 1, Have the Xrandr extension library)],
:, [#include <X11/Xlib.h>])], : ,
$X_LIBS -lXrandr -lXrender -lX11 $X_EXTRA_LIBS)
# Checks for Xcursor library
have_xcursor=false
PKG_CHECK_MODULES(XCURSOR, xcursor, have_xcursor=true, :)
if $have_xcursor ; then
AC_DEFINE(HAVE_XCURSOR, 1, Have the Xcursor library)
XCURSOR_PACKAGES="xcursor"
else
XCURSOR_PACKAGES=
fi
# Xshm checks
if test "x$enable_shm" = "xyes"; then
@@ -1232,24 +1238,21 @@ if test "x$gdktarget" = "xx11"; then
GDK_EXTRA_CFLAGS=
if test $pango_omitted_x_deps = yes ; then
GDK_EXTRA_LIBS="$x_extra_libs $x_libs $GDK_EXTRA_LIBS"
GDK_EXTRA_LIBS="$X_LIBS $x_extra_libs $x_libs $GDK_EXTRA_LIBS"
else
GDK_EXTRA_LIBS="$x_extra_libs $GDK_EXTRA_LIBS"
GDK_EXTRA_LIBS="$X_LIBS $x_extra_libs $GDK_EXTRA_LIBS"
fi
AM_CONDITIONAL(USE_X11, true)
else
AM_CONDITIONAL(HAVE_XFT, false)
AM_CONDITIONAL(XINPUT_XFREE, false)
AM_CONDITIONAL(USE_X11, false)
AM_CONDITIONAL(HAVE_X11R6, false)
fi
if test "x$gdktarget" = "xwin32"; then
# We start off with the libraries from Pango
## be sure we also have Pango built with win32 support
PANGO_PACKAGES="pangowin32"
if test x$have_wintab = xyes; then
GDK_WIN32_EXTRA_CFLAGS="-I $with_wintab/include"
AC_SUBST(GDK_WIN32_EXTRA_CFLAGS)
@@ -1261,8 +1264,6 @@ else
AM_CONDITIONAL(USE_WIN32, false)
fi
AC_SUBST(xinput_progs)
GDK_PIXBUF_XLIB_PACKAGES=
GDK_PIXBUF_XLIB_DEP_LIBS="`$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $GDK_PIXBUF_XLIB_PACKAGES` $GDK_PIXBUF_XLIB_EXTRA_LIBS $GDK_PIXBUF_EXTRA_LIBS"
GDK_PIXBUF_XLIB_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PIXBUF_PACKAGES $GDK_PIXBUF_XLIB_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS $GDK_PIXBUF_XLIB_EXTRA_CFLAGS"
@@ -1315,11 +1316,13 @@ fi
#
if test "x$gdktarget" = "xx11"; then
if $have_xft = true ; then
PANGO_PACKAGES="pangoxft pangox"
else
PANGO_PACKAGES=pangox
fi
PANGO_PACKAGES=pangoxft
# We no longer use pangox, but if we find it, we link to it
# for binary compatibility.
if $PKG_CONFIG --exists pangox ; then
PANGO_PACKAGES="$PANGO_PACKAGES pangox"
fi
elif test "x$gdktarget" = "xwin32"; then
PANGO_PACKAGES=pangowin32
elif test "x$gdktarget" = "xlinux-fb"; then
@@ -1361,7 +1364,7 @@ fi
CFLAGS="$saved_cflags"
LDFLAGS="$saved_ldflags"
GDK_PACKAGES=$PANGO_PACKAGES
GDK_PACKAGES="$XCURSOR_PACKAGES $PANGO_PACKAGES"
GDK_DEP_LIBS="$GDK_EXTRA_LIBS `$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $GDK_PACKAGES` $GDK_PIXBUF_EXTRA_LIBS"
GDK_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PIXBUF_PACKAGES $GDK_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS $GDK_EXTRA_CFLAGS"
@@ -1412,7 +1415,7 @@ fi
GTK_PACKAGES=atk
GTK_EXTRA_LIBS=
GTK_EXTRA_CFLAGS=
GTK_DEP_LIBS="$GDK_EXTRA_LIBS `$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $GDK_PACKAGES $GTK_PACKAGES` $GTK_EXTRA_LIBS $GDK_PIXBUF_EXTRA_LIBS"
GTK_DEP_LIBS="$GDK_EXTRA_LIBS $GTK_DEP_LIBS_FOR_X `$PKG_CONFIG --libs $GDK_PIXBUF_PACKAGES $GDK_PACKAGES $GTK_PACKAGES` $GTK_EXTRA_LIBS $GDK_PIXBUF_EXTRA_LIBS"
GTK_DEP_CFLAGS="`$PKG_CONFIG --cflags gthread-2.0 $GDK_PIXBUF_PACKAGES $GDK_PACKAGES $GTK_PACKAGES` $GDK_PIXBUF_EXTRA_CFLAGS $GDK_EXTRA_CFLAGS $GTK_EXTRA_CFLAGS"
AC_SUBST(GTK_PACKAGES)
@@ -1429,81 +1432,36 @@ AC_SUBST(GTK_XIM_FLAGS)
# Checks for gtk-doc and docbook-tools
##################################################
AC_ARG_WITH(html-dir, [ --with-html-dir=PATH path to installed docs ])
if test "x$with_html_dir" = "x" ; then
HTML_DIR='${datadir}/gtk-doc/html'
else
HTML_DIR=$with_html_dir
fi
AC_SUBST(HTML_DIR)
AC_CHECK_PROG(GTKDOC, gtkdoc-mkdb, true, false)
gtk_doc_min_version=0.10
if $GTKDOC ; then
gtk_doc_version=`gtkdoc-mkdb --version`
AC_MSG_CHECKING([gtk-doc version ($gtk_doc_version) >= $gtk_doc_min_version])
IFS="${IFS= }"; gtk_save_IFS="$IFS"; IFS="."
set $gtk_doc_version
for min in $gtk_doc_min_version ; do
cur=$1; shift
if test -z $min ; then break; fi
if test -z $cur ; then GTKDOC=false; break; fi
if test $cur -gt $min ; then break ; fi
if test $cur -lt $min ; then GTKDOC=false; break ; fi
done
IFS="$gtk_save_IFS"
if $GTKDOC ; then
AC_MSG_RESULT(yes)
else
AC_MSG_RESULT(no)
fi
fi
GTK_DOC_CHECK([1.0])
AC_CHECK_PROG(DB2HTML, db2html, true, false)
AM_CONDITIONAL(HAVE_DOCBOOK, $DB2HTML)
dnl Make people enable the gtk-doc stuff explicitely.
AC_ARG_ENABLE(gtk-doc, [ --enable-gtk-doc use gtk-doc to build documentation [default=no]], enable_gtk_doc="$enableval", enable_gtk_doc=auto)
AC_ARG_ENABLE(man,
[AC_HELP_STRING([--enable-man],
[regenerate man pages from Docbook [default=no]])],enable_man=yes,
enable_man=no)
if test x$enable_gtk_doc = xyes ; then
if test x$GTKDOC != xtrue ; then
enable_gtk_doc=no
fi
dnl
dnl Check for xsltproc
dnl
AC_PATH_PROG([XSLTPROC], [xsltproc])
if test -z "$XSLTPROC"; then
enable_man=no
fi
dnl NOTE: We need to use a separate automake conditional for this
dnl to make this work with the tarballs.
AM_CONDITIONAL(ENABLE_GTK_DOC, test x$enable_gtk_doc = xyes)
dnl check for DocBook DTD and stylesheets in the local catalog.
JH_CHECK_XML_CATALOG([-//OASIS//DTD DocBook XML V4.1.2//EN],
[DocBook XML DTD V4.1.2],,enable_man=no)
JH_CHECK_XML_CATALOG([http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl],
[DocBook XSL Stylesheets],,enable_man=no)
AM_CONDITIONAL(ENABLE_MAN, test x$enable_man != xno)
##################################################
# Output commands
##################################################
AC_OUTPUT_COMMANDS([
## Generate `gdk/gdkconfig.h' in two cases
## 1. `config.status' is run either explicitly, or via configure.
## Esp. not when it is run in `Makefile' to generate makefiles and
## config.h
## 2. CONFIG_OTHER is set explicitly
##
## Case 1 is difficult. We know that `automake' sets one of
## CONFIG_FILES or CONFIG_HEADERS to empty. This heuristic works
## only when AM_CONFIG_HEADER is set, however.
if test -n "${CONFIG_FILES}" && test -n "${CONFIG_HEADERS}"; then
# Both CONFIG_FILES and CONFIG_HEADERS are non-empty ==> Case 1
CONFIG_OTHER=${CONFIG_OTHER:-gdk/gdkconfig.h}
fi
case "$CONFIG_OTHER" in
*gdk/gdkconfig.h*)
echo creating gdk/gdkconfig.h
AC_CONFIG_COMMANDS([gdk/gdkconfig.h], [
outfile=gdkconfig.h-tmp
cat > $outfile <<\_______EOF
/* gdkconfig.h
@@ -1536,12 +1494,11 @@ _______EOF
if cmp -s $outfile gdk/gdkconfig.h; then
echo gdk/gdkconfig.h is unchanged
AC_MSG_NOTICE([gdk/gdkconfig.h is unchanged])
rm -f $outfile
else
mv $outfile gdk/gdkconfig.h
fi ;;
esac
fi
],[
if test "x$gdktarget" = "xx11" ; then
gdk_windowing='
@@ -1574,7 +1531,7 @@ fi
AC_PATH_PROG(SGML2HTML, sgml2html, no)
AM_CONDITIONAL(HAVE_SGML2HTML, test x$SGML2HTML != xno)
AC_OUTPUT([
AC_CONFIG_FILES([
config.h.win32
gtk-zip.sh
Makefile
@@ -1586,6 +1543,7 @@ gdk-2.0-uninstalled.pc
gtk+-2.0-uninstalled.pc
m4macros/Makefile
po/Makefile.in
po-properties/Makefile.in
build/Makefile
build/win32/Makefile
build/win32/dirent/Makefile
@@ -1619,9 +1577,12 @@ gtk/gtkversion.h
gtk/gtk-win32.rc
gtk/stock-icons/Makefile
gtk/theme-bits/Makefile
gtk/xdgmime/Makefile
modules/Makefile
modules/input/Makefile
contrib/Makefile
contrib/gdk-pixbuf-xlib/Makefile
contrib/gdk-pixbuf-xlib/gdk-pixbuf-xlib-2.0.pc
])
AC_OUTPUT

View File

@@ -1,8 +1,5 @@
SUBDIRS =
if USE_X11
XDIRS=gdk-pixbuf-xlib
else
XDIRS=
SUBDIRS += gdk-pixbuf-xlib
endif
SUBDIRS=$(XDIRS)

View File

@@ -1,3 +1,7 @@
Tue Oct 7 23:30:00 2003 Matthias Clasen <maclas@gmx.de>
* gdk-pixbuf-xlib.h: Add C++ guards. (123955, Harring Figueiredo)
2002-08-06 jacob berkman <jacob@ximian.com>
* Makefile.am (lib_LTLIBRARIES): link against xlibs

View File

@@ -1,20 +1,19 @@
lib_LTLIBRARIES=libgdk_pixbuf_xlib-2.0.la
INCLUDES = @STRIP_BEGIN@ \
INCLUDES = \
-I$(top_srcdir) -I$(top_builddir) \
-I$(top_srcdir)/gdk-pixbuf \
-I$(top_srcdir)/contrib \
-DG_DISABLE_DEPRECATED \
-DGDK_PIXBUF_DISABLE_DEPRECATED \
@GDK_PIXBUF_XLIB_DEP_CFLAGS@ \
@STRIP_END@
$(GDK_PIXBUF_XLIB_DEP_CFLAGS)
libgdk_pixbuf_xlib_2_0_la_LDFLAGS = \
-export-dynamic \
-version-info $(LT_CURRENT):$(LT_REVISION):$(LT_AGE)
-version-info $(LT_VERSION_INFO)
libgdk_pixbuf_xlib_2_0_la_LIBADD = \
@GDK_PIXBUF_XLIB_DEP_LIBS@
$(GDK_PIXBUF_XLIB_DEP_LIBS)
libgdk_pixbuf_xlib_2_0_la_SOURCES = \
gdk-pixbuf-xlib-private.h \

View File

@@ -21,6 +21,10 @@
#ifndef GDK_PIXBUF_XLIB_H
#define GDK_PIXBUF_XLIB_H
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
#include <gdk-pixbuf/gdk-pixbuf.h>
#include <gdk-pixbuf-xlib/gdk-pixbuf-xlibrgb.h>
#include <X11/Xlib.h>
@@ -79,4 +83,9 @@ GdkPixbuf *gdk_pixbuf_xlib_get_from_drawable (GdkPixbuf *dest,
int dest_x, int dest_y,
int width, int height);
#ifdef __cplusplus
}
#endif /* __cplusplus */
#endif /* GDK_PIXBUF_XLIB_H */

View File

@@ -2,47 +2,53 @@
SUBDIRS = gtk-demo
INCLUDES = @STRIP_BEGIN@ \
INCLUDES = \
-I$(top_srcdir) \
-I$(top_builddir)/gdk \
-DG_DISABLE_DEPRECATED \
-DGDK_PIXBUF_DISABLE_DEPRECATED \
-DGDK_DISABLE_DEPRECATED \
-DGTK_DISABLE_DEPRECATED \
@GTK_DEBUG_FLAGS@ \
@GTK_DEP_CFLAGS@ \
@STRIP_END@
$(GTK_DEBUG_FLAGS) \
$(GTK_DEP_CFLAGS)
DEPS = \
DEPS = \
$(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la \
$(top_builddir)/gdk/@gdktargetlib@ \
$(top_builddir)/gtk/@gtktargetlib@
$(top_builddir)/gdk/$(gdktargetlib) \
$(top_builddir)/gtk/$(gtktargetlib)
LDADDS = @STRIP_BEGIN@ \
LDADDS = \
$(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la \
$(top_builddir)/gdk/@gdktargetlib@ \
$(top_builddir)/gtk/@gtktargetlib@ \
@STRIP_END@
$(top_builddir)/gdk/$(gdktargetlib) \
$(top_builddir)/gtk/$(gtktargetlib)
noinst_PROGRAMS = \
testpixbuf \
testpixbuf-drawable \
testanimation \
testpixbuf-save \
testpixbuf-scale \
pixbuf-demo
if CROSS_COMPILING
pixbuf_csource=$(GDK_PIXBUF_CSOURCE)
else
pixbuf_csource=GDK_PIXBUF_MODULE_FILE=$$topdir/gdk-pixbuf/gdk-pixbuf.loaders $$topdir/gdk-pixbuf/gdk-pixbuf-csource
# Need to build test-inline-pixbufs.h for testpixbuf
if HAVE_PNG
noinst_PROGRAMS += testpixbuf
BUILT_SOURCES = test-inline-pixbufs.h
endif
test-inline-pixbufs.h: $(top_builddir)/gdk-pixbuf/gdk-pixbuf-csource $(top_builddir)/gdk-pixbuf/gdk-pixbuf.loaders apple-red.png gnome-foot.png
(topdir=`cd $(top_builddir) && pwd` ; curdir=`pwd` ; \
cd $(srcdir) && \
$(pixbuf_csource) --build-list \
apple_red apple-red.png gnome_foot gnome-foot.png >$$curdir/test-inline-pixbufs.h || (rm -f $$curdir/test-inline-pixbufs.h && false))
if CROSS_COMPILING
pixbuf_csource=$(GDK_PIXBUF_CSOURCE)
pixbuf_csource_deps=
else
pixbuf_csource=GDK_PIXBUF_MODULE_FILE=$(top_builddir)/gdk-pixbuf/gdk-pixbuf.loaders $(top_builddir)/gdk-pixbuf/gdk-pixbuf-csource
pixbuf_csource_deps=$(top_builddir)/gdk-pixbuf/gdk-pixbuf-csource $(top_builddir)/gdk-pixbuf/gdk-pixbuf.loaders
endif
test-inline-pixbufs.h: $(pixbuf_csource_deps) apple-red.png gnome-foot.png
$(pixbuf_csource) --raw --build-list \
apple_red $(srcdir)/apple-red.png \
gnome_foot $(srcdir)/gnome-foot.png \
> test-inline-pixbufs.h \
|| (rm -f test-inline-pixbufs.h && false)
testpixbuf_DEPENDENCIES = $(DEPS)
testpixbuf_drawable_DEPENDENCIES = $(DEPS)
@@ -59,7 +65,6 @@ testanimation_LDADD = $(LDADDS)
pixbuf_demo_LDADD = $(LDADDS)
testpixbuf_SOURCES = testpixbuf.c pixbuf-init.c
$(testpixbuf_OBJECTS): test-inline-pixbufs.h
testpixbuf_drawable_SOURCES = testpixbuf-drawable.c pixbuf-init.c
testpixbuf_save_SOURCES = testpixbuf-save.c
testpixbuf_scale_SOURCES = testpixbuf-scale.c pixbuf-init.c
@@ -76,3 +81,5 @@ EXTRA_DIST = \
gnome-gmush.png \
gnome-gsame.png \
gnu-keys.png
DISTCLEANFILES = test-inline-pixbufs.h

View File

@@ -4,4 +4,4 @@ Makefile.in
.deps
gtk-demo
demos.h
geninclude.pl

View File

@@ -4,27 +4,28 @@ democodedir=$(datadir)/gtk-2.0/demo
## These should be in the order you want them to appear in the
## demo app, which means alphabetized by demo title, not filename
demos = @STRIP_BEGIN@ \
appwindow.c \
button_box.c \
changedisplay.c \
colorsel.c \
dialog.c \
drawingarea.c \
editable_cells.c \
images.c \
item_factory.c \
list_store.c \
menus.c \
panes.c \
pixbufs.c \
sizegroup.c \
stock_browser.c \
textview.c \
tree_store.c \
@STRIP_END@
demos = \
appwindow.c \
button_box.c \
changedisplay.c \
colorsel.c \
dialog.c \
drawingarea.c \
editable_cells.c \
entry_completion.c \
hypertext.c \
images.c \
list_store.c \
menus.c \
panes.c \
pixbufs.c \
sizegroup.c \
stock_browser.c \
textview.c \
tree_store.c \
ui_manager.c
INCLUDES = @STRIP_BEGIN@ \
INCLUDES = \
-DDEMOCODEDIR="\"$(democodedir)\"" \
-I$(top_srcdir) \
-I$(top_builddir)/gdk \
@@ -32,31 +33,28 @@ INCLUDES = @STRIP_BEGIN@ \
-DGDK_PIXBUF_DISABLE_DEPRECATED \
-DGDK_DISABLE_DEPRECATED \
-DGTK_DISABLE_DEPRECATED \
@GTK_DEBUG_FLAGS@ \
@GTK_DEP_CFLAGS@ \
@STRIP_END@
$(GTK_DEBUG_FLAGS) \
$(GTK_DEP_CFLAGS)
DEPS = \
$(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la \
$(top_builddir)/gdk/@gdktargetlib@ \
$(top_builddir)/gtk/@gtktargetlib@
$(top_builddir)/gdk/$(gdktargetlib) \
$(top_builddir)/gtk/$(gtktargetlib)
LDADDS = @STRIP_BEGIN@ \
LDADDS = \
$(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la \
$(top_builddir)/gdk/@gdktargetlib@ \
$(top_builddir)/gtk/@gtktargetlib@ \
@STRIP_END@
$(top_builddir)/gdk/$(gdktargetlib) \
$(top_builddir)/gtk/$(gtktargetlib)
bin_PROGRAMS = gtk-demo
BUILT_SOURCES = demos.h
EXTRA_DIST = \
geninclude.pl \
$(IMAGEFILES)
demos.h: $(demos) geninclude.pl
(cd $(srcdir) && $(PERL) ./geninclude.pl $(demos) > demos.h)
demos.h: @REBUILD@ $(demos) geninclude.pl
(here=`pwd` ; cd $(srcdir) && $(PERL) $$here/geninclude.pl $(demos)) > demos.h
gtk_demo_SOURCES = \
$(demos) \
@@ -81,3 +79,5 @@ IMAGEFILES= alphatest.png \
gtk-logo-rgb.gif
democode_DATA = $(demos) $(IMAGEFILES)
DISTCLEANFILES = demos.h

View File

@@ -8,20 +8,20 @@
static GtkWidget *window = NULL;
static void
menuitem_cb (gpointer callback_data,
guint callback_action,
GtkWidget *widget)
activate_action (GtkAction *action)
{
const gchar *name = gtk_action_get_name (action);
const gchar *typename = G_OBJECT_TYPE_NAME (action);
GtkWidget *dialog;
dialog = gtk_message_dialog_new (GTK_WINDOW (callback_data),
dialog = gtk_message_dialog_new (GTK_WINDOW (window),
GTK_DIALOG_DESTROY_WITH_PARENT,
GTK_MESSAGE_INFO,
GTK_BUTTONS_CLOSE,
"You selected or toggled the menu item: \"%s\"",
gtk_item_factory_path_from_widget (widget));
"You activated action: \"%s\" of type \"%s\"",
name, typename);
/* Close dialog on user response */
g_signal_connect (dialog,
@@ -32,54 +32,158 @@ menuitem_cb (gpointer callback_data,
gtk_widget_show (dialog);
}
static GtkItemFactoryEntry menu_items[] =
static void
activate_radio_action (GtkAction *action, GtkRadioAction *current)
{
{ "/_File", NULL, 0, 0, "<Branch>" },
{ "/File/_New", "<control>N", menuitem_cb, 0, "<StockItem>", GTK_STOCK_NEW },
{ "/File/_Open", "<control>O", menuitem_cb, 0, "<StockItem>", GTK_STOCK_OPEN },
{ "/File/_Save", "<control>S", menuitem_cb, 0, "<StockItem>", GTK_STOCK_SAVE },
{ "/File/Save _As...", NULL, menuitem_cb, 0, "<StockItem>", GTK_STOCK_SAVE },
{ "/File/sep1", NULL, menuitem_cb, 0, "<Separator>" },
{ "/File/_Quit", "<control>Q", menuitem_cb, 0, "<StockItem>", GTK_STOCK_QUIT },
const gchar *name = gtk_action_get_name (GTK_ACTION (current));
const gchar *typename = G_OBJECT_TYPE_NAME (GTK_ACTION (current));
gboolean active = gtk_toggle_action_get_active (GTK_TOGGLE_ACTION (current));
gint value = gtk_radio_action_get_current_value (GTK_RADIO_ACTION (current));
{ "/_Preferences", NULL, 0, 0, "<Branch>" },
{ "/_Preferences/_Color", NULL, 0, 0, "<Branch>" },
{ "/_Preferences/Color/_Red", NULL, menuitem_cb, 0, "<RadioItem>" },
{ "/_Preferences/Color/_Green", NULL, menuitem_cb, 0, "/Preferences/Color/Red" },
{ "/_Preferences/Color/_Blue", NULL, menuitem_cb, 0, "/Preferences/Color/Red" },
{ "/_Preferences/_Shape", NULL, 0, 0, "<Branch>" },
{ "/_Preferences/Shape/_Square", NULL, menuitem_cb, 0, "<RadioItem>" },
{ "/_Preferences/Shape/_Rectangle", NULL, menuitem_cb, 0, "/Preferences/Shape/Square" },
{ "/_Preferences/Shape/_Oval", NULL, menuitem_cb, 0, "/Preferences/Shape/Rectangle" },
if (active)
{
GtkWidget *dialog;
dialog = gtk_message_dialog_new (GTK_WINDOW (window),
GTK_DIALOG_DESTROY_WITH_PARENT,
GTK_MESSAGE_INFO,
GTK_BUTTONS_CLOSE,
"You activated radio action: \"%s\" of type \"%s\".\nCurrent value: %d",
name, typename, value);
/* If you wanted this to be right justified you would use "<LastBranch>", not "<Branch>".
* Right justified help menu items are generally considered a bad idea now days.
*/
{ "/_Help", NULL, 0, 0, "<Branch>" },
{ "/Help/_About", NULL, menuitem_cb, 0 },
/* Close dialog on user response */
g_signal_connect (dialog,
"response",
G_CALLBACK (gtk_widget_destroy),
NULL);
gtk_widget_show (dialog);
}
}
static GtkActionEntry entries[] = {
{ "FileMenu", NULL, "_File" }, /* name, stock id, label */
{ "PreferencesMenu", NULL, "_Preferences" }, /* name, stock id, label */
{ "ColorMenu", NULL, "_Color" }, /* name, stock id, label */
{ "ShapeMenu", NULL, "_Shape" }, /* name, stock id, label */
{ "HelpMenu", NULL, "_Help" }, /* name, stock id, label */
{ "New", GTK_STOCK_NEW, /* name, stock id */
"_New", "<control>N", /* label, accelerator */
"Create a new file", /* tooltip */
G_CALLBACK (activate_action) },
{ "Open", GTK_STOCK_OPEN, /* name, stock id */
"_Open","<control>O", /* label, accelerator */
"Open a file", /* tooltip */
G_CALLBACK (activate_action) },
{ "Save", GTK_STOCK_SAVE, /* name, stock id */
"_Save","<control>S", /* label, accelerator */
"Save current file", /* tooltip */
G_CALLBACK (activate_action) },
{ "SaveAs", GTK_STOCK_SAVE, /* name, stock id */
"Save _As...", NULL, /* label, accelerator */
"Save to a file", /* tooltip */
G_CALLBACK (activate_action) },
{ "Quit", GTK_STOCK_QUIT, /* name, stock id */
"_Quit", "<control>Q", /* label, accelerator */
"Quit", /* tooltip */
G_CALLBACK (activate_action) },
{ "About", NULL, /* name, stock id */
"_About", "<control>A", /* label, accelerator */
"About", /* tooltip */
G_CALLBACK (activate_action) },
{ "Logo", "demo-gtk-logo", /* name, stock id */
NULL, NULL, /* label, accelerator */
"GTK+", /* tooltip */
G_CALLBACK (activate_action) },
};
static guint n_entries = G_N_ELEMENTS (entries);
static GtkToggleActionEntry toggle_entries[] = {
{ "Bold", GTK_STOCK_BOLD, /* name, stock id */
"_Bold", "<control>B", /* label, accelerator */
"Bold", /* tooltip */
G_CALLBACK (activate_action),
TRUE }, /* is_active */
};
static guint n_toggle_entries = G_N_ELEMENTS (toggle_entries);
enum {
COLOR_RED,
COLOR_GREEN,
COLOR_BLUE
};
static void
toolbar_cb (GtkWidget *button,
gpointer data)
{
GtkWidget *dialog;
dialog = gtk_message_dialog_new (GTK_WINDOW (data),
GTK_DIALOG_DESTROY_WITH_PARENT,
GTK_MESSAGE_INFO,
GTK_BUTTONS_CLOSE,
"You selected a toolbar button");
static GtkRadioActionEntry color_entries[] = {
{ "Red", NULL, /* name, stock id */
"_Red", "<control>R", /* label, accelerator */
"Blood", COLOR_RED }, /* tooltip, value */
{ "Green", NULL, /* name, stock id */
"_Green", "<control>G", /* label, accelerator */
"Grass", COLOR_GREEN }, /* tooltip, value */
{ "Blue", NULL, /* name, stock id */
"_Blue", "<control>B", /* label, accelerator */
"Sky", COLOR_BLUE }, /* tooltip, value */
};
static guint n_color_entries = G_N_ELEMENTS (color_entries);
enum {
SHAPE_SQUARE,
SHAPE_RECTANGLE,
SHAPE_OVAL,
};
static GtkRadioActionEntry shape_entries[] = {
{ "Square", NULL, /* name, stock id */
"_Square", "<control>S", /* label, accelerator */
"Square", SHAPE_SQUARE }, /* tooltip, value */
{ "Rectangle", NULL, /* name, stock id */
"_Rectangle", "<control>R", /* label, accelerator */
"Rectangle", SHAPE_RECTANGLE }, /* tooltip, value */
{ "Oval", NULL, /* name, stock id */
"_Oval", "<control>O", /* label, accelerator */
"Egg", SHAPE_OVAL }, /* tooltip, value */
};
static guint n_shape_entries = G_N_ELEMENTS (shape_entries);
static const gchar *ui_info =
"<ui>"
" <menubar name='MenuBar'>"
" <menu action='FileMenu'>"
" <menuitem action='New'/>"
" <menuitem action='Open'/>"
" <menuitem action='Save'/>"
" <menuitem action='SaveAs'/>"
" <separator/>"
" <menuitem action='Quit'/>"
" </menu>"
" <menu action='PreferencesMenu'>"
" <menu action='ColorMenu'>"
" <menuitem action='Red'/>"
" <menuitem action='Green'/>"
" <menuitem action='Blue'/>"
" </menu>"
" <menu action='ShapeMenu'>"
" <menuitem action='Square'/>"
" <menuitem action='Rectangle'/>"
" <menuitem action='Oval'/>"
" </menu>"
" <menuitem action='Bold'/>"
" </menu>"
" <menu action='HelpMenu'>"
" <menuitem action='About'/>"
" </menu>"
" </menubar>"
" <toolbar name='ToolBar'>"
" <toolitem action='Open'/>"
" <toolitem action='Quit'/>"
" <separator action='Sep1'/>"
" <toolitem action='Logo'/>"
" </toolbar>"
"</ui>";
/* Close dialog on user response */
g_signal_connect (dialog,
"response",
G_CALLBACK (gtk_widget_destroy),
NULL);
gtk_widget_show (dialog);
}
/* This function registers our custom toolbar icons, so they can be themed.
*
@@ -185,19 +289,30 @@ mark_set_callback (GtkTextBuffer *buffer,
update_statusbar (buffer, GTK_STATUSBAR (data));
}
static void
update_resize_grip (GtkWidget *widget,
GdkEventWindowState *event,
GtkStatusbar *statusbar)
{
if (event->changed_mask & (GDK_WINDOW_STATE_MAXIMIZED | GDK_WINDOW_STATE_FULLSCREEN))
gtk_statusbar_set_has_resize_grip (statusbar, !(event->new_window_state & (GDK_WINDOW_STATE_MAXIMIZED | GDK_WINDOW_STATE_FULLSCREEN)));
}
GtkWidget *
do_appwindow (void)
do_appwindow (GtkWidget *do_widget)
{
if (!window)
{
GtkWidget *table;
GtkWidget *toolbar;
GtkWidget *statusbar;
GtkWidget *contents;
GtkWidget *sw;
GtkWidget *bar;
GtkTextBuffer *buffer;
GtkAccelGroup *accel_group;
GtkItemFactory *item_factory;
GtkActionGroup *action_group;
GtkUIManager *merge;
GError *error = NULL;
register_stock_icons ();
@@ -205,6 +320,8 @@ do_appwindow (void)
*/
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_screen (GTK_WINDOW (window),
gtk_widget_get_screen (do_widget));
gtk_window_set_title (GTK_WINDOW (window), "Application Window");
/* NULL window variable when window is closed */
@@ -216,66 +333,53 @@ do_appwindow (void)
gtk_container_add (GTK_CONTAINER (window), table);
/* Create the menubar
/* Create the menubar and toolbar
*/
accel_group = gtk_accel_group_new ();
gtk_window_add_accel_group (GTK_WINDOW (window), accel_group);
g_object_unref (accel_group);
action_group = gtk_action_group_new ("AppWindowActions");
gtk_action_group_add_actions (action_group,
entries, n_entries,
NULL);
gtk_action_group_add_toggle_actions (action_group,
toggle_entries, n_toggle_entries,
NULL);
gtk_action_group_add_radio_actions (action_group,
color_entries, n_color_entries,
COLOR_RED,
G_CALLBACK (activate_radio_action),
NULL);
gtk_action_group_add_radio_actions (action_group,
shape_entries, n_shape_entries,
SHAPE_SQUARE,
G_CALLBACK (activate_radio_action),
NULL);
merge = gtk_ui_manager_new ();
g_object_set_data_full (G_OBJECT (window), "ui-manager", merge, g_object_unref);
gtk_ui_manager_insert_action_group (merge, action_group, 0);
gtk_window_add_accel_group (GTK_WINDOW (window),
gtk_ui_manager_get_accel_group (merge));
item_factory = gtk_item_factory_new (GTK_TYPE_MENU_BAR, "<main>", accel_group);
/* Set up item factory to go away with the window */
g_object_ref (item_factory);
gtk_object_sink (GTK_OBJECT (item_factory));
g_object_set_data_full (G_OBJECT (window),
"<main>",
item_factory,
(GDestroyNotify) g_object_unref);
/* create menu items */
gtk_item_factory_create_items (item_factory, G_N_ELEMENTS (menu_items),
menu_items, window);
if (!gtk_ui_manager_add_ui_from_string (merge, ui_info, -1, &error))
{
g_message ("building menus failed: %s", error->message);
g_error_free (error);
}
bar = gtk_ui_manager_get_widget (merge, "/MenuBar");
gtk_widget_show (bar);
gtk_table_attach (GTK_TABLE (table),
gtk_item_factory_get_widget (item_factory, "<main>"),
bar,
/* X direction */ /* Y direction */
0, 1, 0, 1,
GTK_EXPAND | GTK_FILL, 0,
0, 0);
/* Create the toolbar
*/
toolbar = gtk_toolbar_new ();
gtk_toolbar_insert_stock (GTK_TOOLBAR (toolbar),
GTK_STOCK_OPEN,
"This is a demo button with an 'open' icon",
NULL,
G_CALLBACK (toolbar_cb),
window, /* user data for callback */
-1); /* -1 means "append" */
gtk_toolbar_insert_stock (GTK_TOOLBAR (toolbar),
GTK_STOCK_QUIT,
"This is a demo button with a 'quit' icon",
NULL,
G_CALLBACK (toolbar_cb),
window, /* user data for callback */
-1); /* -1 means "append" */
gtk_toolbar_append_space (GTK_TOOLBAR (toolbar));
gtk_toolbar_insert_stock (GTK_TOOLBAR (toolbar),
"demo-gtk-logo",
"This is a demo button with a 'gtk' icon",
NULL,
G_CALLBACK (toolbar_cb),
window, /* user data for callback */
-1); /* -1 means "append" */
bar = gtk_ui_manager_get_widget (merge, "/ToolBar");
gtk_toolbar_set_tooltips (GTK_TOOLBAR (bar), TRUE);
gtk_widget_show (bar);
gtk_table_attach (GTK_TABLE (table),
toolbar,
bar,
/* X direction */ /* Y direction */
0, 1, 1, 2,
GTK_EXPAND | GTK_FILL, 0,
@@ -304,7 +408,8 @@ do_appwindow (void)
200, 200);
contents = gtk_text_view_new ();
gtk_widget_grab_focus (contents);
gtk_container_add (GTK_CONTAINER (sw),
contents);
@@ -332,6 +437,12 @@ do_appwindow (void)
G_CALLBACK (mark_set_callback),
statusbar,
0);
g_signal_connect_object (window,
"window_state_event",
G_CALLBACK (update_resize_grip),
statusbar,
0);
update_statusbar (buffer, GTK_STATUSBAR (statusbar));
}

View File

@@ -41,7 +41,7 @@ create_bbox (gint horizontal,
}
GtkWidget *
do_button_box (void)
do_button_box (GtkWidget *do_widget)
{
static GtkWidget *window = NULL;
GtkWidget *main_vbox;
@@ -53,6 +53,8 @@ do_button_box (void)
if (!window)
{
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_screen (GTK_WINDOW (window),
gtk_widget_get_screen (do_widget));
gtk_window_set_title (GTK_WINDOW (window), "Button Boxes");
g_signal_connect (window, "destroy",

View File

@@ -577,7 +577,7 @@ destroy_cb (GtkObject *object,
* it. Otherwise, destroys it.
*/
GtkWidget *
do_changedisplay (void)
do_changedisplay (GtkWidget *do_widget)
{
static ChangeDisplayInfo *info = NULL;
@@ -589,7 +589,7 @@ do_changedisplay (void)
info = g_new0 (ChangeDisplayInfo, 1);
info->window = gtk_dialog_new_with_buttons ("Change Screen or display",
NULL, /* parent */
GTK_WINDOW (do_widget),
GTK_DIALOG_NO_SEPARATOR,
GTK_STOCK_CLOSE, GTK_RESPONSE_CLOSE,
"Change", GTK_RESPONSE_OK,

View File

@@ -65,7 +65,7 @@ change_color_callback (GtkWidget *button,
}
GtkWidget *
do_colorsel (void)
do_colorsel (GtkWidget *do_widget)
{
GtkWidget *vbox;
GtkWidget *button;
@@ -78,6 +78,8 @@ do_colorsel (void)
color.green = 0;
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_screen (GTK_WINDOW (window),
gtk_widget_get_screen (do_widget));
gtk_window_set_title (GTK_WINDOW (window), "Color Selection");
g_signal_connect (window, "destroy",

View File

@@ -93,7 +93,7 @@ interactive_dialog_clicked (GtkButton *button,
}
GtkWidget *
do_dialog (void)
do_dialog (GtkWidget *do_widget)
{
GtkWidget *frame;
GtkWidget *vbox;
@@ -106,6 +106,8 @@ do_dialog (void)
if (!window)
{
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_screen (GTK_WINDOW (window),
gtk_widget_get_screen (do_widget));
gtk_window_set_title (GTK_WINDOW (window), "Dialogs");
g_signal_connect (window, "destroy", G_CALLBACK (gtk_widget_destroyed), &window);

View File

@@ -219,7 +219,7 @@ checkerboard_expose (GtkWidget *da,
}
GtkWidget *
do_drawingarea (void)
do_drawingarea (GtkWidget *do_widget)
{
GtkWidget *frame;
GtkWidget *vbox;
@@ -229,6 +229,8 @@ do_drawingarea (void)
if (!window)
{
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_screen (GTK_WINDOW (window),
gtk_widget_get_screen (do_widget));
gtk_window_set_title (GTK_WINDOW (window), "Drawing Area");
g_signal_connect (window, "destroy", G_CALLBACK (gtk_widget_destroyed), &window);

View File

@@ -152,13 +152,11 @@ cell_edited (GtkCellRendererText *cell,
GtkTreePath *path = gtk_tree_path_new_from_string (path_string);
GtkTreeIter iter;
gint *column;
column = g_object_get_data (G_OBJECT (cell), "column");
gint column = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (cell), "column"));
gtk_tree_model_get_iter (model, &iter, path);
switch (GPOINTER_TO_INT (column))
switch (column)
{
case COLUMN_NUMBER:
{
@@ -225,7 +223,7 @@ add_columns (GtkTreeView *treeview)
}
GtkWidget *
do_editable_cells (void)
do_editable_cells (GtkWidget *do_widget)
{
if (!window)
{
@@ -238,6 +236,8 @@ do_editable_cells (void)
/* create window, etc */
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_screen (GTK_WINDOW (window),
gtk_widget_get_screen (do_widget));
gtk_window_set_title (GTK_WINDOW (window), "Shopping list");
gtk_container_set_border_width (GTK_CONTAINER (window), 5);
g_signal_connect (window, "destroy",

View File

@@ -0,0 +1,97 @@
/* Entry Completion
*
* GtkEntryCompletion provides a mechanism for adding support for
* completion in GtkEntry.
*
*/
#include <gtk/gtk.h>
static GtkWidget *window = NULL;
/* Creates a tree model containing the completions */
GtkTreeModel *
create_completion_model (void)
{
GtkListStore *store;
GtkTreeIter iter;
store = gtk_list_store_new (1, G_TYPE_STRING);
/* Append one word */
gtk_list_store_append (store, &iter);
gtk_list_store_set (store, &iter, 0, "GNOME", -1);
/* Append another word */
gtk_list_store_append (store, &iter);
gtk_list_store_set (store, &iter, 0, "total", -1);
/* And another word */
gtk_list_store_append (store, &iter);
gtk_list_store_set (store, &iter, 0, "totally", -1);
return GTK_TREE_MODEL (store);
}
GtkWidget *
do_entry_completion (GtkWidget *do_widget)
{
GtkWidget *vbox;
GtkWidget *label;
GtkWidget *entry;
GtkEntryCompletion *completion;
GtkTreeModel *completion_model;
if (!window)
{
window = gtk_dialog_new_with_buttons ("GtkEntryCompletion",
GTK_WINDOW (do_widget),
0,
GTK_STOCK_CLOSE,
GTK_RESPONSE_NONE,
NULL);
gtk_window_set_resizable (GTK_WINDOW (window), FALSE);
g_signal_connect (window, "response",
G_CALLBACK (gtk_widget_destroy), NULL);
g_signal_connect (window, "destroy",
G_CALLBACK (gtk_widget_destroyed), &window);
vbox = gtk_vbox_new (FALSE, 5);
gtk_box_pack_start (GTK_BOX (GTK_DIALOG (window)->vbox), vbox, TRUE, TRUE, 0);
gtk_container_set_border_width (GTK_CONTAINER (vbox), 5);
label = gtk_label_new (NULL);
gtk_label_set_markup (GTK_LABEL (label), "Completion demo, try writing <b>total</b> or <b>gnome</b> for example.");
gtk_box_pack_start (GTK_BOX (vbox), label, FALSE, FALSE, 0);
/* Create our entry */
entry = gtk_entry_new ();
gtk_box_pack_start (GTK_BOX (vbox), entry, FALSE, FALSE, 0);
/* Create the completion object */
completion = gtk_entry_completion_new ();
/* Assign the completion to the entry */
gtk_entry_set_completion (GTK_ENTRY (entry), completion);
g_object_unref (completion);
/* Create a tree model and use it as the completion model */
completion_model = create_completion_model ();
gtk_entry_completion_set_model (completion, completion_model);
g_object_unref (completion_model);
/* Use model column 0 as the text column */
gtk_entry_completion_set_text_column (completion, 0);
}
if (!GTK_WIDGET_VISIBLE (window))
gtk_widget_show_all (window);
else
gtk_widget_destroy (window);
return window;
}

View File

@@ -1,163 +0,0 @@
#!/usr/bin/perl -w
print <<EOT;
typedef GtkWidget *(*GDoDemoFunc) (void);
typedef struct _Demo Demo;
struct _Demo
{
gchar *title;
gchar *filename;
GDoDemoFunc func;
Demo *children;
};
EOT
for $file (@ARGV) {
my %demo;
($basename = $file) =~ s/\.c$//;
open INFO_FILE, $file or die "Cannot open '$file'\n";
$title = <INFO_FILE>;
$title =~ s@^\s*/\*\s*@@;
$title =~ s@\s*$@@;
close INFO_FILE;
print "GtkWidget *do_$basename (void);\n";
push @demos, {"title" => $title, "file" => $file,
"func" => "do_$basename"};
}
# generate a list of 'parent names'
foreach $href (@demos) {
if ($href->{"title"} =~ m|^([\w\s]+)/[\w\s]+$|) {
my $parent_name = $1;
my $do_next = 0;
# parent detected
if (defined @parents) {
foreach $foo (@parents) {
if ($foo eq $parent_name) {
$do_next = 1;
}
}
if ($do_next) {
next;
}
}
push @parents, $parent_name;
$tmp = (defined @child_arrays)?($#child_arrays + 1):0;
push @child_arrays, "child$tmp";
push @demos, {"title" => $parent_name, "file" => "NULL",
"func" => "NULL"};
}
}
if (defined @parents) {
$i = 0;
for ($i = 0; $i <= $#parents; $i++) {
$first = 1;
print "\nDemo ", $child_arrays[$i], "[] = {\n";
$j = 0;
for ($j = 0; $j <= $#demos; $j++) {
$href = $demos[$j];
if (!defined $demos[$j]) {
next;
}
if ($demos[$j]{"title"} =~ m|^$parents[$i]/([\w\s]+)$|) {
if ($first) {
$first = 0;
} else {
print ",\n";
}
print qq ( { "$1", "$demos[$j]{file}", $demos[$j]{func}, NULL });
# hack ... ugly
$demos[$j]{"title"} = "foo";
}
}
print ",\n";
print qq ( { NULL } );
print "\n};\n";
}
}
# sort @demos
@demos_old = @demos;
@demos = sort {
$a->{"title"} cmp $b->{"title"};
} @demos_old;
# sort the child arrays
if (defined @child_arrays) {
for ($i = 0; $i <= $#child_arrays; $i++) {
@foo_old = @{$child_arrays[$i]};
@{$child_arrays[$i]} = sort {
$a->{"title"} cmp $b->{"title"};
} @foo_old;
}
}
# toplevel
print "\nDemo testgtk_demos[] = {\n";
$first = 1;
foreach $href (@demos) {
$handled = 0;
# ugly evil hack
if ($href->{title} eq "foo") {
next;
}
if ($first) {
$first = 0;
} else {
print ", \n";
}
if (defined @parents) {
for ($i = 0; $i <= $#parents; $i++) {
if ($parents[$i] eq $href->{title}) {
if ($href->{file} eq 'NULL') {
print qq ( { "$href->{title}", NULL, $href->{func}, $child_arrays[$i] });
} else {
print qq ( { "$href->{title}", "$href->{file}", $href->{func}, $child_arrays[$i] });
}
$handled = 1;
last;
}
}
}
if ($handled) {
next;
}
print qq ( { "$href->{title}", "$href->{file}", $href->{func}, NULL });
}
print ",\n";
print qq ( { NULL } );
print "\n};\n";
exit 0;

View File

@@ -1,7 +1,7 @@
#!@PERL@ -w
print <<EOT;
typedef GtkWidget *(*GDoDemoFunc) (void);
typedef GtkWidget *(*GDoDemoFunc) (GtkWidget *do_widget);
typedef struct _Demo Demo;
@@ -27,7 +27,7 @@ for $file (@ARGV) {
close INFO_FILE;
print "GtkWidget *do_$basename (void);\n";
print "GtkWidget *do_$basename (GtkWidget *do_widget);\n";
push @demos, {"title" => $title, "file" => $file,
"func" => "do_$basename"};

318
demos/gtk-demo/hypertext.c Normal file
View File

@@ -0,0 +1,318 @@
/* Text Widget/Hypertext
*
* Usually, tags modify the appearance of text in the view, e.g. making it
* bold or colored or underlined. But tags are not restricted to appearance.
* They can also affect the behavior of mouse and key presses, as this demo
* shows.
*/
#include <gtk/gtk.h>
#include <gdk/gdkkeysyms.h>
/* Inserts a piece of text into the buffer, giving it the usual
* appearance of a hyperlink in a web browser: blue and underlined.
* Additionally, attaches some data on the tag, to make it recognizable
* as a link.
*/
static void
insert_link (GtkTextBuffer *buffer,
GtkTextIter *iter,
gchar *text,
gint page)
{
GtkTextTag *tag;
tag = gtk_text_buffer_create_tag (buffer, NULL,
"foreground", "blue",
"underline", PANGO_UNDERLINE_SINGLE,
NULL);
g_object_set_data (G_OBJECT (tag), "page", GINT_TO_POINTER (page));
gtk_text_buffer_insert_with_tags (buffer, iter, text, -1, tag, NULL);
}
/* Fills the buffer with text and interspersed links. In any real
* hypertext app, this method would parse a file to identify the links.
*/
static void
show_page (GtkTextBuffer *buffer,
gint page)
{
GtkTextIter iter;
gtk_text_buffer_set_text (buffer, "", 0);
gtk_text_buffer_get_iter_at_offset (buffer, &iter, 0);
if (page == 1)
{
gtk_text_buffer_insert (buffer, &iter, "Some text to show that simple ", -1);
insert_link (buffer, &iter, "hypertext", 3);
gtk_text_buffer_insert (buffer, &iter, " can easily be realized with ", -1);
insert_link (buffer, &iter, "tags", 2);
gtk_text_buffer_insert (buffer, &iter, ".", -1);
}
else if (page == 2)
{
gtk_text_buffer_insert (buffer, &iter,
"A tag is an attribute that can be applied to some range of text. "
"For example, a tag might be called \"bold\" and make the text inside "
"the tag bold. However, the tag concept is more general than that; "
"tags don't have to affect appearance. They can instead affect the "
"behavior of mouse and key presses, \"lock\" a range of text so the "
"user can't edit it, or countless other things.\n", -1);
insert_link (buffer, &iter, "Go back", 1);
}
else if (page == 3)
{
GtkTextTag *tag;
tag = gtk_text_buffer_create_tag (buffer, NULL,
"weight", PANGO_WEIGHT_BOLD,
NULL);
gtk_text_buffer_insert_with_tags (buffer, &iter, "hypertext:\n", -1, tag, NULL);
gtk_text_buffer_insert (buffer, &iter,
"machine-readable text that is not sequential but is organized "
"so that related items of information are connected.\n", -1);
insert_link (buffer, &iter, "Go back", 1);
}
}
/* Looks at all tags covering the position of iter in the text view,
* and if one of them is a link, follow it by showing the page identified
* by the data attached to it.
*/
static void
follow_if_link (GtkWidget *text_view,
GtkTextIter *iter)
{
GSList *tags = NULL, *tagp = NULL;
tags = gtk_text_iter_get_tags (iter);
for (tagp = tags; tagp != NULL; tagp = tagp->next)
{
GtkTextTag *tag = tagp->data;
gint page = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (tag), "page"));
if (page != 0)
{
show_page (gtk_text_view_get_buffer (GTK_TEXT_VIEW (text_view)), page);
break;
}
}
if (tags)
g_slist_free (tags);
}
/* Links can be activated by pressing Enter.
*/
static gboolean
key_press_event (GtkWidget *text_view,
GdkEventKey *event)
{
GtkTextIter iter;
GtkTextBuffer *buffer;
switch (event->keyval)
{
case GDK_Return:
case GDK_KP_Enter:
buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (text_view));
gtk_text_buffer_get_iter_at_mark (buffer, &iter,
gtk_text_buffer_get_insert (buffer));
follow_if_link (text_view, &iter);
break;
default:
break;
}
return FALSE;
}
/* Links can also be activated by clicking.
*/
static gboolean
event_after (GtkWidget *text_view,
GdkEvent *ev)
{
GtkTextIter start, end, iter;
GtkTextBuffer *buffer;
GdkEventButton *event;
gint x, y;
if (ev->type != GDK_BUTTON_RELEASE)
return FALSE;
event = (GdkEventButton *)ev;
if (event->button != 1)
return FALSE;
buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (text_view));
/* we shouldn't follow a link if the user has selected something */
gtk_text_buffer_get_selection_bounds (buffer, &start, &end);
if (gtk_text_iter_get_offset (&start) != gtk_text_iter_get_offset (&end))
return FALSE;
gtk_text_view_window_to_buffer_coords (GTK_TEXT_VIEW (text_view),
GTK_TEXT_WINDOW_WIDGET,
event->x, event->y, &x, &y);
gtk_text_view_get_iter_at_location (GTK_TEXT_VIEW (text_view), &iter, x, y);
follow_if_link (text_view, &iter);
return FALSE;
}
gboolean hovering_over_link = FALSE;
GdkCursor *hand_cursor = NULL;
GdkCursor *regular_cursor = NULL;
/* Looks at all tags covering the position (x, y) in the text view,
* and if one of them is a link, change the cursor to the "hands" cursor
* typically used by web browsers.
*/
static void
set_cursor_if_appropriate (GtkTextView *text_view,
gint x,
gint y)
{
GSList *tags = NULL, *tagp = NULL;
GtkTextBuffer *buffer;
GtkTextIter iter;
gboolean hovering = FALSE;
buffer = gtk_text_view_get_buffer (text_view);
gtk_text_view_get_iter_at_location (text_view, &iter, x, y);
tags = gtk_text_iter_get_tags (&iter);
for (tagp = tags; tagp != NULL; tagp = tagp->next)
{
GtkTextTag *tag = tagp->data;
gint page = GPOINTER_TO_INT (g_object_get_data (G_OBJECT (tag), "page"));
if (page != 0)
{
hovering = TRUE;
break;
}
}
if (hovering != hovering_over_link)
{
hovering_over_link = hovering;
if (hovering_over_link)
gdk_window_set_cursor (gtk_text_view_get_window (text_view, GTK_TEXT_WINDOW_TEXT), hand_cursor);
else
gdk_window_set_cursor (gtk_text_view_get_window (text_view, GTK_TEXT_WINDOW_TEXT), regular_cursor);
}
if (tags)
g_slist_free (tags);
}
/* Update the cursor image if the pointer moved.
*/
static gboolean
motion_notify_event (GtkWidget *text_view,
GdkEventMotion *event)
{
gint x, y;
gtk_text_view_window_to_buffer_coords (GTK_TEXT_VIEW (text_view),
GTK_TEXT_WINDOW_WIDGET,
event->x, event->y, &x, &y);
set_cursor_if_appropriate (GTK_TEXT_VIEW (text_view), x, y);
gdk_window_get_pointer (text_view->window, NULL, NULL, NULL);
return FALSE;
}
/* Also update the cursor image if the window becomes visible
* (e.g. when a window covering it got iconified).
*/
static gboolean
visibility_notify_event (GtkWidget *text_view,
GdkEventVisibility *event)
{
gint wx, wy, bx, by;
gdk_window_get_pointer (text_view->window, &wx, &wy, NULL);
gtk_text_view_window_to_buffer_coords (GTK_TEXT_VIEW (text_view),
GTK_TEXT_WINDOW_WIDGET,
wx, wy, &bx, &by);
set_cursor_if_appropriate (GTK_TEXT_VIEW (text_view), bx, by);
return FALSE;
}
GtkWidget *
do_hypertext (GtkWidget *do_widget)
{
static GtkWidget *window = NULL;
if (!window)
{
GtkWidget *view;
GtkWidget *sw;
GtkTextBuffer *buffer;
hand_cursor = gdk_cursor_new (GDK_HAND2);
regular_cursor = gdk_cursor_new (GDK_XTERM);
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_screen (GTK_WINDOW (window),
gtk_widget_get_screen (do_widget));
gtk_window_set_default_size (GTK_WINDOW (window),
450, 450);
g_signal_connect (window, "destroy",
G_CALLBACK (gtk_widget_destroyed), &window);
gtk_window_set_title (GTK_WINDOW (window), "Hypertext");
gtk_container_set_border_width (GTK_CONTAINER (window), 0);
view = gtk_text_view_new ();
gtk_text_view_set_wrap_mode (GTK_TEXT_VIEW (view), GTK_WRAP_WORD);
g_signal_connect (G_OBJECT (view), "key-press-event",
G_CALLBACK (key_press_event), NULL);
g_signal_connect (G_OBJECT (view), "event-after",
G_CALLBACK (event_after), NULL);
g_signal_connect (G_OBJECT (view), "motion-notify-event",
G_CALLBACK (motion_notify_event), NULL);
g_signal_connect (G_OBJECT (view), "visibility-notify-event",
G_CALLBACK (visibility_notify_event), NULL);
buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (view));
sw = gtk_scrolled_window_new (NULL, NULL);
gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (sw),
GTK_POLICY_AUTOMATIC,
GTK_POLICY_AUTOMATIC);
gtk_container_add (GTK_CONTAINER (window), sw);
gtk_container_add (GTK_CONTAINER (sw), view);
show_page (buffer, 1);
gtk_widget_show_all (sw);
}
if (!GTK_WIDGET_VISIBLE (window))
{
gtk_widget_show (window);
}
else
{
gtk_widget_destroy (window);
window = NULL;
}
return window;
}

View File

@@ -307,7 +307,7 @@ toggle_sensitivity_callback (GtkWidget *togglebutton,
GtkWidget *
do_images (void)
do_images (GtkWidget *do_widget)
{
GtkWidget *frame;
GtkWidget *vbox;
@@ -322,6 +322,8 @@ do_images (void)
if (!window)
{
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_screen (GTK_WINDOW (window),
gtk_widget_get_screen (do_widget));
gtk_window_set_title (GTK_WINDOW (window), "Images");
g_signal_connect (window, "destroy",

View File

@@ -1,120 +0,0 @@
/* Item Factory
*
* The GtkItemFactory object allows the easy creation of menus
* from an array of descriptions of menu items.
*/
#include <gtk/gtk.h>
static void
gtk_ifactory_cb (gpointer callback_data,
guint callback_action,
GtkWidget *widget)
{
g_message ("ItemFactory: activated \"%s\"",
gtk_item_factory_path_from_widget (widget));
}
static GtkItemFactoryEntry menu_items[] =
{
{ "/_File", NULL, 0, 0, "<Branch>" },
{ "/File/tearoff1", NULL, gtk_ifactory_cb, 0, "<Tearoff>" },
{ "/File/_New", "<control>N", gtk_ifactory_cb, 0 },
{ "/File/_Open", "<control>O", gtk_ifactory_cb, 0 },
{ "/File/_Save", "<control>S", gtk_ifactory_cb, 0 },
{ "/File/Save _As...", NULL, gtk_ifactory_cb, 0 },
{ "/File/sep1", NULL, gtk_ifactory_cb, 0, "<Separator>" },
{ "/File/_Quit", "<control>Q", gtk_ifactory_cb, 0 },
{ "/_Preferences", NULL, 0, 0, "<Branch>" },
{ "/_Preferences/_Color", NULL, 0, 0, "<Branch>" },
{ "/_Preferences/Color/_Red", NULL, gtk_ifactory_cb, 0, "<RadioItem>" },
{ "/_Preferences/Color/_Green", NULL, gtk_ifactory_cb, 0, "/Preferences/Color/Red" },
{ "/_Preferences/Color/_Blue", NULL, gtk_ifactory_cb, 0, "/Preferences/Color/Red" },
{ "/_Preferences/_Shape", NULL, 0, 0, "<Branch>" },
{ "/_Preferences/Shape/_Square", NULL, gtk_ifactory_cb, 0, "<RadioItem>" },
{ "/_Preferences/Shape/_Rectangle", NULL, gtk_ifactory_cb, 0, "/Preferences/Shape/Square" },
{ "/_Preferences/Shape/_Oval", NULL, gtk_ifactory_cb, 0, "/Preferences/Shape/Rectangle" },
{ "/_Help", NULL, 0, 0, "<LastBranch>" },
{ "/Help/_About", NULL, gtk_ifactory_cb, 0 },
};
static int nmenu_items = sizeof (menu_items) / sizeof (menu_items[0]);
GtkWidget *
do_item_factory (void)
{
static GtkWidget *window = NULL;
if (!window)
{
GtkWidget *box1;
GtkWidget *box2;
GtkWidget *separator;
GtkWidget *label;
GtkWidget *button;
GtkAccelGroup *accel_group;
GtkItemFactory *item_factory;
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
g_signal_connect (window, "destroy",
G_CALLBACK (gtk_widget_destroyed), &window);
g_signal_connect (window, "delete-event",
G_CALLBACK (gtk_true), NULL);
accel_group = gtk_accel_group_new ();
item_factory = gtk_item_factory_new (GTK_TYPE_MENU_BAR, "<main>", accel_group);
g_object_set_data_full (G_OBJECT (window), "<main>",
item_factory, (GDestroyNotify) g_object_unref);
gtk_window_add_accel_group (GTK_WINDOW (window), accel_group);
gtk_window_set_title (GTK_WINDOW (window), "Item Factory");
gtk_container_set_border_width (GTK_CONTAINER (window), 0);
gtk_item_factory_create_items (item_factory, nmenu_items, menu_items, NULL);
/* preselect /Preferences/Shape/Oval over the other radios
*/
gtk_check_menu_item_set_active
(GTK_CHECK_MENU_ITEM (gtk_item_factory_get_item (item_factory,
"/Preferences/Shape/Oval")),
TRUE);
box1 = gtk_vbox_new (FALSE, 0);
gtk_container_add (GTK_CONTAINER (window), box1);
gtk_box_pack_start (GTK_BOX (box1),
gtk_item_factory_get_widget (item_factory, "<main>"),
FALSE, FALSE, 0);
label = gtk_label_new ("Type\n<alt>\nto start");
gtk_widget_set_size_request (label, 200, 200);
gtk_misc_set_alignment (GTK_MISC (label), 0.5, 0.5);
gtk_box_pack_start (GTK_BOX (box1), label, TRUE, TRUE, 0);
separator = gtk_hseparator_new ();
gtk_box_pack_start (GTK_BOX (box1), separator, FALSE, TRUE, 0);
box2 = gtk_vbox_new (FALSE, 10);
gtk_container_set_border_width (GTK_CONTAINER (box2), 10);
gtk_box_pack_start (GTK_BOX (box1), box2, FALSE, TRUE, 0);
button = gtk_button_new_with_label ("close");
g_signal_connect_swapped (button, "clicked",
G_CALLBACK (gtk_widget_destroy), window);
gtk_box_pack_start (GTK_BOX (box2), button, TRUE, TRUE, 0);
GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
gtk_widget_grab_default (button);
gtk_widget_show_all (window);
}
else
{
gtk_widget_destroy (window);
window = NULL;
}
return window;
}

View File

@@ -155,7 +155,7 @@ add_columns (GtkTreeView *treeview)
}
GtkWidget *
do_list_store (void)
do_list_store (GtkWidget *do_widget)
{
if (!window)
{
@@ -167,6 +167,8 @@ do_list_store (void)
/* create window, etc */
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_screen (GTK_WINDOW (window),
gtk_widget_get_screen (do_widget));
gtk_window_set_title (GTK_WINDOW (window), "GtkListStore demo");
g_signal_connect (window, "destroy",

View File

@@ -28,6 +28,31 @@ struct _CallbackData
GtkTreePath *path;
};
#ifdef G_OS_WIN32
#undef DEMOCODEDIR
static char *
get_democodedir (void)
{
static char *result = NULL;
if (result == NULL)
{
result = g_win32_get_package_installation_directory (NULL, NULL);
if (result == NULL)
result = "unknown-location";
result = g_strconcat (result, "\\share\\gtk-2.0\\demo", NULL);
}
return result;
}
#define DEMOCODEDIR get_democodedir ()
#endif
/**
* demo_find_file:
* @base: base filename
@@ -45,7 +70,8 @@ demo_find_file (const char *base,
{
g_return_val_if_fail (err == NULL || *err == NULL, NULL);
if (g_file_test (base, G_FILE_TEST_EXISTS))
if (g_file_test ("gtk-logo-rgb.gif", G_FILE_TEST_EXISTS) &&
g_file_test (base, G_FILE_TEST_EXISTS))
return g_strdup (base);
else
{
@@ -578,7 +604,7 @@ row_activated_cb (GtkTreeView *tree_view,
&iter,
ITALIC_COLUMN, !italic,
-1);
window = (func) ();
window = (func) (gtk_widget_get_toplevel (GTK_WIDGET (tree_view)));
if (window != NULL)
{
@@ -811,8 +837,8 @@ main (int argc, char **argv)
if (g_file_test ("../../gdk-pixbuf/libpixbufloader-pnm.la",
G_FILE_TEST_EXISTS))
{
putenv ("GDK_PIXBUF_MODULE_FILE=../../gdk-pixbuf/gdk-pixbuf.loaders");
putenv ("GTK_IM_MODULE_FILE=../../modules/input/gtk.immodules");
g_setenv ("GDK_PIXBUF_MODULE_FILE", "../../gdk-pixbuf/gdk-pixbuf.loaders", TRUE);
g_setenv ("GTK_IM_MODULE_FILE", "../../modules/input/gtk.immodules", TRUE);
}
/* -- End of hack -- */

View File

@@ -19,12 +19,9 @@
* up when the menu item is selected. Typically, all menu items in a menu bar
* have submenus.
*
* The GtkOptionMenu widget is a button that pops up a GtkMenu when clicked.
* It's used inside dialogs and such.
*
* GtkItemFactory provides a higher-level interface for creating menu bars
* GtkUIManager provides a higher-level interface for creating menu bars
* and menus; while you can construct menus manually, most people don't
* do that. There's a separate demo for GtkItemFactory.
* do that. There's a separate demo for GtkUIManager.
*
*/
@@ -74,14 +71,12 @@ create_menu (gint depth,
}
GtkWidget *
do_menus (void)
do_menus (GtkWidget *do_widget)
{
static GtkWidget *window = NULL;
GtkWidget *box1;
GtkWidget *box2;
GtkWidget *button;
GtkWidget *optionmenu;
GtkWidget *separator;
if (!window)
{
@@ -91,7 +86,8 @@ do_menus (void)
GtkAccelGroup *accel_group;
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_screen (GTK_WINDOW (window),
gtk_widget_get_screen (do_widget));
g_signal_connect (window, "destroy",
G_CALLBACK(gtk_widget_destroyed), &window);
g_signal_connect (window, "delete-event",
@@ -130,62 +126,6 @@ do_menus (void)
gtk_menu_shell_append (GTK_MENU_SHELL (menubar), menuitem);
gtk_widget_show (menuitem);
box2 = gtk_vbox_new (FALSE, 10);
gtk_container_set_border_width (GTK_CONTAINER (box2), 10);
gtk_box_pack_start (GTK_BOX (box1), box2, TRUE, TRUE, 0);
gtk_widget_show (box2);
menu = create_menu (1, FALSE);
gtk_menu_set_accel_group (GTK_MENU (menu), accel_group);
menuitem = gtk_separator_menu_item_new ();
gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem);
gtk_widget_show (menuitem);
menuitem = gtk_check_menu_item_new_with_label ("Accelerate Me");
gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem);
gtk_widget_show (menuitem);
gtk_widget_add_accelerator (menuitem,
"activate",
accel_group,
GDK_F1,
0,
GTK_ACCEL_VISIBLE);
menuitem = gtk_check_menu_item_new_with_label ("Accelerator Locked");
gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem);
gtk_widget_show (menuitem);
gtk_widget_add_accelerator (menuitem,
"activate",
accel_group,
GDK_F2,
0,
GTK_ACCEL_VISIBLE | GTK_ACCEL_LOCKED);
menuitem = gtk_check_menu_item_new_with_label ("Accelerators Frozen");
gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem);
gtk_widget_show (menuitem);
gtk_widget_add_accelerator (menuitem,
"activate",
accel_group,
GDK_F2,
0,
GTK_ACCEL_VISIBLE);
gtk_widget_add_accelerator (menuitem,
"activate",
accel_group,
GDK_F3,
0,
GTK_ACCEL_VISIBLE);
optionmenu = gtk_option_menu_new ();
gtk_option_menu_set_menu (GTK_OPTION_MENU (optionmenu), menu);
gtk_option_menu_set_history (GTK_OPTION_MENU (optionmenu), 3);
gtk_box_pack_start (GTK_BOX (box2), optionmenu, TRUE, TRUE, 0);
gtk_widget_show (optionmenu);
separator = gtk_hseparator_new ();
gtk_box_pack_start (GTK_BOX (box1), separator, FALSE, TRUE, 0);
gtk_widget_show (separator);
box2 = gtk_vbox_new (FALSE, 10);
gtk_container_set_border_width (GTK_CONTAINER (box2), 10);
gtk_box_pack_start (GTK_BOX (box1), box2, FALSE, TRUE, 0);

View File

@@ -112,7 +112,7 @@ create_pane_options (GtkPaned *paned,
}
GtkWidget *
do_panes (void)
do_panes (GtkWidget *do_widget)
{
static GtkWidget *window = NULL;
GtkWidget *frame;
@@ -124,6 +124,8 @@ do_panes (void)
if (!window)
{
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_screen (GTK_WINDOW (window),
gtk_widget_get_screen (do_widget));
g_signal_connect (window, "destroy",
G_CALLBACK (gtk_widget_destroyed), &window);

View File

@@ -205,14 +205,15 @@ cleanup_callback (GtkObject *object,
}
GtkWidget *
do_pixbufs (void)
do_pixbufs (GtkWidget *do_widget)
{
if (!window)
{
GError *error;
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_screen (GTK_WINDOW (window),
gtk_widget_get_screen (do_widget));
gtk_window_set_title (GTK_WINDOW (window), "Pixbufs");
gtk_window_set_resizable (GTK_WINDOW (window), FALSE);

View File

@@ -17,29 +17,22 @@
static GtkWidget *window = NULL;
/* Convenience function to create an option menu holding a number of strings
/* Convenience function to create a combo box holding a number of strings
*/
GtkWidget *
create_option_menu (const char **strings)
create_combo_box (const char **strings)
{
GtkWidget *menu;
GtkWidget *option_menu;
GtkWidget *combo_box;
const char **str;
menu = gtk_menu_new ();
combo_box = gtk_combo_box_new_text ();
for (str = strings; *str; str++)
{
GtkWidget *menu_item = gtk_menu_item_new_with_label (*str);
gtk_widget_show (menu_item);
gtk_combo_box_append_text (GTK_COMBO_BOX (combo_box), *str);
gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_item);
}
gtk_combo_box_set_active (GTK_COMBO_BOX (combo_box), 0);
option_menu = gtk_option_menu_new ();
gtk_option_menu_set_menu (GTK_OPTION_MENU (option_menu), menu);
return option_menu;
return combo_box;
}
static void
@@ -49,7 +42,7 @@ add_row (GtkTable *table,
const char *label_text,
const char **options)
{
GtkWidget *option_menu;
GtkWidget *combo_box;
GtkWidget *label;
label = gtk_label_new_with_mnemonic (label_text);
@@ -59,10 +52,10 @@ add_row (GtkTable *table,
GTK_EXPAND | GTK_FILL, 0,
0, 0);
option_menu = create_option_menu (options);
gtk_label_set_mnemonic_widget (GTK_LABEL (label), option_menu);
gtk_size_group_add_widget (size_group, option_menu);
gtk_table_attach (GTK_TABLE (table), option_menu,
combo_box = create_combo_box (options);
gtk_label_set_mnemonic_widget (GTK_LABEL (label), combo_box);
gtk_size_group_add_widget (size_group, combo_box);
gtk_table_attach (GTK_TABLE (table), combo_box,
1, 2, row, row + 1,
0, 0,
0, 0);
@@ -87,7 +80,7 @@ toggle_grouping (GtkToggleButton *check_button,
}
GtkWidget *
do_sizegroup (void)
do_sizegroup (GtkWidget *do_widget)
{
GtkWidget *table;
GtkWidget *frame;
@@ -110,7 +103,8 @@ do_sizegroup (void)
if (!window)
{
window = gtk_dialog_new_with_buttons ("GtkSizeGroup",
NULL, 0,
GTK_WINDOW (do_widget),
0,
GTK_STOCK_CLOSE,
GTK_RESPONSE_NONE,
NULL);

View File

@@ -400,7 +400,7 @@ label_set_func (GtkTreeViewColumn *tree_column,
}
GtkWidget *
do_stock_browser (void)
do_stock_browser (GtkWidget *do_widget)
{
if (!window)
{
@@ -417,6 +417,8 @@ do_stock_browser (void)
GtkTreeViewColumn *column;
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_screen (GTK_WINDOW (window),
gtk_widget_get_screen (do_widget));
gtk_window_set_title (GTK_WINDOW (window), "Stock Icons and Items");
gtk_window_set_default_size (GTK_WINDOW (window), -1, 500);

View File

@@ -1,4 +1,4 @@
/* Text Widget
/* Text Widget/Multiple Views
*
* The GtkTextView widget displays a GtkTextBuffer. One GtkTextBuffer
* can be displayed by multiple GtkTextViews. This demo has two views
@@ -399,21 +399,11 @@ attach_widgets (GtkTextView *text_view)
}
else if (i == 1)
{
GtkWidget *menu_item;
GtkWidget *menu;
widget = gtk_combo_box_new_text ();
menu = gtk_menu_new ();
widget = gtk_option_menu_new ();
menu_item = gtk_menu_item_new_with_label ("Option 1");
gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_item);
menu_item = gtk_menu_item_new_with_label ("Option 2");
gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_item);
menu_item = gtk_menu_item_new_with_label ("Option 3");
gtk_menu_shell_append (GTK_MENU_SHELL (menu), menu_item);
gtk_option_menu_set_menu (GTK_OPTION_MENU (widget), menu);
gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Option 1");
gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Option 2");
gtk_combo_box_append_text (GTK_COMBO_BOX (widget), "Option 3");
}
else if (i == 2)
{
@@ -448,7 +438,7 @@ attach_widgets (GtkTextView *text_view)
}
GtkWidget *
do_textview (void)
do_textview (GtkWidget *do_widget)
{
static GtkWidget *window = NULL;
@@ -461,6 +451,8 @@ do_textview (void)
GtkTextBuffer *buffer;
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_screen (GTK_WINDOW (window),
gtk_widget_get_screen (do_widget));
gtk_window_set_default_size (GTK_WINDOW (window),
450, 450);

View File

@@ -385,7 +385,7 @@ add_columns (GtkTreeView *treeview)
}
GtkWidget *
do_tree_store (void)
do_tree_store (GtkWidget *do_widget)
{
if (!window)
{
@@ -396,6 +396,8 @@ do_tree_store (void)
/* create window, etc */
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_screen (GTK_WINDOW (window),
gtk_widget_get_screen (do_widget));
gtk_window_set_title (GTK_WINDOW (window), "Card planning sheet");
g_signal_connect (window, "destroy",
G_CALLBACK (gtk_widget_destroyed), &window);

234
demos/gtk-demo/ui_manager.c Normal file
View File

@@ -0,0 +1,234 @@
/* UI Manager
*
* The GtkUIManager object allows the easy creation of menus
* from an array of actions and a description of the menu hierarchy.
*/
#include <gtk/gtk.h>
static void
activate_action (GtkAction *action)
{
g_message ("Action \"%s\" activated", gtk_action_get_name (action));
}
static void
activate_radio_action (GtkAction *action, GtkRadioAction *current)
{
g_message ("Radio action \"%s\" selected",
gtk_action_get_name (GTK_ACTION (current)));
}
static GtkActionEntry entries[] = {
{ "FileMenu", NULL, "_File" }, /* name, stock id, label */
{ "PreferencesMenu", NULL, "_Preferences" }, /* name, stock id, label */
{ "ColorMenu", NULL, "_Color" }, /* name, stock id, label */
{ "ShapeMenu", NULL, "_Shape" }, /* name, stock id, label */
{ "HelpMenu", NULL, "_Help" }, /* name, stock id, label */
{ "New", GTK_STOCK_NEW, /* name, stock id */
"_New", "<control>N", /* label, accelerator */
"Create a new file", /* tooltip */
G_CALLBACK (activate_action) },
{ "Open", GTK_STOCK_OPEN, /* name, stock id */
"_Open","<control>O", /* label, accelerator */
"Open a file", /* tooltip */
G_CALLBACK (activate_action) },
{ "Save", GTK_STOCK_SAVE, /* name, stock id */
"_Save","<control>S", /* label, accelerator */
"Save current file", /* tooltip */
G_CALLBACK (activate_action) },
{ "SaveAs", GTK_STOCK_SAVE, /* name, stock id */
"Save _As...", NULL, /* label, accelerator */
"Save to a file", /* tooltip */
G_CALLBACK (activate_action) },
{ "Quit", GTK_STOCK_QUIT, /* name, stock id */
"_Quit", "<control>Q", /* label, accelerator */
"Quit", /* tooltip */
G_CALLBACK (activate_action) },
{ "About", NULL, /* name, stock id */
"_About", "<control>A", /* label, accelerator */
"About", /* tooltip */
G_CALLBACK (activate_action) },
{ "Logo", "demo-gtk-logo", /* name, stock id */
NULL, NULL, /* label, accelerator */
"GTK+", /* tooltip */
G_CALLBACK (activate_action) },
};
static guint n_entries = G_N_ELEMENTS (entries);
static GtkToggleActionEntry toggle_entries[] = {
{ "Bold", GTK_STOCK_BOLD, /* name, stock id */
"_Bold", "<control>B", /* label, accelerator */
"Bold", /* tooltip */
G_CALLBACK (activate_action),
TRUE }, /* is_active */
};
static guint n_toggle_entries = G_N_ELEMENTS (toggle_entries);
enum {
COLOR_RED,
COLOR_GREEN,
COLOR_BLUE
};
static GtkRadioActionEntry color_entries[] = {
{ "Red", NULL, /* name, stock id */
"_Red", "<control>R", /* label, accelerator */
"Blood", COLOR_RED }, /* tooltip, value */
{ "Green", NULL, /* name, stock id */
"_Green", "<control>G", /* label, accelerator */
"Grass", COLOR_GREEN }, /* tooltip, value */
{ "Blue", NULL, /* name, stock id */
"_Blue", "<control>B", /* label, accelerator */
"Sky", COLOR_BLUE }, /* tooltip, value */
};
static guint n_color_entries = G_N_ELEMENTS (color_entries);
enum {
SHAPE_SQUARE,
SHAPE_RECTANGLE,
SHAPE_OVAL,
};
static GtkRadioActionEntry shape_entries[] = {
{ "Square", NULL, /* name, stock id */
"_Square", "<control>S", /* label, accelerator */
"Square", SHAPE_SQUARE }, /* tooltip, value */
{ "Rectangle", NULL, /* name, stock id */
"_Rectangle", "<control>R", /* label, accelerator */
"Rectangle", SHAPE_RECTANGLE }, /* tooltip, value */
{ "Oval", NULL, /* name, stock id */
"_Oval", "<control>O", /* label, accelerator */
"Egg", SHAPE_OVAL }, /* tooltip, value */
};
static guint n_shape_entries = G_N_ELEMENTS (shape_entries);
static const gchar *ui_info =
"<ui>"
" <menubar name='MenuBar'>"
" <menu action='FileMenu'>"
" <menuitem action='New'/>"
" <menuitem action='Open'/>"
" <menuitem action='Save'/>"
" <menuitem action='SaveAs'/>"
" <separator/>"
" <menuitem action='Quit'/>"
" </menu>"
" <menu action='PreferencesMenu'>"
" <menu action='ColorMenu'>"
" <menuitem action='Red'/>"
" <menuitem action='Green'/>"
" <menuitem action='Blue'/>"
" </menu>"
" <menu action='ShapeMenu'>"
" <menuitem action='Square'/>"
" <menuitem action='Rectangle'/>"
" <menuitem action='Oval'/>"
" </menu>"
" <menuitem action='Bold'/>"
" </menu>"
" <menu action='HelpMenu'>"
" <menuitem action='About'/>"
" </menu>"
" </menubar>"
" <toolbar name='ToolBar'>"
" <toolitem action='Open'/>"
" <toolitem action='Quit'/>"
" <separator action='Sep1'/>"
" <toolitem action='Logo'/>"
" </toolbar>"
"</ui>";
GtkWidget *
do_ui_manager (GtkWidget *do_widget)
{
static GtkWidget *window = NULL;
if (!window)
{
GtkWidget *box1;
GtkWidget *box2;
GtkWidget *separator;
GtkWidget *label;
GtkWidget *button;
GtkUIManager *ui;
GtkActionGroup *actions;
GError *error = NULL;
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_screen (GTK_WINDOW (window),
gtk_widget_get_screen (do_widget));
g_signal_connect (window, "destroy",
G_CALLBACK (gtk_widget_destroyed), &window);
g_signal_connect (window, "delete-event",
G_CALLBACK (gtk_true), NULL);
actions = gtk_action_group_new ("Actions");
gtk_action_group_add_actions (actions, entries, n_entries, NULL);
gtk_action_group_add_toggle_actions (actions,
toggle_entries, n_toggle_entries,
NULL);
gtk_action_group_add_radio_actions (actions,
color_entries, n_color_entries,
COLOR_RED,
G_CALLBACK (activate_radio_action),
NULL);
gtk_action_group_add_radio_actions (actions,
shape_entries, n_shape_entries,
SHAPE_OVAL,
G_CALLBACK (activate_radio_action),
NULL);
ui = gtk_ui_manager_new ();
gtk_ui_manager_insert_action_group (ui, actions, 0);
gtk_window_add_accel_group (GTK_WINDOW (window),
gtk_ui_manager_get_accel_group (ui));
gtk_window_set_title (GTK_WINDOW (window), "UI Manager");
gtk_container_set_border_width (GTK_CONTAINER (window), 0);
if (!gtk_ui_manager_add_ui_from_string (ui, ui_info, -1, &error))
{
g_message ("building menus failed: %s", error->message);
g_error_free (error);
}
box1 = gtk_vbox_new (FALSE, 0);
gtk_container_add (GTK_CONTAINER (window), box1);
gtk_box_pack_start (GTK_BOX (box1),
gtk_ui_manager_get_widget (ui, "/MenuBar"),
FALSE, FALSE, 0);
label = gtk_label_new ("Type\n<alt>\nto start");
gtk_widget_set_size_request (label, 200, 200);
gtk_misc_set_alignment (GTK_MISC (label), 0.5, 0.5);
gtk_box_pack_start (GTK_BOX (box1), label, TRUE, TRUE, 0);
separator = gtk_hseparator_new ();
gtk_box_pack_start (GTK_BOX (box1), separator, FALSE, TRUE, 0);
box2 = gtk_vbox_new (FALSE, 10);
gtk_container_set_border_width (GTK_CONTAINER (box2), 10);
gtk_box_pack_start (GTK_BOX (box1), box2, FALSE, TRUE, 0);
button = gtk_button_new_with_label ("close");
g_signal_connect_swapped (button, "clicked",
G_CALLBACK (gtk_widget_destroy), window);
gtk_box_pack_start (GTK_BOX (box2), button, TRUE, TRUE, 0);
GTK_WIDGET_SET_FLAGS (button, GTK_CAN_DEFAULT);
gtk_widget_grab_default (button);
gtk_widget_show_all (window);
}
else
{
gtk_widget_destroy (window);
window = NULL;
}
return window;
}

View File

@@ -15,5 +15,5 @@ void
pixbuf_init (void)
{
if (file_exists ("../gdk-pixbuf/libpixbufloader-pnm.la"))
putenv ("GDK_PIXBUF_MODULE_FILE=../gdk-pixbuf/gdk-pixbuf.loaders");
g_setenv ("GDK_PIXBUF_MODULE_FILE", "../gdk-pixbuf/gdk-pixbuf.loaders", TRUE);
}

View File

@@ -67,18 +67,96 @@ compare_pixbufs (GdkPixbuf *pixbuf, GdkPixbuf *compare, const gchar *file_type)
}
}
static gboolean
save_to_loader (const gchar *buf, gsize count, GError **err, gpointer data)
{
GdkPixbufLoader *loader = data;
return gdk_pixbuf_loader_write (loader, buf, count, err);
}
static GdkPixbuf *
buffer_to_pixbuf (const gchar *buf, gsize count, GError **err)
{
GdkPixbufLoader *loader;
GdkPixbuf *pixbuf;
loader = gdk_pixbuf_loader_new ();
if (gdk_pixbuf_loader_write (loader, buf, count, err) &&
gdk_pixbuf_loader_close (loader, err)) {
pixbuf = g_object_ref (gdk_pixbuf_loader_get_pixbuf (loader));
g_object_unref (G_OBJECT (loader));
return pixbuf;
} else {
return NULL;
}
}
static void
do_compare (GdkPixbuf *pixbuf, GdkPixbuf *compare, GError *err)
{
if (compare == NULL) {
fprintf (stderr, "%s", err->message);
g_error_free (err);
} else {
compare_pixbufs (pixbuf, compare, "jpeg");
g_object_unref (compare);
}
}
static void
keypress_check (GtkWidget *widget, GdkEventKey *evt, gpointer data)
{
GdkPixbuf *pixbuf;
GtkDrawingArea *da = (GtkDrawingArea*)data;
GError *err = NULL;
gchar *buffer;
gsize count;
GdkPixbufLoader *loader;
pixbuf = (GdkPixbuf *) g_object_get_data (G_OBJECT (da), "pixbuf");
if (evt->keyval == 'q')
gtk_main_quit ();
if (evt->keyval == 's') {
if (evt->keyval == 's' && (evt->state & GDK_CONTROL_MASK)) {
/* save to callback */
if (pixbuf == NULL) {
fprintf (stderr, "PIXBUF NULL\n");
return;
}
loader = gdk_pixbuf_loader_new ();
if (!gdk_pixbuf_save_to_callback (pixbuf, save_to_loader, loader, "jpeg",
&err,
"quality", "100",
NULL) ||
!gdk_pixbuf_loader_close (loader, &err)) {
fprintf (stderr, "%s", err->message);
g_error_free (err);
} else {
do_compare (pixbuf,
g_object_ref (gdk_pixbuf_loader_get_pixbuf (loader)),
err);
g_object_unref (G_OBJECT (loader));
}
}
else if (evt->keyval == 'S') {
/* save to buffer */
if (!gdk_pixbuf_save_to_buffer (pixbuf, &buffer, &count, "jpeg",
&err,
"quality", "100",
NULL)) {
fprintf (stderr, "%s", err->message);
g_error_free (err);
} else {
do_compare (pixbuf,
buffer_to_pixbuf (buffer, count, &err),
err);
}
}
else if (evt->keyval == 's') {
/* save normally */
if (pixbuf == NULL) {
fprintf (stderr, "PIXBUF NULL\n");
return;
@@ -91,20 +169,49 @@ keypress_check (GtkWidget *widget, GdkEventKey *evt, gpointer data)
fprintf (stderr, "%s", err->message);
g_error_free (err);
} else {
GdkPixbuf *compare;
compare = gdk_pixbuf_new_from_file ("foo.jpg", &err);
if (!compare) {
fprintf (stderr, "%s", err->message);
g_error_free (err);
} else {
compare_pixbufs (pixbuf, compare, "jpeg");
g_object_unref (compare);
}
do_compare (pixbuf,
gdk_pixbuf_new_from_file ("foo.jpg", &err),
err);
}
} else if (evt->keyval == 'p') {
}
if (evt->keyval == 'p' && (evt->state & GDK_CONTROL_MASK)) {
/* save to callback */
if (pixbuf == NULL) {
fprintf (stderr, "PIXBUF NULL\n");
return;
}
loader = gdk_pixbuf_loader_new ();
if (!gdk_pixbuf_save_to_callback (pixbuf, save_to_loader, loader, "png",
&err,
"tEXt::Software", "testpixbuf-save",
NULL)
|| !gdk_pixbuf_loader_close (loader, &err)) {
fprintf (stderr, "%s", err->message);
g_error_free (err);
} else {
do_compare (pixbuf,
g_object_ref (gdk_pixbuf_loader_get_pixbuf (loader)),
err);
g_object_unref (G_OBJECT (loader));
}
}
else if (evt->keyval == 'P') {
/* save to buffer */
if (!gdk_pixbuf_save_to_buffer (pixbuf, &buffer, &count, "png",
&err,
"tEXt::Software", "testpixbuf-save",
NULL)) {
fprintf (stderr, "%s", err->message);
g_error_free (err);
} else {
do_compare (pixbuf,
buffer_to_pixbuf (buffer, count, &err),
err);
}
}
else if (evt->keyval == 'p') {
if (pixbuf == NULL) {
fprintf (stderr, "PIXBUF NULL\n");
return;
@@ -117,20 +224,65 @@ keypress_check (GtkWidget *widget, GdkEventKey *evt, gpointer data)
fprintf (stderr, "%s", err->message);
g_error_free (err);
} else {
GdkPixbuf *compare;
compare = gdk_pixbuf_new_from_file ("foo.png", &err);
if (!compare) {
fprintf (stderr, "%s", err->message);
g_error_free (err);
} else {
compare_pixbufs (pixbuf, compare, "png");
g_object_unref (compare);
}
do_compare(pixbuf,
gdk_pixbuf_new_from_file ("foo.png", &err),
err);
}
} else if (evt->keyval == 'a') {
}
if (evt->keyval == 'i' && (evt->state & GDK_CONTROL_MASK)) {
/* save to callback */
if (pixbuf == NULL) {
fprintf (stderr, "PIXBUF NULL\n");
return;
}
loader = gdk_pixbuf_loader_new ();
if (!gdk_pixbuf_save_to_callback (pixbuf, save_to_loader, loader, "ico",
&err,
NULL)
|| !gdk_pixbuf_loader_close (loader, &err)) {
fprintf (stderr, "%s", err->message);
g_error_free (err);
} else {
do_compare (pixbuf,
g_object_ref (gdk_pixbuf_loader_get_pixbuf (loader)),
err);
g_object_unref (G_OBJECT (loader));
}
}
else if (evt->keyval == 'I') {
/* save to buffer */
if (!gdk_pixbuf_save_to_buffer (pixbuf, &buffer, &count, "ico",
&err,
NULL)) {
fprintf (stderr, "%s", err->message);
g_error_free (err);
} else {
do_compare (pixbuf,
buffer_to_pixbuf (buffer, count, &err),
err);
}
}
else if (evt->keyval == 'i') {
if (pixbuf == NULL) {
fprintf (stderr, "PIXBUF NULL\n");
return;
}
if (!gdk_pixbuf_save (pixbuf, "foo.ico", "ico",
&err,
NULL)) {
fprintf (stderr, "%s", err->message);
g_error_free (err);
} else {
do_compare(pixbuf,
gdk_pixbuf_new_from_file ("foo.ico", &err),
err);
}
}
if (evt->keyval == 'a') {
if (pixbuf == NULL) {
fprintf (stderr, "PIXBUF NULL\n");
return;

View File

@@ -11,7 +11,12 @@ GtkWidget *darea;
void
set_interp_type (GtkWidget *widget, gpointer data)
{
interp_type = GPOINTER_TO_UINT (data);
guint types[] = { GDK_INTERP_NEAREST,
GDK_INTERP_BILINEAR,
GDK_INTERP_TILES,
GDK_INTERP_HYPER };
interp_type = types[gtk_combo_box_get_active (GTK_COMBO_BOX (widget))];
gtk_widget_queue_draw (darea);
}
@@ -58,7 +63,7 @@ int
main(int argc, char **argv)
{
GtkWidget *window, *vbox;
GtkWidget *menuitem, *optionmenu, *menu;
GtkWidget *combo_box;
GtkWidget *alignment;
GtkWidget *hbox, *label, *hscale;
GtkAdjustment *adjustment;
@@ -95,37 +100,18 @@ main(int argc, char **argv)
vbox = gtk_vbox_new (FALSE, 0);
gtk_container_add (GTK_CONTAINER (window), vbox);
menu = gtk_menu_new ();
menuitem = gtk_menu_item_new_with_label ("NEAREST");
g_signal_connect (menuitem, "activate",
G_CALLBACK (set_interp_type),
GUINT_TO_POINTER (GDK_INTERP_NEAREST));
gtk_widget_show (menuitem);
gtk_container_add (GTK_CONTAINER (menu), menuitem);
menuitem = gtk_menu_item_new_with_label ("BILINEAR");
g_signal_connect (menuitem, "activate",
G_CALLBACK (set_interp_type),
GUINT_TO_POINTER (GDK_INTERP_BILINEAR));
gtk_widget_show (menuitem);
gtk_container_add (GTK_CONTAINER (menu), menuitem);
menuitem = gtk_menu_item_new_with_label ("TILES");
g_signal_connect (menuitem, "activate",
G_CALLBACK (set_interp_type),
GUINT_TO_POINTER (GDK_INTERP_TILES));
gtk_container_add (GTK_CONTAINER (menu), menuitem);
combo_box = gtk_combo_box_new_text ();
menuitem = gtk_menu_item_new_with_label ("HYPER");
g_signal_connect (menuitem, "activate",
G_CALLBACK (set_interp_type),
GUINT_TO_POINTER (GDK_INTERP_HYPER));
gtk_container_add (GTK_CONTAINER (menu), menuitem);
gtk_combo_box_append_text (GTK_COMBO_BOX (combo_box), "NEAREST");
gtk_combo_box_append_text (GTK_COMBO_BOX (combo_box), "BILINEAR");
gtk_combo_box_append_text (GTK_COMBO_BOX (combo_box), "TILES");
gtk_combo_box_append_text (GTK_COMBO_BOX (combo_box), "HYPER");
optionmenu = gtk_option_menu_new ();
gtk_option_menu_set_menu (GTK_OPTION_MENU (optionmenu), menu);
gtk_option_menu_set_history (GTK_OPTION_MENU (optionmenu), 1);
gtk_combo_box_set_active (GTK_COMBO_BOX (combo_box), 1);
g_signal_connect (combo_box, "changed",
G_CALLBACK (set_interp_type),
NULL);
alignment = gtk_alignment_new (0.0, 0.0, 0.0, 0.5);
gtk_box_pack_start (GTK_BOX (vbox), alignment, FALSE, FALSE, 0);
@@ -144,7 +130,7 @@ main(int argc, char **argv)
gtk_scale_set_digits (GTK_SCALE (hscale), 0);
gtk_box_pack_start (GTK_BOX (hbox), hscale, TRUE, TRUE, 0);
gtk_container_add (GTK_CONTAINER (alignment), optionmenu);
gtk_container_add (GTK_CONTAINER (alignment), combo_box);
gtk_widget_show_all (vbox);
/* Compute the size without the drawing area, so we know how big to make the default size */

View File

@@ -439,7 +439,8 @@ update_timeout (gpointer data)
GError *error;
done = FALSE;
error = FALSE;
error = NULL;
if (!feof (status->imagefile)) {
gint nbytes;
@@ -447,7 +448,6 @@ update_timeout (gpointer data)
status->imagefile);
error = NULL;
if (!gdk_pixbuf_loader_write (GDK_PIXBUF_LOADER (status->loader), status->buf, nbytes, &error)) {
g_warning ("Error writing to loader: %s",
error->message);
@@ -458,7 +458,7 @@ update_timeout (gpointer data)
}
else
done = TRUE;
done = TRUE;
if (done) {
/* ignoring errors, we should not do that. */

View File

@@ -4,8 +4,8 @@ How to do a GTK+ release?
Make sure you have Owen's special autoconf and libtool RPMs, available at:
http://people.redhat.com/otaylor/gtk/autotools/.
Also make sure you have the following packages installed (I used the RPM
package names from RedHat 8.0):
Also make sure you have the following packages installed with all their
dependencies (I used the RPM package names from RedHat 9):
* gtk-doc
* linuxdoc-tools
* docbook-utils
@@ -16,10 +16,9 @@ Without those packages make distcheck will *not* pass.
0) Blow away your gtk+ directory, check a new version out
1) autogen and build it, make sure to enable docs.
2) Update NEWS based on ChangeLog
3) Update version in configure.in, increase MICRO, interface and binary
age by 1. (Note that this is critical, a slip-up here will cause the soname
to change).
4) Add === Released 2.0.x === at the top of the ChangeLog
3) Update version in configure.in, increase micro and interface age by 1.
(Note that this is critical, a slip-up here will cause the soname to change).
4) Add === Released 2.x.y === at the top of the ChangeLog
5) make mydistcheck
6) Fix broken stuff found by 4) repeat
7) cvs commit; you'll have a bunch of po file changes, and maybe some
@@ -27,7 +26,7 @@ doc changes too (NOTE: be sure to use cvs with compression, else you'll
end up waiting for a long time :).
8) If 7) fails because someone else committed inbetween, curse, cvs up
fix conflicts and go to 5)
9) type 'cvs tag GTK_2_0_9' in the toplevel directory
9) type 'cvs tag GTK_2_x_y' in the toplevel directory
10) You now have the tarball, and the CVS tag, now upload the tarball to
gnome.org and gtk.org
11) Go to the gnome-announce list archives, find the last announce message,

View File

@@ -2,14 +2,18 @@ EXTRA_DIST = \
gtk-faq.sgml
if HAVE_DOCBOOK
html:
(cd $(srcdir); \
db2html gtk-faq.sgml; \
test -d html && rm -r html; \
mv gtk-faq html)
html:
if test -w $(srcdir); then \
(cd $(srcdir); \
db2html gtk-faq.sgml; \
test -d html && rm -r html; \
mv gtk-faq html); \
fi
pdf:
(cd $(srcdir); db2pdf gtk-faq.sgml)
if test -w $(srcdir); then \
(cd $(srcdir); db2pdf gtk-faq.sgml); \
fi
dist-hook: html
cp -Rp $(srcdir)/html $(distdir)
@@ -26,7 +30,7 @@ pdf:
dist-hook:
echo "***"
echo "*** Warning: Tutorial not built"
echo "*** Warning: FAQ not built"
echo "*** DISTRIBUTION IS INCOMPLETE"
echo "***"
endif

File diff suppressed because it is too large Load Diff

View File

@@ -1,3 +1,699 @@
2004-01-22 Federico Mena Quintero <federico@ximian.com>
* gtk/migrating-checklist.sgml: Point to GtkEntry as an example of
a widget that uses a custom function to position its popup menu.
2004-01-22 Federico Mena Quintero <federico@ximian.com>
* gtk/migrating-checklist.sgml: New chapter with a "Migration
Checklist" of things people need to do to be good citizens in the
GTK+ world. This is mainly a way to tell people about interesting
APIs that they should use instead of hand-hacked approaches.
* gtk/gtk-docs.sgml: Added migrating-checklist.sgml.
* gtk/Makefile.am (content_files): Likewise.
Thu Jan 22 01:46:45 2004 Jonathan Blandford <jrb@gnome.org>
* gtk/tmpl/gtktreemodelsort.sgml: new introduction section.
2004-01-20 Federico Mena Quintero <federico@ximian.com>
* gtk/gtk-sections.txt: Added gtk_paned_get_child[12].
Thu Jan 15 23:54:46 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtk-docs.sgml: Move the old chapters about 1.2 and 2.0
changes to Federicos new 'migrating' part.
Fri Jan 9 00:38:58 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtk-sections.txt: Add gtk_ui_manager_get_toplevels.
Thu Jan 8 00:14:02 2004 Matthias Clasen <maclas@gmx.de>
* gtk/tmpl/gtkmain.sgml (gtk_input_add_full): Fix link in deprecation
note.
Wed Jan 7 22:25:45 2004 Matthias Clasen <maclas@gmx.de>
* gtk/gtk-sections.txt: Add gtk_action_new, gtk_toggle_action_new,
gtk_radio_action_new, gtk_action_group_add_action_with_accel.
Wed Jan 7 01:56:33 2004 Matthias Clasen <maclas@gmx.de>
* gdk-pixbuf/tmpl/file-saving.sgml: Document GdkPixbufSaveFunc.
* gdk-pixbuf/gdk-pixbuf-sections.txt: Add GdkPixbufSaveFunc,
gdk_pixbuf_save_to_callback, gdk_pixbuf_save_to_callbackv,
gdk_pixbuf_save_to_buffer and gdk_pixbuf_save_to_bufferv.
Wed Jan 7 01:27:23 2004 Matthias Clasen <maclas@gmx.de>
* gdk-pixbuf/tmpl/module_interface.sgml: Document expected
module behaviour if the size_func returns 0.
Wed Jan 7 01:26:07 2004 Matthias Clasen <maclas@gmx.de>
* gdk-pixbuf/gdk-pixbuf-sections.txt: Add gdk_pixbuf_get_file_info.
2004-01-06 Federico Mena Quintero <federico@ximian.com>
* gdk-pixbuf/tmpl/gdk-pixbuf.sgml: Added a section on how to
compute pixel offsets for gdk_pixbuf_get_pixels().
Mon Dec 29 01:40:20 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtk-sections.txt: Add gtk_accel_map_{un,}lock_path.
Wed Dec 24 01:12:12 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtk-sections.txt: Add GtkClipboardTargetReceivedFunc,
gtk_clipboard_request_targets, gtk_clipboard_wait_for_targets.
Wed Dec 24 01:11:36 2003 Matthias Clasen <maclas@gmx.de>
* gtk/tmpl/gtkclipboard.sgml: Document GtkClipboardTargetReceivedFunc.
Sun Dec 21 01:58:33 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtk-sections.txt: Add gtk_menu_shell_cancel.
Thu Dec 18 01:24:35 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtk-sections.txt: Add gtk_message_dialog_set_markup
Tue Dec 16 01:57:13 2003 Matthias Clasen <maclas@gmx.de>
* gdk/gdk-sections.txt: Add gdk_display_set_double_click_distance.
Mon Dec 15 01:03:08 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtk-sections.txt: Add gtk_button_[sg]et_alignment.
Sun Dec 14 01:25:49 2003 Matthias Clasen <maclas@gmx.de>
* gdk/gdk-sections.txt: Add gdk_x11_register_standard_event_type.
Sat Dec 13 22:37:46 2003 Matthias Clasen <maclas@gmx.de>
* gtk/Makefile.am (HTML_IMAGES): Add
stock_dialog_authentication_48.png. (#129255, Olivier Andrieu)
Fri Dec 12 00:52:25 2003 Matthias Clasen <maclas@gmx.de>
* gdk/gdk-sections.txt: Add the new gdk_spawn_* and
gdk_threads_* declarations.
Thu Dec 11 01:57:55 2003 Matthias Clasen <maclas@gmx.de>
* gdk-pixbuf/tmpl/gdk-pixbuf-loader.sgml: Signal documentation
moved inline.
Thu Dec 11 00:04:10 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtk-sections.txt: Add gtk_window_[sg]et_accept_focus().
* gdk/gdk-sections.txt: Add gdk_window_set_accept_focus().
Wed Dec 10 00:09:51 2003 Matthias Clasen <maclas@gmx.de>
* gdk/gdk-sections.txt: Add gdk_window_get_group(),
gdk_display_get_default_group().
2003-12-08 Federico Mena Quintero <federico@ximian.com>
* gtk/migrating-GtkAction.sgml: New chapter about how to migrate
from gnome-ui/bonobo-ui/etc. to GtkAction.
* gtk/gtk-docs.sgml: Integrated the above.
* gtk/Makefile.am (content_files): Added migrating-GtkAction.sgml.
Mon Dec 8 12:47:01 2003 Owen Taylor <otaylor@redhat.com>
* gtk/Makefile.am (IGNORE_HFILES): Add xdgmime directory,
gtkfilesystemwin32.
* gtk/gtk-sections.txt: Some updates.
Sun Nov 23 20:59:57 2003 Matthias Clasen <maclas@gmx.de>
* gtk/tree_widget.sgml: Add a missing comma.
Fri Nov 21 00:09:36 2003 Matthias Clasen <maclas@gmx.de>
* gtk/tmpl/gtkfontsel.sgml:
* gtk/tmpl/gtkfontseldlg.sgml: Remove leftover documentation of
the filter functionality that got removed long ago.
2003-11-18 Federico Mena Quintero <federico@ximian.com>
* gtk/tmpl/gtkfilechooser.sgml: Added sections section about
generating previews and including extra widgets.
* gtk/gtk-docs.sgml: Added a part about migrating old code to new
widgets.
* gtk/migrating-GtkFileChooser.sgml: New file.
* gtk/Makefile.am (content_files): Added
migrating-GtkFileChooser.sgml.
Tue Nov 18 00:12:23 2003 Matthias Clasen <maclas@gmx.de>
* gdk/gdk-sections.txt: Add gdk_drawable_copy_to_image.
Mon Nov 17 23:29:21 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtk-sections.txt: Add gtk_combo_box_new_with_model,
gtk_combo_box_set_model.
Sun Nov 16 00:41:48 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtk-sections.txt: Remove gtk_tool_item_[sg]et_pack_end.
Sun Nov 16 00:32:18 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtk-sections.txt: Move GtkFileChooser out of the
private section, in order to get the autogenerated docs
on hierarchy, signals, properties, etc.
Sat Nov 15 00:25:39 2003 Matthias Clasen <maclas@gmx.de>
* gdk-pixbuf/tmpl/module_interface.sgml: Add an example
for GdkPixbufModulePattern.
Wed Nov 12 21:52:35 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtk-sections.txt: Add gtk_menu_set_monitor.
Fri Oct 24 13:15:32 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/tmpl/gtktoolbar.sgml, gtk/tmpl/gtkseparatortoolitem.sgml:
Mention the "expand" and "draw" trick for separator tool items.
Fri Oct 24 17:21:04 2003 Owen Taylor <otaylor@redhat.com>
* gdk-pixbuf/Makefile.am gtk/Makefile.am: Distribute generated
man pages.
2003-10-23 Federico Mena Quintero <federico@ximian.com>
* gtk/tmpl/gtkfilechooser.sgml: Added the text for the initial
section, and descriptions for the signals and enumerations.
* gtk/tmpl/gtkfilechooserdialog.sgml: Added the text for the
initial section, and a short example.
* gtk/tmpl/gtkfilechooserwidget.sgml: Added the text for the
initial section.
Fri Oct 24 00:25:07 2003 Matthias Clasen <maclas@gmx.de>
* gtk/tmpl/gtkfilefilter.sgml:
* gtk/tmpl/gtkfilechooser.sgml:
* gtk/tmpl/gtkfilechooserwidget.sgml:
* gtk/tmpl/gtkfilechooserdialog.sgml: Add short descriptions.
Thu Oct 23 22:41:02 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtk-docs.sgml: Move GtkCombo and GtkOptionMenu to
the "Deprecated" chapter. Add GtkFileChooser, GtkFileChooserDialog,
GtkFileChooseWidget and GtkFileFilter.
2003-10-23 Federico Mena Quintero <federico@ximian.com>
* gtk/gtk.types: Added gtk_file_chooser_get_type,
gtk_file_chooser_dialog_get_type,
gtk_file_chooser_widget_get_type, gtk_file_filter_get_type.
* gtk/gtk-sections.txt: Added GtkFileChooser,
GtkFileChooserWidget, GtkFileChooserDialog, GtkFileFilter.
* gtk/Makefile.am (IGNORE_HFILES): Added gtkcellrendererseptext.h,
gtkfilechooserdefault.h, gtkfilechooserentry.h,
gtkfilechooserutils.h, gtkfilesystem.h, gtkfilesystemmodel.h,
gtkfilesystemunix.h.
* gtk/tmpl/gtkfilechooser.sgml: New template file.
* gtk/tmpl/gtkfilechooserdialog.sgml: Likewise.
* gtk/tmpl/gtkfilechooserwidget.sgml: Likewise.
* gtk/tmpl/gtkfilefilter.sgml: Likewise.
Sun Oct 12 00:33:48 2003 Matthias Clasen <maclas@gmx.de>
* gtk/gtk.types: Add the get_type() functions for
GtkEntryCompletion, GtkTreeModelFilter, GtkCellLayout,
GtkComboBox, GtkComboBoxEntry.
Sat Oct 11 00:18:46 2003 Matthias Clasen <maclas@gmx.de>
* gtk/tmpl/gtkprogressbar.sgml: Included
gtk_progress_bar_get_orientation() in the list of undeprecated
functions, use less clumsy markup for enumerations.
2003-10-02 Matthias Clasen <maclas@gmx.de>
* gtk/Makefile.am (IGNORE_HFILES): Add gtkcellview.h and
gtkcellviewmenuitem.h.
* gtk/tmpl/gtkentrycompletion.sgml:
* gtk/tmpl/gtktreemodelfilter.sgml:
* gtk/tmpl/gtkcelllayout.sgml:
* gtk/tmpl/gtkcombobox.sgml:
* gtk/tmpl/gtkcomboboxentry.sgml: New templates.
* gtk/gtk-sections.txt:
* gtk/gtk-docs.sgml: Add sections for GtkEntryCompletion,
GtkTreeModelFilter, GtkCellLayout, GtkComboBox, GtkComboBoxEntry.
* gtk/tmpl/gtktreednd.sgml: Add short description.
* gtk/gtk-docs.sgml: Move GtkItemFactory to the "Deprecated" chapter.
* gtk/tmpl/gtktoggletoolbutton.sgml: Fix section title.
2003-10-01 Matthias Clasen <maclas@gmx.de>
* gdk/tmpl/keys.sgml: Add two missing signals.
* 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 Matthias Clasen <maclas@gmx.de>
* gtk/tmpl/gtkuimanager.sgml: Add a section about empty menus.
* gdk/tmpl/keys.sgml: Small addition.
* gdk/gdk-sections.txt: Add GdkDisplayClass and GdkScreenClass.
* gdk-pixbuf/gdk-pixbuf-sections.txt: Add GdkPixbufLoaderClass.
2003-09-22 Matthias Clasen <maclas@gmx.de>
* gtk/tmpl/gtktable.sgml: Fix a copy-and-paste error. (#122800)
2003-09-21 Matthias Clasen <maclas@gmx.de>
* gtk/gtk-sections.txt: Add gtk_widget_[gs]et_no_show_all.
Add gtk_toggle_action_[gs]et_draw_as_radio.
2003-09-18 Matthias Clasen <maclas@gmx.de>
* gtk/gtk-sections.txt:
* gtk/tmpl/gtkuimanager.sgml: Updates for accelerator-only actions.
2003-09-16 Matthias Clasen <maclas@gmx.de>
* gtk/tmpl/gtkaction.sgml:
* gtk/tmpl/gtkradioaction.sgml:
* gtk/tmpl/gtkactiongroup.sgml:
* gtk/tmpl/gtkuimanager.sgml: Updates.
2003-09-15 Matthias Clasen <maclas@gmx.de>
* gtk/tmpl/gtkuimanager.sgml: Add a paragraph about smart separators.
* gtk/gtk-sections.txt: Add gtk_action_group_add_toggle_actions[_full].
2003-09-12 Matthias Clasen <maclas@gmx.de>
* gdk/tmpl/drawing.sgml: Add deprecation note for gdk_draw_pixmap().
2003-09-11 Matthias Clasen <maclas@gmx.de>
* gdk/tmpl/drawing.sgml: Add hints about obtaining Pango
structures. (#121953, Martin Pool)
2003-09-04 Matthias Clasen <maclas@gmx.de>
* gtk/gtk-sections.txt: Add GtkUIManagerItemType.
* gtk/tmpl/gtkuimanager.sgml: Change the name of the "pos"
attribute to "position".
* gtk/tmpl/gtkactiongroup.sgml: Doc tweaks.
2003-09-02 Matthias Clasen <maclas@gmx.de>
* gtk/tmpl/gtkactiongroup.sgml:
* gtk/tmpl/gtkuimanager.sgml: Additions.
* gtk/gtk-sections.txt: Add gtk_ui_manager_new_merge_id and
gtk_ui_manager_add_ui.
2003-09-01 Matthias Clasen <maclas@gmx.de>
* gtk/tmpl/gtkuimanager.sgml: Add an example UI description.
* gtk/gtk-sections.txt: Add gtk_ui_manager_ensure_update.
2003-08-31 Matthias Clasen <maclas@gmx.de>
* gtk/Makefile.am (IGNORE_HFILES): Add gtktoggleactionprivate.h
* gtk/tmpl/gtkuimanager.sgml:
* gtk/gtk-sections.txt: Replace gtk_ui_manager_activate by
gtk_ui_manager_get_action.
* gtk/tmpl/gtkuimanager.sgml:
* gtk/tmpl/gtkactiongroup.sgml:
* gtk/tmpl/gtkaction.sgml:
* gtk/tmpl/gtktoggleaction.sgml:
* gtk/tmpl/gtkradioaction.sgml: Additions.
* gtk/gtk-sections.txt: Updates.
* gtk/gtk.types: Add GtkAction, GtkActionGroup, GtkToggleAction,
GtkRadioAction and GtkUIManager.
2003-08-28 Matthias Clasen <maclas@gmx.de>
* gdk/tmpl/events.sgml: Improve PointerHint docs.
* gdk/tmpl/event_structs.sgml: Explain is_hint field in GdkEventMotion.
(#120542)
2003-08-26 Matthias Clasen <maclas@gmx.de>
* gtk/gtk-sections.txt: Rename GtkMenuMerge to GtkUIManager
* gtk/gtk-docs.sgml: Adjust.
* gtk/tmpl/gtkuimanager.sgml: New template.
* gtk/tmpl/gtkmenumerge.sgml: Removed.
2003-08-24 Matthias Clasen <maclas@gmx.de>
* gtk/tmpl/gtkmenumerge.sgml:
* gtk/tmpl/gtkaction.sgml:
* gtk/tmpl/gtkactiongroup.sgml:
* gtk/tmpl/gtkradioaction.sgml:
* gtk/tmpl/gtktoggleaction.sgml: New templates.
* gtk/gtk-docs.sgml:
* gtk/gtk-sections.txt: Add GtkMenuMerge, GtkAction, GtkActionGroup,
GtkRadioAction, GtkToggleAction.
2003-08-11 Matthias Clasen <maclas@gmx.de>
* gdk/gdk-sections.txt: Add gdk_window_set_keep_above and
gdk_window_set_keep_below.
* gtk/gtk-sections.txt: Add gtk_window_set_keep_above and
gtk_window_set_keep_below.
* gdk/tmpl/event_structs.sgml: Document GDK_WINDOW_STATE_FULLSCREEN,
GDK_WINDOW_STATE_ABOVE and GDK_WINDOW_STATE_BELOW.
2003-08-10 Matthias Clasen <maclas@gmx.de>
* gtk/tmpl/gtkwidget.sgml: Document public GtkWidget members.
(#119463)
2003-08-09 Matthias Clasen <maclas@gmx.de>
* gtk/tmpl/gtkcalendar.sgml: Deprecate
GTK_CALENDAR_WEEK_START_MONDAY. (#87977)
2003-08-03 Matthias Clasen <maclas@gmx.de>
* gdk-pixbuf/tmpl/gdk-pixbuf.sgml: Clarify misleading explanation
of rowstride. (#119000)
Tue Jul 29 14:21:48 2003 Soeren Sandmann <sandmann@daimi.au.dk>
* gtk/tmpl/gtktoolbar.sgml: Move documentation inline
2003-07-29 Sven Neumann <sven@gimp.org>
* gdk/tmpl/pixmaps.sgml: Resurrected documentation that got lost
when the window parameter was renamed to drawable.
2003-07-21 Matthias Clasen <maclas@gmx.de>
* gtk/tmpl/gtkdnd.sgml: It is GTK_DEST_DEFAULT_DROP, not
GTK_DRAG_DEFAULT_DROP. (#117917, Tim-Philipp Müller)
2003-07-19 Matthias Clasen <maclas@gmx.de>
* gtk/gtk-sections.txt: Add GTK_STOCK_DIALOG_AUTHENTICATION.
* gtk/tmpl/gtkstock.sgml: Add GTK_STOCK_DIALOG_AUTHENTICATION.
* gtk/gtk-sections.txt: Add gtk_button_box_get_child_secondary().
2003-07-18 Matthias Clasen <maclas@gmx.de>
* gtk/gtk-sections.txt: Add gtk_message_dialog_new_with_markup()
and gtk_window_set_default_icon().
2003-07-15 Matthias Clasen <maclas@gmx.de>
* gtk/tmpl/gtkseparatortoolitem.sgml:
* gtk/tmpl/gtkradiotoolbutton.sgml:
* gtk/tmpl/gtktoggletoolbutton.sgml: New templates.
* gtk/gtk-docs.sgml: Include gtkseparatortoolitem.xml,
gtkradiotoolbutton.xml and gtktoggletoolbutton.xml.
* gtk/gtk.types: Add gtk_separator_tool_item_get_type,
gtk_radio_tool_button_get_type and gtk_toggle_tool_button_get_type.
* gtk/gtk-sections.txt: Add GtkSeparatorToolItem,
GtkRadioToolButton and GtkToggleToolButton sections.
* gdk/tmpl/input_devices.sgml: Remove docs for
gdk_device_get_history() which are now inline.
* gdk/gdk-sections.txt: Add gdk_display_flush.
2003-07-13 Matthias Clasen <maclas@gmx.de>
* gtk/gtk.types: Add gtk_tool_button_get_type and
gtk_tool_item_get_type.
* gtk/tmpl/gtktoolbutton.sgml:
* gtk/tmpl/gtktoolitem.sgml:
* gtk/gtk-docs.sgml:
* gtk/gtk-sections.txt: Add new toolbar api.
* gtk/tmpl/gtkdnd.sgml: Remove docs for gtk_drag_begin(), which
are now inline.
* gdk-pixbuf/gdk-pixbuf-sections.txt: Add
gdk_pixbuf_new_from_file_at_size.
2003-07-08 Matthias Clasen <maclas@gmx.de>
* gtk/tmpl/gtkfilesel.sgml: Fix the example. (#116575)
Wed Jul 2 18:15:21 2003 Owen Taylor <otaylor@redhat.com>
* gtk/Makefile.am gtk/gtk-docs.sgml gtk/gtksections.txt
gtk/tmpl/gtkicontheme.sgml: Document named icon system.
* gtk/tmpl/gtkrc.sgml: Mention specifying named icons
as @"icon-name".
* gtk/tmpl/gtkimage.sgml: Add a cross-reference to stock
icons.
2003-07-01 Matthias Clasen <maclas@gmx.de>
* gtk/tmpl/gtkcolorbutton.sgml:
* gtk/tmpl/gtkfontbutton.sgml:
* gtk/tmpl/gtkexpander.sgml: New files. Templates for GtkExpander,
GtkFontButton and GtkColorButton.
* gtk/gtk-sections.txt: Add a sections for GtkExpander,
GtkColorButton and GtkFontButton.
* gtk/gtk-docs.sgml: Add an entities for GtkExpander,
GtkColorButton and GtkFontButton.
* gtk/gtk.types: Add gtk_expander_get_type,
gtk_color_button_get_type() and gtk_font_button_get_type().
* gdk/gdk-sections.txt: Add
gdk_cursor_new_from_pixbuf(), gdk_display_supports_cursor_alpha(),
gdk_display_supports_cursor_color(),
gdk_display_get_default_cursor_size() and
gdk_display_get_maximal_cursor_size().
2003-06-30 Matthias Clasen <maclas@gmx.de>
* gtk/tmpl/gtkcontainer.sgml: Write a bit about size negotiation.
* gtk/tmpl/gtkwidget.sgml: Some additions.
2003-06-24 Matthias Clasen <maclas@gmx.de>
* gtk/gtk-docs.sgml: Move GtkIMContext to "Abstract Base Classes",
since its abstract.
* gtk/tmpl/gtkaccessible.sgml:
* gtk/tmpl/gtkimmulticontext.sgml:
* gtk/tmpl/gtkimcontextsimple.sgml:
* gtk/tmpl/gtkimcontext.sgml:
* gtk/tmpl/gtkviewport.sgml:
* gtk/tmpl/gtkcellrenderertext.sgml:
* gtk/tmpl/gtkcellrendererpixbuf.sgml:
* gtk/tmpl/gtkcelleditable.sgml:
* gtk/tmpl/gtktreemodelsort.sgml:
* gtk/tmpl/gtktreednd.sgml:
* gtk/tmpl/gtktreesortable.sgml: Add short descriptions.
2003-06-23 Matthias Clasen <maclas@gmx.de>
* gtk/Makefile.am (HTML_IMAGES): Add RTL variants of stock icons.
* gtk/tmpl/gtkstock.sgml: Document RTL variants of stock icons.
2003-06-22 Matthias Clasen <matthias@localhost.localdomain>
* gdk-pixbuf/tmpl/gdk-pixbuf.sgml: Typo fix.
* gdk-pixbuf/gdk-pixbuf-sections.txt: Add
gdk_pixbuf_loader_new_with_mime_type.
2003-06-19 Matthias Clasen <maclas@gmx.de>
* gtk/question_index.sgml: Add a question about changing
fonts. And one about "Getting Started". (#114747, #108015)
2003-06-17 Matthias Clasen <maclas@gmx.de>
* gdk-pixbuf/Makefile.am: Add rule to regenerate man pages from
Docbook.
(man_MANS): Add gdk-pixbuf-csource.1, gdk-pixbuf-query-loaders.1.
(content_files): Add gdk-pixbuf-csource.xml,
gdk-pixbuf-query-loaders.xml.
* gdk-pixbuf/gdk-pixbuf-csource.xml: New refentry, containing the
former gdk-pixbuf/gdk-pixbuf-csource.1, converted to Docbook.
* gdk-pixbuf/gdk-pixbuf-query-loaders.xml: New refentry.
* gdk-pixbuf/gdk-pixbuf-csource.1:
* gdk-pixbuf/gdk-pixbuf-query-loaders.1: Man pages generated from
the .xml sources.
* gdk-pixbuf/gdk-pixbuf.sgml: Include gdk-pixbuf-csource.xml and
gdk-pixbuf-query-loaders.xml.
* gtk/Makefile.am: Add rule to regenerate man pages from Docbook.
(man_MANS): Add gtk-query-immodules-2.0.1
(content_files): Add gtk-query-immodules-2.0.xml
* gtk/gtk-query-immodules-2.0.xml: New refentry.
* gtk/gtk-query-immodules-2.0.1: Man page generated from the .xml
source.
* gtk/gtk-docs.sgml: Include gtk-query-immodules-2.0.xml.
* gtk/gtk-docs.sgml:
* gdk-pixbuf/gdk-pixbuf.sgml:
* gdk/gdk-docs.sgml: Add autogenerated indices.
2003-06-11 Matthias Clasen <maclas@gmx.de>
* gtk/tmpl/gtkdnd.sgml: Fix some typos.
2003-06-10 Matthias Clasen <maclas@gmx.de>
* gtk/gtk-sections.txt: Add gtk_text_view_[gs]et_overwrite().
2003-06-05 Matthias Clasen <maclas@gmx.de>
* gtk/question_index.sgml: Add a couple of questions.
2003-06-01 Matthias Clasen <maclas@gmx.de>
* gtk/gtk-sections.txt: Add gtk_alignment_[gs]et_padding().
2003-05-27 Matthias Clasen <maclas@gmx.de>
* gtk/tmpl/gtkadjustment.sgml: Document allowed values for
adjustments which are used in scrollbars. (#108448, Ernst Lippe)
* gtk/tmpl/gtkradiomenuitem.sgml: Fix example. (#113604,
Julien Moutte)
2003-05-08 Matthias Clasen <maclas@gmx.de>
* gtk/tmpl/gtkcalendar.sgml: Deprecate gtk_calendar_display_options().
* gtk/gtk-sections.txt: Add gtk_calendar_[sg]et_display_options().
2003-05-05 Matthias Clasen <maclas@gmx.de>
* gtk/gtk-docs.sgml:
* gtk/tmpl/gtksocket.sgml: Improve the docs about cross-process
embedding a bit. (#112101, #112006)
2003-05-01 Matthias Clasen <maclas@gmx.de>
* gtk/gtk-docs.sgml:
* gtk/gtk-sections.txt: Remove some accidentally committed changes.
2003-04-16 Matthias Clasen <maclas@gmx.de>
* gtk/tmpl/gtkstyle.sgml: Additions.
2003-04-13 Matthias Clasen <maclas@gmx.de>
* gtk/tmpl/gtkenums.sgml: Additions.
* gtk/tmpl/gtkvruler.sgml:
* gtk/tmpl/gtkhruler.sgml:
* gtk/tmpl/gtkgamma.sgml:
* gtk/tmpl/gtkcurve.sgml:
* gtk/tmpl/gtkruler.sgml: Fix some typos and add some markup.
* gtk/gtk-sections.txt: Add a bunch of new functions.
2003-04-09 Matthias Clasen <maclas@gmx.de>
* gtk/building.sgml: More typo fixes.
2003-04-08 Matthias Clasen <maclas@gmx.de>
* gtk/building.sgml: Typo fix.
2003-04-07 Matthias Clasen <maclas@gmx.de>
* gtk/tmpl/gtktexttag.sgml: Document GTK_WRAP_WORD_CHAR. (#110086)
* gtk/tmpl/gtkenums.sgml, gtk/tmpl/gtkmain.sgml,
gtk/tmpl/gtkpaned.sgml, gtk/tmpl/gtkradiobutton.sgml,
gtk/tmpl/gtkspinbutton.sgml, gtk/tmpl/gtkstatusbar.sgml,
gtk/tmpl/gtktext.sgml, gtk/tmpl/gtktogglebuttons.sgml,
gtk/tmpl/gtktreeviewcolumn.sgml, gtk/tmpl/gtktypeutils.sgml: Fix
numerous misspellings of possessive "its". (#110027, Doug Quale)
* gtk/tmpl/gtktypeutils.sgml: Add some deprecation info.
2003-04-01 Matthias Clasen <maclas@gmx.de>
* gtk/tmpl/gtkmessagedialog.sgml: Fix formatting of examples.
* gtk/tmpl/gtkfilesel.sgml: Fix the example. (#109563)
2003-03-22 Michael Natterer <mitch@gimp.org>
* gtk/Makefile.am: copy stock_color_picker_25.png, don't copy
stock_save_24.png twice.
* gtk/tmpl/gtkstock.sgml: use it for GTK_STOCK_COLOR_PICKER
instead of stock_colorselector_24.png.
2003-03-04 Matthias Clasen <maclas@gmx.de>
* gtk/tmpl/gtkobject.sgml: Add deprecation notes.
@@ -453,8 +1149,9 @@ Tue Jun 18 17:02:48 2002 Owen Taylor <otaylor@redhat.com>
2002-05-05 Matthias Clasen <maclas@gmx.de>
* gtk/gtk-sections.txt: Add gtk_widget_class_find_style_property,
gtk_widget_class_list_style_properties and gtk_style_get_font_for_display.
* gtk/gtk-sections.txt: Add gtk_widget_class_find_style_property,
gtk_widget_class_list_style_properties and
gtk_style_get_font_for_display.
2002-05-03 Matthias Clasen <maclas@gmx.de>
@@ -475,14 +1172,15 @@ Tue Jun 18 17:02:48 2002 Owen Taylor <otaylor@redhat.com>
2002-05-01 Matthias Clasen <maclas@gmx.de>
* gdk/gdk-sections.txt: Move GdkScreen struct to the GdkScreen section.
* gdk/gdk-sections.txt: Move GdkScreen struct to the GdkScreen
section.
* gdk/tmpl/gdkscreen.sgml:
* gdk/tmpl/gdkdisplay.sgml: Typo and markup fixes.
* gdk/gdk-docs.sgml: Reorder display and screen sections.
* gdk/multihead.sgml: Remove references to GdkDisplayManager, typo
* gdk/multihead.sgml: Remove references to GdkDisplayManager, typo
and markup fixes.
Tue Apr 30 14:16:12 2002 Owen Taylor <otaylor@redhat.com>
@@ -615,9 +1313,9 @@ Fri Mar 8 15:14:32 2002 Owen Taylor <otaylor@redhat.com>
2002-03-07 Matthias Clasen <maclas@gmx.de>
* gdk-pixbuf/tmpl/animation.sgml, gdk-pixbuf/tmpl/gdk-pixbuf.sgml,
gtk/tmpl/gtkrc.sgml, gtk/tmpl/gtktextview.sgml, gtk/tmpl/gtkiconfactory.sgml,
gtk/tmpl/gtkaccelgroup.sgml: Add some ids which are referenced
from the object hierarchy.
gtk/tmpl/gtkrc.sgml, gtk/tmpl/gtktextview.sgml,
gtk/tmpl/gtkiconfactory.sgml, gtk/tmpl/gtkaccelgroup.sgml: Add
some ids which are referenced from the object hierarchy.
* gtk/gtk-docs.sgml: Use parts as top-level division (#61575),
include gtkaccessible docs.
@@ -1084,7 +1782,8 @@ Sat Dec 22 18:18:07 2001 Owen Taylor <otaylor@redhat.com>
* gtk/tmpl/gtklist.sgml: Markup fixes.
* gdk/tmpl/selections.sgml, gtk/tmpl/gtksocket.sgml: s/succesful/successful/g.
* gdk/tmpl/selections.sgml, gtk/tmpl/gtksocket.sgml:
s/succesful/successful/g.
* gtk/gtk-sections.txt, gtk/tmpl/gtkstyle.sgml: Remove
GTK_STYLE_NUM_STYLECOLORS. (#66467)

View File

@@ -9,6 +9,7 @@ gdk-pixbuf.hierarchy
gdk-pixbuf.interfaces
gdk-pixbuf.prerequisites
gdk-pixbuf.signals
deprecated
html
xml
*.stamp

View File

@@ -1,22 +1,18 @@
## Process this file with automake to produce Makefile.in
AUTOMAKE_OPTIONS = 1.6
# The name of the module.
DOC_MODULE=gdk-pixbuf
# The top-level SGML file.
DOC_MAIN_SGML_FILE=gdk-pixbuf.sgml
# The directory containing the source code. Relative to $(srcdir)
DOC_SOURCE_DIR=../../../gdk-pixbuf
# Extra options to supply to gtkdoc-scan
SCAN_OPTIONS=--source-dir=../../../contrib/gdk-pixbuf-xlib --deprecated-guards="GDK_PIXBUF_ENABLE_BROKEN|GDK_PIXBUF_DISABLE_DEPRECATED"
# Extra options to supply to gtkdoc-mkdb
MKDB_OPTIONS=--main-sgml-file=$(DOC_MAIN_SGML_FILE) --sgml-mode --source-dir=../../../contrib/gdk-pixbuf-xlib --output-format=xml
# Extra options to supply to gtkdoc-fixref
FIXXREF_OPTIONS=
# The directory containing the source code. Relative to $(srcdir)
DOC_SOURCE_DIR=../../../gdk-pixbuf
# Used for dependencies
HFILE_GLOB=$(top_srcdir)/gdk-pixbuf/*.h $(top_srcdir)/contrib/gdk-pixbuf-xlib/*.h
@@ -33,11 +29,22 @@ IGNORE_HFILES= \
io-ani-animation.h \
test-images.h
# Extra files to add when scanning
EXTRA_HFILES=
INCLUDES = \
-I$(top_srcdir) \
-I$(top_builddir) \
-I$(top_builddir)/gdk \
$(GTK_DEBUG_FLAGS) \
$(GTK_DEP_CFLAGS)
# Images to copy into HTML directory
HTML_IMAGES =
GTKDOC_LIBS = \
$(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la \
$(top_builddir)/gdk/$(gdktargetlib) \
$(top_builddir)/gtk/$(gtktargetlib) \
$(GTK_DEP_LIBS)
# Extra options to supply to gtkdoc-mkdb
MKDB_OPTIONS=--main-sgml-file=$(DOC_MAIN_SGML_FILE) --sgml-mode --source-dir=../../../contrib/gdk-pixbuf-xlib --output-format=xml
# Extra SGML files that are included by DOC_MAIN_SGML_FILE
content_files = \
@@ -45,160 +52,36 @@ content_files = \
gdk-pixbuf-from-drawables.sgml \
gdk-pixbuf-rendering.sgml \
gdk-pixbuf.sgml \
porting-from-imlib.sgml
porting-from-imlib.sgml \
gdk-pixbuf-csource.xml \
gdk-pixbuf-query-loaders.xml
# Images to copy into HTML directory
HTML_IMAGES =
# Extra options to supply to gtkdoc-fixref
FIXXREF_OPTIONS=
include $(top_srcdir)/gtk-doc.make
# Other files to distribute
extra_files = version.xml.in
EXTRA_DIST += version.xml.in
# CFLAGS and LDFLAGS for compiling scan program. Only needed
# if $(DOC_MODULE).types is non-empty.
GTKDOC_CFLAGS = @STRIP_BEGIN@ \
@CFLAGS@ \
-I$(top_srcdir) \
-I$(top_builddir) \
-I$(top_builddir)/gdk \
@GTK_DEBUG_FLAGS@ \
@GTK_DEP_CFLAGS@ \
@STRIP_END@
########################################################################
GTKDOC_LIBS = @STRIP_BEGIN@ \
$(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la \
$(top_builddir)/gdk/@gdktargetlib@ \
$(top_builddir)/gtk/@gtktargetlib@ \
@GTK_DEP_LIBS@ \
@STRIP_END@
man_MANS = gdk-pixbuf-csource.1 gdk-pixbuf-query-loaders.1
GTKDOC_CC=$(LIBTOOL) --mode=compile $(CC)
GTKDOC_LD=$(LIBTOOL) --mode=link $(CC)
if ENABLE_MAN
%.1 : %.xml
@XSLTPROC@ -nonet http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl $<
####################################
# Everything below here is generic #
####################################
# We set GPATH here; this gives us semantics for GNU make
# which are more like other make's VPATH, when it comes to
# whether a source that is a target of one rule is then
# searched for in VPATH/GPATH.
#
GPATH = $(srcdir)
TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)
EXTRA_DIST = \
$(content_files) \
$(extra_files) \
$(HTML_IMAGES) \
$(DOC_MAIN_SGML_FILE) \
$(DOC_MODULE).types \
$(DOC_MODULE)-sections.txt \
$(DOC_MODULE)-overrides.txt
DOC_STAMPS=scan-build.stamp tmpl-build.stamp sgml-build.stamp html-build.stamp \
$(srcdir)/tmpl.stamp $(srcdir)/sgml.stamp $(srcdir)/html.stamp
SCANOBJ_FILES = \
$(DOC_MODULE).args \
$(DOC_MODULE).hierarchy \
$(DOC_MODULE).interfaces \
$(DOC_MODULE).prerequisites \
$(DOC_MODULE).signals
if ENABLE_GTK_DOC
all-local: html-build.stamp
#### scan ####
scan-build.stamp: $(HFILE_GLOB)
@echo '*** Scanning header files ***'
if grep -l '^..*$$' $(srcdir)/$(DOC_MODULE).types > /dev/null ; then \
CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" CFLAGS="$(GTKDOC_CFLAGS)" LDFLAGS="$(GTKDOC_LIBS)" gtkdoc-scangobj --module=$(DOC_MODULE) --output-dir=$(srcdir) ; \
else \
cd $(srcdir) ; \
for i in $(SCANOBJ_FILES) ; do \
test -f $$i || touch $$i ; \
done \
fi
cd $(srcdir) && \
gtkdoc-scan --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --ignore-headers="$(IGNORE_HFILES)" $(SCAN_OPTIONS) $(EXTRA_HFILES)
touch scan-build.stamp
$(DOC_MODULE)-decl.txt $(SCANOBJ_FILES): scan-build.stamp
@true
#### templates ####
tmpl-build.stamp: $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt
@echo '*** Rebuilding template files ***'
cd $(srcdir) && gtkdoc-mktmpl --module=$(DOC_MODULE)
touch tmpl-build.stamp
tmpl.stamp: tmpl-build.stamp
@true
#### sgml ####
sgml-build.stamp: tmpl.stamp $(CFILE_GLOB) $(srcdir)/tmpl/*.sgml
@echo '*** Building SGML ***'
cd $(srcdir) && \
gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) $(MKDB_OPTIONS)
touch sgml-build.stamp
sgml.stamp: sgml-build.stamp
@true
#### html ####
html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files)
@echo '*** Building HTML ***'
rm -rf $(srcdir)/html
mkdir $(srcdir)/html
cd $(srcdir)/html && gtkdoc-mkhtml $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE)
test "x$(HTML_IMAGES)" = "x" || ( cd $(srcdir) && cp $(HTML_IMAGES) html )
@echo '-- Fixing Crossreferences'
cd $(srcdir) && gtkdoc-fixxref --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS)
touch html-build.stamp
endif
##############
BUILT_EXTRA_DIST = $(man_MANS)
clean-local:
rm -f *~ *.bak $(SCANOBJ_FILES) *-unused.txt $(DOC_STAMPS)
maintainer-clean-local: clean
cd $(srcdir) && rm -rf sgml html $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
install-data-local:
$(mkinstalldirs) $(DESTDIR)$(TARGET_DIR)
(installfiles=`echo $(srcdir)/html/*`; \
if test "$$installfiles" = '$(srcdir)/html/*'; \
then echo '-- Nothing to install' ; \
else \
for i in $$installfiles; do \
echo '-- Installing '$$i ; \
$(INSTALL_DATA) $$i $(DESTDIR)$(TARGET_DIR); \
done; \
echo '-- Installing $(srcdir)/html/index.sgml' ; \
$(INSTALL_DATA) $(srcdir)/html/index.sgml $(DESTDIR)$(TARGET_DIR); \
fi)
#
# Require gtk-doc when making dist
#
if ENABLE_GTK_DOC
dist-check-gtkdoc:
else
dist-check-gtkdoc:
@echo "*** gtk-doc must be installed and enabled in order to make dist"
@false
endif
dist-hook: dist-check-gtkdoc dist-hook-local
mkdir $(distdir)/tmpl
mkdir $(distdir)/xml
mkdir $(distdir)/html
-cp $(srcdir)/tmpl/*.sgml $(distdir)/tmpl
-cp $(srcdir)/xml/*.xml $(distdir)/xml
-cp $(srcdir)/html/* $(distdir)/html
.PHONY : dist-hook-local
dist-hook-local: $(BUILT_EXTRA_DIST)
files='$(BUILT_EXTRA_DIST)'; \
for f in $$files; do \
if test -f $$f; then d=.; else d=$(srcdir); fi; \
cp $$d/$$f $(distdir) || exit 1; done

View File

@@ -0,0 +1,114 @@
.\"Generated by db2man.xsl. Don't modify this, modify the source.
.de Sh \" Subsection
.br
.if t .Sp
.ne 5
.PP
\fB\\$1\fR
.PP
..
.de Sp \" Vertical space (when we can't use .PP)
.if t .sp .5v
.if n .sp
..
.de Ip \" List item
.br
.ie \\n(.$>=3 .ne \\$3
.el .ne 3
.IP "\\$1" \\$2
..
.TH "GDK-PIXBUF-CSOURCE" 1 "" "" ""
.SH NAME
gdk-pixbuf-csource \- C code generation utility for GdkPixbuf images
.SH "SYNOPSIS"
.nf
\fBgdk-pixbuf-csource\fR [options] [image]
.fi
.nf
\fBgdk-pixbuf-csource\fR [options] --build-list [[name] [image]...]
.fi
.SH "DESCRIPTION"
.PP
\fBgdk-pixbuf-csource\fR is a small utility that generates C code containing images, useful for compiling images directly into programs\&.
.SH "INVOCATION"
.PP
\fBgdk-pixbuf-csource\fR either takes as input one image file name to generate code for, or, using the \fB--build-list\fR option, a list of (\fIname\fR, \fIimage\fR) pairs to generate code for a list of images into named variables\&.
.SS "Options"
.TP
\fB--stream\fR
Generate pixbuf data stream (a single string containing a serialized GdkPixdata structure in network byte order)\&.
.TP
\fB--struct\fR
Generate GdkPixdata structure (needs the GdkPixdata structure definition from \fIgdk-pixdata\&.h\fR)\&.
.TP
\fB--macros\fR
Generate *_ROWSTRIDE, *_WIDTH, *_HEIGHT, *_BYTES_PER_PIXEL and *_RLE_PIXEL_DATA or *_PIXEL_DATA macro definitions for the image\&.
.TP
\fB--rle\fR
Enables run-length encoding for the generated pixel data (default)\&.
.TP
\fB--raw\fR
Disables run-length encoding for the generated pixel data\&.
.TP
\fB--extern\fR
Generate extern symbols\&.
.TP
\fB--static\fR
Generate static symbols (default)\&.
.TP
\fB--decoder\fR
Provide a *_RUN_LENGTH_DECODE(image_buf, rle_data, size, bpp) macro definition to decode run-length encoded image data\&.
.TP
\fB--name=identifier\fR
Specifies the identifier name (prefix) for the generated variables or macros (useful only if \fB--build-list\fR was not specified)\&.
.TP
\fB--build-list\fR
Enables (\fIname\fR, \fIimage\fR) pair parsing mode\&.
.TP
\fB-h\fR, \fB--help\fR
Print brief help and exit\&.
.TP
\fB-v\fR, \fB--version\fR
Print version and exit\&.
.TP
\fB--g-fatal-warnings\fR
Make warnings fatal (causes the program to abort)\&.
.SH "SEE ALSO"
.PP
The GdkPixbuf documentation, shipped with the Gtk+ distribution, available from www\&.gtk\&.org: \fIhttp://www.gtk.org\fR\&.
.SH "BUGS"
.PP
None known yet\&.
.SH "AUTHOR"
.PP
\fBgdk-pixbuf-csource\fR was written by Tim Janik <timj@gtk\&.org>\&.
.PP
This manual page was provided by Tim Janik <timj@gtk\&.org>\&.

View File

@@ -0,0 +1,171 @@
<refentry id="gdk-pixbuf-csource">
<refmeta>
<refentrytitle>gdk-pixbuf-csource</refentrytitle>
<manvolnum>1</manvolnum>
</refmeta>
<refnamediv>
<refname>gdk-pixbuf-csource</refname>
<refpurpose>C code generation utility for GdkPixbuf images</refpurpose>
</refnamediv>
<refsynopsisdiv>
<cmdsynopsis>
<command>gdk-pixbuf-csource</command>
<arg choice="opt">options</arg>
<arg choice="opt">image</arg>
</cmdsynopsis>
<cmdsynopsis>
<command>gdk-pixbuf-csource</command>
<arg choice="opt">options</arg>
<arg choice="plain">--build-list</arg>
<arg rep="repeat">
<arg>name</arg>
<arg>image</arg>
</arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1><title>Description</title>
<para>
<command>gdk-pixbuf-csource</command> is a small utility that generates C code
containing images, useful for compiling images directly into programs.
</para>
</refsect1>
<refsect1><title>Invocation</title>
<para>
<command>gdk-pixbuf-csource</command> either takes as input one image file name
to generate code for, or, using the <option>--build-list</option> option, a
list of (<replaceable>name</replaceable>, <replaceable>image</replaceable>)
pairs to generate code for a list of images into named variables.
</para>
<refsect2><title>Options</title>
<variablelist>
<varlistentry>
<term><option>--stream</option></term>
<listitem><para>
Generate pixbuf data stream (a single string containing a serialized
<structname>GdkPixdata</structname> structure in network byte order).
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>--struct</option></term>
<listitem><para>
Generate GdkPixdata structure (needs the <structname>GdkPixdata</structname>
structure definition from <filename>gdk-pixdata.h</filename>).
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>--macros</option></term>
<listitem><para>
Generate *_ROWSTRIDE, *_WIDTH, *_HEIGHT, *_BYTES_PER_PIXEL and
*_RLE_PIXEL_DATA or *_PIXEL_DATA macro definitions for the image.
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>--rle</option></term>
<listitem><para>
Enables run-length encoding for the generated pixel data (default).
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>--raw</option></term>
<listitem><para>
Disables run-length encoding for the generated pixel data.
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>--extern</option></term>
<listitem><para>
Generate extern symbols.
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>--static</option></term>
<listitem><para>
Generate static symbols (default).
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>--decoder</option></term>
<listitem><para>
Provide a *_RUN_LENGTH_DECODE(image_buf, rle_data, size, bpp) macro definition
to decode run-length encoded image data.
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>--name=identifier</option></term>
<listitem><para>
Specifies the identifier name (prefix) for the generated variables or
macros (useful only if <option>--build-list</option> was not specified).
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>--build-list</option></term>
<listitem><para>
Enables (<replaceable>name</replaceable>, <replaceable>image</replaceable>)
pair parsing mode.
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-h</option>, <option>--help</option></term>
<listitem><para>
Print brief help and exit.
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>-v</option>, <option>--version</option></term>
<listitem><para>
Print version and exit.
</para></listitem>
</varlistentry>
<varlistentry>
<term><option>--g-fatal-warnings</option></term>
<listitem><para>
Make warnings fatal (causes the program to abort).
</para></listitem>
</varlistentry>
</variablelist>
</refsect2>
</refsect1>
<refsect1><title>See also</title>
<para>
The <structname>GdkPixbuf</structname> documentation, shipped with the
Gtk+ distribution, available from <ulink url="http://www.gtk.org">www.gtk.org</ulink>.
</para>
</refsect1>
<refsect1><title>Bugs</title>
<para>
None known yet.
</para>
</refsect1>
<refsect1><title>Author</title>
<para>
<command>gdk-pixbuf-csource</command> was written by Tim Janik
<email>timj@gtk.org</email>.
</para>
<para>
This manual page was provided by Tim Janik <email>timj@gtk.org</email>.
</para>
</refsect1>
</refentry>

View File

@@ -0,0 +1,49 @@
.\"Generated by db2man.xsl. Don't modify this, modify the source.
.de Sh \" Subsection
.br
.if t .Sp
.ne 5
.PP
\fB\\$1\fR
.PP
..
.de Sp \" Vertical space (when we can't use .PP)
.if t .sp .5v
.if n .sp
..
.de Ip \" List item
.br
.ie \\n(.$>=3 .ne \\$3
.el .ne 3
.IP "\\$1" \\$2
..
.TH "GDK-PIXBUF-QUERY" 1 "" "" ""
.SH NAME
gdk-pixbuf-query-loaders \- GdkPixbuf loader registration utility
.SH "SYNOPSIS"
.nf
\fBgdk-pixbuf-query-loaders\fR [module...]
.fi
.SH "DESCRIPTION"
.PP
\fBgdk-pixbuf-query-loaders\fR collects information about loadable modules for gdk-pixbuf and writes it to \fIstdout\fR\&.
.PP
If called without arguments, it looks for modules in the gdk-pixbuf loader directory\&.
.PP
If called with arguments, it looks for the specified modules\&. The arguments may be absolute or relative paths\&.
.SH "ENVIRONMENT"
.PP
The environment variable \fBGDK_PIXBUF_MODULEDIR\fR can be used to specify a different loader directory\&. The default gdk-pixbuf loader directory is \fI\fIlibdir\fR/gtk-2\&.0/\fIversion\fR/loaders\fR\&.
.SH "BUGS"
.PP
None known yet\&.

View File

@@ -0,0 +1,51 @@
<refentry id="gdk-pixbuf-query-loaders">
<refmeta>
<refentrytitle>gdk-pixbuf-query-loaders</refentrytitle>
<manvolnum>1</manvolnum>
</refmeta>
<refnamediv>
<refname>gdk-pixbuf-query-loaders</refname>
<refpurpose>GdkPixbuf loader registration utility</refpurpose>
</refnamediv>
<refsynopsisdiv>
<cmdsynopsis>
<command>gdk-pixbuf-query-loaders</command>
<arg choice="opt" rep="repeat">module</arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1><title>Description</title>
<para>
<command>gdk-pixbuf-query-loaders</command> collects information about loadable
modules for <application>gdk-pixbuf</application> and writes it to <filename>stdout</filename>.
</para>
<para>
If called without arguments, it looks for modules in the
<application>gdk-pixbuf</application> loader directory.
</para>
<para>
If called with arguments, it looks for the specified modules. The arguments
may be absolute or relative paths.
</para>
</refsect1>
<refsect1><title>Environment</title>
<para>
The environment variable <envar>GDK_PIXBUF_MODULEDIR</envar> can be used
to specify a different loader directory. The default <application>gdk-pixbuf</application> loader
directory is <filename><replaceable>libdir</replaceable>/gtk-2.0/<replaceable>version</replaceable>/loaders</filename>.
</para>
</refsect1>
<refsect1><title>Bugs</title>
<para>
None known yet.
</para>
</refsect1>
</refentry>

View File

@@ -56,12 +56,19 @@ GdkPixbufDestroyNotify
<SECTION>
<FILE>file-loading</FILE>
gdk_pixbuf_new_from_file
gdk_pixbuf_new_from_file_at_size
gdk_pixbuf_get_file_info
</SECTION>
<SECTION>
<FILE>file-saving</FILE>
gdk_pixbuf_savev
gdk_pixbuf_save
GdkPixbufSaveFunc
gdk_pixbuf_save_to_callback
gdk_pixbuf_save_to_callbackv
gdk_pixbuf_save_to_buffer
gdk_pixbuf_save_to_bufferv
</SECTION>
<SECTION>
@@ -150,6 +157,7 @@ gdk_interp_type_get_type
GdkPixbufLoader
gdk_pixbuf_loader_new
gdk_pixbuf_loader_new_with_type
gdk_pixbuf_loader_new_with_mime_type
gdk_pixbuf_loader_get_format
gdk_pixbuf_loader_write
gdk_pixbuf_loader_set_size
@@ -164,6 +172,7 @@ GDK_IS_PIXBUF_LOADER
GDK_PIXBUF_LOADER_CLASS
GDK_IS_PIXBUF_LOADER_CLASS
<SUBSECTION Private>
GdkPixbufLoaderClass
gdk_pixbuf_loader_get_type
</SECTION>

View File

@@ -25,6 +25,8 @@
<!ENTITY gdk-pixbuf "<application>gdk-pixbuf</application>">
<!ENTITY Imlib "<application>Imlib</application>">
<!ENTITY version SYSTEM "version.xml">
<!ENTITY gdk-pixbuf-csource SYSTEM "gdk-pixbuf-csource.xml">
<!ENTITY gdk-pixbuf-query-loaders SYSTEM "gdk-pixbuf-query-loaders.xml">
]>
<book id="index">
@@ -114,6 +116,22 @@
&gdk-pixbuf-gdk-pixbuf-xlib-rgb;
</reference>
<reference>
<title>Tools Reference</title>
<partintro>
<para>
This part presents the tools which are shipped with the
&gdk-pixbuf; library.
</para>
</partintro>
&gdk-pixbuf-csource;
&gdk-pixbuf-query-loaders;
</reference>
<index/>
&Porting-From-Imlib;
<!-- License -->

View File

@@ -40,3 +40,26 @@ End:
-->
<!-- ##### FUNCTION gdk_pixbuf_new_from_file_at_size ##### -->
<para>
</para>
@filename:
@width:
@height:
@error:
@Returns:
<!-- ##### FUNCTION gdk_pixbuf_get_file_info ##### -->
<para>
</para>
@filename:
@width:
@height:
@Returns:

View File

@@ -41,3 +41,79 @@ Saving a pixbuf to a file.
@Returns:
<!-- ##### USER_FUNCTION GdkPixbufSaveFunc ##### -->
<para>
Specifies the type of the function passed to
gdk_pixbuf_save_to_callback(). It is called once for each block of
bytes that is "written" by gdk_pixbuf_save_to_callback(). If
successful it should return %TRUE. If an error occurs it should set
@error and return %FALSE, in which case gdk_pixbuf_save_to_callback()
will fail with the same error.
</para>
@buf: bytes to be written.
@count: number of bytes in @buf.
@error: A location to return an error.
@data: user data passed to gdk_pixbuf_save_to_callback().
@Returns: %TRUE if successful, %FALSE (with @error set) if failed.
@Since: 2.4
<!-- ##### FUNCTION gdk_pixbuf_save_to_callback ##### -->
<para>
</para>
@pixbuf:
@save_func:
@user_data:
@type:
@error:
@Varargs:
@Returns:
<!-- ##### FUNCTION gdk_pixbuf_save_to_callbackv ##### -->
<para>
</para>
@pixbuf:
@save_func:
@user_data:
@type:
@option_keys:
@option_values:
@error:
@Returns:
<!-- ##### FUNCTION gdk_pixbuf_save_to_buffer ##### -->
<para>
</para>
@pixbuf:
@buffer:
@buffer_size:
@type:
@error:
@Varargs:
@Returns:
<!-- ##### FUNCTION gdk_pixbuf_save_to_bufferv ##### -->
<para>
</para>
@pixbuf:
@buffer:
@buffer_size:
@type:
@option_keys:
@option_values:
@error:
@Returns:

View File

@@ -76,6 +76,36 @@ fields.
</para>
<!-- ##### SIGNAL GdkPixbufLoader::area-prepared ##### -->
<para>
</para>
@gdkpixbufloader:
<!-- ##### SIGNAL GdkPixbufLoader::area-updated ##### -->
<para>
</para>
@gdkpixbufloader:
@arg1:
@arg2:
@arg3:
@arg4:
<!-- ##### SIGNAL GdkPixbufLoader::closed ##### -->
<para>
</para>
@gdkpixbufloader:
<!-- ##### SIGNAL GdkPixbufLoader::size-prepared ##### -->
<para>
</para>
@gdkpixbufloader:
@arg1:
@arg2:
<!-- ##### FUNCTION gdk_pixbuf_loader_new ##### -->
<para>
@@ -94,6 +124,16 @@ fields.
@Returns:
<!-- ##### FUNCTION gdk_pixbuf_loader_new_with_mime_type ##### -->
<para>
</para>
@mime_type:
@error:
@Returns:
<!-- ##### FUNCTION gdk_pixbuf_loader_get_format ##### -->
<para>
@@ -152,46 +192,6 @@ fields.
@error:
@Returns:
<!-- ##### SIGNAL GdkPixbufLoader::area-prepared ##### -->
<para>
This signal is emitted when the pixbuf loader has allocated the pixbuf
in the desired size. After this signal is emitted, applications can
call gdk_pixbuf_loader_get_pixbuf() to fetch the partially-loaded pixbuf.
</para>
@gdkpixbufloader: the object which received the signal.
<!-- ##### SIGNAL GdkPixbufLoader::area-updated ##### -->
<para>
This signal is emitted when a significant area of the image being
loaded has been updated. Normally it means that a complete
scanline has been read in, but it could be a different area as
well. Applications can use this signal to know when to repaint
areas of an image that is being loaded.
</para>
@gdkpixbufloader: Loader which emitted the signal.
@arg1:
@arg2:
@arg3:
@arg4:
<!-- # Unused Parameters # -->
@x: X offset of upper-left corner of the updated area.
@y: Y offset of upper-left corner of the updated area.
@width: Width of updated area.
@height: Height of updated area.
<!-- ##### SIGNAL GdkPixbufLoader::closed ##### -->
<para>
This signal is emitted when gdk_pixbuf_loader_close() is called.
It can be used by different parts of an application to receive
notification when an image loader is closed by the code that
drives it.
</para>
@gdkpixbufloader: the object which received the signal.
<!--
Local variables:
mode: sgml
@@ -199,19 +199,4 @@ sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2" "")
End:
-->
<!-- ##### SIGNAL GdkPixbufLoader::size-prepared ##### -->
<para>
This signal is emitted when the pixbuf loader has been fed the
initial amount of data that is required to figure out the size
of the image that it will create. Applications can call
gdk_pixbuf_loader_set_size() in response to this signal to set
the desired size to which the image should be scaled.
</para>
@gdkpixbufloader: the object which received the signal.
@arg1:
@arg2:
<!-- # Unused Parameters # -->
@width: the original width of the image
@height: the original height of the image

View File

@@ -11,6 +11,81 @@ Information that describes an image.
information that describes an image in memory.
</para>
<section id="image-data">
<title>Image Data</title>
<para>
Image data in a pixbuf is stored in memory in uncompressed,
packed format. Rows in the image are stored top to bottom, and
in each row pixels are stored from left to right. There may be
padding at the end of a row. The "rowstride" value of a pixbuf,
as returned by gdk_pixbuf_get_rowstride(), indicates the number
of bytes between rows.
</para>
<example id="put-pixel">
<title>put_pixel(<!-- -->) example</title>
<para>
The following code illustrates a simple put_pixel(<!-- -->)
function for RGB pixbufs with 8 bits per channel with an alpha
channel. It is not included in the gdk-pixbuf library for
performance reasons; rather than making several function calls
for each pixel, your own code can take shortcuts.
</para>
<programlisting>
static void
put_pixel (GdkPixbuf *pixbuf, int x, int y, guchar red, guchar green, guchar blue, guchar alpha)
{
int width, height, rowstride, n_channels;
guchar *pixels, *p;
n_channels = gdk_pixbuf_get_n_channels (pixbuf);
g_assert (gdk_pixbuf_get_colorspace (pixbuf) == GDK_COLORSPACE_RGB);
g_assert (gdk_pixbuf_get_bits_per_sample (pixbuf) == 8);
g_assert (gdk_pixbuf_get_has_alpha (pixbuf));
g_assert (n_channels == 4);
width = gdk_pixbuf_get_width (pixbuf);
height = gdk_pixbuf_get_height (pixbuf);
g_assert (x &gt;= 0 &amp;&amp; x &lt; width);
g_assert (y &gt;= 0 &amp;&amp; y &lt; height);
rowstride = gdk_pixbuf_get_rowstride (pixbuf);
pixels = gdk_pixbuf_get_pixels (pixbuf);
p = pixels + y * rowstride + x * n_channels;
p[0] = red;
p[1] = green;
p[2] = blue;
p[3] = alpha;
}
</programlisting>
<para>
This function will not work for pixbufs with images that are
other than 8 bits per sample or channel, but it will work for
most of the pixbufs that GTK+ uses.
</para>
</example>
<note>
<para>
If you are doing memcpy() of raw pixbuf data, note that the
last row in the pixbuf may not be as wide as the full
rowstride, but rather just as wide as the pixel data needs to
be. That is, it is unsafe to do <literal>memcpy (dest,
pixels, rowstride * height)</literal> to copy a whole pixbuf.
Use gdk_pixbuf_copy() instead, or compute the width in bytes
of the last row as <literal>width * ((n_channels *
bits_per_sample + 7) / 8)</literal>.
</para>
</note>
</section>
<!-- ##### SECTION See_Also ##### -->
<para>
</para>
@@ -51,7 +126,7 @@ information on error domains and error codes.
<para>
These values can be passed to
gdk_pixbuf_render_to_drawable_alpha() to control how the alpha
chanel of an image should be handled. This function can create a
channel of an image should be handled. This function can create a
bilevel clipping mask (black and white) and use it while painting
the image. In the future, when the X Window System gets an alpha
channel extension, it will be possible to do full alpha
@@ -71,10 +146,51 @@ In the future it will do full alpha compositing.
This is the main structure in the &gdk-pixbuf; library. It is
used to represent images. It contains information about the
image's pixel data, its color space, bits per sample, width and
height, and the rowstride or number of bytes between rows.
height, and the rowstride (the number of bytes between the start of
one row and the start of the next).
</para>
<!-- ##### ARG GdkPixbuf:bits-per-sample ##### -->
<para>
</para>
<!-- ##### ARG GdkPixbuf:colorspace ##### -->
<para>
</para>
<!-- ##### ARG GdkPixbuf:has-alpha ##### -->
<para>
</para>
<!-- ##### ARG GdkPixbuf:height ##### -->
<para>
</para>
<!-- ##### ARG GdkPixbuf:n-channels ##### -->
<para>
</para>
<!-- ##### ARG GdkPixbuf:pixels ##### -->
<para>
</para>
<!-- ##### ARG GdkPixbuf:rowstride ##### -->
<para>
</para>
<!-- ##### ARG GdkPixbuf:width ##### -->
<para>
</para>
<!-- ##### FUNCTION gdk_pixbuf_get_colorspace ##### -->
<para>
@@ -162,3 +278,11 @@ End:
@Returns:
<!--
Local variables:
mode: sgml
sgml-parent-document: ("../gdk-pixbuf.sgml" "book" "refsect2")
End:
-->

View File

@@ -18,8 +18,8 @@ a #GdkPixbufModuleFillVtableFunc function named
In order to make format-checking work before actually loading the modules
(which may require dlopening image libraries), modules export their
signatures (and other information) via the <function>fill_info</function>
function. An external utility, <command>gdk-pixbuf-query-loaders</command>, uses
this to create a text file containing a list of all available loaders and
function. An external utility, <command>gdk-pixbuf-query-loaders</command>,
uses this to create a text file containing a list of all available loaders and
their signatures. This file is then read at runtime by &gdk-pixbuf; to obtain
the list of available loaders and their signatures.
</para>
@@ -158,18 +158,30 @@ operations.
<!-- ##### STRUCT GdkPixbufModulePattern ##### -->
<para>
The signature of a module is a set of prefixes. Prefixes are encoded as
pairs of ordinary strings, where the second string, if not %NULL,
may contain ' ', '!', 'x', 'z', and 'n' to indicate bytes that must be
matched, not matched, "don't-care"-bytes, zeros and non-zeros.
pairs of ordinary strings, where the second string, if not %NULL, must be
of the same length as the first one and may contain ' ', '!', 'x', 'z',
and 'n' to indicate bytes that must be matched, not matched,
"don't-care"-bytes, zeros and non-zeros.
Each prefix has an associated integer that describes the relevance of
the prefix, with 0 meaning a mismatch and 100 a "perfect match".
</para>
<para>
The signature of a module is stored as an array of
#GdkPixbufModulePattern<!-- -->s.
#GdkPixbufModulePattern<!-- -->s. The array is terminated by a pattern
where the @prefix is %NULL.
</para>
<informalexample><programlisting>
GdkPixbufModulePattern *signature[] = {
{ "abcdx", " !x z", 100 },
{ "bla", NULL, 90 },
{ NULL, NULL, 0 }
};
</programlisting>
The example matches e.g. "auud\0" with relevance 100, and "blau" with
relevance 90.</informalexample>
@prefix: the prefix for this pattern
@mask: mask containing bytes which modify how the prefix is matched against
test data
@@ -208,6 +220,12 @@ way to achieve the desired scaling during the loading of the image, it may
either ignore the size request, or only approximate it -- &gdk-pixbuf; will
then perform the required scaling on the completely loaded image.
</para>
<para>
If the function sets @width or @height to zero, the module should interpret
this as a hint that it will be closed soon and shouldn't allocate further
resources. This convention is used to implement gdk_pixbuf_get_file_info()
efficiently.
</para>
@width: pointer to a location containing the current image width
@height: pointer to a location containing the current image height
@@ -276,6 +294,7 @@ is loaded and must set the function pointers of the #GdkPixbufModule.
@load_increment: continues an incremental load.
@load_animation: loads an animation from a file.
@save: saves a #GdkPixbuf to a file.
@save_to_callback:
<!-- ##### STRUCT GdkPixbufAnimationClass ##### -->
<para>

View File

@@ -9,6 +9,7 @@ gdk.hierarchy
gdk.interfaces
gdk.prerequisites
gdk.signals
deprecated
html
xml
*.stamp

View File

@@ -1,22 +1,18 @@
## Process this file with automake to produce Makefile.in
AUTOMAKE_OPTIONS = 1.6
# The name of the module.
DOC_MODULE=gdk
# The top-level SGML file.
DOC_MAIN_SGML_FILE=gdk-docs.sgml
# The directory containing the source code. Relative to $(srcdir)
DOC_SOURCE_DIR=../../../gdk
# Extra options to supply to gtkdoc-scan
SCAN_OPTIONS=--deprecated-guards="GDK_ENABLE_BROKEN|GDK_DISABLE_DEPRECATED"
# Extra options to supply to gtkdoc-mkdb
MKDB_OPTIONS=--sgml-mode --output-format=xml
# Extra options to supply to gtkdoc-fixref
FIXXREF_OPTIONS=--extra-dir=../gdk-pixbuf/html
# The directory containing the source code. Relative to $(srcdir)
DOC_SOURCE_DIR=../../../gdk
# Used for dependencies
HFILE_GLOB=$(top_srcdir)/gdk/*.h $(top_srcdir)/gdk/x11/gdkx.h
@@ -40,6 +36,26 @@ IGNORE_HFILES= \
EXTRA_HFILES= \
../../../gdk/x11/gdkx.h
# CFLAGS and LDFLAGS for compiling scan program. Only needed
# if $(DOC_MODULE).types is non-empty.
INCLUDES = \
-I$(top_srcdir) \
-I$(top_builddir) \
-I$(top_builddir)/gdk \
$(GTK_DEBUG_FLAGS) \
$(GDK_DEP_CFLAGS)
GTKDOC_LIBS = $(top_builddir)/gdk/$(gdktargetlib)
# Extra options to supply to gtkdoc-mkdb
MKDB_OPTIONS=--sgml-mode --output-format=xml
# Extra SGML files that are included by DOC_MAIN_SGML_FILE
content_files = \
version.xml \
multihead.sgml
# Images to copy into HTML directory
HTML_IMAGES = \
images/X_cursor.png \
@@ -120,161 +136,10 @@ HTML_IMAGES = \
images/watch.png \
images/xterm.png
# Extra SGML files that are included by DOC_MAIN_SGML_FILE
content_files = \
version.xml \
multihead.sgml
# Extra options to supply to gtkdoc-fixref
FIXXREF_OPTIONS=--extra-dir=../gdk-pixbuf/html
include $(top_srcdir)/gtk-doc.make
# Other files to distribute
extra_files = version.xml.in
# CFLAGS and LDFLAGS for compiling scan program. Only needed
# if $(DOC_MODULE).types is non-empty.
GTKDOC_CFLAGS = @STRIP_BEGIN@ \
@CFLAGS@ \
-I$(top_srcdir) \
-I$(top_builddir) \
-I$(top_builddir)/gdk \
@GTK_DEBUG_FLAGS@ \
@GDK_DEP_CFLAGS@ \
@STRIP_END@
GTKDOC_LIBS = @STRIP_BEGIN@ \
$(top_builddir)/gdk/@gdktargetlib@ \
@STRIP_END@
# Commands for compiling and linking
GTKDOC_CC=$(LIBTOOL) --mode=compile $(CC)
GTKDOC_LD=$(LIBTOOL) --mode=link $(CC)
####################################
# Everything below here is generic #
####################################
# We set GPATH here; this gives us semantics for GNU make
# which are more like other make's VPATH, when it comes to
# whether a source that is a target of one rule is then
# searched for in VPATH/GPATH.
#
GPATH = $(srcdir)
TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)
EXTRA_DIST = \
$(content_files) \
$(extra_files) \
$(HTML_IMAGES) \
$(DOC_MAIN_SGML_FILE) \
$(DOC_MODULE).types \
$(DOC_MODULE)-sections.txt \
$(DOC_MODULE)-overrides.txt
DOC_STAMPS=scan-build.stamp tmpl-build.stamp sgml-build.stamp html-build.stamp \
$(srcdir)/tmpl.stamp $(srcdir)/sgml.stamp $(srcdir)/html.stamp
SCANOBJ_FILES = \
$(DOC_MODULE).args \
$(DOC_MODULE).hierarchy \
$(DOC_MODULE).interfaces \
$(DOC_MODULE).prerequisites \
$(DOC_MODULE).signals
if ENABLE_GTK_DOC
all-local: html-build.stamp
#### scan ####
scan-build.stamp: $(HFILE_GLOB)
@echo '*** Scanning header files ***'
if grep -l '^..*$$' $(srcdir)/$(DOC_MODULE).types > /dev/null ; then \
CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" CFLAGS="$(GTKDOC_CFLAGS)" LDFLAGS="$(GTKDOC_LIBS)" gtkdoc-scangobj --module=$(DOC_MODULE) --output-dir=$(srcdir) ; \
else \
cd $(srcdir) ; \
for i in $(SCANOBJ_FILES) ; do \
test -f $$i || touch $$i ; \
done \
fi
cd $(srcdir) && \
gtkdoc-scan --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --ignore-headers="$(IGNORE_HFILES)" $(SCAN_OPTIONS) $(EXTRA_HFILES)
touch scan-build.stamp
$(DOC_MODULE)-decl.txt $(SCANOBJ_FILES): scan-build.stamp
@true
#### templates ####
tmpl-build.stamp: $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt
@echo '*** Rebuilding template files ***'
cd $(srcdir) && gtkdoc-mktmpl --module=$(DOC_MODULE)
touch tmpl-build.stamp
tmpl.stamp: tmpl-build.stamp
@true
#### sgml ####
sgml-build.stamp: tmpl.stamp $(CFILE_GLOB) $(srcdir)/tmpl/*.sgml
@echo '*** Building SGML ***'
cd $(srcdir) && \
gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) $(MKDB_OPTIONS)
touch sgml-build.stamp
sgml.stamp: sgml-build.stamp
@true
#### html ####
html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files)
@echo '*** Building HTML ***'
rm -rf $(srcdir)/html
mkdir $(srcdir)/html
cd $(srcdir)/html && gtkdoc-mkhtml $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE)
test "x$(HTML_IMAGES)" = "x" || ( cd $(srcdir) && cp $(HTML_IMAGES) html )
@echo '-- Fixing Crossreferences'
cd $(srcdir) && gtkdoc-fixxref --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS)
touch html-build.stamp
endif
##############
clean-local:
rm -f *~ *.bak $(SCANOBJ_FILES) *-unused.txt $(DOC_STAMPS)
maintainer-clean-local: clean
cd $(srcdir) && rm -rf sgml html $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
install-data-local:
$(mkinstalldirs) $(DESTDIR)$(TARGET_DIR)
(installfiles=`echo $(srcdir)/html/*`; \
if test "$$installfiles" = '$(srcdir)/html/*'; \
then echo '-- Nothing to install' ; \
else \
for i in $$installfiles; do \
echo '-- Installing '$$i ; \
$(INSTALL_DATA) $$i $(DESTDIR)$(TARGET_DIR); \
done; \
echo '-- Installing $(srcdir)/html/index.sgml' ; \
$(INSTALL_DATA) $(srcdir)/html/index.sgml $(DESTDIR)$(TARGET_DIR); \
fi)
#
# Require gtk-doc when making dist
#
if ENABLE_GTK_DOC
dist-check-gtkdoc:
else
dist-check-gtkdoc:
@echo "*** gtk-doc must be installed and enabled in order to make dist"
@false
endif
dist-hook: dist-check-gtkdoc dist-hook-local
mkdir $(distdir)/tmpl
mkdir $(distdir)/xml
mkdir $(distdir)/html
-cp $(srcdir)/tmpl/*.sgml $(distdir)/tmpl
-cp $(srcdir)/xml/*.xml $(distdir)/xml
-cp $(srcdir)/html/* $(distdir)/html
.PHONY : dist-hook-local
EXTRA_DIST += version.xml.in

View File

@@ -84,4 +84,7 @@
&gdk-X-Window-System-Interaction;
</reference>
<index/>
</book>

View File

@@ -127,6 +127,7 @@ gdk_display_keyboard_ungrab
gdk_display_pointer_is_grabbed
gdk_display_beep
gdk_display_sync
gdk_display_flush
gdk_display_close
gdk_display_list_devices
gdk_display_get_event
@@ -134,22 +135,29 @@ gdk_display_peek_event
gdk_display_put_event
gdk_display_add_client_message_filter
gdk_display_set_double_click_time
gdk_display_set_double_click_distance
gdk_display_get_pointer
gdk_display_get_window_at_pointer
GdkDisplayPointerHooks
gdk_display_set_pointer_hooks
gdk_display_supports_cursor_color
gdk_display_supports_cursor_alpha
gdk_display_get_default_cursor_size
gdk_display_get_maximal_cursor_size
gdk_display_get_default_group
<SUBSECTION Standard>
GDK_DISPLAY_OBJECT
GDK_IS_DISPLAY
GDK_TYPE_DISPLAY
gdk_display_get_type
GDK_DISPLAY_CLASS
GDK_IS_DISPLAY_CLASS
GDK_DISPLAY_GET_CLASS
<SUBSECTION Private>
gdk_display_open_default_libgtk_only
gdk_display_get_type
GdkDisplayClass
</SECTION>
<SECTION>
@@ -199,14 +207,21 @@ gdk_screen_get_monitor_at_point
gdk_screen_get_monitor_at_window
gdk_screen_broadcast_client_message
gdk_screen_get_setting
<SUBSECTION Spawning>
gdk_spawn_on_screen
gdk_spawn_on_screen_with_pipes
gdk_spawn_command_line_on_screen
<SUBSECTION Standard>
GDK_SCREEN
GDK_IS_SCREEN
GDK_TYPE_SCREEN
gdk_screen_get_type
GDK_SCREEN_CLASS
GDK_IS_SCREEN_CLASS
GDK_SCREEN_GET_CLASS
<SUBSECTION Private>
GdkScreenClass
gdk_screen_get_type
</SECTION>
<SECTION>
@@ -458,6 +473,7 @@ gdk_draw_pixmap
gdk_draw_drawable
gdk_draw_image
gdk_drawable_get_image
gdk_drawable_copy_to_image
<SUBSECTION Standard>
GDK_DRAWABLE
@@ -609,6 +625,8 @@ gdk_window_maximize
gdk_window_unmaximize
gdk_window_fullscreen
gdk_window_unfullscreen
gdk_window_set_keep_above
gdk_window_set_keep_below
gdk_window_move
gdk_window_resize
gdk_window_move_resize
@@ -646,6 +664,7 @@ gdk_window_get_internal_paint_info
<SUBSECTION>
gdk_window_set_user_data
gdk_window_set_override_redirect
gdk_window_set_accept_focus
gdk_window_add_filter
gdk_window_remove_filter
GdkFilterFunc
@@ -693,6 +712,7 @@ gdk_window_set_icon_name
gdk_window_set_transient_for
gdk_window_set_role
gdk_window_set_group
gdk_window_get_group
gdk_window_set_decorations
gdk_window_get_decorations
GdkWMDecoration
@@ -867,6 +887,11 @@ gdk_threads_init
gdk_threads_enter
gdk_threads_leave
gdk_threads_mutex
gdk_threads_set_lock_functions
<SUBSECTION Private>
gdk_threads_lock
gdk_threads_unlock
</SECTION>
<SECTION>
@@ -1060,6 +1085,7 @@ GdkCursor
GdkCursorType
gdk_cursor_new
gdk_cursor_new_from_pixmap
gdk_cursor_new_from_pixbuf
gdk_cursor_new_for_display
gdk_cursor_get_display
gdk_cursor_ref
@@ -1182,6 +1208,7 @@ gdk_x11_cursor_get_xdisplay
gdk_x11_display_get_xdisplay
gdk_x11_display_grab
gdk_x11_display_ungrab
gdk_x11_register_standard_event_type
gdk_x11_drawable_get_xdisplay
gdk_x11_drawable_get_xid
gdk_x11_font_get_name

View File

@@ -130,6 +130,18 @@ The standard cursors available.
@Returns:
<!-- ##### FUNCTION gdk_cursor_new_from_pixbuf ##### -->
<para>
</para>
@display:
@pixbuf:
@x:
@y:
@Returns:
<!-- ##### FUNCTION gdk_cursor_new_for_display ##### -->
<para>

View File

@@ -19,6 +19,12 @@ the number of arguments needed for each drawing operation. See the
<link linkend="gdk-Graphics-Contexts">Graphics Contexts</link> section for
more information.
</para>
<para id="pango-data-structures">
Some of the drawing operations take Pango data structures like #PangoContext,
#PangoLayout or #PangoLayoutLine as arguments. If you're using GTK+, the ususal
way to obtain these structures is via gtk_widget_create_pango_context() or
gtk_widget_create_pango_layout().
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
@@ -387,6 +393,7 @@ function.
Draws a pixmap, or a part of a pixmap, onto another drawable.
</para>
@Deprecated: Use gdk_draw_drawable() instead.
<!-- ##### FUNCTION gdk_draw_drawable ##### -->
@@ -433,3 +440,19 @@ Draws a pixmap, or a part of a pixmap, onto another drawable.
@Returns:
<!-- ##### FUNCTION gdk_drawable_copy_to_image ##### -->
<para>
</para>
@drawable:
@image:
@src_x:
@src_y:
@dest_x:
@dest_y:
@width:
@height:
@Returns:

View File

@@ -203,7 +203,8 @@ Generated when the pointer moves.
the mouse.
@state: a bit-mask representing the state of the modifier keys (e.g. Control,
Shift and Alt) and the pointer buttons. See #GdkModifierType.
@is_hint:
@is_hint: set to 1 if this event is just a hint, see the %GDK_POINTER_MOTION_HINT_MASK
value of #GdkEventMask.
@device: the device where the event originated.
@x_root: the x coordinate of the pointer relative to the root of the screen.
@y_root: the y coordinate of the pointer relative to the root of the screen.
@@ -471,7 +472,9 @@ Specifies the state of a toplevel window.
@GDK_WINDOW_STATE_ICONIFIED: the window is minimized.
@GDK_WINDOW_STATE_MAXIMIZED: the window is maximized.
@GDK_WINDOW_STATE_STICKY: the window is sticky.
@GDK_WINDOW_STATE_FULLSCREEN:
@GDK_WINDOW_STATE_FULLSCREEN: the window is maximized without decorations.
@GDK_WINDOW_STATE_ABOVE: the window is kept above other windows.
@GDK_WINDOW_STATE_BELOW: the window is kept below other windows.
<!-- ##### ENUM GdkSettingAction ##### -->
<para>

View File

@@ -97,8 +97,9 @@ number of %GDK_MOTION_NOTIFY events received. Normally a %GDK_MOTION_NOTIFY
event is received each time the mouse moves. However, if the application
spends a lot of time processing the event (updating the display, for example),
it can easily lag behind the position of the mouse. When using the
%GDK_POINTER_MOTION_HINT_MASK the server will only send %GDK_MOTION_NOTIFY
events when the application asks for them, by calling gdk_window_get_pointer().
%GDK_POINTER_MOTION_HINT_MASK the server will only send a single %GDK_MOTION_NOTIFY
event (which is marked as a hint) until the application asks for more, by calling
gdk_window_get_pointer().
</para>
@GDK_EXPOSURE_MASK:

View File

@@ -36,6 +36,14 @@ of an X display. All its fields are private and should not be accessed directly.
@Since: 2.2
<!-- ##### SIGNAL GdkDisplay::closed ##### -->
<para>
</para>
@gdkdisplay: the object which received the signal.
@arg1:
<!-- ##### FUNCTION gdk_display_open ##### -->
<para>
@@ -133,6 +141,14 @@ of an X display. All its fields are private and should not be accessed directly.
@display:
<!-- ##### FUNCTION gdk_display_flush ##### -->
<para>
</para>
@display:
<!-- ##### FUNCTION gdk_display_close ##### -->
<para>
@@ -197,6 +213,15 @@ of an X display. All its fields are private and should not be accessed directly.
@msec:
<!-- ##### FUNCTION gdk_display_set_double_click_distance ##### -->
<para>
</para>
@display:
@distance:
<!-- ##### FUNCTION gdk_display_get_pointer ##### -->
<para>
@@ -253,11 +278,49 @@ Applications should never have any reason to use this facility
@Returns:
<!-- ##### SIGNAL GdkDisplay::closed ##### -->
<!-- ##### FUNCTION gdk_display_supports_cursor_color ##### -->
<para>
</para>
@gdkdisplay: the object which received the signal.
@arg1:
@display:
@Returns:
<!-- ##### FUNCTION gdk_display_supports_cursor_alpha ##### -->
<para>
</para>
@display:
@Returns:
<!-- ##### FUNCTION gdk_display_get_default_cursor_size ##### -->
<para>
</para>
@display:
@Returns:
<!-- ##### FUNCTION gdk_display_get_maximal_cursor_size ##### -->
<para>
</para>
@display:
@width:
@height:
<!-- ##### FUNCTION gdk_display_get_default_group ##### -->
<para>
</para>
@display:
@Returns:

View File

@@ -24,6 +24,19 @@ fields.
@Since: 2.2
<!-- ##### SIGNAL GdkDisplayManager::display-opened ##### -->
<para>
</para>
@gdkdisplaymanager: the object which received the signal.
@arg1:
<!-- ##### ARG GdkDisplayManager:default-display ##### -->
<para>
</para>
<!-- ##### FUNCTION gdk_display_manager_get ##### -->
<para>
@@ -68,16 +81,3 @@ fields.
@Returns:
<!-- ##### SIGNAL GdkDisplayManager::display-opened ##### -->
<para>
</para>
@gdkdisplaymanager: the object which received the signal.
@arg1:
<!-- ##### ARG GdkDisplayManager:default-display ##### -->
<para>
</para>

View File

@@ -31,6 +31,13 @@ when GDK gets multihead support.
@Since: 2.2
<!-- ##### SIGNAL GdkScreen::size-changed ##### -->
<para>
</para>
@gdkscreen: the object which received the signal.
<!-- ##### FUNCTION gdk_screen_get_default ##### -->
<para>
@@ -247,10 +254,51 @@ when GDK gets multihead support.
@Returns:
<!-- ##### SIGNAL GdkScreen::size-changed ##### -->
<!-- ##### FUNCTION gdk_spawn_on_screen ##### -->
<para>
</para>
@gdkscreen: the object which received the signal.
@screen:
@working_directory:
@argv:
@envp:
@flags:
@child_setup:
@user_data:
@child_pid:
@error:
@Returns:
<!-- ##### FUNCTION gdk_spawn_on_screen_with_pipes ##### -->
<para>
</para>
@screen:
@working_directory:
@argv:
@envp:
@flags:
@child_setup:
@user_data:
@child_pid:
@standard_input:
@standard_output:
@standard_error:
@error:
@Returns:
<!-- ##### FUNCTION gdk_spawn_command_line_on_screen ##### -->
<para>
</para>
@screen:
@command_line:
@error:
@Returns:

View File

@@ -243,16 +243,16 @@ Gets the current state of a device.
<!-- ##### FUNCTION gdk_device_get_history ##### -->
<para>
Obtains the motion history for a device.
</para>
@device: a #GdkDevice.
@window: the window wrt. which the event coordinates will be translated.
@start: only return events newer than this timestamp.
@stop: only return events older than this timestamp.
@events: location to return a newly-allocated array of #GdkTimeCoord.
@n_events: location to return the length of @events.
@Returns: %TRUE if the @events were successfully filled.
@device:
@window:
@start:
@stop:
@events:
@n_events:
@Returns:
<!-- ##### FUNCTION gdk_device_free_history ##### -->

View File

@@ -30,8 +30,9 @@ Unicode characters with gdk_keyval_to_unicode() and gdk_unicode_to_keyval().
</para>
<para>
One #GdkKeymap object exists for each user display. GTK 2 supports only one
display, so gdk_keymap_get_default() returns the singleton #GdkKeymap. A keymap
One #GdkKeymap object exists for each user display. gdk_keymap_get_default()
returns the #GdkKeymap for the default display; to obtain keymaps for other
displays, use gdk_keymap_get_for_display(). A keymap
is a mapping from #GdkKeymapKey to key values. You can think of a #GdkKeymapKey
as a representation of a symbol printed on a physical keyboard key. That is, it
contains three pieces of information. First, it contains the hardware keycode;
@@ -90,6 +91,20 @@ in the keymap and see what keyval it corresponds to.
</para>
<!-- ##### SIGNAL GdkKeymap::direction-changed ##### -->
<para>
</para>
@keymap: the object which received the signal.
<!-- ##### SIGNAL GdkKeymap::keys-changed ##### -->
<para>
</para>
@keymap: the object which received the signal.
<!-- ##### STRUCT GdkKeymapKey ##### -->
<para>
A <structname>GdkKeymapKey</structname> is a hardware key that can
@@ -185,7 +200,7 @@ Returns the direction of the keymap.
@keymap: a #GdkKeymap or %NULL to use the default keymap.
Returns: %PANGO_DIRECTION_LTR or %PANGO_DIRECTION_RTL.
@Returns:
@Returns: the direction of the keymap.
<!-- ##### FUNCTION gdk_keyval_name ##### -->

View File

@@ -33,16 +33,14 @@ these types.
Create a new pixmap with a given size and depth.
</para>
@drawable:
@drawable: A #GdkDrawable, used to determine default values
for the new pixmap. Can be %NULL if @depth is specified,
@width: The width of the new pixmap in pixels.
@height: The height of the new pixmap in pixels.
@depth: The depth (number of bits per pixel) of the new pixmap.
If -1, and @window is not %NULL, the depth of the new
pixmap will be equal to that of @window.
If -1, and @drawable is not %NULL, the depth of the new
pixmap will be equal to that of @drawable.
@Returns: the #GdkPixmap
<!-- # Unused Parameters # -->
@window: a #GdkWindow, used to determine default values for the
new pixmap. Can be %NULL if @depth is specified,
<!-- ##### FUNCTION gdk_bitmap_create_from_data ##### -->
@@ -50,15 +48,13 @@ Create a new pixmap with a given size and depth.
Creates a new bitmap from data in XBM format.
</para>
@drawable:
@drawable: a #GdkDrawable, used to determine default values
for the new pixmap. Can be %NULL, in which case the root
window is used.
@data: a pointer to the XBM data.
@width: the width of the new pixmap in pixels.
@height: the height of the new pixmap in pixels.
@Returns: the #GdkBitmap
<!-- # Unused Parameters # -->
@window: a #GdkWindow, used to determine default values for the
new pixmap. Can be %NULL, in which case the root window is
used.
<!-- ##### FUNCTION gdk_pixmap_create_from_data ##### -->
@@ -66,7 +62,8 @@ Creates a new bitmap from data in XBM format.
Create a two-color pixmap from data in XBM data.
</para>
@drawable:
@drawable: a #GdkDrawable, used to determine default values
for the new pixmap. Can be %NULL, if the depth is given.
@data: a pointer to the data.
@width: the width of the new pixmap in pixels.
@height: the height of the new pixmap in pixels.
@@ -74,9 +71,6 @@ Create a two-color pixmap from data in XBM data.
@fg: the foreground color.
@bg: the background color.
@Returns: the #GdkPixmap
<!-- # Unused Parameters # -->
@window: a #GdkWindow, used to determine default values for the
new pixmap. Can be %NULL, if the depth is given.
<!-- ##### FUNCTION gdk_pixmap_create_from_xpm ##### -->
@@ -84,7 +78,8 @@ Create a two-color pixmap from data in XBM data.
Create a pixmap from a XPM file.
</para>
@drawable:
@drawable: a #GdkDrawable, used to determine default values
for the new pixmap.
@mask: a pointer to a place to store a bitmap representing
the transparency mask of the XPM file. Can be %NULL,
in which case transparency will be ignored.
@@ -93,9 +88,6 @@ that are transparent in the input file. Can be %NULL,
in which case a default color will be used.
@filename: the filename of a file containing XPM data.
@Returns: the #GdkPixmap
<!-- # Unused Parameters # -->
@window: a #GdkWindow, used to determine default values for the
new pixmap.
<!-- ##### FUNCTION gdk_pixmap_colormap_create_from_xpm ##### -->
@@ -103,7 +95,8 @@ in which case a default color will be used.
Create a pixmap from a XPM file using a particular colormap.
</para>
@drawable:
@drawable: a #GdkDrawable, used to determine default values
for the new pixmap. Can be %NULL if @colormap is given.
@colormap: the #GdkColormap that the new pixmap will be use.
If omitted, the colormap for @window will be used.
@mask: a pointer to a place to store a bitmap representing
@@ -114,9 +107,6 @@ that are transparent in the input file. Can be %NULL,
in which case a default color will be used.
@filename: the filename of a file containing XPM data.
@Returns: the #GdkPixmap.
<!-- # Unused Parameters # -->
@window: a #GdkWindow, used to determine default values for the
new pixmap. Can be %NULL if @colormap is given.
<!-- ##### FUNCTION gdk_pixmap_create_from_xpm_d ##### -->
@@ -124,7 +114,8 @@ in which case a default color will be used.
Create a pixmap from data in XPM format.
</para>
@drawable:
@drawable: a #GdkDrawable, used to determine default values
for the new pixmap.
@mask: Pointer to a place to store a bitmap representing
the transparency mask of the XPM file. Can be %NULL,
in which case transparency will be ignored.
@@ -133,9 +124,6 @@ that are transparent in the input file. Can be %NULL
in which case a default color will be used.
@data: Pointer to a string containing the XPM data.
@Returns: the #GdkPixmap
<!-- # Unused Parameters # -->
@window: a #GdkWindow, used to determine default values for the
new pixmap.
<!-- ##### FUNCTION gdk_pixmap_colormap_create_from_xpm_d ##### -->
@@ -144,7 +132,8 @@ Create a pixmap from data in XPM format using a particular
colormap.
</para>
@drawable:
@drawable: a #GdkDrawable, used to determine default values
for the new pixmap. Can be %NULL if @colormap is given.
@colormap: the #GdkColormap that the new pixmap will be use.
If omitted, the colormap for @window will be used.
@mask: a pointer to a place to store a bitmap representing
@@ -155,9 +144,6 @@ that are transparent in the input file. Can be %NULL,
in which case a default color will be used.
@data: Pointer to a string containing the XPM data.
@Returns: the #GdkPixmap.
<!-- # Unused Parameters # -->
@window: a #GdkWindow, used to determine default values for the
new pixmap. Can be %NULL if @colormap is given.
<!-- ##### MACRO gdk_pixmap_ref ##### -->
@@ -166,8 +152,6 @@ Deprecated equivalent of g_object_ref().
</para>
@Returns: @pixmap
<!-- # Unused Parameters # -->
@pixmap: a #GdkPixmap
<!-- ##### MACRO gdk_pixmap_unref ##### -->
@@ -175,8 +159,6 @@ Deprecated equivalent of g_object_ref().
Deprecated equivalent of g_object_unref().
</para>
<!-- # Unused Parameters # -->
@pixmap: a #GdkPixmap
<!-- ##### STRUCT GdkBitmap ##### -->
@@ -195,8 +177,6 @@ Deprecated equivalent of g_object_ref().
</para>
@Returns: @pixmap
<!-- # Unused Parameters # -->
@pixmap: a #GdkBitmap
<!-- ##### MACRO gdk_bitmap_unref ##### -->
@@ -204,7 +184,5 @@ Deprecated equivalent of g_object_ref().
Deprecated equivalent of g_object_unref().
</para>
<!-- # Unused Parameters # -->
@pixmap: a #GdkBitmap

View File

@@ -291,3 +291,12 @@ used directly &mdash; consider it private.
</para>
<!-- ##### FUNCTION gdk_threads_set_lock_functions ##### -->
<para>
</para>
@enter_fn:
@leave_fn:

View File

@@ -416,6 +416,24 @@ Deprecated equivalent of g_object_unref()
@window:
<!-- ##### FUNCTION gdk_window_set_keep_above ##### -->
<para>
</para>
@window:
@setting:
<!-- ##### FUNCTION gdk_window_set_keep_below ##### -->
<para>
</para>
@window:
@setting:
<!-- ##### FUNCTION gdk_window_move ##### -->
<para>
@@ -723,6 +741,15 @@ Registers a window as a potential drop destination.
@override_redirect:
<!-- ##### FUNCTION gdk_window_set_accept_focus ##### -->
<para>
</para>
@window:
@accept_focus:
<!-- ##### FUNCTION gdk_window_add_filter ##### -->
<para>
@@ -746,8 +773,15 @@ Registers a window as a potential drop destination.
<!-- ##### USER_FUNCTION GdkFilterFunc ##### -->
<para>
Specifies the type of function used to filter native events before they are
converted to GDK events. A filter may translate the native event to a GDK
event or handle it without translation.
converted to GDK events.
</para>
<para>
When a filter is called, @event is unpopulated, except for
<literal>event-&gt;window</literal>. The filter may translate the native
event to a GDK event and store the result in @event, or handle it without
translation. If the filter translates the event and processing should
continue, it should return <literal>GDK_FILTER_TRANSLATE</literal>.
</para>
@xevent: the native event to filter.
@@ -762,7 +796,8 @@ Specifies the result of applying a #GdkFilterFunc to a native event.
</para>
@GDK_FILTER_CONTINUE: event not handled, continue processing.
@GDK_FILTER_TRANSLATE: translated event stored.
@GDK_FILTER_TRANSLATE: native event translated into a GDK event and stored
in the <literal>event</literal> structure that was passed in.
@GDK_FILTER_REMOVE: event handled, terminate processing.
<!-- ##### TYPEDEF GdkXEvent ##### -->
@@ -1194,6 +1229,15 @@ Like the X Window System, GDK supports 8 modifier keys and 5 mouse buttons.
@leader:
<!-- ##### FUNCTION gdk_window_get_group ##### -->
<para>
</para>
@window:
@Returns:
<!-- ##### FUNCTION gdk_window_set_decorations ##### -->
<para>

View File

@@ -507,6 +507,16 @@ Since: 2.2
@display:
<!-- ##### FUNCTION gdk_x11_register_standard_event_type ##### -->
<para>
</para>
@display:
@event_base:
@n_events:
<!-- ##### FUNCTION gdk_x11_drawable_get_xdisplay ##### -->
<para>

View File

@@ -10,6 +10,7 @@ gtk.hierarchy
gtk.interfaces
gtk.prerequisites
gtk.signals
deprecated
html
xml
*.stamp

View File

@@ -1,55 +1,103 @@
## Process this file with automake to produce Makefile.in
AUTOMAKE_OPTIONS = 1.6
# The name of the module.
DOC_MODULE=gtk
# The top-level SGML file.
DOC_MAIN_SGML_FILE=gtk-docs.sgml
# The directory containing the source code. Relative to $(srcdir)
DOC_SOURCE_DIR=../../../gtk
# Extra options to supply to gtkdoc-scan
SCAN_OPTIONS=--deprecated-guards="GTK_ENABLE_BROKEN|GTK_DISABLE_DEPRECATED"
# Extra options to pass to gtkdoc-scangobj
SCANGOBJ_OPTIONS=--type-init-func="gtk_type_init(0)"
# Extra options to supply to gtkdoc-scan
SCAN_OPTIONS=--deprecated-guards="GTK_ENABLE_BROKEN|GTK_DISABLE_DEPRECATED"
# Extra options to supply to gtkdoc-mkdb
MKDB_OPTIONS=--sgml-mode --output-format=xml
# Extra options to supply to gtkdoc-fixref
FIXXREF_OPTIONS=--extra-dir=../gdk-pixbuf/html --extra-dir=../gdk/html
# The directory containing the source code. Relative to $(srcdir)
DOC_SOURCE_DIR=../../../gtk
# Used for dependencies
HFILE_GLOB=$(top_srcdir)/gtk/*.h
CFILE_GLOB=$(top_srcdir)/gtk/*.c
# Header files to ignore when scanning
IGNORE_HFILES= \
fnmatch.h \
gdk-pixbuf-loader.h \
gtkdebug.h \
gtkhsv.h \
gtkimmodule.h \
gtkintl.h \
gtkkeyhash.h \
gtkmarshal.h \
gtkprivate.h \
gtktreeprivate.h \
gtkrbtree.h \
gtktreedatalist.h \
gtktextbtree.h \
gtktextdisplay.h \
gtktextiterprivate.h \
gtktextlayout.h \
gtktextmarkprivate.h \
gtktextsegment.h \
gtktexttagprivate.h \
gtktexttypes.h \
gtktextutil.h \
gtktypebuiltins.h \
xembed.h
IGNORE_HFILES= \
fnmatch.h \
gdk-pixbuf-loader.h \
gtkcellrendererseptext.h \
gtkdebug.h \
gtkfilechooserdefault.h \
gtkfilechooserentry.h \
gtkfilechooserutils.h \
gtkfilesystem.h \
gtkfilesystemmodel.h \
gtkfilesystemunix.h \
gtkfilesystemwin32.h \
gtkhsv.h \
gtkiconthemeparser.h \
gtkimmodule.h \
gtkintl.h \
gtkkeyhash.h \
gtkmarshal.h \
gtkprivate.h \
gtktreeprivate.h \
gtkrbtree.h \
gtktreedatalist.h \
gtktextbtree.h \
gtktextdisplay.h \
gtktextiterprivate.h \
gtktextlayout.h \
gtktextmarkprivate.h \
gtktextsegment.h \
gtktexttagprivate.h \
gtktexttypes.h \
gtktextutil.h \
gtktypebuiltins.h \
gtkxembed.h \
xdgmime \
xembed.h \
gtktoggleactionprivate.h
# CFLAGS and LDFLAGS for compiling scan program. Only needed
# if $(DOC_MODULE).types is non-empty.
INCLUDES = \
-I$(top_srcdir) \
-I$(top_builddir) \
-I$(top_builddir)/gdk \
-DGTK_ENABLE_BROKEN \
$(GTK_DEBUG_FLAGS) \
$(GTK_DEP_CFLAGS)
GTKDOC_LIBS = \
$(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la \
$(top_builddir)/gdk/$(gdktargetlib) \
$(top_builddir)/gtk/$(gtktargetlib)
# Extra options to supply to gtkdoc-mkdb
MKDB_OPTIONS=--sgml-mode --output-format=xml
# Extra SGML files that are included by $(DOC_MAIN_SGML_FILE)
content_files = \
version.xml \
running.sgml \
building.sgml \
changes-1.2.sgml \
changes-2.0.sgml \
compiling.sgml \
framebuffer.sgml \
migrating-checklist.sgml \
migrating-GtkAction.sgml \
migrating-GtkFileChooser.sgml \
objects_grouped.sgml \
question_index.sgml \
resources.sgml \
text_widget.sgml \
tree_widget.sgml \
windows.sgml \
x11.sgml \
gtk-query-immodules-2.0.xml
# Images to copy into HTML directory
HTML_IMAGES = \
@@ -64,6 +112,7 @@ HTML_IMAGES = \
$(top_srcdir)/gtk/stock-icons/stock_copy_24.png \
$(top_srcdir)/gtk/stock-icons/stock_cut_24.png \
$(top_srcdir)/gtk/stock-icons/stock_trash_24.png \
$(top_srcdir)/gtk/stock-icons/stock_dialog_authentication_48.png \
$(top_srcdir)/gtk/stock-icons/stock_dialog_error_48.png \
$(top_srcdir)/gtk/stock-icons/stock_dialog_info_48.png \
$(top_srcdir)/gtk/stock-icons/stock_dialog_question_48.png \
@@ -73,7 +122,6 @@ HTML_IMAGES = \
$(top_srcdir)/gtk/stock-icons/stock_exec_24.png \
$(top_srcdir)/gtk/stock-icons/stock_search_24.png \
$(top_srcdir)/gtk/stock-icons/stock_search_replace_24.png \
$(top_srcdir)/gtk/stock-icons/stock_save_24.png \
$(top_srcdir)/gtk/stock-icons/stock_bottom_24.png \
$(top_srcdir)/gtk/stock-icons/stock_first_24.png \
$(top_srcdir)/gtk/stock-icons/stock_last_24.png \
@@ -87,6 +135,7 @@ HTML_IMAGES = \
$(top_srcdir)/gtk/stock-icons/stock_index_24.png \
$(top_srcdir)/gtk/stock-icons/stock_text_italic_24.png \
$(top_srcdir)/gtk/stock-icons/stock_jump_to_24.png \
$(top_srcdir)/gtk/stock-icons/stock_jump_to_rtl_24.png \
$(top_srcdir)/gtk/stock-icons/stock_align_center_24.png \
$(top_srcdir)/gtk/stock-icons/stock_align_justify_24.png \
$(top_srcdir)/gtk/stock-icons/stock_align_left_24.png \
@@ -103,12 +152,15 @@ HTML_IMAGES = \
$(top_srcdir)/gtk/stock-icons/stock_properties_24.png \
$(top_srcdir)/gtk/stock-icons/stock_exit_24.png \
$(top_srcdir)/gtk/stock-icons/stock_redo_24.png \
$(top_srcdir)/gtk/stock-icons/stock_redo_rtl_24.png \
$(top_srcdir)/gtk/stock-icons/stock_refresh_24.png \
$(top_srcdir)/gtk/stock-icons/stock_remove_24.png \
$(top_srcdir)/gtk/stock-icons/stock_revert_24.png \
$(top_srcdir)/gtk/stock-icons/stock_revert_rtl_24.png \
$(top_srcdir)/gtk/stock-icons/stock_save_24.png \
$(top_srcdir)/gtk/stock-icons/stock_save_as_24.png \
$(top_srcdir)/gtk/stock-icons/stock_colorselector_24.png \
$(top_srcdir)/gtk/stock-icons/stock_color_picker_25.png \
$(top_srcdir)/gtk/stock-icons/stock_font_24.png \
$(top_srcdir)/gtk/stock-icons/stock_sort_ascending_24.png \
$(top_srcdir)/gtk/stock-icons/stock_sort_descending_24.png \
@@ -116,192 +168,39 @@ HTML_IMAGES = \
$(top_srcdir)/gtk/stock-icons/stock_stop_24.png \
$(top_srcdir)/gtk/stock-icons/stock_text_strikethrough_24.png \
$(top_srcdir)/gtk/stock-icons/stock_undelete_24.png \
$(top_srcdir)/gtk/stock-icons/stock_undelete_rtl_24.png \
$(top_srcdir)/gtk/stock-icons/stock_text_underline_24.png \
$(top_srcdir)/gtk/stock-icons/stock_undo_24.png \
$(top_srcdir)/gtk/stock-icons/stock_undo_rtl_24.png \
$(top_srcdir)/gtk/stock-icons/stock_yes_20.png \
$(top_srcdir)/gtk/stock-icons/stock_zoom_1_24.png \
$(top_srcdir)/gtk/stock-icons/stock_zoom_fit_24.png \
$(top_srcdir)/gtk/stock-icons/stock_zoom_in_24.png \
$(top_srcdir)/gtk/stock-icons/stock_zoom_out_24.png
# Extra SGML files that are included by $(DOC_MAIN_SGML_FILE)
content_files = \
version.xml \
running.sgml \
building.sgml \
changes-1.2.sgml \
changes-2.0.sgml \
compiling.sgml \
framebuffer.sgml \
objects_grouped.sgml \
question_index.sgml \
resources.sgml \
text_widget.sgml \
tree_widget.sgml \
windows.sgml \
x11.sgml
# Extra options to supply to gtkdoc-fixref
FIXXREF_OPTIONS=--extra-dir=../gdk-pixbuf/html --extra-dir=../gdk/html
include $(top_srcdir)/gtk-doc.make
# Other files to distribute
extra_files = version.xml.in
EXTRA_DIST += version.xml.in
# CFLAGS and LDFLAGS for compiling scan program. Only needed
# if $(DOC_MODULE).types is non-empty.
GTKDOC_CFLAGS = @STRIP_BEGIN@ \
@CFLAGS@ \
-I$(top_srcdir) \
-I$(top_builddir) \
-I$(top_builddir)/gdk \
-DGTK_ENABLE_BROKEN \
@GTK_DEBUG_FLAGS@ \
@GTK_DEP_CFLAGS@ \
@STRIP_END@
########################################################################
GTKDOC_LIBS = @STRIP_BEGIN@ \
$(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la \
$(top_builddir)/gdk/@gdktargetlib@ \
$(top_builddir)/gtk/@gtktargetlib@ \
@STRIP_END@
man_MANS = gtk-query-immodules-2.0.1
GTKDOC_CC=$(LIBTOOL) --mode=compile $(CC)
GTKDOC_LD=$(LIBTOOL) --mode=link $(CC)
if ENABLE_MAN
%.1 : %.xml
@XSLTPROC@ -nonet http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl $<
####################################
# Everything below here is generic #
####################################
# We set GPATH here; this gives us semantics for GNU make
# which are more like other make's VPATH, when it comes to
# whether a source that is a target of one rule is then
# searched for in VPATH/GPATH.
#
GPATH = $(srcdir)
TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE)
EXTRA_DIST = \
$(content_files) \
$(extra_files) \
$(HTML_IMAGES) \
$(DOC_MAIN_SGML_FILE) \
$(DOC_MODULE).types \
$(DOC_MODULE)-sections.txt \
$(DOC_MODULE)-overrides.txt
DOC_STAMPS=scan-build.stamp tmpl-build.stamp sgml-build.stamp html-build.stamp \
$(srcdir)/tmpl.stamp $(srcdir)/sgml.stamp $(srcdir)/html.stamp
SCANOBJ_FILES = \
$(DOC_MODULE).args \
$(DOC_MODULE).hierarchy \
$(DOC_MODULE).interfaces \
$(DOC_MODULE).prerequisites \
$(DOC_MODULE).signals
if ENABLE_GTK_DOC
all-local: html-build.stamp
#### scan ####
scan-build.stamp: $(HFILE_GLOB)
@echo '*** Scanning header files ***'
if grep -l '^..*$$' $(srcdir)/$(DOC_MODULE).types > /dev/null ; then \
CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" CFLAGS="$(GTKDOC_CFLAGS)" LDFLAGS="$(GTKDOC_LIBS)" gtkdoc-scangobj $(SCANGOBJ_OPTIONS) --module=$(DOC_MODULE) --output-dir=$(srcdir) ; \
else \
cd $(srcdir) ; \
for i in $(SCANOBJ_FILES) ; do \
test -f $$i || touch $$i ; \
done \
fi
cd $(srcdir) && \
gtkdoc-scan --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) --ignore-headers="$(IGNORE_HFILES)" $(SCAN_OPTIONS) $(EXTRA_HFILES)
touch scan-build.stamp
$(DOC_MODULE)-decl.txt $(SCANOBJ_FILES): scan-build.stamp
@true
#### templates ####
tmpl-build.stamp: $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt
@echo '*** Rebuilding template files ***'
cd $(srcdir) && gtkdoc-mktmpl --module=$(DOC_MODULE)
touch tmpl-build.stamp
tmpl.stamp: tmpl-build.stamp
@true
#### sgml ####
sgml-build.stamp: tmpl.stamp $(CFILE_GLOB) $(srcdir)/tmpl/*.sgml
@echo '*** Building SGML ***'
cd $(srcdir) && \
gtkdoc-mkdb --module=$(DOC_MODULE) --source-dir=$(DOC_SOURCE_DIR) $(MKDB_OPTIONS)
touch sgml-build.stamp
sgml.stamp: sgml-build.stamp
@true
#### html ####
html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files)
@echo '*** Building HTML ***'
rm -rf $(srcdir)/html
mkdir $(srcdir)/html
cd $(srcdir)/html && gtkdoc-mkhtml $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE)
test "x$(HTML_IMAGES)" = "x" || ( cd $(srcdir) && cp $(HTML_IMAGES) html )
@echo '-- Fixing Crossreferences'
cd $(srcdir) && gtkdoc-fixxref --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS)
touch html-build.stamp
endif
##############
clean-local:
rm -f *~ *.bak $(SCANOBJ_FILES) *-unused.txt $(DOC_STAMPS)
maintainer-clean-local: clean
cd $(srcdir) && rm -rf sgml html $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt
install-data-local:
$(mkinstalldirs) $(DESTDIR)$(TARGET_DIR)
(installfiles=`echo $(srcdir)/html/*`; \
if test "$$installfiles" = '$(srcdir)/html/*'; \
then echo '-- Nothing to install' ; \
else \
for i in $$installfiles; do \
echo '-- Installing '$$i ; \
$(INSTALL_DATA) $$i $(DESTDIR)$(TARGET_DIR); \
done; \
echo '-- Installing $(srcdir)/html/index.sgml' ; \
$(INSTALL_DATA) $(srcdir)/html/index.sgml $(DESTDIR)$(TARGET_DIR); \
fi)
#
# Require gtk-doc when making dist
#
if ENABLE_GTK_DOC
dist-check-gtkdoc:
else
dist-check-gtkdoc:
@echo "*** gtk-doc must be installed and enabled in order to make dist"
@false
endif
dist-hook: dist-check-gtkdoc dist-hook-local
mkdir $(distdir)/tmpl
mkdir $(distdir)/xml
mkdir $(distdir)/html
-cp $(srcdir)/tmpl/*.sgml $(distdir)/tmpl
-cp $(srcdir)/xml/*.xml $(distdir)/xml
-cp $(srcdir)/html/* $(distdir)/html
.PHONY : dist-hook-local
BUILT_EXTRA_DIST = $(man_MANS)
dist-hook-local: $(BUILT_EXTRA_DIST)
files='$(BUILT_EXTRA_DIST)'; \
for f in $$files; do \
if test -f $$f; then d=.; else d=$(srcdir); fi; \
cp $$d/$$f $(distdir) || exit 1; done

View File

@@ -136,7 +136,7 @@ How to compile GTK+ itself
<ulink
url="http://www.freedesktop.org/software/pkgconfig/">pkg-config</ulink>
is a tool for tracking the compilation flags needed for
libraries that is used by the GTK+ libraries. (For each
libraries that are used by the GTK+ libraries. (For each
library, a small <literal>.pc</literal> text file is installed in a standard
location that contains the compilation flags needed for that
library along with version number information.) The version
@@ -168,7 +168,7 @@ How to compile GTK+ itself
<para>
The GLib library provides core non-graphical functionality
such as high level data types, Unicode manipulation, and
a object and type system to C programs. It is available
an object and type system to C programs. It is available
from the <ulink url="ftp://ftp.gtk.org/pub/gtk/v2.2/">GTK+
FTP site.</ulink>
</para>
@@ -176,7 +176,7 @@ How to compile GTK+ itself
<listitem>
<para>
<ulink url="http://www.pango.org">Pango</ulink> is a library
for internationalized text handling. Itis available from
for internationalized text handling. It is available from
the <ulink url="ftp://ftp.gtk.org/pub/gtk/v2.2/">GTK+ FTP
site.</ulink>. Either Pango-1.0 or Pango-1.2 can be used
with GTK+-2.2, though Pango-1.2 is recommended.
@@ -240,8 +240,8 @@ How to compile GTK+ itself
The <ulink url="http://www.fontconfig.org">fontconfig</ulink>
library provides Pango with a standard way of locating
fonts and matching them against font names. The Xft2
library, distributed with fontconfig, provide support for
scaleable and antialiased fonts on X. Pango includes two
library, distributed with fontconfig, provides support for
scalable and antialiased fonts on X. Pango includes two
backends that work on top of fontconfig: an Xft2 backend
and a backend that uses fontconfig and the underlying
<ulink url="http://www.freetype.org">FreeType

View File

@@ -2,6 +2,8 @@
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
"http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" [
<!ENTITY GtkAccelLabel SYSTEM "xml/gtkaccellabel.xml">
<!ENTITY GtkAction SYSTEM "xml/gtkaction.xml">
<!ENTITY GtkActionGroup SYSTEM "xml/gtkactiongroup.xml">
<!ENTITY GtkAdjustment SYSTEM "xml/gtkadjustment.xml">
<!ENTITY GtkAlignment SYSTEM "xml/gtkalignment.xml">
<!ENTITY GtkArrow SYSTEM "xml/gtkarrow.xml">
@@ -14,9 +16,12 @@
<!ENTITY GtkCheckButton SYSTEM "xml/gtkcheckbutton.xml">
<!ENTITY GtkCheckMenuItem SYSTEM "xml/gtkcheckmenuitem.xml">
<!ENTITY GtkCList SYSTEM "xml/gtkclist.xml">
<!ENTITY GtkColorButton SYSTEM "xml/gtkcolorbutton.xml">
<!ENTITY GtkColorSelection SYSTEM "xml/gtkcolorsel.xml">
<!ENTITY GtkColorSelectionDialog SYSTEM "xml/gtkcolorseldlg.xml">
<!ENTITY GtkCombo SYSTEM "xml/gtkcombo.xml">
<!ENTITY GtkComboBox SYSTEM "xml/gtkcombobox.xml">
<!ENTITY GtkComboBoxEntry SYSTEM "xml/gtkcomboboxentry.xml">
<!ENTITY GtkContainer SYSTEM "xml/gtkcontainer.xml">
<!ENTITY GtkCTree SYSTEM "xml/gtkctree.xml">
<!ENTITY GtkCurve SYSTEM "xml/gtkcurve.xml">
@@ -25,9 +30,16 @@
<!ENTITY GtkEditable SYSTEM "xml/gtkeditable.xml">
<!ENTITY GtkOldEditable SYSTEM "xml/gtkoldeditable.xml">
<!ENTITY GtkEntry SYSTEM "xml/gtkentry.xml">
<!ENTITY GtkEntryCompletion SYSTEM "xml/gtkentrycompletion.xml">
<!ENTITY GtkEventBox SYSTEM "xml/gtkeventbox.xml">
<!ENTITY GtkExpander SYSTEM "xml/gtkexpander.xml">
<!ENTITY GtkFileChooser SYSTEM "xml/gtkfilechooser.xml">
<!ENTITY GtkFileChooserDialog SYSTEM "xml/gtkfilechooserdialog.xml">
<!ENTITY GtkFileChooserWidget SYSTEM "xml/gtkfilechooserwidget.xml">
<!ENTITY GtkFileFilter SYSTEM "xml/gtkfilefilter.xml">
<!ENTITY GtkFileSelection SYSTEM "xml/gtkfilesel.xml">
<!ENTITY GtkFixed SYSTEM "xml/gtkfixed.xml">
<!ENTITY GtkFontButton SYSTEM "xml/gtkfontbutton.xml">
<!ENTITY GtkFontSelection SYSTEM "xml/gtkfontsel.xml">
<!ENTITY GtkFontSelectionDialog SYSTEM "xml/gtkfontseldlg.xml">
<!ENTITY GtkFrame SYSTEM "xml/gtkframe.xml">
@@ -68,8 +80,10 @@
<!ENTITY GtkPreview SYSTEM "xml/gtkpreview.xml">
<!ENTITY GtkProgress SYSTEM "xml/gtkprogress.xml">
<!ENTITY GtkProgressBar SYSTEM "xml/gtkprogressbar.xml">
<!ENTITY GtkRadioAction SYSTEM "xml/gtkradioaction.xml">
<!ENTITY GtkRadioButton SYSTEM "xml/gtkradiobutton.xml">
<!ENTITY GtkRadioMenuItem SYSTEM "xml/gtkradiomenuitem.xml">
<!ENTITY GtkRadioToolButton SYSTEM "xml/gtkradiotoolbutton.xml">
<!ENTITY GtkRange SYSTEM "xml/gtkrange.xml">
<!ENTITY GtkRuler SYSTEM "xml/gtkruler.xml">
<!ENTITY GtkScale SYSTEM "xml/gtkscale.xml">
@@ -77,6 +91,7 @@
<!ENTITY GtkScrolledWindow SYSTEM "xml/gtkscrolledwindow.xml">
<!ENTITY GtkSeparator SYSTEM "xml/gtkseparator.xml">
<!ENTITY GtkSeparatorMenuItem SYSTEM "xml/gtkseparatormenuitem.xml">
<!ENTITY GtkSeparatorToolItem SYSTEM "xml/gtkseparatortoolitem.xml">
<!ENTITY GtkSizeGroup SYSTEM "xml/gtksizegroup.xml">
<!ENTITY GtkSocket SYSTEM "xml/gtksocket.xml">
<!ENTITY GtkSpinButton SYSTEM "xml/gtkspinbutton.xml">
@@ -91,18 +106,25 @@
<!ENTITY GtkTextTagTable SYSTEM "xml/gtktexttagtable.xml">
<!ENTITY GtkTextView SYSTEM "xml/gtktextview.xml">
<!ENTITY GtkTipsQuery SYSTEM "xml/gtktipsquery.xml">
<!ENTITY GtkToggleAction SYSTEM "xml/gtktoggleaction.xml">
<!ENTITY GtkToggleButton SYSTEM "xml/gtktogglebutton.xml">
<!ENTITY GtkToggleToolButton SYSTEM "xml/gtktoggletoolbutton.xml">
<!ENTITY GtkToolbar SYSTEM "xml/gtktoolbar.xml">
<!ENTITY GtkToolButton SYSTEM "xml/gtktoolbutton.xml">
<!ENTITY GtkToolItem SYSTEM "xml/gtktoolitem.xml">
<!ENTITY GtkTooltips SYSTEM "xml/gtktooltips.xml">
<!ENTITY GtkTree SYSTEM "xml/gtktree.xml">
<!ENTITY GtkTreeItem SYSTEM "xml/gtktreeitem.xml">
<!ENTITY GtkTreeModel SYSTEM "xml/gtktreemodel.xml">
<!ENTITY GtkTreeSortable SYSTEM "xml/gtktreesortable.xml">
<!ENTITY GtkTreeModelSort SYSTEM "xml/gtktreemodelsort.xml">
<!ENTITY GtkTreeModelFilter SYSTEM "xml/gtktreemodelfilter.xml">
<!ENTITY GtkTreeSelection SYSTEM "xml/gtktreeselection.xml">
<!ENTITY GtkTreeStore SYSTEM "xml/gtktreestore.xml">
<!ENTITY GtkTreeViewColumn SYSTEM "xml/gtktreeviewcolumn.xml">
<!ENTITY GtkTreeView SYSTEM "xml/gtktreeview.xml">
<!ENTITY GtkUIManager SYSTEM "xml/gtkuimanager.xml">
<!ENTITY GtkCellLayout SYSTEM "xml/gtkcelllayout.xml">
<!ENTITY GtkCellRenderer SYSTEM "xml/gtkcellrenderer.xml">
<!ENTITY GtkCellEditable SYSTEM "xml/gtkcelleditable.xml">
<!ENTITY GtkCellRendererPixbuf SYSTEM "xml/gtkcellrendererpixbuf.xml">
@@ -137,12 +159,12 @@
<!ENTITY gtk-Types SYSTEM "xml/gtktypeutils.xml">
<!ENTITY gtk-Bindings SYSTEM "xml/gtkbindings.xml">
<!ENTITY gtk-Standard-Enumerations SYSTEM "xml/gtkenums.xml">
<!ENTITY gtk-Named-Icons SYSTEM "xml/gtkicontheme.xml">
<!ENTITY gtk-Stock-Items SYSTEM "xml/gtkstock.xml">
<!ENTITY gtk-Themeable-Stock-Images SYSTEM "xml/gtkiconfactory.xml">
<!ENTITY gtk-Settings SYSTEM "xml/gtksettings.xml">
<!ENTITY index-Object-Tree SYSTEM "xml/tree_index.sgml">
<!ENTITY graphic-tree SYSTEM "xml/tree_map.sgml">
<!ENTITY index-Objects-Grouped SYSTEM "objects_grouped.sgml">
<!ENTITY gtk-TextWidget SYSTEM "text_widget.sgml">
@@ -157,7 +179,11 @@
<!ENTITY gtk-Questions SYSTEM "question_index.sgml">
<!ENTITY gtk-Changes-1-2 SYSTEM "changes-1.2.sgml">
<!ENTITY gtk-Changes-2-0 SYSTEM "changes-2.0.sgml">
<!ENTITY gtk-migrating-checklist SYSTEM "migrating-checklist.sgml">
<!ENTITY gtk-migrating-GtkFileChooser SYSTEM "migrating-GtkFileChooser.sgml">
<!ENTITY gtk-migrating-GtkAction SYSTEM "migrating-GtkAction.sgml">
<!ENTITY version SYSTEM "version.xml">
<!ENTITY gtk-query-immodules SYSTEM "gtk-query-immodules-2.0.xml">
]>
<book id="index">
<bookinfo>
@@ -251,18 +277,14 @@ that is, GUI components such as <link linkend="GtkButton">GtkButton</link> or
</variablelist>
</para>
</partintro>
&graphic-tree;
&gtk-Building;
&gtk-Compiling;
&gtk-Running;
&gtk-Windows;
&gtk-Framebuffer;
&gtk-X11;
&gtk-Changes-1-2;
&gtk-Changes-2-0;
&gtk-Resources;
&gtk-Questions;
</part>
@@ -273,6 +295,7 @@ that is, GUI components such as <link linkend="GtkButton">GtkButton</link> or
&gtk-accel-map;
&gtk-Clipboards;
&gtk-Drag-and-Drop;
&gtk-Named-Icons;
&gtk-Stock-Items;
&gtk-Themeable-Stock-Images;
&gtk-Resource-Files;
@@ -285,11 +308,11 @@ that is, GUI components such as <link linkend="GtkButton">GtkButton</link> or
&gtk-Feature-Test-Macros;
&gtk-Signals;
&gtk-Types;
</part>
<part id="gtkobjects">
<title>GTK+ Widgets and Objects</title>
<chapter>
<title>Object Hierarchy</title>
&index-Object-Tree;
@@ -300,7 +323,6 @@ that is, GUI components such as <link linkend="GtkButton">GtkButton</link> or
&GtkDialog;
&GtkInvisible;
&GtkMessageDialog;
&GtkPlug;
&GtkWindow;
&GtkWindowGroup;
</chapter>
@@ -325,6 +347,7 @@ that is, GUI components such as <link linkend="GtkButton">GtkButton</link> or
<chapter id="NumericEntry">
<title>Numeric/Text Data Entry</title>
&GtkEntry;
&GtkEntryCompletion;
&GtkHScale;
&GtkVScale;
&GtkSpinButton;
@@ -352,6 +375,8 @@ that is, GUI components such as <link linkend="GtkButton">GtkButton</link> or
&GtkTreeDND;
&GtkTreeSortable;
&GtkTreeModelSort;
&GtkTreeModelFilter;
&GtkCellLayout;
&GtkCellRenderer;
&GtkCellEditable;
&GtkCellRendererPixbuf;
@@ -360,28 +385,48 @@ that is, GUI components such as <link linkend="GtkButton">GtkButton</link> or
&GtkListStore;
&GtkTreeStore;
</chapter>
<chapter id="MenusAndCombos">
<title>Menus, Combo Box, Toolbar</title>
&GtkCombo;
&GtkItemFactory;
&GtkComboBox;
&GtkComboBoxEntry;
&GtkMenu;
&GtkMenuBar;
&GtkMenuItem;
&GtkMenuShell;
&GtkOptionMenu;
&GtkImageMenuItem;
&GtkRadioMenuItem;
&GtkCheckMenuItem;
&GtkSeparatorMenuItem;
&GtkTearoffMenuItem;
&GtkToolbar;
&GtkToolItem;
&GtkSeparatorToolItem;
&GtkToolButton;
&GtkToggleToolButton;
&GtkRadioToolButton;
</chapter>
<chapter id="Actions">
<title>Action-based menus and toolbars</title>
&GtkUIManager;
&GtkActionGroup;
&GtkAction;
&GtkToggleAction;
&GtkRadioAction;
</chapter>
<chapter id="SelectorWidgets">
<title>Selectors (File/Font/Color/Input Devices)</title>
&GtkColorButton;
&GtkColorSelection;
&GtkColorSelectionDialog;
&GtkFileSelection;
&GtkFileChooser;
&GtkFileChooserDialog;
&GtkFileChooserWidget;
&GtkFileFilter;
&GtkFontButton;
&GtkFontSelection;
&GtkFontSelectionDialog;
&GtkInputDialog;
@@ -401,6 +446,7 @@ that is, GUI components such as <link linkend="GtkButton">GtkButton</link> or
&GtkLayout;
&GtkNotebook;
&GtkTable;
&GtkExpander;
</chapter>
<chapter id="Ornaments">
@@ -425,7 +471,6 @@ that is, GUI components such as <link linkend="GtkButton">GtkButton</link> or
&GtkDrawingArea;
&GtkEventBox;
&GtkHandleBox;
&GtkIMContext;
&GtkIMContextSimple;
&GtkIMMulticontext;
&GtkSizeGroup;
@@ -449,10 +494,12 @@ that is, GUI components such as <link linkend="GtkButton">GtkButton</link> or
&GtkScrollbar;
&GtkSeparator;
&GtkWidget;
&GtkIMContext;
</chapter>
<chapter id="PlugSocket">
<title>Cross-process Embedding</title>
&GtkPlug;
&GtkSocket;
</chapter>
@@ -467,6 +514,9 @@ that is, GUI components such as <link linkend="GtkButton">GtkButton</link> or
<chapter id="DeprecatedObjects">
<title>Deprecated</title>
&GtkCombo;
&GtkOptionMenu;
&GtkItemFactory;
&GtkCList;
&GtkCTree;
&GtkList;
@@ -480,7 +530,33 @@ that is, GUI components such as <link linkend="GtkButton">GtkButton</link> or
&GtkTree;
&GtkTreeItem;
</chapter>
</part>
<part id="migrating">
<title>Migrating from Previous Versions of GTK+</title>
<partintro>
<para>
This part describes what you need to change in programs use
older versions of GTK+ so that they can use the new features.
</para>
</partintro>
&gtk-migrating-checklist;
&gtk-Changes-1-2;
&gtk-Changes-2-0;
&gtk-migrating-GtkFileChooser;
&gtk-migrating-GtkAction;
</part>
<part>
<title>GTK+ Tools</title>
&gtk-query-immodules;
</part>
<index/>
</book>

View File

@@ -0,0 +1,49 @@
.\"Generated by db2man.xsl. Don't modify this, modify the source.
.de Sh \" Subsection
.br
.if t .Sp
.ne 5
.PP
\fB\\$1\fR
.PP
..
.de Sp \" Vertical space (when we can't use .PP)
.if t .sp .5v
.if n .sp
..
.de Ip \" List item
.br
.ie \\n(.$>=3 .ne \\$3
.el .ne 3
.IP "\\$1" \\$2
..
.TH "GTK-QUERY-IMMODUL" 1 "" "" ""
.SH NAME
gtk-query-immodules-2.0 \- Input method module registration utility
.SH "SYNOPSIS"
.nf
\fBgtk-query-immodules-2.0\fR [module...]
.fi
.SH "DESCRIPTION"
.PP
\fBgtk-query-immodules-2.0\fR collects information about loadable input method modules for GTK+ and writes it to \fIstdout\fR\&.
.PP
If called without arguments, it looks for modules in the GTK+ input method module path\&.
.PP
If called with arguments, it looks for the specified modules\&. The arguments may be absolute or relative paths\&.
.SH "ENVIRONMENT"
.PP
The environment variable \fBGTK_PATH\fR can be used to prepend directories to the input method module path\&.
.SH "BUGS"
.PP
None known yet\&.

View File

@@ -0,0 +1,50 @@
<refentry id="gtk-query-immodules-2.0">
<refmeta>
<refentrytitle>gtk-query-immodules-2.0</refentrytitle>
<manvolnum>1</manvolnum>
</refmeta>
<refnamediv>
<refname>gtk-query-immodules-2.0</refname>
<refpurpose>Input method module registration utility</refpurpose>
</refnamediv>
<refsynopsisdiv>
<cmdsynopsis>
<command>gtk-query-immodules-2.0</command>
<arg choice="opt" rep="repeat">module</arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1><title>Description</title>
<para>
<command>gtk-query-immodules-2.0</command> collects information about loadable
input method modules for GTK+ and writes it to <filename>stdout</filename>.
</para>
<para>
If called without arguments, it looks for modules in the GTK+ input method
module path.
</para>
<para>
If called with arguments, it looks for the specified modules. The arguments
may be absolute or relative paths.
</para>
</refsect1>
<refsect1><title>Environment</title>
<para>
The environment variable <link linkend="GTK_PATH"><envar>GTK_PATH</envar></link> can
be used to prepend directories to the input method module path.
</para>
</refsect1>
<refsect1><title>Bugs</title>
<para>
None known yet.
</para>
</refsect1>
</refentry>

File diff suppressed because it is too large Load Diff

View File

@@ -3,6 +3,8 @@
gtk_accel_group_get_type
gtk_accel_label_get_type
gtk_accessible_get_type
gtk_action_get_type
gtk_action_group_get_type
gtk_adjustment_get_type
gtk_alignment_get_type
gtk_arrow_get_type
@@ -12,6 +14,7 @@ gtk_box_get_type
gtk_button_box_get_type
gtk_button_get_type
gtk_calendar_get_type
gtk_cell_layout_get_type
gtk_cell_renderer_get_type
gtk_cell_renderer_pixbuf_get_type
gtk_cell_renderer_text_get_type
@@ -19,18 +22,28 @@ gtk_cell_renderer_toggle_get_type
gtk_check_button_get_type
gtk_check_menu_item_get_type
gtk_clist_get_type
gtk_color_button_get_type
gtk_color_selection_dialog_get_type
gtk_color_selection_get_type
gtk_combo_box_get_type
gtk_combo_box_entry_get_type
gtk_combo_get_type
gtk_container_get_type
gtk_ctree_get_type
gtk_curve_get_type
gtk_dialog_get_type
gtk_drawing_area_get_type
gtk_entry_completion_get_type
gtk_entry_get_type
gtk_event_box_get_type
gtk_expander_get_type
gtk_file_chooser_get_type
gtk_file_chooser_dialog_get_type
gtk_file_chooser_widget_get_type
gtk_file_filter_get_type
gtk_file_selection_get_type
gtk_fixed_get_type
gtk_font_button_get_type
gtk_font_selection_dialog_get_type
gtk_font_selection_get_type
gtk_frame_get_type
@@ -44,6 +57,7 @@ gtk_hscale_get_type
gtk_hscrollbar_get_type
gtk_hseparator_get_type
gtk_icon_factory_get_type
gtk_icon_theme_get_type
gtk_im_context_get_type
gtk_im_context_simple_get_type
gtk_im_multicontext_get_type
@@ -74,8 +88,10 @@ gtk_plug_get_type
gtk_preview_get_type
gtk_progress_bar_get_type
gtk_progress_get_type
gtk_radio_action_get_type
gtk_radio_button_get_type
gtk_radio_menu_item_get_type
gtk_radio_tool_button_get_type
gtk_range_get_type
gtk_rc_style_get_type
gtk_ruler_get_type
@@ -84,6 +100,7 @@ gtk_scrollbar_get_type
gtk_scrolled_window_get_type
gtk_separator_get_type
gtk_separator_menu_item_get_type
gtk_separator_tool_item_get_type
gtk_settings_get_type
gtk_size_group_get_type
gtk_socket_get_type
@@ -100,16 +117,22 @@ gtk_text_tag_get_type
gtk_text_tag_table_get_type
gtk_text_view_get_type
gtk_tips_query_get_type
gtk_toggle_action_get_type
gtk_toggle_button_get_type
gtk_toggle_tool_button_get_type
gtk_toolbar_get_type
gtk_tooltips_get_type
gtk_tool_button_get_type
gtk_tool_item_get_type
gtk_tree_get_type
gtk_tree_item_get_type
gtk_tree_model_filter_get_type
gtk_tree_model_sort_get_type
gtk_tree_selection_get_type
gtk_tree_store_get_type
gtk_tree_view_column_get_type
gtk_tree_view_get_type
gtk_ui_manager_get_type
gtk_vbox_get_type
gtk_vbutton_box_get_type
gtk_viewport_get_type

View File

@@ -0,0 +1,388 @@
<chapter id="gtk-migrating-GtkAction">
<chapterinfo>
<author>
<firstname>Federico</firstname>
<surname>Mena-Quintero</surname>
<affiliation>
<address>
<email>federico@ximian.com</email>
</address>
</affiliation>
</author>
</chapterinfo>
<title>Migrating from old menu and toolbar systems to GtkAction</title>
<para>
Prior to GTK+ 2.4, there were several APIs in use to create menus
and toolbars. GTK+ itself included #GtkItemFactory, which was
historically used in the GIMP; libgnomeui provided the gnome-ui
set of macros; libbonoboui provided a complex mechanism to do menu
merging across embedded components. GTK+ 2.4 includes a system
for creating menus and toolbars, with merging of items, based
around the #GtkAction mechanism.
</para>
<section id="actions-and-action-groups">
<title>Actions and Action Groups</title>
<para>
A #GtkAction represents an operation that the user can perform
from the menus and toolbars of an application. It is similar to
"verbs" in other menu systems. A #GtkAction has a name, which
is its identifier, and it can have several widgets that
represent it in the user interface. For example, an action for
<symbol>EditCopy</symbol> can have a menu item as well as a
toolbar button associated to it. If there is nothing selected
in the document, the application can simply de-sensitize the
<symbol>EditCopy</symbol> action; this will cause both the menu
item and the toolbar button to be de-sensitized automatically.
Similarly, whenever the user selects the menu item or the
toolbar button associated to the <symbol>EditCopy</symbol>
action, the corresponding #GtkAction object will emit an
"activate" signal.
</para>
<para>
#GtkActionGroup is simply a group of #GtkAction objects. An
application may want to have several groups: one for global
actions such as "new document", "about", and "exit"; then one
group for each open document with actions specific to the
document, such as "cut", "copy", "paste", and "print".
</para>
<para>
Normal actions are simply commands, such as
<symbol>FileSave</symbol> or <symbol>EditCopy</symbol>. Toggle
actions can be active or inactive, such as
<symbol>FormatBold</symbol> or <symbol>ViewShowRulers</symbol>.
Radio actions define a set of items for which one and only one
can be active at a time, for example, {
<symbol>ViewHighQuality</symbol>,
<symbol>ViewNormalQuality</symbol>,
<symbol>ViewLowQuality</symbol> }.
</para>
</section>
<section id="ui-manager">
<title>User Interface Manager Object</title>
<para>
#GtkUIManager is an object that can construct menu and toolbar
widgets from an XML description. These widgets are in turn
associated to corresponding actions and action groups.
</para>
<para>
#GtkUIManager supports merging of menus and toolbars for
applications that have multiple components, each with separate
sets of commands. For example, a word processor that can embed
images may want to have toolbar buttons for Bold and Italic when
the cursor is on a text block, but Crop and Brightness/Contrast
buttons when the cursor is on an image. These actions, which
change depending on the state of the application, can be merged
and de-merged from a #GtkUIManager as appropriate.
</para>
</section>
<section id="migrating-gnomeuiinfo">
<title>Migrating from GnomeUIInfo</title>
<para>
Prior to GTK+ 2.4, some applications used the GnomeUIInfo
mechanism from
<filename>&lt;libgnomeui/gnome-app-helper.h&gt;</filename> to
define their menus and toolbars. With it, a program decleres an
array of <structname>GnomeUIInfo</structname> structures, which
contain information for menu or toolbar items such as their
label, icon, and accelerator key. Then, one calls
<function>gnome_app_fill_menu()</function> or
<function>gnome_app_fill_toolbar()</function>, or one of the
related functions, to create the appropriate widgets based on
these structures.
</para>
<para>
A downside of this API is that the same structures are used to
pass back pointers to the widgets that got created. This means
that the structures cannot simply be kept around if the program
requires multiple instances of the user interface (e.g. several
windows); each new invocation of
<function>gnome_app_fill_menu()</function> would overwrite the
widget fields of the structures.
</para>
<para>
Another disadvantage is that there is no automatic way to
synchronize the state of related controls. If there are toolbar
toogle buttons for "Bold", "Italic", "Underline", and also
corresponding menu items under "Format/Bold", etc., one has to
synchronize their toggled states by hand whenever the user
selects any one of them.
</para>
<para>
Finally, there is no way to do menu and toolbar merging for
applications that require embedded components.
</para>
<para>
To convert an application that uses GnomeUIInfo into the new
GtkAction mechanism, you need to do several things:
</para>
<orderedlist>
<listitem>
<para>
Separate your existing GnomeUIInfo entries into normal
actions, toggle actions, and radio actions, and then create a
separate array of #GtkActionEntry structures for each
group. This will allow you to create the necessary
#GtkActionGroup objects. Note that this does not describe
the actual "shape" that your menus and toolbars will have;
it simply defines the set of commands that will appear in them.
</para>
</listitem>
<listitem>
<para>
Create an XML description of your menus and toolbars for use
with #GtkUIManager. This defines the actual shape of the
menus and toolbars.
</para>
</listitem>
<listitem>
<para>
Port the code that uses gnome-app and gnome-app-helper to
#GtkAction and #GtkUIManager.
</para>
</listitem>
</orderedlist>
<example id="gnomeuiinfo-example">
<title>GnomeUIInfo Example</title>
<para>
The following code shows a declaration of a simple menu bar to
be used with <function>gnome_app_fill_menu()</function> or
similar. The menu hierarchy looks like this:
</para>
<itemizedlist>
<listitem>
<para><guimenu>File</guimenu></para>
<simplelist>
<member><guimenuitem>Open</guimenuitem></member>
<member><guimenuitem>&mdash;</guimenuitem></member>
<member><guimenuitem>Exit</guimenuitem></member>
</simplelist>
</listitem>
<listitem>
<para><guimenu>View</guimenu></para>
<simplelist>
<member><guimenuitem>Zoom In</guimenuitem></member>
<member><guimenuitem>Zoom Out</guimenuitem></member>
<member><guimenuitem>&mdash;</guimenuitem></member>
<member><guimenuitem>[ ] Full Screen</guimenuitem></member>
<member><guimenuitem>&mdash;</guimenuitem></member>
<member><guimenuitem>( ) High Quality</guimenuitem></member>
<member><guimenuitem>( ) Normal Quality</guimenuitem></member>
<member><guimenuitem>( ) Low Quality</guimenuitem></member>
</simplelist>
</listitem>
</itemizedlist>
<programlisting>
static GnomeUIInfo file_menu_items[] = {
{ GNOME_APP_UI_ITEM, "_Open", "Open a file",
open_callback, NULL, NULL, GNOME_APP_PIXMAP_STOCK, GTK_STOCK_OPEN,
'o', GDK_CONTROL_MASK, NULL },
{ GNOME_APP_UI_SEPARATOR },
{ GNOME_APP_UI_ITEM, "E_xit", "Exit the program",
exit_callback, NULL, NULL, GNOME_APP_PIXMAP_STOCK, GTK_STOCK_QUIT,
'q', GDK_CONTROL_MASK, NULL},
{ GNOME_APP_UI_ENDOFINFO }
};
static GnomeUIInfo view_radio_items[] = {
{ GNOME_APP_UI_ITEM, "_High Quality", "Display images in high quality, slow mode",
high_quality_callback, NULL, NULL, GNOME_APP_PIXMAP_NONE, NULL,
0, 0, NULL },
{ GNOME_APP_UI_ITEM, "_Normal Quality", "Display images in normal quality",
normal_quality_callback, NULL, NULL, GNOME_APP_PIXMAP_NONE, NULL,
0, 0, NULL },
{ GNOME_APP_UI_ITEM, "_Low Quality", "Display images in low quality, fast mode",
low_quality_callback, NULL, NULL, GNOME_APP_PIXMAP_NONE, NULL,
0, 0, NULL },
{ GNOME_APP_UI_ENDOFINFO }
};
static GnomeUIInfo view_menu_items[] = {
{ GNOME_APP_UI_ITEM, "Zoom _In", "Zoom into the image",
zoom_in_callback, NULL, NULL, GNOME_APP_PIXMAP_STOCK, GTK_STOCK_ZOOM_IN,
GDK_PLUS, 0, NULL },
{ GNOME_APP_UI_ITEM, "Zoom _Out", "Zoom away from the image",
zoom_out_callback, NULL, NULL, GNOME_APP_PIXMAP_STOCK, GTK_STOCK_ZOOM_OUT,
GDK_MINUS, 0, NULL },
{ GNOME_APP_UI_SEPARATOR },
{ GNOME_APP_UI_TOGGLEITEM, "_Full Screen", "Switch between full screen and windowed mode",
full_screen_callback, NULL, NULL, GNOME_APP_PIXMAP_NONE, NULL,
GDK_F11, 0, NULL },
{ GNOME_APP_UI_SEPARATOR },
{ GNOME_APP_UI_RADIOITEMS, NULL, NULL, view_radio_items },
{ GNOME_APP_UI_ENDOFINFO }
};
static GnomeUIInfo menubar[] = {
{ GNOME_APP_UI_SUBTREE, "_File", NULL, file_menu_items },
{ GNOME_APP_UI_SUBTREE, "_View", NULL, view_menu_items },
{ GNOME_APP_UI_ENDOFINFO }
}
</programlisting>
</example>
<example id="gnomeuiinfo-action-entries">
<title><structname>GtkActionEntry</structname> Structures</title>
<para>
The following code is the set of actions that are present in
the <link linkend="gnomeuiinfo-example">previous
example</link>. Note that the toggle and radio entries are
separate from normal actions. Also, note that #GtkActionEntry
structures take key names in the format of
gdk_accelerator_parse() rather than key values plus modifiers;
you will have to convert these values by hand. For example,
<constant>GDK_F11</constant> with no modifiers is equivalent
to a key name of <literal>"F11"</literal>. Likewise,
<literal>"o"</literal> with
<constant>GDK_CONTROL_MASK</constant> is equivalent to
<literal>"&lt;ontrol&gt;O"</literal>.
</para>
<programlisting>
/* Normal items */
static GtkActionEntry entries[] = {
{ "FileMenu", NULL, "_File" },
{ "ViewMenu", NULL, "_View" },
{ "Open", GTK_STOCK_OPEN, "_Open", "&lt;control&gt;O", "Open a file", open_action_callback },
{ "Exit", GTK_STOCK_OPEN, "E_xit", "&lt;control&gt;Q", "Exit the program", exit_action_callback },
{ "ZoomIn", GTK_STOCK_ZOOM_IN, "Zoom _In", "plus", "Zoom into the image", zoom_in_action_callback },
{ "ZoomOut", GTK_STOCK_ZOOM_OUT, "Zoom _Out", "minus", "Zoom away from the image", zoom_out_action_callback },
};
/* Toggle items */
static GtkToggleActionEntry toggle_entries[] = {
{ "FullScreen", NULL, "_Full Screen", "F11", "Switch between full screen and windowed mode", full_screen_action_callback, FALSE }
};
/* Radio items */
static GtkRadioActionEntry radio_entries[] = {
{ "HighQuality", NULL, "_High Quality", NULL, "Display images in high quality, slow mode", 0 },
{ "NormalQuality", NULL, "_Normal Quality", NULL, "Display images in normal quality", 1 },
{ "LowQuality", NULL, "_Low Quality", NULL, "Display images in low quality, fast mode", 2 }
};
</programlisting>
</example>
<example id="gnomeuiinfo-xml">
<title>XML Description</title>
<para>
After extracting the actions, you will need to create an XML
description of the actual layout of your menus and toolbars
for use with #GtkUIManager. The following code shows a simple
menu bar that corresponds to the <link
linkend="gnomeuiinfo-example">previous example</link>. Note
that the <guimenu>File</guimenu> and <guimenu>View</guimenu>
menus have their names specified in the <link
linkend="gnomeuiinfo-action-entries">action entries</link>,
not in the XML itself. This is because the XML description
only contains <emphasis>identifiers</emphasis> for the items
in the GUI, rather than human-readable names.
</para>
<programlisting>
static const char *ui_description =
"&lt;ui&gt;"
" &lt;menubar name="MainMenu"&gt;"
" &lt;menu action="FileMenu"&gt;"
" &lt;menuitem action="Open"/&gt;"
" &lt;menuitem action="Exit"/&gt;"
" &lt;/menu&gt;"
" &lt;menu action="ViewMenu"&gt;"
" &lt;menuitem action="ZoomIn"/&gt;"
" &lt;menuitem action="ZoomOut"/&gt;"
" &lt;separator/&gt;"
" &lt;menuitem action="FullScreen"/&gt;"
" &lt;separator/&gt;"
" &lt;menuitem action="HighQuality"/&gt;"
" &lt;menuitem action="NormalQuality"/&gt;"
" &lt;menuitem action="LowQuality"/&gt;"
" &lt;/menu&gt;"
" &lt;/menubar&gt;"
"&lt;/ui&gt;";
</programlisting>
</example>
<example id="gnomeuiinfo-code">
<title>Creating the Menu Bar</title>
<para>
In this last example, we will create a #GtkActionGroup based
on the <link linkend="gnomeuiinfo-action-entries">action
entries</link> we created above. We will then create a
#GtkUIManager with the <link linkend="gnomeuiinfo-xml">XML
description</link> of the menu layout. We will also extract
the accelerator group and the widgets from the #GtkUIManager
put them into a window.
</para>
<programlisting>
GtkWidget *window;
GtkWidget *vbox;
GtkWidget *menubar;
GtkActionGroup *action_group;
GtkUIManager *ui_manager;
GtkAccelGroup *accel_group;
GError *error;
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
vbox = gtk_vbox_new (FALSE, 0);
gtk_container_add (GTK_CONTAINER (window), vbox);
action_group = gtk_action_group_new ("MenuActions");
gtk_action_group_add_actions (action_group, entries, G_N_ELEMENTS (entries), window);
gtk_action_group_add_toggle_actions (action_group, toggle_entries, G_N_ELEMENTS (toggle_entries), window);
gtk_action_group_add_radio_actions (action_group, radio_entries, G_N_ELEMENTS (radio_entries), 0, radio_action_callback, window);
ui_manager = gtk_ui_manager_new ();
gtk_ui_manager_insert_action_group (ui_manager, action_group, 0);
accel_group = gtk_ui_manager_get_accel_group (ui_manager);
gtk_window_add_accel_group (GTK_WINDOW (window), accel_group);
error = NULL;
if (!gtk_ui_manager_add_ui_from_string (ui_manager, ui_description, -1, &amp;error))
{
g_message ("building menus failed: %s", error-&gt;message);
g_error_free (error);
exit (EXIT_FAILURE);
}
menubar = gtk_ui_manager_get_widget ("/MainMenu");
gtk_box_pack_start (GTK_BOX (vbox), menubar, FALSE, FALSE, 0);
gtk_widget_show_all (window);
</programlisting>
</example>
</section>
</chapter>
<!--
Local variables:
mode: sgml
sgml-parent-document: ("gtk-docs.sgml" "book" "part" "chapter")
End:
-->

View File

@@ -0,0 +1,160 @@
<chapter id="gtk-migrating-GtkFileChooser">
<chapterinfo>
<author>
<firstname>Federico</firstname>
<surname>Mena-Quintero</surname>
<affiliation>
<address>
<email>federico@ximian.com</email>
</address>
</affiliation>
</author>
</chapterinfo>
<title>Migrating from GtkFileSelection to GtkFileChooser</title>
<para>
#GtkFileChooser, starting with GTK+ 2.4, is the new set of APIs
for file selection widgets and dialogs. Previous versions of GTK+
used #GtkFileSelection, which has numerous problems.
</para>
<para>
#GtkFileChooser is an abstract interface that can be implemented
by widgets that perform file selection tasks. Two widgets in GTK+
implement this interface: #GtkFileChooserDialog and
#GtkFileChooserWidget. Most applications simply need to use
#GtkFileChooserDialog, which is a dialog box that allows the user
to select existing files for opening them, or to pick new
filenames for saving documents. #GtkFileChooserWidget is for
special applications that need to embed a file selection widget
inside a larger window. In the context of GTK+,
#GtkFileChooserDialog is simply a #GtkDialog box with a
#GtkFileChooserWidget inside.
</para>
<section id="gtkfilechooser-creating">
<title>Creating a GtkFileChooserDialog</title>
<para>
To create a #GtkFileChooserDialog, you simply call
gtk_file_chooser_dialog_new(). This function is similar to
gtk_dialog_new() in that it takes parameters for the title
of the dialog box and its transient parent, as well as its
buttons. In addition, it takes in an argument that determines
whether the file chooser dialog will be used for opening
existing files or for saving to a possibly new file.
</para>
<para>
Please see <xref linkend="gtkfilechooser-typical-usage"/> for
how to create a simple file chooser dialog and extract the
selected filename from it.
</para>
</section>
<section id="gtkfilechooser-selection-modes">
<title>Selection Modes</title>
<para>
#GtkFileChooser can be used in two modes, to select a single
file at a time or to select a set of more than one file. To set
this, use gtk_file_chooser_set_select_multiple(). In
single-selection mode, you can use
gtk_file_chooser_get_filename() to get a file name from the
local file system or gtk_file_chooser_get_uri() to get a
full-formed URI. In multiple-selection mode, you can use
gtk_file_chooser_get_filenames() to get a #GSList of filename
strings, or gtk_file_chooser_get_uris() to get a list of URI
strings.
</para>
<para>
Also, you can configure #GtkFileChooser to select files or
folders. Consider a backup program that needs to let the user
select a folder that will be backed up along with its
subfolders. To configure whether #GtkFileChooser is used to
select files or folders, use gtk_file_chooser_set_folder_mode().
</para>
</section>
<section id="gtkfilechooser-installing-preview">
<title>Installing a Preview widget</title>
<para>
Many applications need to have a preview facility within their
file chooser dialogs. Previous to GTK+ 2.4, one needed to
access the #GtkFileSelection widget hierarchy directly to hook
in a preview widget. With #GtkFileChooser, there is a dedicated
API to do this.
</para>
<para>
Please see the <link linkend="gtkfilechooser-preview">section on
creating preview widgets</link> for more information.
</para>
</section>
<section id="gtkfilechooser-installing-extra-widgets">
<title>Installing Extra Widgets</title>
<para>
Some applications need to install extra widgets in a file
chooser. For example, an application may want to provide a
toggle button to give the user the option of opening a file
read-only.
</para>
<para>
Please see the <link linkend="gtkfilechooser-extra">section on
creating extra widgets</link> for more information.
</para>
</section>
<section id="gtkfilechooser-new-features">
<title>New features</title>
<para>
New features in #GtkFileChooser include the following:
</para>
<itemizedlist>
<listitem>
<para>
Ability to select URIs rather than just local files. You
must use a #GtkFileSystem implementation that supports this,
for example GtkFileSystemGnomeVFS.
</para>
</listitem>
<listitem>
<para>
Present a list of application-specific shortcut folders.
For example, a paint program may want to add a shortcut for
its <filename>/usr/share/paint_program/Clipart</filename>
folder.
</para>
</listitem>
<listitem>
<para>
Define custom filters so that not all the files in a folder
are listed. For example, you could filter out backup files,
or show only image files.
</para>
</listitem>
</itemizedlist>
<para>
To see how to use these features, please consult the
#GtkFileChooser reference documentation.
</para>
</section>
</chapter>
<!--
Local variables:
mode: sgml
sgml-parent-document: ("gtk-docs.sgml" "book" "part" "chapter")
End:
-->

View File

@@ -0,0 +1,142 @@
<chapter id="gtk-migrating-checklist">
<title>Migration Checklist</title>
<para>
This chapter includes a checklist of things you need to do to
ensure that your programs are good citizens in the GTK+ world. By
paying attention to the points in the checklist, you ensure that
many automatic features of GTK+ will work correctly in your
program.
</para>
<section id="checklist-popup-menu">
<title>Implement GtkWidget::popup_menu</title>
<formalpara>
<title>Why</title>
<para>
By handling this signal, you let widgets have
context-sensitive menus that can be invoked with the standard
key bindings.
</para>
</formalpara>
<para>
The <link
linkend="GtkWidget-popup-menu">GtkWidget::popup_menu</link>
signal instructs the widget for which it is emitted to create a
context-sensitive popup menu. By default, the <link
linkend="gtk-bindings">key binding mechanism</link> is set to
emit this signal when the
<keycombo><keycap>Shift</keycap><keycap>F10</keycap></keycombo>
or <keycap>Menu</keycap> keys are pressed while a widget has the
focus. If a widget in your application shows a popup menu when
you press a mouse button, you can make it work as well through
the normal key binding mechanism in the following fahion:
</para>
<orderedlist>
<listitem>
<para>
Write a function to create and show a popup menu. This
function needs to know the button number and the event's
time to pass them to gtk_menu_popup(). You can implement
such a function like this:
</para>
<programlisting id="do_popup_menu">
static void
do_popup_menu (GtkWidget *my_widget, GdkEventButton *event)
{
GtkWidget *menu;
int button, event_time;
menu = gtk_menu_new ();
g_signal_connect (menu, "deactivate",
G_CALLBACK (gtk_widget_destroy), NULL);
/* ... add menu items ... */
if (event)
{
button = event->button;
event_time = event->time;
}
else
{
button = 0;
event_time = gtk_get_current_event_time ();
}
gtk_menu_popup (GTK_MENU (popup), NULL, NULL, NULL, NULL,
button, event_time);
}
</programlisting>
</listitem>
<listitem>
<para>
In your button_press handler, call this function when you
need to pop up a menu:
</para>
<programlisting>
static gboolean
my_widget_button_press_event_handler (GtkWidget *widget, GdkEventButton *event)
{
/* Ignore double-clicks and triple-clicks */
if (event->button == 3 &amp;&amp; event->type == GDK_BUTTON_PRESS)
{
do_popup_menu (widget, event);
return TRUE;
}
return FALSE;
}
</programlisting>
</listitem>
<listitem>
<para>
Implement a handler for the popup_menu signal:
</para>
<programlisting>
static gboolean
my_widget_popup_menu_handler (GtkWidget *widget)
{
do_popup_menu (widget, NULL);
return TRUE;
}
</programlisting>
</listitem>
</orderedlist>
<note>
<para>
If you do not pass a positioning function to gtk_menu_popup(),
it will show the menu at the mouse position by default. This
is what you usually want when the menu is shown as a result of
pressing a mouse button. However, if you press the
<keycombo><keycap>Shift</keycap><keycap>F10</keycap></keycombo>
or <keycap>Menu</keycap> keys while the widget is focused, the
mouse cursor may not be near the widget at all. In the <link
linkend="do_popup_menu">example above</link>, you may want to
provide your own <link
linkend="GtkMenuPositionFunc">menu-positioning function</link>
in the case where the <parameter>event</parameter> is
<constant>NULL</constant>. This function should compute the
desired position for a menu when it is invoked through the
keyboard. For example, <xref linkend="GtkEntry"/> aligns the
top edge of its popup menu with the bottom edge of the entry.
</para>
</note>
</section>
</chapter>
<!--
Local variables:
mode: sgml
sgml-parent-document: ("gtk-docs.sgml" "book" "part" "chapter")
End:
-->

View File

@@ -25,6 +25,22 @@ the question you have, this list is a good place to start.
<qandadiv><title>General</title>
<qandaentry>
<question><para>
How do I get started with GTK+?
</para></question>
<answer><para>
The GTK+ <ulink url="http://www.gtk.org">website</ulink> offers a
<ulink url="http://www.gtk.org/tutorial">tutorial</ulink> and a
<ulink url="http://www.gtk.org/faq">FAQ</ulink>. More documentation ranging
from whitepapers to online books can be found at the
<ulink url="http://developer.gnome.org/doc">GNOME developer's site</ulink>.
After studying these materials you should be well prepared to come back to
this reference manual for details.
</para></answer>
</qandaentry>
<qandaentry>
<question><para>
Where can I get help with GTK+, submit a bug report, or make a feature
@@ -197,6 +213,114 @@ can be defined as:
</answer>
</qandaentry>
<qandaentry>
<question>
<para>
How do I use non-ASCII characters in GTK+ programs ?
</para>
</question>
<answer>
<para>
GTK+ uses <ulink url="http://www.unicode.org">Unicode</ulink> (more exactly
UTF-8) for all text. UTF-8 encodes each Unicode codepoint as a
sequence of one to six bytes and has a number of nice
properties which make it a good choice for working with Unicode
text in C programs:
<itemizedlist>
<listitem><para>
ASCII characters are encoded by their familiar ASCII codepoints.
</para></listitem>
<listitem><para>
ASCII characters never appear as part of any other character.
</para></listitem>
<listitem><para>
The zero byte doesn't occur as part of a character, so that UTF-8 strings can
be manipulated with the usual C library functions for
handling zero-terminated strings.
</para></listitem>
</itemizedlist>
More information about Unicode and UTF-8 can be found in the
<ulink url="http://www.cl.cam.ac.uk/~mgk25/unicode.html">UTF-8 and Unicode FAQ for Unix/Linux</ulink>.
GLib provides functions for converting strings between UTF-8 and other
encodings, see
<link linkend="g-locale-to-utf8">g_locale_to_utf8()</link> and <link
linkend="g-convert">g_convert()</link>.
</para>
<para>
Text coming from external sources (e.g. files or user input), has to be
converted to UTF-8 before being handed over to GTK+. The
following example writes the content of a IS0-8859-1 encoded text
file to <literal>stdout</literal>:
<informalexample><programlisting>
gchar *text, *utf8_text;
gsize length;
GError *error = NULL;
if (g_file_get_contents (filename, &amp;text, &amp;length, NULL))
{
utf8_text = g_convert (text, length, "UTF-8", "ISO-8859-1",
NULL, NULL, &amp;error);
if (error != NULL)
{
fprintf ("Couldn't convert file &percnt;s to UTF-8\n", filename);
g_error_free (error);
}
else
g_print (utf8_text);
}
else
fprintf (stderr, "Unable to read file &percnt;s\n", filename);
</programlisting></informalexample>
</para>
<para>
For string literals in the source code, there are several alternatives for
handling non-ASCII content:
<variablelist>
<varlistentry><term>direct UTF-8</term>
<listitem><para>
If your editor and compiler are capable of handling UTF-8 encoded sources,
it is very convenient to simply use UTF-8 for string literals, since it allows
you to edit the strings in "wysiwyg". Note that choosing this option may
reduce the portability of your code.
</para></listitem>
</varlistentry>
<varlistentry><term>escaped UTF-8</term>
<listitem><para>
Even if your toolchain can't handle UTF-8 directly, you can still encode string
literals in UTF-8 by using octal or hexadecimal escapes like
<literal>\212</literal> or <literal>\xa8</literal> to
encode each byte. This is portable, but modifying the escaped strings is not
very convenient. Be careful when mixing hexadecimal escapes with ordinary text;
<literal>"\xa8abcd"</literal> is a string of length 1 !
</para></listitem>
</varlistentry>
<varlistentry><term>runtime conversion</term>
<listitem><para>
If the string literals can be represented in an encoding which your toolchain
can handle (e.g. IS0-8859-1), you can write your source files in that encoding
and use <link linkend="g-convert">g_convert()</link> to convert the strings to
UTF-8 at runtime. Note that this has some runtime overhead, so you may want to
move the conversion out of inner loops.
</para></listitem>
</varlistentry>
</variablelist>
Here is an example showing the three approaches using the copyright sign
&copy; which has Unicode and ISO-8859-1 codepoint 169 and is represented in
UTF-8 by the two bytes 194, 169:
<informalexample><programlisting>
g_print ("direct UTF-8: &copy;");
g_print ("escaped UTF-8: \302\251");
text = g_convert ("runtime conversion: &copy;", -1, "ISO-8859-1", "UTF-8", NULL, NULL, NULL);
g_print(text);
g_free (text);
</programlisting></informalexample>
</para>
</answer>
</qandaentry>
<qandaentry>
<question><para>
How do I use GTK+ with C++?
@@ -290,7 +414,100 @@ To load an image or animation file asynchronously (without blocking), use
</qandaentry>
<qandaentry>
<question><para>
How do I draw text ?
</para></question>
<answer>
<para>
To draw a piece of text, use a Pango layout and
<link linkend="gdk-draw-layout">gdk_draw_layout()</link>,
using code like the following:
<informalexample>
<programlisting>
layout = gtk_widget_create_pango_layout (widget, text);
fontdesc = pango_font_description_from_string ("Luxi Mono 12");
pango_layout_set_font_description (layout, fontdesc);
gdk_draw_layout (..., layout);
pango_font_description_free (fontdesc);
g_object_unref (layout);
</programlisting>
</informalexample>
Do not use the deprecated <link linkend="GdkFont">GdkFont</link> and <link linkend="gdk-draw-text">gdk_draw_text()</link>.
</para>
<para>
See also the "Text Handling in GTK 2" section of
<ulink url="http://developer.gnome.org/dotplan/porting/">Porting applications
to the GNOME 2.0 platform</ulink>.
</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>
How do I measure the size of a piece of text ?
</para>
</question>
<answer>
<para>
To obtain the size of a piece of text, use a Pango layout and
<link
linkend="pango-layout-get-pixel-size">pango_layout_get_pixel_size()</link>,
using code like the following:
<informalexample>
<programlisting>
layout = gtk_widget_create_pango_layout (widget, text);
fontdesc = pango_font_description_from_string ("Luxi Mono 12");
pango_layout_set_font_description (layout, fontdesc);
pango_layout_get_pixel_size (layout, &amp;width, &amp;height);
pango_font_description_free (fontdesc);
g_object_unref (layout);
</programlisting>
</informalexample>
Do not use the deprecated function <link linkend="gdk-text-width">gdk_text_width()</link>.
</para>
<para>
See also the "Text Handling in GTK 2" section of
<ulink url="http://developer.gnome.org/dotplan/porting/">Porting applications
to the GNOME 2.0 platform</ulink>.
</para>
</answer>
</qandaentry>
<qandaentry>
<question>
<para>
How do I make a text view scroll to the end of the buffer automatically ?
</para>
</question>
<answer>
<para>
The "insert" <link linkend="GtkTextMark">mark</link> marks the insertion point
where <link linkend="gtk-text-buffer-insert">gtk_text_buffer_insert()</link>
inserts new text into the buffer. The text is inserted
<emphasis>before</emphasis> the "insert" mark, so that it generally stays
at the end of the buffer. If it gets explicitly moved to some other position,
e.g. when the user selects some text,
use <link linkend="gtk-text-buffer-move-mark">gtk_text_buffer_move_mark()</link>
to set it to the desired location before inserting more text.
The "insert" mark of a buffer can be obtained with <link
linkend="gtk-text-buffer-get-insert">gtk_text_buffer_get_insert()</link>.
</para>
<para>
To ensure that the end of the buffer remains visible, use
<link
linkend="gtk-text-view-scroll-to-mark">gtk_text_view_scroll_to_mark()</link> to scroll to the "insert" mark after inserting new text.
</para>
</answer>
</qandaentry>
</qandadiv>
<qandadiv><title>Which widget should I use...</title>
@@ -414,6 +631,48 @@ background of the event box.
</para></answer>
</qandaentry>
<qandaentry>
<question><para>
How do I change the font of a widget?
</para></question>
<answer><para>
This has several possible answers, depending on what exactly you want to
achieve. One option is <link
linkend="gtk-widget-modify-font">gtk_widget_modify_font()</link>. Note that this function can be used to change only the font size, as in the following example:
<programlisting>
PangoFontDesc *font_desc = pango_font_description_new ();
pango_font_description_set_size (font_desc, 40);
gtk_widget_modify_font (widget, font);
pango_font_description_free (font_desc);
</programlisting>
</para>
<para>
If you want to make the text of a label larger, you can use <link
linkend="gtk-label-set-markup">gtk_label_set_markup()</link>:
<programlisting>
gtk_label_set_markup (label, "&lt;big&gt;big text&lt;/big&gt;");
</programlisting>
This is preferred for many apps because it's a relative size to the
user's chosen font size. See <link
linkend="g-markup-escape-text">g_markup_escape_text()</link>
if you are constructing such strings on the fly.
</para>
<para>
You can also change the font of a widget by putting
<programlisting>
gtk-font-name = "Sans 30"
</programlisting>
in a resource file and parsing it with <link
linkend="gtk-rc-add-default-file">gtk_rc_add_default_file()</link>.
The advantage of a resource file is that users can then override the
font you've chosen. See
<link linkend="gtk-Resource-Files">GTK+ resource files</link> for more
discussion.
</para>
</answer>
</qandaentry>
<qandaentry>
<question><para>
How do I disable/ghost/desensitize a widget?
@@ -459,6 +718,20 @@ or <link
</para></answer>
</qandaentry>
<qandaentry>
<question><para>
How do I make a text widget display its complete contents in a specific font?
</para></question>
<answer><para>
If you use <link
linkend="gtk-text-buffer-insert-with-tags">gtk_text_buffer_insert_with_tags()</link> with appropriate tags to select the font, the inserted text will have the desired appearance, but text typed in by the user before or after the tagged block will appear in the default style.
</para>
<para>
To ensure that all text has the desired appearance, use <link
linkend="gtk-widget-modify-font">gtk_widget_modify_font()</link> to change the default font for the widget.
</para></answer>
</qandaentry>
</qandadiv>
@@ -543,6 +816,88 @@ linkend="gtk-tree-model-get">gtk_tree_model_get()</link>.
</answer>
</qandaentry>
<qandaentry>
<question><para>
How do I change the way that numbers are formatted by <link linkend="GtkTreeView">GtkTreeView</link>?
</para></question>
<answer><para>
Use <link linkend="gtk-tree-view-insert-column-with-data-func">gtk_tree_view_insert_column_with_data_func()</link>
or <link linkend="gtk-tree-view-column-set-cell-data-func">gtk_tree_view_column_set_cell_data_func()</link>
and do the conversion from number to string yourself (with, say,
<link linkend="g-strdup-printf">g_strdup_printf()</link>).
</para>
<para>
The following example demonstrates this:
<informalexample><programlisting>
enum
{
DOUBLE_COLUMN,
N_COLUMNS
};
GtkListStore *mycolumns;
GtkTreeView *treeview;
void
my_cell_double_to_text (GtkTreeViewColumn *tree_column,
GtkCellRenderer *cell,
GtkTreeModel *tree_model,
GtkTreeIter *iter,
gpointer data)
{
GtkCellRendererText *cell_text = (GtkCellRendererText *)cell;
gdouble d;
gchar *text;
/* Get the double value from the model. */
gtk_tree_model_get (tree_model, iter, (gint)data, &amp;d, -1);
/* Now we can format the value ourselves. */
text = g_strdup_printf ("&percnt;.2f", d);
g_object_set (cell, "text", text, NULL);
g_free (text);
}
void
set_up_new_columns (GtkTreeView *myview)
{
GtkCellRendererText *renderer;
GtkTreeViewColumn *column;
GtkListStore *mycolumns;
/* Create the data model and associate it with the given TreeView */
mycolumns = gtk_list_store_new (N_COLUMNS, G_TYPE_DOUBLE);
gtk_tree_view_set_model (myview, GTK_TREE_MODEL (mycolumns));
/* Create a GtkCellRendererText */
renderer = gtk_cell_renderer_text_new ();
/* Create a new column that has a title ("Example column"),
* uses the above created renderer that will render the double
* value into text from the associated model's rows.
*/
column = gtk_tree_view_column_new ();
gtk_tree_view_column_set_title (column, "Example column");
renderer = gtk_cell_renderer_text_new ();
gtk_tree_view_column_pack_start (column, renderer, TRUE);
/* Append the new column after the GtkTreeView's previous columns. */
gtk_tree_view_append_column (GTK_TREE_VIEW (myview), column);
/* Since we created the column by hand, we can set it up for our
* needs, e.g. set its minimum and maximum width, etc.
*/
/* Set up a custom function that will be called when the column content
* is rendered. We use the func_data pointer as an index into our
* model. This is convenient when using multi column lists.
*/
gtk_tree_view_column_set_cell_data_func (column, renderer,
my_cell_double_to_text,
(gpointer)DOUBLE_COLUMN, NULL);
}
</programlisting></informalexample>
</para></answer>
</qandaentry>
</qandadiv>

View File

@@ -550,6 +550,22 @@ This is a private struct used by GTK+ internally, don't worry about it.
@old_accel_key:
@old_accel_mods:
<!-- ##### SIGNAL GtkAction::connect-proxy ##### -->
<para>
</para>
@action: the object which received the signal.
@widget:
<!-- ##### SIGNAL GtkAction::disconnect-proxy ##### -->
<para>
</para>
@action: the object which received the signal.
@widget:
<!-- ##### USER_FUNCTION GtkArgGetFunc ##### -->
<para>
Define a function pointer. Deprecated.
@@ -1065,132 +1081,24 @@ after other user handlers and the default handler.
</para>
<!-- ##### ARG GtkSettings:gtk-can-change-accels ##### -->
<para>
</para>
<!-- ##### ARG GtkSettings:gtk-color-palette ##### -->
<para>
</para>
<!-- ##### ARG GtkSettings:gtk-cursor-blink ##### -->
<para>
</para>
<!-- ##### ARG GtkSettings:gtk-cursor-blink-time ##### -->
<para>
</para>
<!-- ##### ARG GtkSettings:gtk-dnd-drag-threshold ##### -->
<para>
</para>
<!-- ##### ARG GtkSettings:gtk-double-click-time ##### -->
<para>
</para>
<!-- ##### ARG GtkSettings:gtk-entry-select-on-focus ##### -->
<para>
</para>
<!-- ##### ARG GtkSettings:gtk-font-name ##### -->
<para>
</para>
<!-- ##### ARG GtkSettings:gtk-icon-sizes ##### -->
<para>
</para>
<!-- ##### ARG GtkSettings:gtk-key-theme-name ##### -->
<para>
</para>
<!-- ##### ARG GtkSettings:gtk-menu-bar-accel ##### -->
<para>
</para>
<!-- ##### ARG GtkSettings:gtk-menu-bar-popout-delay ##### -->
<para>
</para>
<!-- ##### ARG GtkSettings:gtk-menu-bar-popup-delay ##### -->
<para>
</para>
<!-- ##### ARG GtkSettings:gtk-menu-popdown-delay ##### -->
<para>
</para>
<!-- ##### ARG GtkSettings:gtk-menu-popout-delay ##### -->
<para>
</para>
<!-- ##### ARG GtkSettings:gtk-menu-popup-delay ##### -->
<para>
</para>
<!-- ##### ARG GtkSettings:gtk-menu-submenu-hysteresis ##### -->
<para>
</para>
<!-- ##### ARG GtkSettings:gtk-split-cursor ##### -->
<para>
</para>
<!-- ##### ARG GtkSettings:gtk-theme-name ##### -->
<para>
</para>
<!-- ##### ARG GtkSettings:gtk-toolbar-icon-size ##### -->
<para>
</para>
<!-- ##### ARG GtkSettings:gtk-toolbar-style ##### -->
<para>
</para>
<!-- ##### STRUCT GtkSettingsClass ##### -->
<para>
@@ -1361,6 +1269,18 @@ produce superscript and subscript.
</para>
<!-- ##### ARG GtkToolButton:show-label-horizontally ##### -->
<para>
</para>
<!-- ##### ARG GtkToolbar:pack-end ##### -->
<para>
</para>
<!-- ##### STRUCT GtkTreeSelectionClass ##### -->
<para>
@@ -1405,6 +1325,13 @@ produce superscript and subscript.
@user_data:
@Returns:
<!-- ##### SIGNAL GtkUIManager::changed ##### -->
<para>
</para>
@uimanager: the object which received the signal.
<!-- ##### ARG GtkVScale:adjustment ##### -->
<para>
the #GtkAdjustment which sets the range of the scale.
@@ -3006,6 +2933,29 @@ Creates a border around the arrows of a #GtkSpinButton. The type of border is de
@Returns:
<!-- ##### FUNCTION gtk_tool_item_get_pack_end ##### -->
<para>
</para>
@tool_item:
@Returns:
<!-- ##### FUNCTION gtk_tool_item_set_pack_end ##### -->
<para>
</para>
@tool_item:
@pack_end:
<!-- ##### FUNCTION gtk_tool_item_toolbar_reconfigured ##### -->
<para>
</para>
@tool_item:
<!-- ##### FUNCTION gtk_trace_referencing ##### -->
<para>
Private: print debugging information while doing a gtk_object_ref() or

View File

@@ -37,6 +37,27 @@ An object representing and maintaining a group of accelerators.
</para>
<!-- ##### SIGNAL GtkAccelGroup::accel-activate ##### -->
<para>
</para>
@accelgroup: the object which received the signal.
@arg1:
@arg2:
@arg3:
@Returns:
<!-- ##### SIGNAL GtkAccelGroup::accel-changed ##### -->
<para>
</para>
@accelgroup: the object which received the signal.
@arg1:
@arg2:
@arg3:
<!-- ##### FUNCTION gtk_accel_group_new ##### -->
<para>

View File

@@ -85,6 +85,16 @@ should be accessed using the functions below.
</para>
<!-- ##### ARG GtkAccelLabel:accel-closure ##### -->
<para>
</para>
<!-- ##### ARG GtkAccelLabel:accel-widget ##### -->
<para>
</para>
<!-- ##### FUNCTION gtk_accel_label_new ##### -->
<para>
Creates a new #GtkAccelLabel.
@@ -145,13 +155,3 @@ accelerators are added or removed from the associated widget.
@Returns: always returns %FALSE.
<!-- ##### ARG GtkAccelLabel:accel-closure ##### -->
<para>
</para>
<!-- ##### ARG GtkAccelLabel:accel-widget ##### -->
<para>
</para>

View File

@@ -2,7 +2,7 @@
GtkAccessible
<!-- ##### SECTION Short_Description ##### -->
Accessibility support for widgets
<!-- ##### SECTION Long_Description ##### -->
<para>

View File

@@ -0,0 +1,296 @@
<!-- ##### SECTION Title ##### -->
GtkAction
<!-- ##### SECTION Short_Description ##### -->
an action which can be triggered by a menu or toolbar item
<!-- ##### SECTION Long_Description ##### -->
<para>
Actions represent operations that the user can be perform, along with
some information how it should be presented in the interface. Each action
provides methods to create icons, menu items and toolbar items representing
itself.
</para>
<para>
As well as the callback that is called when the action gets activated, the
following also gets associated with the action:
<itemizedlist>
<listitem><para>a name (not translated, for path lookup)</para></listitem>
<listitem><para>a label (translated, for display)</para></listitem>
<listitem><para>an accelerator</para></listitem>
<listitem><para>whether label indicates a stock id</para></listitem>
<listitem><para>a tooltip (optional, translated)</para></listitem>
<listitem><para>a toolbar label (optional, shorter than label)</para></listitem>
</itemizedlist>
The action will also have some state information:
<itemizedlist>
<listitem><para>visible (shown/hidden)</para></listitem>
<listitem><para>sensitive (enabled/disabled)</para></listitem>
</itemizedlist>
</para>
<para>
Apart from regular actions, there are <link linkend="GtkToggleAction">toggle
actions</link>, which can be toggled between two states and <link
linkend="GtkRadioAction">radio actions</link>, of which only one in a group
can be in the "active" state. Other actions can be implemented as #GtkAction
subclasses.
</para>
<para>
Each action can have one or more proxy menu item, toolbar button or
other proxy widgets. Proxies mirror the state of the action (text
label, tooltip, icon, visible, sensitive, etc), and should change when
the action's state changes. When the proxy is activated, it should
activate its action.
</para>
<!-- ##### SECTION See_Also ##### -->
<para>
#GtkActionGroup, #GtkUIManager
</para>
<!-- ##### STRUCT GtkAction ##### -->
<para>
The <structname>GtkAction</structname> struct contains only private members
and should not be accessed directly.
</para>
<!-- ##### SIGNAL GtkAction::activate ##### -->
<para>
</para>
@action: the object which received the signal.
<!-- ##### ARG GtkAction:action-group ##### -->
<para>
</para>
<!-- ##### ARG GtkAction:hide-if-empty ##### -->
<para>
</para>
<!-- ##### ARG GtkAction:is-important ##### -->
<para>
</para>
<!-- ##### ARG GtkAction:label ##### -->
<para>
</para>
<!-- ##### ARG GtkAction:name ##### -->
<para>
</para>
<!-- ##### ARG GtkAction:sensitive ##### -->
<para>
</para>
<!-- ##### ARG GtkAction:short-label ##### -->
<para>
</para>
<!-- ##### ARG GtkAction:stock-id ##### -->
<para>
</para>
<!-- ##### ARG GtkAction:tooltip ##### -->
<para>
</para>
<!-- ##### ARG GtkAction:visible ##### -->
<para>
</para>
<!-- ##### ARG GtkAction:visible-horizontal ##### -->
<para>
</para>
<!-- ##### ARG GtkAction:visible-vertical ##### -->
<para>
</para>
<!-- ##### FUNCTION gtk_action_new ##### -->
<para>
</para>
@name:
@label:
@tooltip:
@stock_id:
@Returns:
<!-- ##### FUNCTION gtk_action_get_name ##### -->
<para>
</para>
@action:
@Returns:
<!-- ##### FUNCTION gtk_action_is_sensitive ##### -->
<para>
</para>
@action:
@Returns:
<!-- ##### FUNCTION gtk_action_get_sensitive ##### -->
<para>
</para>
@action:
@Returns:
<!-- ##### FUNCTION gtk_action_is_visible ##### -->
<para>
</para>
@action:
@Returns:
<!-- ##### FUNCTION gtk_action_get_visible ##### -->
<para>
</para>
@action:
@Returns:
<!-- ##### FUNCTION gtk_action_activate ##### -->
<para>
</para>
@action:
<!-- ##### FUNCTION gtk_action_create_icon ##### -->
<para>
</para>
@action:
@icon_size:
@Returns:
<!-- ##### FUNCTION gtk_action_create_menu_item ##### -->
<para>
</para>
@action:
@Returns:
<!-- ##### FUNCTION gtk_action_create_tool_item ##### -->
<para>
</para>
@action:
@Returns:
<!-- ##### FUNCTION gtk_action_connect_proxy ##### -->
<para>
</para>
@action:
@proxy:
<!-- ##### FUNCTION gtk_action_disconnect_proxy ##### -->
<para>
</para>
@action:
@proxy:
<!-- ##### FUNCTION gtk_action_get_proxies ##### -->
<para>
</para>
@action:
@Returns:
<!-- ##### FUNCTION gtk_action_connect_accelerator ##### -->
<para>
</para>
@action:
<!-- ##### FUNCTION gtk_action_disconnect_accelerator ##### -->
<para>
</para>
@action:
<!-- ##### FUNCTION gtk_action_block_activate_from ##### -->
<para>
</para>
@action:
@proxy:
<!-- ##### FUNCTION gtk_action_unblock_activate_from ##### -->
<para>
</para>
@action:
@proxy:
<!-- ##### FUNCTION gtk_action_set_accel_path ##### -->
<para>
</para>
@action:
@accel_path:
<!-- ##### FUNCTION gtk_action_set_accel_group ##### -->
<para>
</para>
@action:
@accel_group:

Some files were not shown because too many files have changed in this diff Show More