Commit Graph

40 Commits

Author SHA1 Message Date
Michael Natterer f3d3a3a6b9 app/actions/context-actions.c app/actions/context-commands.[ch] added
2004-08-05  Michael Natterer  <mitch@gimp.org>

	* app/actions/context-actions.c
	* app/actions/context-commands.[ch]
	* menus/image-menu.xml.in: added actions, callbacks and menu items
	for the brush shape and spikes.
2004-08-05 10:29:19 +00:00
Sven Neumann 1bf6319d1b commented out "Context" menu now that we have a shortcut editor.
2004-07-27  Sven Neumann  <sven@gimp.org>

	* menus/image-menu.xml.in: commented out "Context" menu now that
	we have a shortcut editor.
2004-07-27 21:17:16 +00:00
Michael Natterer a2b85a62b0 new function which clears the whole list of data set by plug-ins.
2004-07-26  Michael Natterer  <mitch@gimp.org>

	* app/pdb/procedural_db.[ch] (procedural_db_free_data): new
	function which clears the whole list of data set by plug-ins.

	(procedural_db_free): use it.

	* app/actions/plug-in-actions.c
	* app/actions/plug-in-commands.[ch]: added action, callback and
	confirmation dialog for "Reset all filters to default values".
	Somehow addresses bug #81015.

	* app/widgets/gimphelp-ids.h: added a help ID for the new action.

	* menus/image-menu.xml.in: added it to the "Filters" submenu.
2004-07-26 21:07:15 +00:00
Michael Natterer 7c7879b669 changed names of actions which select brushes, patterns etc. from e.g.
2004-07-21  Michael Natterer  <mitch@gimp.org>

	* app/actions/context-actions.c: changed names of actions which
	select brushes, patterns etc. from e.g. "context-brush-first" to
	"context-brush-select-first".

	* menus/image-menu.xml.in: changed accordingly.
2004-07-21 12:53:38 +00:00
Sven Neumann 996b45696e app/actions/Makefile.am app/actions/file-dialog-actions.[ch]
2004-07-17  Sven Neumann  <sven@gimp.org>

	* app/actions/Makefile.am
	* app/actions/file-dialog-actions.[ch]
	* app/actions/file-open-actions.[ch]
	* app/actions/file-save-actions.[ch]: these aren't needed any
	longer.

	* app/actions/actions.c: changed accordingly.

	* app/menus/Makefile.am
	* app/menus/file-dialog-menu.[ch]
	* app/menus/file-open-menu.[ch]
	* app/menus/file-save-menu.[ch]: these aren't needed any longer.

	* app/menus/menus.c: changed accordingly.

	* menus/Makefile.am
	* menus/file-open-menu.xml
	* menus/file-save-menu.xml: these are also not needed any longer.
2004-07-17 12:19:58 +00:00
Michael Natterer 5e25cdd239 applied patch from Brion Vibber which adds <Toolbox>/Acquire/Paste as new.
2004-07-12  Michael Natterer  <mitch@gimp.org>

	* menus/toolbox-menu.xml.in: applied patch from Brion Vibber
	which adds <Toolbox>/Acquire/Paste as new. Fixes bug #147358.
2004-07-12 16:09:01 +00:00
Michael Natterer 9fe8e84963 app/actions/view-actions.c added actions & callbacks to configure the
2004-06-22  Michael Natterer  <mitch@gimp.org>

	* app/actions/view-actions.c
	* app/actions/view-commands.[ch]: added actions & callbacks to
	configure the canvas padding color.

	* app/widgets/gimphelp-ids.h
	* menus/image-menu.xml.in: added the actions' help IDs and menu entries.

	* app/display/display-enums.h: added /*< skip >*/'ed enum value
	GIMP_CANVAS_PADDING_MODE_RESET.

	* app/display/gimpdisplayshell-appearance.c
	* app/display/gimpdisplayshell-callbacks.[ch]
	* app/display/gimpdisplayshell-handlers.c
	* app/display/gimpdisplayshell.[ch]: removed the canvas padding
	button and its popup menu (fixes bug #142996). Instead, added a
	toggle button which allows to zoom the image when the window is
	resized (as known from sodipodi, except it doesn't work as nice
	yet :-) improvements to the algorithm are welcome).
	Cleaned up the GimpDisplayShell struct a bit and renamed some
	of its members.

	* libgimpwidgets/gimpstock.[ch]
	* themes/Default/images/Makefile.am
	* themes/Default/images/stock-zoom-follow-window-12.png: added new
	icon for the new display toggle button.
2004-06-22 16:31:27 +00:00
Philip Lafleur c7364a64aa Changed "Zoom to Fit Window" command to "Fit Image in Window" and added
2004-06-20  Philip Lafleur  <plafleur@cvs.gnome.org>

	* app/display/gimpdisplayshell-scale.[ch]:
	* app/display/gimpnavigationview.[ch]:
	* app/actions/view-actions.c:
	* app/actions/view-commands.[ch]:
	* app/widgets/gimphelp-ids.h:
	* menus/image-menu.xml.in: Changed "Zoom to Fit Window" command
	to "Fit Image in Window" and added another command, "Fit Image
	to Window", that zooms according to the opposite dimension. Fixes
	bug #144597.
2004-06-20 12:09:03 +00:00
Sven Neumann dce97c4e33 added missing menu entries (bug #144449).
2004-06-16  Sven Neumann  <sven@gimp.org>

	* menus/image-menu.xml.in: added missing menu entries (bug #144449).
2004-06-16 12:05:28 +00:00
Michael Natterer 8ab1ae98a3 app/actions/Makefile.am app/actions/context-actions.[ch] added new action
2004-06-15  Michael Natterer  <mitch@gimp.org>

	* app/actions/Makefile.am
	* app/actions/context-actions.[ch]
	* app/actions/context-commands.[ch]: added new action group to
	modify all GimpContext properties. So far there are actions to
	cycle through the lists of brushes, patterns etc., to change the
	opacity, to swap and default colors and to edit generated brushes.

	* app/actions/actions.c: register the new "context" action group.

	* app/actions/tools-actions.c
	* app/actions/tools-commands.[ch]: removed "tools-default-colors"
	and "tools-swap-colors" actions and callbacks because they are
	in the "context" action group now.

	* app/menus/menus.c: add the "context" group to the <Image> and
	<Dock> UI managers.

	* menus/image-menu.xml.in: changed accordingly. Added a temporary
	"Context" menu to test and debug the new actions.
2004-06-15 15:42:50 +00:00
Sven Neumann 69ccf485c7 added "Selection Editor" to the Selection menu. Still hoping for the great
2004-06-09  Sven Neumann  <sven@gimp.org>

	* menus/image-menu.xml.in: added "Selection Editor" to the
	Selection menu. Still hoping for the great menu reorganization
	though...
2004-06-09 00:31:04 +00:00
Michael Natterer 421b2a0d0e added alternative actions "vectors-selection-from-vectors" and
2004-06-03  Michael Natterer  <mitch@gimp.org>

	* app/actions/vectors-actions.c: added alternative actions
	"vectors-selection-from-vectors" and
	"vectors-selection-to-vectors-short" with different labels suited
	for the "Select" menu.

	* app/actions/select-actions.c: removed "select-from-vectors"
	and "select-to-vectors" (to vectors was crashing anyway).

	* app/actions/select-commands.[ch]: removed
	select_from_vectors_cmd_callback(). Fixes code dupliction.

	* menus/image-menu.xml.in
	* menus/selection-editor-menu.xml: changed accordingly.
2004-06-03 09:47:05 +00:00
Sven Neumann a03ad36ca1 app/Makefile.am app/actions/file-actions.c app/actions/file-commands.[ch]
2004-05-31  Sven Neumann  <sven@gimp.org>

	* app/Makefile.am
	* app/actions/file-actions.c
	* app/actions/file-commands.[ch]
	* app/gui/Makefile.am
	* app/gui/file-open-location-dialog.[ch]
	* app/widgets/gimphelp-ids.h
	* menus/image-menu.xml.in
	* menus/toolbox-menu.xml.in: added a rudimentary "Open Location"
	dialog.
2004-05-31 14:40:10 +00:00
Michael Natterer fe03c38457 app/actions/file-actions.c removed action "file-new", added action
2004-05-25  Michael Natterer  <mitch@gimp.org>

	* app/actions/file-actions.c
	* app/actions/file-commands.[ch]: removed action "file-new", added
	action "file-open-from-image".

	* app/actions/image-actions.c
	* app/actions/image-commands.[ch]: added actions "image-new" and
	"image-new-from-image".

	* menus/image-menu.xml.in: use the "-from-image" variants of
	the "new" and "open" actions so the dialogs are preconfigured
	from the image they were invoked from (regression fix).

	* menus/toolbox-menu.xml.in: s/file-new/image-new/.
2004-05-25 12:02:54 +00:00
Michael Natterer cf3533ba9c put the image popup menu into a dummy menubar to work around the silly
2004-05-17  Michael Natterer  <mitch@gimp.org>

	* menus/menus.xsl: put the image popup menu into a dummy menubar
	to work around the silly GtkUIManager restriction that popup menus
	can't have tearoff items.

	* app/menus/menus.c
	* app/menus/image-menu.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/gui/gui-vtable.c
	* app/menus/plug-in-menus.c: changed accordingly.

	* app/gui/gui.c (gui_restore_after_callback): connect to
	"notify::tearoff-menus" of GimpGuiConfig and reconfigure the
	global image UI manager accordingly.

	* app/config/gimpguiconfig.c: removed GIMP_PARAM_RESTART from the
	"tearoff-menus" property because GtkUIManager can change this on
	the fly.

	* app/display/gimpdisplayshell.[ch]: added the menubar to the
	GimpDisplayShell struct. Some cleanup in gimp_display_shell_new().

	* app/display/gimpdisplayshell-appearance.c
	(gimp_display_shell_set_show_menubar): use shell->menubar instead
	of asking the UI manager.

	* app/widgets/gimpuimanager.[ch]: changed gimp_ui_manager_ui_get()
	to transparently load the XML files even if a sub-widget was
	requested. Reordered parameters of gimp_ui_manager_ui_popup().
	Lots of internal cleanups.

	* app/widgets/gimpdockable.c
	* app/widgets/gimptooloptionseditor.c: simplified accordingly.

	* app/widgets/gimpeditor.[ch]: added new function
	gimp_editor_popup_menu() which takes a GimpMenuPositionFunc and
	updates/shows the editor's menu.

	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimpcomponenteditor.c
	* app/widgets/gimpcontainereditor.c
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainertreeview.c
	* app/widgets/gimperrorconsole.c
	* app/widgets/gimpgradienteditor.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimppaletteeditor.c: use gimp_editor_popup_menu().

	* app/widgets/gimptoolbox.c: moved all code from
	gimp_toolbox_new() to GObject::constructor().
2004-05-17 13:38:03 +00:00
Michael Natterer b8739d5901 added "name" attributes to all submenus.
2004-05-13  Michael Natterer  <mitch@gimp.org>

	* menus/tool-options-menu.xml: added "name" attributes to all
	submenus.

	* app/menus/tool-options-menu.c: use the menu names instead of the
	overly long action names.

	* app/actions/colormap-editor-commands.c
	* app/actions/tool-options-commands.c: added some callback
	implementations.

	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimptooloptionseditor.c: removed the callbacks here
	and use action buttons.

	* app/actions/actions.c
	* app/actions/colormap-editor-actions.c
	* app/actions/edit-actions.c: code review / cleanup.
2004-05-13 15:50:55 +00:00
Michael Natterer 2632cd8f64 app/actions/documents-actions.c app/actions/documents-commands.c
2004-05-12  Michael Natterer  <mitch@gimp.org>

	* app/actions/documents-actions.c
	* app/actions/documents-commands.c
	* app/actions/edit-actions.c
	* app/actions/edit-commands.[ch]
	* app/actions/layers-actions.c
	* app/actions/layers-commands.c
	* app/actions/select-actions.c
	* app/actions/select-commands.[ch]
	* app/actions/vectors-actions.c
	* app/actions/vectors-commands.[ch]: added tooltips for actions
	which are now used for dialog buttons, added callback
	implementations which formerly lived in various widgets, moved
	some actions around and did some general cleanups.

	* menus/image-menu.xml.in: s/edit-stroke/select-stroke/

	* menus/Makefile.am
	* menus/selection-editor-menu.xml: new popup menu.

	* app/menus/menus.c: register <SelectionEditor> and <UndoEditor>
	UI managers.

	* app/widgets/gimpeditor.[ch]: added construct properties
	"menu-factory", "menu-identifier", "ui-path" and "popup-data".
	Implement GObject::constructor() and create the UI manager
	if all needed properties were set. Enables creating action
	buttons at widget construction time because they need a
	UI manager.

	(gimp_editor_add_action_button): changed to take a va_list of
	"extended" actions which are invoked if the resp. button emits
	"extended_clicked". Store the actions and their modifier masks in
	a list attached to the button.

	* app/widgets/gimpcontainerview.c
	(gimp_container_view_item_selected): if the view has container
	*and* context, simply change the context and return.

	(gimp_container_view_context_changed): don't emit "select_item"
	manually but simply call gimp_container_view_select_item().

	(gimp_container_view_viewable_dropped): use
	gimp_container_view_item_selected() instead of changing the
	context directly.

	* app/widgets/gimpcontainereditor.c
	(gimp_container_editor_select_item): update the UI manager.

	* app/widgets/gimpdockable.c: don't try to fiddle with the
	dialog's menu if it doesn't have a ui_path (happens if the UI
	manager is just a collection of actions for the dialog buttons and
	has no menu registered).

	* app/widgets/gimpimageeditor.c: connect to the image's "flush"
	signal and update the UI manager in the callback.

	* app/widgets/gimpitemtreeview.c: use GimpEditor's construct
	properties to create the UI manager so GimpItemTreeView subclasses
	can have action buttons. Update the UI manager in
	gimp_item_tree_view_select_item().

	* app/widgets/gimpbufferview.c
	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpdatafactoryview.c
	* app/widgets/gimpfontview.c
	* app/widgets/gimpimageview.c
	* app/widgets/gimptemplateview.c
	* app/widgets/gimptoolview.c: changed calls to
	gimp_editor_add_action_button() accordingly and removed some
	unneeded select_item() implementations.

	* app/widgets/gimpchanneltreeview.c
	* app/widgets/gimpvectorstreeview.[ch]
	* app/widgets/gimpdocumentview.[ch]
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimpselectioneditor.[ch]
	* app/widgets/gimpundoeditor.[ch]: use action buttons and removed
	lots of callbacks which went to the resp. action callbacks.

	* app/widgets/widgets-types.h: removed some now unneeded function
	prototypes.

	* app/gui/dialogs-constructors.c: changed (simplified) many dialog
	constructors accordingly.
2004-05-12 18:36:33 +00:00
Michael Natterer da0de0873f Started making the toolbox configurable. Addresses bug #105764. Not
2004-05-10  Michael Natterer  <mitch@gimp.org>

	Started making the toolbox configurable.
	Addresses bug #105764. Not finished yet.

	* app/core/gimptoolinfo.[ch]: renamed "in_toolbox" to "visible"
	and made it a GObject property.

	* app/tools/gimp-tools.[ch]: added new function
	gimp_tools_get_default_order() which returns a GList of tool
	identifiers.

	* app/actions/tools-actions.c
	* app/actions/tools-commands.[ch]: added actions & callbacks for
	toggling the "visible" boolean and for resetting all tools.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimptoolview.[ch]: new widget which allows to
	toggle a tool's visibility and to reorder the tools.

	* app/widgets/gimptoolbox.[ch]: removed member "GtkWidget *trash"
	and pack all tool buttons into the same wrap box. Connect to
	"reoder" of the tool container and to "notify::visible" of all
	tool infos and update the toolbox accordingly.

	* app/gui/dialogs-constructors.c: create a GimpToolView for the
	tools list/grid.

	* app/menus/menus.c: register a <Tools> menu for the dialog above.

	* menus/Makefile.am
	* menus/tools-menu.xml: added the menu.
2004-05-10 00:41:57 +00:00
Michael Natterer 7b943b64b0 Enabled multiple menu entries per plug-in procedure:
2004-05-06  Michael Natterer  <mitch@gimp.org>

	Enabled multiple menu entries per plug-in procedure:

	* app/plug-in/plug-in-proc.[ch]: changed "gchar *menu_path" to
	"GList *menu_paths".

	* app/plug-in/plug-in-message.c
	* app/plug-in/plug-in-rc.c
	* app/plug-in/plug-in.c
	* app/plug-in/plug-ins.c
	* app/menus/menus.c
	* app/widgets/gimpfiledialog.c
	* app/xcf/xcf.c: changed accordingly.

	* app/actions/file-dialog-actions.c
	* app/actions/plug-in-actions.c: create an action for the first
	element of proc_def->menu_paths.

	* app/gui/gui-vtable.c
	* app/menus/plug-in-menus.[ch]: create proxy widgets for each
	element of proc_def->menu_paths.

	* tools/pdbgen/pdb/plug_in.pdb: added new function
	gimp_plugin_menu_add() which can be called during query() and adds
	a menu path to a procedure registered by the calling plugin.

	* app/pdb/internal_procs.c
	* app/pdb/plug_in_cmds.c
	* libgimp/gimpplugin_pdb.[ch]: regenerated.

	* menus/image-menu.xml.in
	* menus/toolbox-menu.xml.in: added lots of <placeholder>s for
	logical groups (like Image/Resize, Image/Scale, Image/Crop
	etc.). Added empty placeholder File/Send for stuff like print and
	mail. Added an "Acquire" menu under <Image>/File

	* plug-ins/common/mail.c
	* plug-ins/print/print.c
	* plug-ins/common/winprint.c: register under File/Send.

	* plug-ins/common/screenshot.c
	* plug-ins/winsnap/winsnap.c: also register under
	<Image>/File/Acquire.

	* plug-ins/common/autocrop.c
	* plug-ins/common/ccanalyze.c
	* plug-ins/common/colortoalpha.c
	* plug-ins/common/threshold_alpha.c
	* plug-ins/common/zealouscrop.c: register additional menu entries
	under placeholders in the "Image" and "Layer" menus. This is not
	meant to be final but just a hint to keep in mind when
	reorganizing the plug-in menus.
2004-05-06 13:51:56 +00:00
Michael Natterer 9d08d3ed43 app/actions/debug-actions.c app/actions/debug-commands.[ch] added action &
2004-05-05  Michael Natterer  <mitch@gimp.org>

	* app/actions/debug-actions.c
	* app/actions/debug-commands.[ch]
	* menus/toolbox-menu.xml.in: added action & callback which XML-dump
	all UI managers.
2004-05-05 15:54:42 +00:00
Michael Natterer 96ba0235ed app/actions/file-actions.c remove "file-close" action and callback...
2004-05-05  Michael Natterer  <mitch@gimp.org>

	* app/actions/file-actions.c
	* app/actions/file-commands.[ch]: remove "file-close" action and
	callback...

	* app/actions/view-actions.c
	* app/actions/view-commands.[ch]: ...and added it here as
	"view-close" because that's what it does.

	* app/actions/qmask-actions.c
	* app/actions/qmask-commands.c: s/QMask/QuickMask/g

	* app/gui/menus.c: add the "channels" action group to the <Image>
	and <Dock> UI managers, renamed UI manager <Dialogs> to
	<Dockable>.

	* app/widgets/gimpdockbook.c: s/<Dialogs>/<Dockable>/.

	* menus/image-menu.xml.in: s/file-close/view-close/, added
	separators at the end of most menus, moved the bottom group of the
	"View" menu after the zoom group.
2004-05-05 11:40:20 +00:00
Michael Natterer 6bed69024f removed action "select-by-color".
2004-05-05  Michael Natterer  <mitch@gimp.org>

	* app/actions/select-actions.c: removed action "select-by-color".

	* app/tools/gimpbycolorselecttool.c: add the shortcut here.

	* app/actions/tools-actions.c: added alternative tool actions for
	"by-color-select" and "rotate" which are identical to the ones
	generated from the GimpToolInfo except for their label. Make sure
	they have the same accelerators as the generated ones.

	* menus/image-menu.xml.in: use the alternative actions for
	"<Image>/Select/By Color" and
	"<Layer>/Transform/Arbitrary Rotation...".
2004-05-05 01:17:23 +00:00
Michael Natterer 8895917db2 renamed action "qmask-toggle" to "qmask-active" and added new action
2004-05-02  Michael Natterer  <mitch@gimp.org>

	* app/actions/qmask-actions.c: renamed action "qmask-toggle" to
	"qmask-active" and added new action "qmask-toggle" with a label
	and shortcut suited for the "Select" menu.

	* app/actions/select-actions.c: removed "select-toggle-qmask".

	* app/actions/select-commands.[ch]: removed callback
	select_toggle_quickmask_cmd_callback().

	* app/actions/channels-actions.c (channels_actions_update)
	* app/actions/vectors-actions.c (vectors_actions_update): handle
	"data" being both GimpDisplay and GimpDisplayShell so the actions
	can be used in the image menu.

	* menus/image-menu.xml.in: s/select-toggle-qmask/qmask-toggle/.

	* menus/qmask-menu.xml: s/qmask-toggle/qmask-active/.
2004-05-02 19:37:17 +00:00
Sven Neumann b9b3134a12 menus/image-menu.xml.in menus/tool-options-menu.xml use empty elements for
2004-05-02  Sven Neumann  <sven@gimp.org>

	* menus/image-menu.xml.in
	* menus/tool-options-menu.xml
	* menus/toolbox-menu.xml.in: use empty elements for empty menus.
	Makes the XML somewhat easier to read.
2004-05-02 13:48:27 +00:00
Sven Neumann 2fb04d1e1a menus/Makefile.am new file that holds menuitems that appear in several
2004-05-02  Sven Neumann  <sven@gimp.org>

	* menus/Makefile.am
	* menus/dialogs-menuitems.xml: new file that holds menuitems that
	appear in several places.

	* menus/dockable-menu.xml.in: new file used to generate
	dockable-menu.xml.

	* menus/toolbox-menu.xml.in: new file used to generate
	toolbox-menu.xml.

	* menus/image-menu.xml.in: include dialogs-menuitems.xml.

	* menus/menus.xsl: allow inclusion of menuitems using XInclude.
2004-05-02 10:41:28 +00:00
Sven Neumann 41a9add7da added a rule to generate gtkuimanager XML files using an XSL
2004-05-02  Sven Neumann  <sven@gimp.org>

	* menus/Makefile.am: added a rule to generate gtkuimanager XML
	files using an XSL transformation.

	* menus/menus.xsl: a simple XSLT to generate a menubar and a popup
	menu with identical content.

	* menus/image-menu.xml: removed this file from CVS ...

	* menus/image-menu.xml.in: ... and added this instead.

	* HACKING: xsltproc is now needed to build from CVS.
2004-05-01 22:43:15 +00:00
Sven Neumann 4936e9a993 check for xmllint and xsltproc but don't require these tools.
2004-05-01  Sven Neumann  <sven@gimp.org>

	* configure.in: check for xmllint and xsltproc but don't require
	these tools.

	* menus/Makefile.am
	* tips/Makefile.am: simplified "validate" targets.
2004-05-01 17:45:33 +00:00
Michael Natterer 0e1af3ee5a app/actions/Makefile.am app/actions/file-open-actions.[ch] actions for the
2004-04-29  Michael Natterer  <mitch@gimp.org>

	* app/actions/Makefile.am
	* app/actions/file-open-actions.[ch]
	* app/actions/file-save-actions.[ch]: actions for the <Load> and
	<Save> menus...

	* menus/Makefile.am
	* menus/file-open-menu.xml
	* menus/file-save-menu.xml: ...and the menus.

	* app/gui/file-open-menu.[ch]
	* app/gui/file-save-menu.[ch]: ported to UI Manager.

	* app/widgets/gimpfiledialog.[ch]: ditto.

	* app/actions/actions.c
	* app/gui/menus.c
	* app/gui/file-open-dialog.c
	* app/gui/file-save-dialog.c: changed accordingly.

	* app/widgets/gimpuimanager.c: removed debugging code which
	automatically loaded all registered menus. They are now loaded on
2004-04-29 17:47:53 +00:00
Michael Natterer 4654280114 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.
2004-04-29 12:52:29 +00:00
Michael Natterer a5130581db removed "translation-domain" property and simply use gettext(). Plug-In
2004-04-27  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpactiongroup.[ch]: removed "translation-domain"
	property and simply use gettext(). Plug-In domains are handled
	by plug-in-actions.c

	The following change finally starts breaking the old menu system
	while the new one is not fully in place yet. Have fun:

	* menus/image-menu.xml: added several <placeholder>s for plug-ins
	to register their menu entries in the middle of already existing
	menus.

	* app/gui/menus.c
	* plug-ins/common/mail.c
	* plug-ins/print/print.c
	* plug-ins/script-fu/scripts/copy-visible.scm: use the new
	placeholders to register menu entries.
2004-04-27 12:51:08 +00:00
Michael Natterer 4e8105c12f Correctly translated & sorted plug-in actions & menu entries:
2004-04-27  Michael Natterer  <mitch@gimp.org>

	Correctly translated & sorted plug-in actions & menu entries:

	* app/widgets/gimpuimanager.[ch]: added a "gchar *name" property
	and a hash table which keeps all created UI managers (similar to
	GimpActionGroup's hash table). Added function
	gimp_ui_managers_from_name() which returns a list of all managers
	with the given name.

	* app/widgets/gimpmenufactory.c: register a name per UI manager
	and pass the name to gimp_ui_manager_new().

	* app/actions/plug-in-actions.c: added code which correctly
	translates the created plug-in actions and also creates translated
	menu actions for the plug-in's menu_path elements.

	* app/gui/plug-in-menus.[ch]: sort the plug-ins' menu entries
	using a GTree. For each entry, recursivlely create submenus
	from the dynamic menu actions created above before creating
	the plug-in's menu entry itself.

	* app/gui/image-menu.c (image_menu_setup2)
	* app/gui/toolbox-menu.c (toolbox_menu_setup2): call
	plug_in_menus_create2().

	* app/gui/gui-vtable.c (gui_menus_create_entry)
	(gui_menus_delete_entry): added some uglyness which maps old <Prefix>
	menu identifiers to new-style UI manager plus ui_path tuples and
	call plug_in_menus_add,remove_proc() accordingly.

	* menus/image-menu.xml
	* menus/toolbox-menu.xml: added name="Foo" attributes to all menus
	so plug-in entries find their place.
2004-04-27 12:28:27 +00:00
Michael Natterer bb0f359ac4 added GimpUIManagerSetupFunc typedef.
2004-04-26  Michael Natterer  <mitch@gimp.org>

	* app/widgets/widgets-types.h: added GimpUIManagerSetupFunc typedef.

	* app/widgets/gimpuimanager.[ch]: added the setup_func to the
	GimpUIManagerUIEntry struct and to gimp_ui_manager_ui_register().
	Call the setup_func after creating the UI. Replaced the term
	"identifier" by "ui_path".

	* app/widgets/gimpmenufactory.c: ditto.

	* app/gui/menus.c (menus_init): register the new setup_funcs below.

	* app/gui/menus.[ch] (menus_open_recent_add)
	* app/gui/image-menu.[ch] (image_menu_setup2)
	* app/gui/toolbox-menu.[ch] (toolbox_menu_setup2): new setup_funcs
	which add the "Open Recent" menu items.

	* app/actions/file-actions.c: removed "file-open-recent-empty"
	action because it's not needed.

	* menus/image-menu.xml
	* menus/toolbox-menu.xml: removed "file-open-recent-empty" menu
	items and added <placeholder>s for the "Open Recent" menu items.
2004-04-26 15:51:21 +00:00
Michael Natterer 42f79826a9 implemented gimp_action_group_set_action_color() and
2004-04-22  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpactiongroup.[ch]: implemented
	gimp_action_group_set_action_color() and
	gimp_action_group_set_action_viewable().

	* app/actions/*-actions.c: added stock IDs to all actions which
	represent toplevel popup menus. Fixed typos.

	* menus/brushes-menu.xml
	* menus/colormap-editor-menu.xml
	* menus/dockable-menu.xml
	* menus/gradients-menu.xml
	* menus/patterns-menu.xml
	* menus/toolbox-menu.xml: fixed typos.
2004-04-22 16:16:43 +00:00
Michael Natterer 2c601c7dc3 forgot to register the "patterns" actions.
2004-04-21  Michael Natterer  <mitch@gimp.org>

	* app/actions/actions.c: forgot to register the "patterns" actions.

	* app/actions/*-actions.c: added actions representing the toplevel
	menus (popups and menubars). Fixed some typos.

	* menus/*-menu.xml: added action="foo" attributes to all toplevel
	menus. Fixed typos here too.

	* menus/gtkuimanager.dtd: fixed possible attributes.
2004-04-21 16:10:00 +00:00
Michael Natterer 62dcfaecbf app/actions/qmask-actions.c prepared qmask_actions_update() and the qmask
2004-04-21  Michael Natterer  <mitch@gimp.org>

	* app/actions/qmask-actions.c
	* app/actions/qmask-commands.c: prepared qmask_actions_update()
	and the qmask callbacks to be merged into the image ui manager.

	* app/actions/dialogs-actions.c
	* app/actions/edit-actions.c
	* app/actions/file-actions.c
	* app/actions/image-actions.c
	* app/actions/layers-actions.c
	* app/actions/plug-in-actions.c
	* app/actions/tools-actions.c
	* app/actions/view-actions.c: fixed lots of typos and buglets
	spotted in my first test run.

	* app/gui/menus.c: register the needed action groups with the
	<Image> menu.

	* app/tools/gimp-tools.c
	* app/tools/gimpdodgeburntool.[ch]
	* app/tools/gimppaintoptions-gui.c: s/dodgeburn/dodge_burn/g.

	* app/widgets/gimpactionfactory.c
	* app/widgets/gimpmenufactory.[ch]: s/G_GNUC_FUNCTION/G_STRFUNC/g,
	updated copyright header.

	* menus/image-menu.xml: fixed typos and added the "Filters"
	submenus.
2004-04-21 10:55:45 +00:00
Michael Natterer 661f6ddeb8 removed...
2004-04-20  Michael Natterer  <mitch@gimp.org>

	* app/gui/*-commands.[ch]: removed...

	* app/actions/*-commands.[ch]: ...and added here.

	* app/gui/Makefile.am
	* app/gui/*-menu.c
	* app/gui/dialogs-constructors.c
	* app/gui/gui.c
	* app/gui/menus.c
	* app/actions/Makefile.am
	* app/actions/*-actions.c: changed accordingly.

	* app/actions/plug-in-actions.[ch]
	* app/actions/tools-actions.[ch]: new files.

	* app/Makefile.am: had to add more -u evilness because gui/
	and actions/ have cyclic dependencies.

	* menus/image-menu.xml: added some more items.
2004-04-20 13:25:55 +00:00
Michael Natterer 3503b662c1 menus/Makefile.am menus/image-menu.xml more menus.
2004-04-19  Michael Natterer  <mitch@gimp.org>

	* menus/Makefile.am
	* menus/image-menu.xml
	* menus/tool-options-menu.xml: more menus.
2004-04-19 19:36:00 +00:00
Sven Neumann 957015e359 menus/Makefile.am added a DTD (basically copied from the GTK+ API docs).
2004-04-19  Sven Neumann  <sven@gimp.org>

	* menus/Makefile.am
	* menus/gtkuimanager.dtd: added a DTD (basically copied from the
	GTK+ API docs). Added a "validate" rule that allows to easily
	validate the XML files.

	* menus/*.xml: added a DOCTYPE declaration that refers to the
	newly added DTD.

	* app/widgets/gimpenumstore.[ch]:
	* app/widgets/gimpenumcombobox.c: documented the new API.
2004-04-19 15:35:15 +00:00
Michael Natterer 3d6f537009 added the toolbox menu.
2004-04-19  Michael Natterer  <mitch@gimp.org>

	* menus/toolbox-menu.xml: added the toolbox menu.
2004-04-19 15:15:40 +00:00
Michael Natterer 8848558f95 More GtkAction stuff (still unused):
2004-04-19  Michael Natterer  <mitch@gimp.org>

	More GtkAction stuff (still unused):

	* configure.in: added new directories menus/ and app/actions/

	* Makefile.am: build menus/

	* menus/.cvsignore
	* menus/Makefile.am
	* menus/*-menu.xml: new files: XML menu descriptions for each menu
	which is now defined in gui/*-menu.c.

	* app/widgets/widgets-types.h: some typedefs for GimpActionGroup.

	* app/widgets/gimpactiongroup.[ch]: added a "Gimp" construct-only
	property. Added APIs to set actions visible/sensitive/active
	and an unimplemented stub for setting the action's color.

	* app/Makefile.am: build actions/ and link libappactions.a

	* app/actions/.cvsignore
	* app/actions/Makefile.am
	* app/actions/*-actions.[ch]: new files: GtkActions for each
	*-commands.c file in gui/. Ported all "update" functions from the
	*-menu.c files.
	(everything completely unused, untested and partly #if 0'ed)

	* app/core/gimpimage.[ch]: for reasons of (action-) symmetry, added
	API to raise/lower channels/vectors to top/bottom.

	* app/gui/channels-commands.[ch]
	* app/gui/vectors-commands.[ch]: added callbacks for the new
	to top/bottom functions.

	* app/gui/Makefile.am
	* app/gui/dockable-commands.[ch]: new files split out of
	dialogs-commands.[ch].

	* app/gui/dialogs-commands.[ch]
	* app/gui/dialogs-menu.c: changed accordingly.

	* app/gui/edit-commands.[ch]: added edit_paste_into_cmd_callback()
	and remove usage of "guint action".

	* app/gui/image-menu.c: changed accordingly.

	* app/gui/palette-editor-commands.[ch]: split
	+palette_editor_new_color_cmd_callback() into separate callbacks
	for adding from FG and BG.

	* app/gui/palette-editor-menu.c: changed accordingly.
2004-04-19 14:54:24 +00:00