Switch from GtkItemFactory to GtkUIManager. The migration is almost

2004-04-29  Michael Natterer  <mitch@gimp.org>

	Switch from GtkItemFactory to GtkUIManager. The migration is
	almost complete, still stuff missing/incomplete, definitely added
	a bunch of new bugs...

	* app/actions/*-commands.[ch]: converted all callback from
	GtkItemFactory callbacks to GtkAction callbacks.

	* app/actions/debug-actions.c
	* app/actions/gradient-editor-actions.c
	* app/actions/help-actions.c
	* app/actions/plug-in-actions.c
	* app/actions/qmask-actions.c
	* app/actions/tool-options-actions.c: various fixes.

	* app/display/gimpdisplay.[ch]
	* app/display/gimpdisplayshell-appearance.[ch]
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell.[ch]: move everything from
	GtkItemFactory to GtkUIManager.

	* app/gui/dialogs.[ch]: added new function dialogs_get_toolbox().
	Needed because the action callbacks don't have a widget parameter
	and sometimes we need a parent window for showing dialogs.

	* app/gui/Makefile.am
	* app/gui/brushes-menu.[ch]
	* app/gui/buffers-menu.[ch]
	* app/gui/channels-menu.[ch]
	* app/gui/colormap-editor-menu.[ch]
	* app/gui/dialogs-menu.[ch]
	* app/gui/documents-menu.[ch]
	* app/gui/error-console-menu.[ch]
	* app/gui/fonts-menu.[ch]
	* app/gui/gradient-editor-menu.[ch]
	* app/gui/gradients-menu.[ch]
	* app/gui/images-menu.[ch]
	* app/gui/layers-menu.[ch]
	* app/gui/palette-editor-menu.[ch]
	* app/gui/palettes-menu.[ch]
	* app/gui/patterns-menu.[ch]
	* app/gui/qmask-menu.[ch]
	* app/gui/templates-menu.[ch]
	* app/gui/vectors-menu.[ch]: removed these files.

	* app/gui/gui.c: create a global UI manager for the image popup
	menu and the toolbox menubar.

	* app/gui/menus.[ch]: removed all GtkItemFactory code.

	* app/gui/image-menu.[ch]
	* app/gui/toolbox-menu.[ch]: removed everything except the trivial
	setup_funcs.

	* app/gui/file-open-menu.c
	* app/gui/file-save-menu.c
	* app/gui/tool-options-menu.c: don't use the macros from menus.h
	any more, they are gone.

	* app/gui/gui-vtable.c
	* app/gui/plug-in-menus.[ch]: create/destroy the dynamic plug-in
	menu entries.

	* app/tools/gimpimagemaptool.c: s/gimp_item_factory_update/
	gimp_ui_manager_update/g

	* app/widgets/gimpuimanager.[ch]: added API to get an action
	group by name.

	* app/widgets/gimpmenufactory.c: don't choke on the item_factory
	entries being NULL.

	* app/widgets/gimpactiongroup.c: make sure booleans set using
	g_object_set() only have TRUE or FALSE values.

	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimpcomponenteditor.c
	* app/widgets/gimpcontainereditor.[ch]
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainertreeview.c
	* app/widgets/gimpdockable.[ch]
	* app/widgets/gimpdocked.[ch]
	* app/widgets/gimpeditor.[ch]
	* app/widgets/gimperrorconsole.c
	* app/widgets/gimpgradienteditor.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimppaletteeditor.c
	* app/widgets/gimptoolbox.c
	* app/widgets/gimptooloptionseditor.c: removed all GtkItemFactory
	code and enable the #if 0'ed UI manager stuff.

	* menus/gradient-editor-menu.xml: fixed typos.

	* menus/image-menu.xml: duplicate everything so we have both
	an image menubar and an image popup menu. Badly cries for an
	XSL processor.

	* menus/toolbox-menu.xml: added an "Extensions" placeholder.
This commit is contained in:
Michael Natterer
2004-04-29 12:52:29 +00:00
committed by Michael Natterer
parent c93c27e3ec
commit 4654280114
170 changed files with 2084 additions and 10348 deletions

View File

@ -2,6 +2,9 @@
<!DOCTYPE ui SYSTEM "gtkuimanager.dtd">
<ui>
<!-- The Image Menu Bar -->
<menubar action="image-menubar">
<menu action="file-menu" name="File">
@ -316,7 +319,7 @@
</menu>
<menu action="plug-in-noise-menu" name="Noise">
</menu>
<menu action="plug-in-edge-detect-menu" name="Edge Detect">
<menu action="plug-in-edge-detect-menu" name="Edge-Detect">
</menu>
<menu action="plug-in-enhance-menu" name="Enhance">
</menu>
@ -354,4 +357,359 @@
</menu>
</menubar>
<!-- The Image Popup Menu -->
<popup action="image-popup">
<menu action="file-menu" name="File">
<menuitem action="file-new" />
<menuitem action="file-open" />
<menu action="file-open-recent-menu" name="Open Recent">
<placeholder name="file-open-recent-placeholder" />
<separator />
<menuitem action="dialogs-document-history" />
</menu>
<menu action="file-acquire-menu" name="Acquire">
</menu>
<separator />
<placeholder name="Save">
<menuitem action="file-save" />
<menuitem action="file-save-as" />
<menuitem action="file-save-a-copy" />
<menuitem action="file-save-as-template" />
<menuitem action="file-revert" />
<separator />
</placeholder>
<separator />
<menuitem action="file-close" />
<menuitem action="file-quit" />
</menu>
<menu action="edit-menu" name="Edit">
<menuitem action="edit-undo" />
<menuitem action="edit-redo" />
<menuitem action="dialogs-undo-history" />
<separator />
<placeholder name="Cut">
<menuitem action="edit-cut" />
</placeholder>
<placeholder name="Copy">
<menuitem action="edit-copy" />
</placeholder>
<placeholder name="Paste">
<menuitem action="edit-paste" />
<menuitem action="edit-paste-into" />
<menuitem action="edit-paste-as-new" />
</placeholder>
<menu action="edit-buffer-menu" name="Buffer">
<menuitem action="edit-named-cut" />
<menuitem action="edit-named-copy" />
<menuitem action="edit-named-paste" />
</menu>
<separator />
<menuitem action="edit-clear" />
<menuitem action="edit-fill-fg" />
<menuitem action="edit-fill-bg" />
<menuitem action="edit-fill-pattern" />
<menuitem action="edit-stroke" />
<menuitem action="vectors-stroke" />
<separator />
</menu>
<menu action="select-menu" name="Select">
<menuitem action="select-all" />
<menuitem action="select-none" />
<menuitem action="select-invert" />
<menuitem action="select-from-vectors" />
<menuitem action="select-float" />
<menuitem action="select-by-color" />
<separator />
<menuitem action="select-feather" />
<menuitem action="select-sharpen" />
<menuitem action="select-shrink" />
<menuitem action="select-grow" />
<menuitem action="select-border" />
<separator />
<menuitem action="select-toggle-qmask" />
<menuitem action="select-save" />
<menuitem action="select-to-vectors" />
</menu>
<menu action="view-menu" name="View">
<menuitem action="view-new" />
<menuitem action="view-dot-for-dot" />
<menu action="view-zoom-menu" name="Zoom">
<menuitem action="view-zoom-out" />
<menuitem action="view-zoom-in" />
<menuitem action="view-zoom-fit" />
<separator />
<menuitem action="view-zoom-16-1" />
<menuitem action="view-zoom-8-1" />
<menuitem action="view-zoom-4-1" />
<menuitem action="view-zoom-2-1" />
<menuitem action="view-zoom-1-1" />
<menuitem action="view-zoom-1-2" />
<menuitem action="view-zoom-1-4" />
<menuitem action="view-zoom-1-8" />
<menuitem action="view-zoom-1-16" />
<separator />
<menuitem action="view-zoom-other" />
</menu>
<separator />
<menuitem action="view-info-window" />
<menuitem action="view-navigation-window" />
<menuitem action="view-display-filters" />
<separator />
<menuitem action="view-show-selection" />
<menuitem action="view-show-layer-boundary" />
<menuitem action="view-show-guides" />
<menuitem action="view-snap-to-guides" />
<menuitem action="view-show-grid" />
<menuitem action="view-snap-to-grid" />
<separator />
<menuitem action="view-show-menubar" />
<menuitem action="view-show-rulers" />
<menuitem action="view-show-scrollbars" />
<menuitem action="view-show-statusbar" />
<separator />
<menuitem action="view-shrink-wrap" />
<menuitem action="view-fullscreen" />
<menuitem action="view-move-to-screen" />
</menu>
<menu action="image-menu" name="Image">
<menu action="image-mode-menu" name="Mode">
<menuitem action="image-convert-rgb" />
<menuitem action="image-convert-grayscale" />
<menuitem action="image-convert-indexed" />
</menu>
<menu action="image-transform-menu" name="Transform">
<menuitem action="image-flip-horizontal" />
<menuitem action="image-flip-vertical" />
<separator />
<menuitem action="image-rotate-90" />
<menuitem action="image-rotate-270" />
<menuitem action="image-rotate-180" />
<separator />
</menu>
<separator />
<menuitem action="image-resize" />
<menuitem action="image-scale" />
<menuitem action="image-crop" />
<menuitem action="image-duplicate" />
<separator />
<menuitem action="image-merge-layers" />
<menuitem action="image-flatten" />
<separator />
<menuitem action="image-configure-grid" />
</menu>
<menu action="layers-menu" name="Layer">
<menuitem action="layers-new" />
<menuitem action="layers-duplicate" />
<menuitem action="layers-anchor" />
<menuitem action="layers-merge-down" />
<menuitem action="layers-delete" />
<menuitem action="layers-text-discard" />
<separator />
<menu action="layers-stack-menu" name="Stack">
<menuitem action="layers-select-previous" />
<menuitem action="layers-select-next" />
<menuitem action="layers-select-top" />
<menuitem action="layers-select-bottom" />
<separator />
<menuitem action="layers-raise" />
<menuitem action="layers-lower" />
<menuitem action="layers-raise-to-top" />
<menuitem action="layers-lower-to-bottom" />
</menu>
<menu action="layers-colors-menu" name="Colors">
<menuitem action="tools-color-balance" />
<menuitem action="tools-hue-saturation" />
<menuitem action="tools-colorize" />
<menuitem action="tools-brightness-contrast" />
<menuitem action="tools-threshold" />
<menuitem action="tools-levels" />
<menuitem action="tools-curves" />
<menuitem action="tools-posterize" />
<separator />
<menuitem action="drawable-desaturate" />
<menuitem action="drawable-invert" />
<menu action="layers-colors-auto-menu" name="Auto">
<menuitem action="drawable-equalize" />
</menu>
<separator />
<menuitem action="dialogs-histogram" />
</menu>
<menu action="layers-mask-menu" name="Mask">
<menuitem action="layers-mask-add" />
<menuitem action="layers-mask-apply" />
<menuitem action="layers-mask-delete" />
<separator />
<menuitem action="layers-mask-selection-replace" />
<menuitem action="layers-mask-selection-add" />
<menuitem action="layers-mask-selection-subtract" />
<menuitem action="layers-mask-selection-intersect" />
</menu>
<menu action="layers-transparency-menu" name="Transparency">
<menuitem action="layers-alpha-add" />
<separator />
<menuitem action="layers-alpha-selection-replace" />
<menuitem action="layers-alpha-selection-add" />
<menuitem action="layers-alpha-selection-subtract" />
<menuitem action="layers-alpha-selection-intersect" />
<separator />
</menu>
<menu action="layers-transform-menu" name="Transform">
<menuitem action="drawable-flip-horizontal" />
<menuitem action="drawable-flip-vertical" />
<separator />
<menuitem action="drawable-rotate-90" />
<menuitem action="drawable-rotate-270" />
<menuitem action="drawable-rotate-180" />
<separator />
<menuitem action="drawable-offset" />
</menu>
<separator />
<menuitem action="layers-resize" />
<menuitem action="layers-resize-to-image" />
<menuitem action="layers-scale" />
<menuitem action="layers-crop" />
<separator />
</menu>
<menu action="tools-menu" name="Tools">
<menuitem action="dialogs-toolbox" />
<menuitem action="tools-default-colors" />
<menuitem action="tools-swap-colors" />
<separator />
<menu action="tools-select-menu" name="Selection Tools">
<menuitem action="tools-rect-select" />
<menuitem action="tools-ellipse-select" />
<menuitem action="tools-free-select" />
<menuitem action="tools-by-color-select" />
<menuitem action="tools-iscissors" />
</menu>
<menu action="tools-paint-menu" name="Paint Tools">
<menuitem action="tools-bucket-fill" />
<menuitem action="tools-blend" />
<menuitem action="tools-pencil" />
<menuitem action="tools-paintbrush" />
<menuitem action="tools-eraser" />
<menuitem action="tools-airbrush" />
<menuitem action="tools-ink" />
<menuitem action="tools-clone" />
<menuitem action="tools-convolve" />
<menuitem action="tools-smudge" />
<menuitem action="tools-dodge-burn" />
</menu>
<menu action="tools-transform-menu" name="Transform Tools">
<menuitem action="tools-move" />
<menuitem action="tools-crop" />
<menuitem action="tools-rotate" />
<menuitem action="tools-shear" />
<menuitem action="tools-perspective" />
<menuitem action="tools-flip" />
</menu>
<menu action="tools-color-menu" name="Color Tools">
<menuitem action="tools-color-balance" />
<menuitem action="tools-hue-saturation" />
<menuitem action="tools-colorize" />
<menuitem action="tools-brightness-contrast" />
<menuitem action="tools-threshold" />
<menuitem action="tools-levels" />
<menuitem action="tools-curves" />
<menuitem action="tools-posterize" />
</menu>
<menuitem action="tools-vector" />
<menuitem action="tools-color-picker" />
<menuitem action="tools-magnify" />
<menuitem action="tools-measure" />
<menuitem action="tools-text" />
</menu>
<menu action="dialogs-menu" name="Dialogs">
<menu action="dialogs-new-dock-menu" name="Create New Dock">
<menuitem action="dialogs-new-dock-lcp" />
<menuitem action="dialogs-new-dock-data" />
<menuitem action="dialogs-new-dock-stuff" />
</menu>
<menuitem action="dialogs-tool-options" />
<menuitem action="dialogs-device-status" />
<separator />
<menuitem action="dialogs-layers" />
<menuitem action="dialogs-channels" />
<menuitem action="dialogs-vectors" />
<menuitem action="dialogs-indexed-palette" />
<menuitem action="dialogs-histogram" />
<menuitem action="dialogs-selection-editor" />
<menuitem action="dialogs-navigation" />
<menuitem action="dialogs-undo-history" />
<separator />
<menuitem action="dialogs-colors" />
<menuitem action="dialogs-brushes" />
<menuitem action="dialogs-patterns" />
<menuitem action="dialogs-gradients" />
<menuitem action="dialogs-palettes" />
<menuitem action="dialogs-fonts" />
<menuitem action="dialogs-buffers" />
<separator />
<menuitem action="dialogs-images" />
<menuitem action="dialogs-document-history" />
<menuitem action="dialogs-templates" />
<menuitem action="dialogs-tools" />
<menuitem action="dialogs-error-console" />
</menu>
<menu action="plug-in-menu" name="Filters">
<menuitem action="plug-in-repeat" />
<menuitem action="plug-in-reshow" />
<separator />
<menu action="plug-in-blur-menu" name="Blur">
</menu>
<menu action="plug-in-colors-menu" name="Colors">
<menu action="plug-in-colors-map-menu" name="Map">
</menu>
</menu>
<menu action="plug-in-noise-menu" name="Noise">
</menu>
<menu action="plug-in-edge-detect-menu" name="Edge-Detect">
</menu>
<menu action="plug-in-enhance-menu" name="Enhance">
</menu>
<menu action="plug-in-generic-menu" name="Generic">
</menu>
<separator />
<menu action="plug-in-glass-effects-menu" name="Glass Effects">
</menu>
<menu action="plug-in-light-effects-menu" name="Light Effects">
</menu>
<menu action="plug-in-distorts-menu" name="Distorts">
</menu>
<menu action="plug-in-artistic-menu" name="Artistic">
</menu>
<menu action="plug-in-map-menu" name="Map">
</menu>
<menu action="plug-in-render-menu" name="Render">
<menu action="plug-in-render-clouds-menu" name="Clouds">
</menu>
<menu action="plug-in-render-nature-menu" name="Nature">
</menu>
<menu action="plug-in-render-pattern-menu" name="Pattern">
</menu>
</menu>
<menu action="plug-in-web-menu" name="Web">
</menu>
<separator />
<menu action="plug-in-animation-menu" name="Animation">
</menu>
<menu action="plug-in-combine-menu" name="Combine">
</menu>
<separator />
<menu action="plug-in-toys-menu" name="Toys">
</menu>
</menu>
</popup>
</ui>