Commit Graph

15 Commits

Author SHA1 Message Date
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
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
Matthias Clasen
e8ea480893 Fix signal doc comments to pacify gtk-doc.
* gtk/gtktoolitem.c (gtk_tool_item_class_init): Fix signal doc
	comments to pacify gtk-doc.
2003-10-01 00:16:11 +00:00
Matthias Clasen
dbdc43be4c Doc formatting tweaks.
2003-10-01  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkmain.c: Doc formatting tweaks.

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

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

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

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

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

	* gtk/gtk-sections.txt: Additions.

	* gtk/tmpl/gtkitemfactory.sgml: Add hint to use #GtkUIManager instead.
2003-09-30 22:48:10 +00:00
Matthias Clasen
9d13ef764e Fix some typos in docs.
* gtk/gtktoolitem.c: Fix some typos in docs.
2003-08-31 14:01:07 +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
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
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
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
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
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
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
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