Commit Graph

680 Commits

Author SHA1 Message Date
Matthias Clasen
f83b5f37c9 Add stock_dialog_authentication_48.png. (#129255, Olivier Andrieu)
Sat Dec 13 22:37:46 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/Makefile.am (HTML_IMAGES): Add
	stock_dialog_authentication_48.png.  (#129255, Olivier Andrieu)
2003-12-13 21:37:32 +00:00
Matthias Clasen
5d8f0a69c4 Documentation updates. 2003-12-11 23:52:59 +00:00
Matthias Clasen
44c206420a Move the documentation for signals inline, to get proper parameter
Thu Dec 11 01:57:05 2003  Matthias Clasen  <maclas@gmx.de>

	* gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): Move
	the documentation for signals inline, to get proper parameter
	documentation.  (#128977)
2003-12-11 00:57:20 +00:00
Matthias Clasen
5fb61f3075 Changes to allow "no input" windows (#64613):
Thu Dec 11 00:35:12 2003  Matthias Clasen  <maclas@gmx.de>

	Changes to allow "no input" windows (#64613):

	* gdk/gdkwindow.h (struct _GdkWindowObject): Add a new boolean
	field accept_focus.

	* gdk/gdkwindow.h (gdk_window_set_accept_focus): New function to
	set it.

	* gtk/gtkwindow.[hc]: Add a boolean property "accept_focus"
	and gtk_window_get_focus() and gtk_window_set_focus().

	* gdk/win32/gdkwindow-win32.c (gdk_window_new):
	* gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
	* gdk/x11/gdkwindow-x11.c (gdk_window_set_new):
	Initialize the accept_focus field to TRUE.

	* gdk/win32/gdkwindow-win32.c (gdk_window_set_accept_focus):
	* gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_accept_focus):
	* gdk/x11/gdkwindow-x11.c (gdk_window_set_accept_focus):
	Implementations for the various backends. The Win32 and linux-fb
	implementations set the accept_focus field, but don't use it yet
	to actually implement noinput windows. The X implementation updates
	the WM_HINTS to select the globally active input model (see the
	ICCCM) if accept_focus is FALSE.

	* gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Ignore the
	WM_TAKE_FOCUS message if accept_focus is FALSE.
2003-12-10 23:58:23 +00:00
Federico Mena Quintero
6a97a16921 Use "Home" rather than "Username's Home" (#125964).
2003-12-09  Federico Mena Quintero  <federico@ximian.com>

	* gtk/gtkfilechooserdefault.c (shortcuts_append_home): Use "Home"
	rather than "Username's Home" (#125964).
	(shortcuts_selection_changed_cb): New callback, check the
	sensitivity of the Remove Bookmark button at the right time.
	(shortcuts_row_activated_cb): It is not necessary to check the
	sensitivity here.
2003-12-10 03:46:30 +00:00
Matthias Clasen
3f6441ea3a Improve the GDK API for dealing with group leaders (#119375):
Wed Dec 10 00:06:24 2003  Matthias Clasen  <maclas@gmx.de>

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

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

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

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

	* gdk/x11/gdkdisplay-x11.c (gdk_display_open): Construct the GdkWindow
	for the default group leader.
2003-12-09 23:12:53 +00:00
Federico Mena Quintero
94dbe0c487 Recommitting changes that were moved aside to tag GTK_2_3_1
2003-12-08  Federico Mena Quintero  <federico@ximian.com>

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

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

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

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

        * gtk/gtk-sections.txt: Some updates.
2003-12-08 22:56:52 +00:00
Owen Taylor
85c05a86c0 === Released 2.3.1 ===
Mon Dec  8 10:54:44 2003  Owen Taylor  <otaylor@redhat.com>

        * === Released 2.3.1 ===

        * NEWS: Updates for 2.3.1

        * configure.in: Version 2.3.1, interface age 0, binary age 301.

        * gtk/gtkmenuitem.c (gtk_menu_item_can_activate_accel):
        Rename from gtk_menu_item_real_can_activate_accel() to
        match GTK+ convention, improve comment.

        * gtk/gtkwidget.c: Document gtk_widget_can_activate_accel(),
        can ::can-activate-accel signal.

        * gtk/gtkwidget.c (closure_accel_activate): Fix spelling
        in comment.

        * gtk/gtkmenu.c (gtk_menu_real_can_activate_accel): Clean
        up comment.

        * gtk/gtkcellview{,menuitem}.[ch]: Move GET_PRIVATE() macros
        into the .c file.

Mon Dec  8 12:09:21 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkicontheme.c (find_builtin_icon): Fix a
        missing 'else'. (#128816, Jorn Baayen)
2003-12-08 22:55:03 +00:00
Federico Mena Quintero
4feada36e9 New chapter about how to migrate from gnome-ui/bonobo-ui/etc. to
2003-12-08  Federico Mena Quintero  <federico@ximian.com>

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

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

	* gtk/Makefile.am (content_files): Added migrating-GtkAction.sgml.
2003-12-08 22:28:27 +00:00
Matthias Clasen
94511bb111 Add a missing comma.
Sun Nov 23 21:00:33 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/tree_widget.sgml: Add a missing comma.
2003-11-23 20:00:25 +00:00
Matthias Clasen
01780084d5 Remove leftover documentation of the filter functionality that got removed
Fri Nov 21 00:09:36 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/tmpl/gtkfontsel.sgml:
	* gtk/tmpl/gtkfontseldlg.sgml: Remove leftover documentation of
	the filter functionality that got removed long ago.
2003-11-20 23:10:05 +00:00
Federico Mena Quintero
5c243e9be8 Added sections section about generating previews and including extra
2003-11-18  Federico Mena Quintero  <federico@ximian.com>

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

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

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

	* gtk/Makefile.am (content_files): Added
	migrating-GtkFileChooser.sgml.
2003-11-18 22:50:26 +00:00
Matthias Clasen
d3b444a4c5 Fix for #119555, Peter Zelesny:
Tue Nov 18 00:12:55 2003  Matthias Clasen  <maclas@gmx.de>

	Fix for #119555, Peter Zelesny:

	* gdk/gdkdrawable.h: Declare gdk_drawable_copy_to_image.
	* gdk/gdkdraw.c (gdk_drawable_copy_to_image): Make public
	by removing the _ prefix.
	* gdk/gdkdraw.c, gdk/gdkpixbuf-drawable.c, gdk/gdkpixmap.c,
	gdk/gdkwindow.c: Adjust all callers.
2003-11-17 23:16:49 +00:00
Matthias Clasen
03522ef802 Add gtk_combo_box_new_with_model, gtk_combo_box_set_model.
Mon Nov 17 23:29:21 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtk-sections.txt: Add gtk_combo_box_new_with_model,
	gtk_combo_box_set_model.
2003-11-17 22:29:20 +00:00
Matthias Clasen
f7357a7007 Fix parameter name mismatches which confuse gtk-doc.
Sun Nov 16 00:35:29 2003  Matthias Clasen  <maclas@gmx.de>

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

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

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

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

	* gtk/gtk-sections.txt: Move GtkFileChooser out of the
	private section, in order to get the autogenerated docs
	on hierarchy, signals, properties, etc.
2003-11-15 23:44:33 +00:00
Matthias Clasen
41ee5267cb Check that the mask is NULL or a string of the same length consisting
Sat Nov 15 00:26:19 2003  Matthias Clasen  <maclas@gmx.de>

	* queryloaders.c (loader_sanity_check): Check that the mask
	is NULL or a string of the same length consisting entirely of
	' ', '!', 'x', 'z', 'n'.
2003-11-14 23:28:01 +00:00
Matthias Clasen
e71bcc8487 Changes to improve menu positioning on Xinerama (#108328):
Wed Nov 12 21:40:10 2003  Matthias Clasen  <maclas@gmx.de>

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

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

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

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

	* gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Call
	gtk_menu_set_monitor.
2003-11-12 20:53:03 +00:00
Owen Taylor
097c3fe625 Add getters corresponding to the is_active and has_toplevel_focus
Tue Oct 28 10:34:24 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkwindow.[ch] (gtk_window_is_active,
        gtk_has_toplevel_focus): Add getters corresponding to
        the is_active and has_toplevel_focus properties.
        (#122531)
2003-10-28 15:43:43 +00:00
Owen Taylor
e4a657251f Move docs inline, rewrite docs, mention memory management for the return
Tue Oct 28 09:21:29 2003  Owen Taylor  <otaylor@redhat.com>

        * gtk/gtkmain.c (gtk_check_version): Move docs inline,
        rewrite docs, mention memory management for the return
        value. (Partly addresses #125549, Michael Natterer)
2003-10-28 14:23:28 +00:00
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
Federico Mena Quintero
8d7d50cb7f Added the text for the initial section, and descriptions for the signals
2003-10-23  Federico Mena Quintero  <federico@ximian.com>

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

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

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

	* gtk/tmpl/gtkfilefilter.sgml:
	* gtk/tmpl/gtkfilechooser.sgml:
	* gtk/tmpl/gtkfilechooserwidget.sgml:
	* gtk/tmpl/gtkfilechooserdialog.sgml: Add short descriptions.
2003-10-23 22:26:39 +00:00
Matthias Clasen
4200df5bdb Move GtkCombo and GtkOptionMenu to the "Deprecated" chapter. Add
Thu Oct 23 22:41:02 2003  Matthias Clasen  <maclas@gmx.de>

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

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

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

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

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

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

	* gtk/tmpl/gtkfilechooserdialog.sgml: Likewise.

	* gtk/tmpl/gtkfilechooserwidget.sgml: Likewise.

	* gtk/tmpl/gtkfilefilter.sgml: Likewise.
2003-10-23 19:47:13 +00:00
Matthias Clasen
c4739fb57e Add the get_type() functions for GtkEntryCompletion, GtkTreeModelFilter,
Sun Oct 12 00:33:48 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtk.types: Add the get_type() functions for
	GtkEntryCompletion, GtkTreeModelFilter, GtkCellLayout,
	GtkComboBox, GtkComboBoxEntry.
2003-10-11 22:36:04 +00:00
Matthias Clasen
3b2003c9a2 Included gtk_progress_bar_get_orientation() in the list of undeprecated
Sat Oct 11 00:18:46 2003  Matthias Clasen  <maclas@gmx.de>

	* gtk/tmpl/gtkprogressbar.sgml: Included
	gtk_progress_bar_get_orientation() in the list of undeprecated
	functions, use less clumsy markup for enumerations.
2003-10-10 22:20:19 +00:00
Matthias Clasen
cd6f16f5bb Add gtkcellview.h and gtkcellviewmenuitem.h.
2003-10-02  Matthias Clasen  <maclas@gmx.de>

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

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

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

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

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

	* gtk/tmpl/gtktoggletoolbutton.sgml: Fix section title.
2003-10-01 22:43:30 +00:00
Matthias Clasen
c34b0a094b Add two missing signals.
* gdk/tmpl/keys.sgml: Add two missing signals.
2003-09-30 23:25:48 +00:00
Matthias Clasen
dbdc43be4c Doc formatting tweaks.
2003-10-01  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkmain.c: Doc formatting tweaks.

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

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

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

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

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

	* gtk/gtk-sections.txt: Additions.

	* gtk/tmpl/gtkitemfactory.sgml: Add hint to use #GtkUIManager instead.
2003-09-30 22:48:10 +00:00
Matthias Clasen
f99ba6c70f Add hint to use #GtkUIManager instead.
* gtk/tmpl/gtkitemfactory.sgml: Add hint to use #GtkUIManager instead.
2003-09-30 21:15:00 +00:00
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
f582c04a9c Document the "direction-changed" and "keys-changed" signals.
2003-09-30  Matthias Clasen  <maclas@gmx.de>

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

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

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

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

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

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

	* gdk-pixbuf/gdk-pixbuf-sections.txt: Add GdkPixbufLoaderClass.
2003-09-30 00:36:29 +00:00
Matthias Clasen
f434562000 Add GdkPixbufLoaderClass.
* gdk-pixbuf/gdk-pixbuf-sections.txt: Add GdkPixbufLoaderClass.
2003-09-29 23:27:41 +00:00
Matthias Clasen
df64ae4434 Fix a copy-and-paste error. (#122800)
2003-09-22  Matthias Clasen  <maclas@gmx.de>

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

	Changes to make cross-process merging feasible:

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

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

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

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

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

	* gtk/gtkwidget.[hc] (gtk_widget_[gs]et_no_show_all): Add a boolean
	"no_show_all" property with setter and getter. When TRUE, it keeps
	gtk_widget_{hide,show}_all() from modifying the visibility of the
	widget and its children.
2003-09-21 22:04:48 +00:00
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
caf380c793 Add value parameter to allow setting the currently selected group member
2003-09-15  Matthias Clasen  <maclas@gmx.de>

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

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

	* gtk/gtk-sections.txt: Add gtk_action_group_add_toggle_actions[_full].
2003-09-15 19:51:55 +00:00
Matthias Clasen
df1452102e Add deprecation notes. (#121955)
2003-09-12  Matthias Clasen  <maclas@gmx.de>

	* gdk/gdkdraw.c (gdk_draw_string, gdk_draw_text)
	(gdk_draw_text_wc): Add deprecation notes.  (#121955)
2003-09-11 22:09:38 +00:00
Matthias Clasen
02a963e15b Test gtk_ui_manager_add_ui().
2003-09-04  Matthias Clasen  <maclas@gmx.de>

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

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

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

	* gtk/gtk-sections.txt: Add GtkUIManagerItemType.
2003-09-04 20:39:15 +00:00
Matthias Clasen
6c227b5a65 Use "position" instead of "pos".
* tests/merge-2.ui: Use "position" instead of "pos".

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

	* gtk/tmpl/gtkuimanager.sgml: Change the name of the "pos"
	attribute to "position".
2003-09-04 09:07:23 +00:00
Matthias Clasen
0a163c7fd7 Doc tweaks. 2003-09-04 00:49:37 +00:00
Matthias Clasen
2ece92c8f3 Doc addition.
* gtk/gtkactiongroup.c (gtk_action_group_new): Doc addition.
2003-09-01 23:45:54 +00:00
Matthias Clasen
7899a702ee Additions. 2003-09-01 23:20:33 +00:00
Matthias Clasen
cbbe97abf5 Shorten the names of some static functions.
2003-09-02  Matthias Clasen  <maclas@gmx.de>

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

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

	* gtk/gtkuimanager.[ch] (gtk_ui_manager_new_merge_id): Renamed
	gtk_ui_manager_next_merge_id to gtk_ui_manager_new_merge_id
	and made it public.
	(gtk_ui_manager_add_ui): New function to add UI elements
	without juggling XML fragments, currently restricted to menuitems,
	toolitems and separators. Actions still come from registered
	action groups.
2003-09-01 22:15:16 +00:00
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