Commit Graph

32 Commits

Author SHA1 Message Date
Christian Persch
65485cbc7c Add UI manager attribute to always show image in menu items
Add always-show-image="true|false" attribute to <menuitem> element in UI
manager markup. If present, it overrides the always-show-image property
on image menu items. Bug #589842.
2009-11-27 19:14:43 +01:00
Michael Natterer
7accf50a3a Bug 516425 – Optionally display accelerators in popups
2008-10-09  Michael Natterer  <mitch@imendio.com>

	Bug 516425 – Optionally display accelerators in popups

	* gtk/tmpl/gtkuimanager.sgml: document the enhanced XML syntax and
	the new enum value for popups with accelerators.


svn path=/trunk/; revision=21616
2008-10-09 08:51:02 +00:00
Matthias Clasen
884d971149 Fix GtkBuilder examples
svn path=/trunk/; revision=20934
2008-08-02 04:37:47 +00:00
Matthias Clasen
e5ce8697ea Document GtkBuilder UI definitions
svn path=/trunk/; revision=18332
2007-07-01 23:38:07 +00:00
Matthias Clasen
3060ce7ddc documentation updates
svn path=/trunk/; revision=18303
2007-06-30 06:24:11 +00:00
Matthias Clasen
58a1af804c 2.7.0 2005-06-20 22:06:27 +00:00
Matthias Clasen
64bfd86b5b Allow to construct menu tool buttons.
2005-06-18  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkuimanager.c: Allow to construct menu tool buttons.

	* demos/gtk-demo/appwindow.c: Demonstrate menu tool buttons
	constructed with GtkUIManager.
2005-06-19 03:20:07 +00:00
Matthias Clasen
6824418b27 Refer to the correct property. (#301115, Richard Hult)
2005-04-29  Matthias Clasen  <mclasen@redhat.com>

	* gtk/tmpl/gtkuimanager.sgml: Refer to the correct
	property. (#301115, Richard Hult)
2005-04-29 17:19:41 +00:00
Matthias Clasen
da920e08f8 Accept the "expand" attribute and set a flag in the node if it is set to
2005-02-08  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkuimanager.c (start_element_handler): Accept
	the "expand" attribute and set a flag in the node if it
	is set to "true".
	(update_node): If the expand flag is set, make separator
	toolitems non-drawn and expanding.  (#166489, Christian Persch)
2005-02-08 15:54:09 +00:00
Matthias Clasen
aad21bceee Make short descriptions a bit more consistent. 2004-10-11 18:08:35 +00:00
Matthias Clasen
001e629969 Link to information about allowed action names. (#149620, David Malcolm)
Thu Aug 12 00:02:29 2004  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkaction.c (gtk_action_new): Link to information about
	allowed action names.  (#149620, David Malcolm)
2004-08-12 04:03:54 +00:00
Soeren Sandmann
9d2a946813 === Released 2.5.0 ===
Sun Jul 18 17:21:10 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

        * === Released 2.5.0 ===

        * NEWS: updates

        * tests/testcombo.c: Fix compilation
2004-07-20 02:26:06 +00:00
Soeren Sandmann
1952300896 Create an empty target list if targets is NULL.
Sun Jul 18 15:28:24 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkdnd.c (gtk_drag_source_set, gtk_drag_dest_set): Create an
	empty target list if targets is NULL.

	* configure.in: Add check for X11/extensions/sync.h. (#147416,
	Morten Welinder)
2004-07-18 15:14:05 +00:00
Matthias Clasen
5f3e958356 Fix the dtd. 2004-05-04 18:24:31 +00:00
Matthias Clasen
157943b584 Don't crash if a node has no name. (start_element_handler): Accept
2004-04-13  Matthias Clasen  <mclasen@redhat.com>

	* gtk/gtkuimanager.c (get_child_node): Don't crash if a node
	has no name.
	(start_element_handler): Accept separators without unique
	names.  (#133302, Anders Carlsson)

	* gtk/gtkuimanager.c (node_remove_ui_reference): Don't leak
	list nodes.  (#138862, Morten Welinder)
2004-04-13 20:06:12 +00:00
Owen Taylor
1a48dcb14f === Released 2.3.3 ===
Tue Feb 24 14:45:03 2004  Owen Taylor  <otaylor@redhat.com>

        * === Released 2.3.3 ===

        * configure.in: Version 2.3.3, interface age 0.

        * NEWS: Finish updates for 2.3.3.
2004-02-24 22:25:41 +00:00
Soeren Sandmann
b55352f6c2 Commit auto-generated changes
Sat Feb 21 17:57:35 2004  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/docs: Commit auto-generated changes
2004-02-21 17:05:32 +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
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
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
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
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
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
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
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
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
7899a702ee Additions. 2003-09-01 23:20:33 +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
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
5e8c963498 Rename GtkMenuMerge to GtkUIManager 2003-08-25 23:15:12 +00:00