Commit Graph

209 Commits

Author SHA1 Message Date
Matthias Clasen
5c47de587a Add a deprecation note.
2004-11-22  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtktoolbar.c (gtk_toolbar_set_icon_size): Add a deprecation
	note.
2004-11-23 04:11:15 +00:00
Søren Sandmann
5920789685 Call gtk_tool_item_rebuild_menu().
Tue Sep 14 23:20:56 2004  Søren Sandmann  <sandmann@redhat.com>

	* gtk/gtkaction.c (connect_proxy): Call
	gtk_tool_item_rebuild_menu().

	* gtk/gtktoolitem.c (gtk_tool_item_class_init): Update
	documentation for GtkToolItem::create_menu_proxy.

	* gtk/gtktoolitem.c (gtk_tool_item_rebuild_menu): New
	API to make the toolbar update itself when the proxy menu item
	for a tool item changes.

	* gtk/gtktoolbutton.c (gtk_tool_button_construct_contents): Call
	gtk_tool_item_rebuild_menu here()

	* gtk/gtktoolbutton.c (gtk_tool_button_construct_contents):
	Remove redundant check for need_label.
2004-09-14 21:40:41 +00:00
Soeren Sandmann
e0b2ead302 Make dropping of expandable items look nicer.
Wed Sep  8 18:38:08 2004  Soeren Sandmann  <sandmann@redhat.com>

	Make dropping of expandable items look nicer.

	* gtk/gtktoolbar.c (gtk_toolbar_set_drop_highlight_item): Make
	placeholder expand if highlight item is expanding.

	* gtk/gtktoolbar.c (toolbar_content_set_expand): New function.

	* gtk/gtktoolbar.c (toolbar_content_get_expand): Return TRUE only
	if the item is not disappering.
2004-09-08 16:40:31 +00:00
Søren Sandmann
5445cbc7b0 Accelerate the animation when it has been running for a while. (#143647).
Sat Sep  4 02:38:57 2004  Søren Sandmann  <sandmann@redhat.com>

	* gtk/gtktoolbar.c (position): Accelerate the animation when it
	has been running for a while. (#143647).
2004-09-04 00:44:04 +00:00
Søren Sandmann
0ac4f2837a Make sure children of the toolbar are given positive dimensions. (149540,
Wed Sep  1 19:11:44 2004  Søren Sandmann  <sandmann@redhat.com>

	* gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Make sure
	children of the toolbar are given positive dimensions. (149540,
	Felipe Heidrich).
2004-09-01 17:55:09 +00:00
Matthias Clasen
3612aee585 Add hidden aliases for exported symbols which are used internally in order
Mon Aug  9 12:48:04 2004  Matthias Clasen  <maclas@gmx.de>

	Add hidden aliases for exported symbols which are
	used internally in order to get rid of many PLT
	entries.  (#145519, Arjan van de Ven)

	* gtk/Makefile.am: Add rules to generate gtk.def and
	from gtk.symbols, and make make check check the abi
	with abicheck.sh.
	(gtk_private_h_sources): Add gtkinternals.h
	(gtk_built_private_headers): Add gtkalias.h
	(gtk_extra_sources): Add gtk.symbols
	(EXTRA_DIST): Add makegtkalias.pl and abicheck.sh

	* gtk/gtk.symbols: New file. Definition of the GTK+ ABI.
	The file can be processed by cpp to filter out certain
	subsets of symbols.

	* gtk/abicheck.sh: New file. Script to check the actually
	symbols exported from libgtk-x11.2.0.so against the symbols
	found in gtk.symbols.

	* gtk/makegtkalias.pl: New file. Perl script to generate the
	header containing the alias definitions for internally used
	exported symbols from a list of symbols.

	* gtk/gtkinternals.h: New file. An uninstalled header listing
	symbols which must be exported for some reason and do not appear
	in any other header.

	* gtk/*.c: Include gtkalias.h
2004-08-09 16:59:53 +00:00
Soeren Sandmann
92295447cb Warn if you try to add a tool item to a toolbar using the deprecated API.
Sat Jul 24 21:38:12 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c (internal_insert_element): Warn if you try to
	add a tool item to a toolbar using the deprecated API.
2004-07-24 19:42:44 +00:00
Matthias Clasen
57f9f11bd7 Forgotten file. 2004-07-22 14:55:53 +00:00
Matthias Clasen
4466345809 Remove trailing commas from enumerations. (#148035)
Tue Jul 20 22:26:29 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkfilechooserutils.h:
	* gtk/gtktoolbutton.c:
	* gtk/gtktoolbar.c:
	* gtk/gtkicontheme.c:
	* gtk/gtkcalendar.c:
	* demos/gtk-demo/ui_manager.c:
	* demos/gtk-demo/appwindow.c: Remove trailing commas
	from enumerations.  (#148035)
2004-07-21 02:30:19 +00:00
Soeren Sandmann
e47c0d46b1 Add a checkbox to queue an merge/unmerge. Patch from Matthias Clasen.
Sat Jun  5 20:05:39 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* tests/testmerge.c: Add a checkbox to queue an
	merge/unmerge. Patch from Matthias Clasen.

	* gtk/gtktoolbar.c (struct _GtkToolbarPrivate): Add a new flag
	"need_rebuild"
	(rebuild_menu): New function that rebuilds the overflow menu and
	makes sure it doesn't start or end with a separator.
	(toolbar_content_new_tool_item)
	(toolbar_content_remove)
	(toolbar_content_new_compatibility): Set the rebuild_needed flag
	(gtk_toolbar_size_allocate): Only show the overflow arrow when we
	have actually overflown an item with a proxy menu item. Also make
	sure we rebuild the menu if needed.

	Fix #125504, #142377, #143463

	* gtk/gtkseparatortoolitem.c (gtk_separator_tool_item_expose):
	Obey the "priv->draw" flag. (#143692)
2004-06-05 18:24:53 +00:00
Matthias Clasen
d5f3cb1409 Rename function parameters from index to index_ to prevent clash with BSD
Tue Jun  1 23:14:46 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktoolbar.h:
	* gtk/gtktoolbar.c:
	* gtk/gtkentrycompletion.h:
	* gtk/gtkentrycompletion.c:
	* gtk/gtkcombobox.h:
	* gtk/gtkcombobox.c: Rename function parameters from
	index to index_ to prevent clash with BSD index().  (#143001)
2004-06-02 03:16:03 +00:00
Morten Welinder
cfe7b384bc Don't leak list of children. (#140523)
2004-04-19  Morten Welinder  <terra@gnome.org>

	* gtk/gtktoolbar.c (gtk_toolbar_focus): Don't leak list of
	children.  (#140523)
2004-04-19 19:52:45 +00:00
Owen Taylor
dcb6900c61 Swap GTK_ARROW_LEFT and GTK_ARROW_RIGHT for GTK_TEXT_DIR_LTR. (#129159,
Fri Mar 12 17:20:15 2004  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkarrow.c (gtk_arrow_expose): Swap GTK_ARROW_LEFT
        and GTK_ARROW_RIGHT for GTK_TEXT_DIR_LTR. (#129159,
        Semion Chichelnitsky)

        * gtk/gtkpathbar.c gtk/gtktoolbar.c: Remove no-longer-needed
        gtk_toolbar_direction-changed handlers and explicit
        flipping of GtkArrow widgets.
2004-03-12 22:51:13 +00:00
Soeren Sandmann
db6cc5f788 Add boolean destroying (gtk_menu_destroy): Set priv->destroying
Tue Mar  9 02:11:50 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkmenu.c Fix bug 136446.
	(struct _GtkMenuPrivate): Add boolean destroying
	(gtk_menu_destroy): Set priv->destroying
	(gtk_menu_remove): don't update the table information when the
	menu is being destroyed.

	* gtk/gtkmenu.c (gtk_menu_set_monitor): Formatting fix

	* gtk/gtktoolbar.[ch]: Some formatting fixes
2004-03-09 01:21:45 +00:00
Gustavo J. A. M. Carneiro
64cac40d2c fix #136202 (gtk_toolbar_insert_stock crashes if stock lookup fails) 2004-03-06 12:46:25 +00:00
Federico Mena Quintero
80581c3011 Fixes #136082 and #135265, patch by Morten Welinder.
2004-03-05  Federico Mena Quintero  <federico@ximian.com>

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

	* configure.in: Use AC_SYS_LARGEFILE.

	* */*.c: #include <config.h>
2004-03-06 03:38:59 +00:00
Soeren Sandmann
dc0718bd7e New function. Use resize cursors for resize grips. (Bug #129621)
Thu Feb 26 23:26:00 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkstatusbar.c (set_grip_cursor): New function. Use resize
	cursors for resize grips. (Bug #129621)

	* gtk/gtktoolbar.c (gtk_toolbar_get_relief_style): Documentation
	fix - patch by Torsten Schoenfeld.

	* gtk/gtkmenubar.c (gtk_menu_bar_size_request): don't request
	space between the items. (Bug #110775)

	* gtk/gtkrc.c (_gtk_rc_init): Provide extra horizontal padding
	inside menu items that are inside a menu bar. (Bug #110775)

	* configure.in (HAVE_XCURSOR): Make XCurosr part of GDK_EXTRA_,
	not GDK_PACKAGES, to prevent applications from getting linked to
	it (Bug #119804)

	* gtk/gtkmenubar.c (gtk_menu_bar_size_allocate): Put the vertical
	ipadding inside the item. (Bug #61843)
2004-02-26 22:29:24 +00:00
Soeren Sandmann
97ff0f48a4 Call gtk_tool_item_set_expand(), not gtk_tool_item_set_homogeneous() in
Mon Feb 16 18:26:39 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c (gtk_toolbar_set_child_property): Call
	gtk_tool_item_set_expand(), not gtk_tool_item_set_homogeneous()
	in the CHILD_PROP_EXPAND branch. (#134545, Damon Chaplin)
2004-02-16 19:16:03 +00:00
Soeren Sandmann
8c80eedd0f Fix up item_area correctly in RTL mode. (#133984, patch from Semion
Thu Feb 12 15:46:26 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Fix up item_area
	correctly in RTL mode. (#133984, patch from Semion Chichelnitsky).
2004-02-12 14:49:37 +00:00
Morten Welinder
95ba48b38f Cleanup using gtk_menu_attach_to_widget. Also fixes leak, see #133411.
2004-02-06  Morten Welinder  <terra@gnome.org>

	* gtk/gtktoolbar.c (show_menu): Cleanup using
	gtk_menu_attach_to_widget.  Also fixes leak, see #133411.
2004-02-06 21:18:50 +00:00
Morten Welinder
0b14aeea37 Show on the right screen. (Fixes bug 133411, apart from the leak.)
2004-02-04  Morten Welinder  <terra@gnome.org>

	* gtk/gtktoolbar.c (show_menu): Show on the right screen.  (Fixes
	bug 133411, apart from the leak.)
2004-02-04 21:17:54 +00:00
Soeren Sandmann
a4bb27616f Only start sliding when using the new API.
Sun Feb  1 16:34:07 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Only start
	sliding when using the new API.
2004-02-01 15:36:22 +00:00
Soeren Sandmann
623370a8e7 Make sure item_area is positioned correctly. Fix #133070, reported by
Sun Feb  1 16:03:39 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Make sure
	item_area is positioned correctly. Fix #133070, reported by Jeroen
	Zwartepoorte.
2004-02-01 15:18:32 +00:00
Federico Mena Quintero
a9fbfc99f5 Fixes #132975.
2004-01-30  Federico Mena Quintero  <federico@ximian.com>

	Fixes #132975.

	* gtk/gtkfilesystem.c (gtk_file_system_make_path): Return NULL,
	not FALSE.
	(gtk_file_system_volume_render_icon): Likewise.

	* gtk/gtkfilesystemwin32.c (gtk_file_system_win32_make_path):
	Likewise.

	* gtk/gtktreestore.c (gtk_tree_store_iter_n_children): Return 0,
	not FALSE.

	* gtk/gtktoolbar.c (gtk_toolbar_get_drop_index): Return -1, not
	FALSE.

	* gtk/gtktextiter.c (gtk_text_iter_get_chars_in_line): Return 0,
	not FALSE.
	(gtk_text_iter_get_bytes_in_line): Likewise.

	* gdk/x11/gdkcursor-x11.c (gdk_display_get_default_cursor_size):
	Likewise.

	* gdk/linux-fb/gdkcolor-fb.c (gdk_colors_alloc): Return FALSE, not
	0.
2004-01-30 19:49:40 +00:00
Soeren Sandmann
55b5211d4e Remove obsolete comment.
Tue Jan 27 01:56:46 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c: Remove obsolete comment.

	* gtk/gtktoolbar.c (DEFAULT_SPACE_SIZE, SPACE_LINE_START,
	SPACE_LINE_END): Make separators wider and taller, so they are
	easier to pick up when editing the toolbar.

	* gtk/gtktoolbar.c (slide_idle_handler): Add a comment, simplify
	a bit,

	* gtk/gtktoolbar.c (rect_within): Formatting fix

	* gtk/gtktoolbar.c (gtk_toolbar_set_drop_highlight_item): Make
	sliding feel more responsive by only restarting sliding when the
	placeholder actually changes its goal allocation.
2004-01-27 01:11:18 +00:00
Soeren Sandmann
27070f145b Base the decision to map/unmap items on whether they are actually
Sun Jan 25 15:14:46 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Base the decision
	to map/unmap items on whether they are actually allocated outside
	the toolbar, not on whether that will eventually happen. Improves
	animation in the presence of overflown items.

	* gtk/gtktoolbar.c (gtk_toolbar_begin_sliding): Add a
	queue_resize() to so that the items will get their new goal
	values and the idle handler will not immediately return FALSE.

	* gtk/gtktoolbar.c (slide_idle_handler): simplify the logic and
	make sure that a placeholder becoming invisible doesn't cause a
	return TRUE.

	* gtk/gtktoolbar.c (get_item_size): Don't special case
	placeholders here.
2004-01-25 14:17:15 +00:00
Soeren Sandmann
63f37a9ef6 Only try to pack icon if there actually is one.
Sat Jan 24 23:17:27 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbutton.c (gtk_tool_button_construct_contents): Only
	try to pack icon if there actually is one.

	* gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Make sure
	OVERFLOWN items get an allocation even when they are
	unmapped. This ensures they will slide in properly.

	* gtk/gtktoolbar.c (slide_idle_handler): Make sure we return TRUE
	when there are overflown items that need to slide in. Also add
	comments and make formatting more readable.
2004-01-24 22:29:18 +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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
Daniel Elstner
e12d5fb2ca New helper function that sets the icon's and label's packing options and
2003-01-30  Daniel Elstner  <daniel.elstner@gmx.net>

	* gtk/gtktoolbar.c (set_child_packing_and_visibility): New helper
	function that sets the icon's and label's packing options and
	visibility based on toolbar->style.

	(gtk_toolbar_internal_insert_element):
	(gtk_real_toolbar_style_changed): Make use of
	set_child_packing_and_visibility() to clean up the code and get
	the packing right for icon-only/text-only toolbars. (#104679)

	(get_first_child): Remove, and use gtk_bin_get_child() instead.
2003-01-30 21:38:37 +00:00
Daniel Elstner
06116092cf Override hide_all in addition to show_all in order to keep them symmetric.
2003-01-23  Daniel Elstner  <daniel.elstner@gmx.net>

* gtk/gtktoolbar.c (gtk_toolbar_hide_all): Override hide_all
in addition to show_all in order to keep them symmetric. (#102201)
2003-01-23 19:48:39 +00:00
Daniel Elstner
b9c08f5e9a Fix nasty typo (#99653): strlen (original + 1) -> strlen (original) + 1
2002-11-26  Daniel Elstner  <daniel.elstner@gmx.net>

* gtk/gtktoolbar.c (elide_underscores): Fix nasty typo (#99653):
strlen (original + 1) -> strlen (original) + 1
2002-11-26 22:12:56 +00:00
Owen Taylor
100286ac57 Add ::screen-changed signal.
Thu Nov  7 12:53:08 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwidget.[ch] gtk/gtkwindow.c gtk/gtkinvisible.c:
        Add ::screen-changed signal.

        * gtk/gtkfontsel.c gtk/gtktoolbar.c: Use ::screen-changed
        signal to simplify logic.
2002-11-07 17:59:04 +00:00
Owen Taylor
accc3a3365 Add startup notification hooks - mostly based on patch by Havoc Pennington
Sat Nov  2 00:22:33 2002  Owen Taylor  <otaylor@redhat.com>

        Add startup notification hooks - mostly based on patch
        by Havoc Pennington in #96772.

        * gdk/gdk.h gdk/x11/gdkdisplay-x11.c
        gdk/{win32,linux-fb}/gdkmain-*.c: (gdk_notify_startup_complete):
        new function that indicates an application has finished starting
        up.

        * gdk/x11/gdkmain-x11.c gdk/x11/gdkdisplay-x11.c
        (_gdk_windowing_set_default_display): store value of
        DESKTOP_STARTUP_ID on the default screen, and clear it from the
        environment.

        * gdk/x11/gdkdisplay-x11.c:
        Set _NET_STARTUP_ID hint on display's group leader window.

        * gtk/gtkwindow.c (gtk_window_set_auto_startup_notification):
        function to toggle whether we automatically broadcast that we've
        started up, after mapping the first toplevel window.
        (gtk_window_map): call gdk_screen_notify_startup_complete() by
        default, unless enabled by above.

        * gtk/gtkmain.c gtk/gtkcombo.c gtk/gtktoolbar.c:
        Couple of warning fixes.
2002-11-02 05:37:04 +00:00
Matthias Clasen
00943af834 Automatic RTL flipping for some more widgets. 2002-11-02 00:18:14 +00:00
Padraig O'Briain
16b3f88618 Move g_free() call to before return.
* gtk/gtktoolbar.c (gtk_toolbar_insert_stock): Move g_free()
call to before return.
2002-10-31 17:04:00 +00:00
Owen Taylor
a9fd75f871 Don't insert mnemonics for stock items (#72918, reported by Mikael
Fri Oct 25 17:32:44 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktoolbar.c: Don't insert mnemonics for stock
        items (#72918, reported by Mikael Hallendal)
2002-10-25 21:36:55 +00:00
Owen Taylor
f1b8a1ce57 Multihead safety fixes, handle displays being closed. (#81651, based on
Tue Oct 22 16:37:12 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktooltips.c: Multihead safety fixes, handle
        displays being closed. (#81651, based on patch
        from Erwann Chenede)

        * gtk/gtktoolbar.c (gtk_toolbar_init): Fix typo
        from the last commit.
2002-10-22 21:05:47 +00:00
Owen Taylor
8042766f6a Fix handling of getting the default style/icon size from the correct
Tue Oct 22 15:55:08 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktoolbar.c: Fix handling of getting the
        default style/icon size from the correct
        GtkSettings. (#82184, reported by Vitaly Tishkov,
        help from Soeren Sandmann)
2002-10-22 20:00:31 +00:00
Manish Singh
cb7c950af0 Deprecation cleanup
Tue Oct  8 17:34:26 2002  Manish Singh  <yosh@gimp.org>

        * gtk/gtkmain.c gtk/gtkscrolledwindow.[ch] gtk/gtksettings.c
        gtk/gtkstatusbar.[ch] gtk/gtkstyle.c gtk/gtktoolbar.[ch]
        gtk/gtkviewport.[ch] gtk/gtkwindow.[ch]: Deprecation cleanup
2002-10-09 00:38:22 +00:00
Soeren Sandmann
fd303c56b9 call gtk_widget_ensure_style() before reading "button_relief". Fixes
Sat Sep  7 21:24:55 2002  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtktoolbar.c (get_button_relief): call
	gtk_widget_ensure_style() before reading "button_relief". Fixes
	(#92741).
2002-09-07 20:44:26 +00:00
Alex Larsson
4632fb81c7 Integrate Erwann Chenede's multihead changes for the gtk/ directory.
Mon Apr 29 18:28:00 2002  Owen Taylor  <otaylor@redhat.com>

	Integrate Erwann Chenede's multihead changes for the gtk/ directory.

	* gtk/gtkclipboard.[ch]: Add gtk_clipboard_get_for_display(),
	make internals multihead aware.

	* gtk/gtkcolorsel.[ch]: Add
	gtk_color_selection_set_change_palette_with_screen_hook () [ugh!]
	make up for non-multihead safety of
	gtk_color_selection_set_change_palette_hook()

	* gtk/gtkinvisible.[ch] gtk/gtkmenu.[ch] gtkwindow.[ch]: Add
	gtk_{invisible,menu,window}_set_screen(); add "screen" properties
	for GtkWindow and GtkMenu.

	* gtk/gtkplug.[ch]: Add gtk_plug_construct_for_display(),
	gtk_plug_new_for_display(). Multihead fixes.

	* gtk/gtkselection.[ch]: Add gtk_selection_owner_set_for_display(),
	make internals multihead aware.

	* gtk/gtksettings.[ch]: Add gtk_settings_get_for_screen(), get
	rid of now-useless gtk_settings_constructor().

	* gtk/gtkstyle.[ch]: Add gtk_style_get_font_for_display(), fix
	check/radio button indicators bitmap handling to be multihead
	safe.

	* gtk/gtkwidget.[ch]: Add gtk_widget_get_screen(), gtk_widget_has_screen(),
	gtk_widget_get_display(), gtk_widget_get_clipboard(),
	gtk_widget_get_root_window().

	* gtk/gtkbindings.c gtk/gtkbutton.c gtk/gtkclist.c gtk/gtkcombo.c
	gtk/gtkctree.c gtk/gtkdnd.c gtk/gtkfilesel.c gtk/gtkgamma.c
	gtk/gtkhandlebox.c gtk/gtkhsv.c gtk/gtkimcontext.c gtk/gtklabel.c
	gtk/gtklist.c gtk/gtkmain.c gtk/gtkmenuitem.c gtk/gtkmenushell.c
	gtk/gtknotebook.c gtk/gtkoldeditable.c gtk/gtkoptionmenu.c
	gtk/gtkpaned.c gtk/gtkpreview.c gtk/gtksocket.c gtk/gtktext.c
	gtk/gtktextbuffer.c gtk/gtktextview.c gtk/gtktipsquery.c
	gtk/gtktooltips.c gtk/gtktreeview.c gtk/gtktreeviewcolumn.c:
	misc mechanical multihead-safety fixes.

	* gtk/gtkclipboard.c: Use a GtkImage rather than a pixmap for
	the dropper, look up the color palette only at realization time,
	other multihead fixes.

	* gtk/gtkcombo.c (gtk_combo_unrealize): Popdown the list when
	unrealizing.

	* gtk/gtkentry.c: Only claim ownership of the primary selection
	when realized, misc multihead fixes.

	* gtk/gtkfontsel.c: Only fill in fonts when attached to a screen,
	fix gtk_font_selection_get_font() for multihead.

	* gtk/gtkgc.c: make the depth => drawable hash per-screen.

	* gtk/gtkinvisible.c: Add a constructor that realizes the
	widget, so we get a realized widget with g_object_new() as
	well gtk_invisible_new() as before.

	* gtk/gtkmain.c: Get rid of unused gtk_visual/gtk_colormap
	variables.

	* gtk/gtktextdisplay.c: Add warnings if stipple bitmaps
	are used on the wrong screen.

	* gtk/gtktoolbar.c: Make handling of GtkSettings-based layout
	read properties and connect to settings when the screen is changed,
	rather than on init/finalize.

	* gtk/gtkwindow.c: Fix icon handing to be multihead safe ...
	default icon pixmaps/mask are only shared between windows on the
	same screen. Misc multihead fixes.

Sat Apr 27 13:49:53 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkclipboard.c (gtk_clipboard_get_for_display):
	Update docs to reference GDK_SELECTION_CLIPBOARD rather GDK_NONE.

2002-04-29  Alex Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkproperty-fb.c (gdk_property_get):
	Fix silly bug, noticed by Sven Neumann.

Sun Apr 28 22:43:55 2002  Jonathan Blandford  <jrb@gnome.org>

	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_sort_func): Fix
	so that you can set a new sort func.
2002-04-29 22:53:45 +00:00
Owen Taylor
0be9b6fba8 Go back to old style of drawing children over the bevel. (#58615)
Wed Feb 27 14:45:21 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Go
        back to old style of drawing children over the bevel.
        (#58615)
2002-02-27 19:48:30 +00:00
Owen Taylor
a504db9e83 Fixes for AIX compilation from Miroslaw Dobrzanski-Neumann, #72182.
Fri Feb 22 18:36:45 2002  Owen Taylor  <otaylor@redhat.com>

	Fixes for AIX compilation from Miroslaw Dobrzanski-Neumann,
	#72182.

	* demos/gtk-demo/main.c gtk/gtktreeview.c gtk/gtktoolbar.c
	gtk/gtkpaned.c gtk/gtkobject.c gtk/gtkcontainer.c
	gtk/gtkcolorsel.c gtk/gtkcellrender.c gdk/x11/xsettings-client.h:
	Squash trailing commas on enumerations.

	* gdk/gdktypes.h: Drop GDK_RELEASE_MASK to 1 << 30 instead
	of 1 << 31 to work around AIX compiler problem. (C standard
	seems to imply that compiler is required to use an unsigned
	type for the enum value in this case.)

	* gdk/gdkpixbuf-drawable.c: Fix lvalue casts.

	* gtk/gtkwindow.h: Fix use of enum types for bitfields ...
	compilers may choose to use a signed type for bitfields.
2002-02-23 00:13:17 +00:00
Owen Taylor
5c71539c26 Handle TOGGLE/RADIOBUTTON as well. (#68201, Damon Chaplin.)
Tue Jan  8 18:04:01 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktoolbar.c (gtk_toolbar_set_icon_size):
	Handle TOGGLE/RADIOBUTTON as well. (#68201,
	Damon Chaplin.)

	* gtk/gtktoolbar.c (get_first_child): Fix stupid
	bug, just introduced.
2002-01-08 23:05:46 +00:00
Owen Taylor
fda8a3de95 Fix leaks of results of gtk_container_get_children(). (#68199, Damon
Tue Jan  8 14:42:19 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktoolbar.c: Fix leaks of results of
	gtk_container_get_children(). (#68199, Damon Chaplin)
2002-01-08 19:44:34 +00:00
Matthias Clasen
08b9fbc90d Trivial doc adjustment. 2001-12-20 23:38:24 +00:00
Owen Taylor
203d7df363 Close comment.
Fri Dec  7 19:34:51 2001  Owen Taylor  <otaylor@redhat.com>
        * gtk/gtktoolbar.c (gtk_toolbar_insert_element):
        Close comment.
2001-12-08 00:41:58 +00:00
Matthias Clasen
13e498cae8 Typo fixes.
* gtk/gtkstyle.h: Typo fixes.

        * gtk/gtkstyle.c, gtk/gtktoolbar.c: Add docs.

        * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Fix docs.

        * gtk/tmpl/gtktypeutils.sgml, gtk/tmpl/gtkobject.sgml,
        gtk/tmpl/gtkstyle.sgml: Add docs.
2001-12-07 23:39:54 +00:00
Owen Taylor
c860866dd7 Ref-sink the tooltips object. Ref-sink the tooltips object. Fix some
Wed Nov 21 11:41:29 2001  Owen Taylor  <otaylor@redhat.com>
	* tests/testgtk.c (create_tooltips): Ref-sink the tooltips object.
	* gtk/gtktoolbar.c (gtk_toolbar_init): Ref-sink the tooltips object.
	* gtk/gtkfilesel.c (open_new_dir): Fix some constness warnings.
	* gtk/gtkaccelgroup.c: Rename gtk_accel_groups_from_acceleratable()
	back to gtk_accel_groups_from_object(), change @acceleratable
	parameter to gtk_accel_groups_activate() accordingly.
	* gtk/gtkaccelmap.c (gtk_accel_map_lookup_entry): Remove
	left-over comment about quark return.
	* gtk/gtkaccelmap.h: Fix spelling of gtk_accel_map_foreach_unfiltered().
 	* gtk/gtk-boxed.defs (GtkIconSource): added as a boxed type.
        (Patch from Matt Wilson)
	* gtk/gtkobject.c (gtk_object_finalize): Warn if a floating
	object is finalized.
2001-11-21 17:04:35 +00:00
Owen Taylor
a036c6e59f Make gtkmarshal.list/gtkmarshal.h only for compatibility with GTK+-1.2;
Sat Nov 17 18:26:45 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/Makefile.am gtk/gtkmarshal.list gtk/gtkmarshalers.list
	gtk/*.c gtk/gtksignal.h: Make gtkmarshal.list/gtkmarshal.h
	only for compatibility with GTK+-1.2; and deprecate it;
	put all marshalers we actually use into gtkmarshalers.list
	and use the _gtk_marshal_ prefix for these marshalers.
2001-11-17 23:28:51 +00:00
Murray Cumming
ea28741c46 Fixed signal marshaller in GtkToolbar. 2001-10-15 13:59:34 +00:00
Murray Cumming
0568c9d4f8 Fixed some parameter types in calls to g_signal_new(). 2001-10-15 13:52:13 +00:00
Owen Taylor
991a7188ed Rename gtk_container_children() to gtk_container_get_children. Added
Thu Aug 23 19:33:54 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcontainer.[ch]: Rename gtk_container_children()
	to gtk_container_get_children. Added deprecated compatibility
	macro.	(Suggested by Vitaly Tishkov, #59051)

	* gtk/gtktoolbar.c gtkdialog.c: Fix gtk_container_children()
	calls.
2001-08-23 23:38:32 +00:00
Owen Taylor
aa49527fa7 Enforce the widget/child realization/mapping invariants.
Sat Jul  7 02:50:14 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_set_parent): Enforce
	the widget/child realization/mapping invariants.

	* gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add functions
	gtk_widget_[get/set]_child_visible() to control
	whether visible children of a mapped window are
	mapped.

	* docs/widget_system.txt: Updated for changes in
	container contract, and addition of GTK_CHILD_VISIBLE.

	* gtk/gtkcontainer.c: Add generic map()/unmap()
	functions that work for almost all containers.

	* gtk/gtknotebook.c gtk/gtkpacker.c: Use
	gtk_widget_set_child_visible() where necessary.

	* gtk/*.c: Remove excess map(), unmap(), and
	realization/mapping invariant enforcing code
	from many containers.
2001-07-19 14:57:15 +00:00
Owen Taylor
4e2b60ac4d Patch from Matthias Clasen to remove remove all instances of
Wed Jul 18 19:28:46 2001  Owen Taylor  <otaylor@redhat.com>

	* gtk/*.c: Patch from Matthias Clasen to remove remove
	all instances of g_return_if_fail (foo != NULL); that are
	immediately before a g_return_if_fail (GTK_IS_FOO (foo));
	since the second check catches the NULL anyways.
2001-07-18 23:39:26 +00:00