Commit Graph

158 Commits

Author SHA1 Message Date
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