2004-05-19  Manish Singh  <yosh@gimp.org>

        * plug-ins/pygimp/gimpfu.py: Actually return values from the run
        function. Fixes #141338.

2004-05-20  Sven Neumann  <sven@gimp.org>

	* plug-ins/maze/maze_face.c
	* plug-ins/xjt/xjt.c: HIG-ified. Say goodbye to "Parameter Settings".

2004-05-20  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/warp.c
	* plug-ins/common/whirlpinch.c
	* plug-ins/common/wmf.c
	* plug-ins/common/xbm.c
	* plug-ins/common/xpm.c: HIG-ified.

2004-05-19  Manish Singh  <yosh@gimp.org>

	* app/actions/file-actions.c: remove unnecessary G_OBJECT() casts.

	* tools/pdbgen/pdb/help.pdb
	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/paths.pdb
	* tools/pdbgen/pdb/plug_in.pdb: a bit of quoting clean up.

	* tools/pdbgen/pdb/plug_in.pdb: handle icon_data_length properly.

	* app/pdb/plug_in_cmds.c: regenerated.

2004-05-20  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/tga.c
	* plug-ins/common/threshold_alpha.c
	* plug-ins/common/tiff.c
	* plug-ins/common/tile.c
	* plug-ins/common/tileit.c
	* plug-ins/common/uniteditor.c
	* plug-ins/common/unsharp.c
	* plug-ins/common/video.c
	* plug-ins/common/vpropagate.c: HIG-ified.

2004-05-20  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/randomize.c
	* plug-ins/common/ripple.c
	* plug-ins/common/sample_colorize.c
	* plug-ins/common/scatter_hsv.c
	* plug-ins/common/sel_gauss.c
	* plug-ins/common/sharpen.c
	* plug-ins/common/shift.c
	* plug-ins/common/smooth_palette.c
	* plug-ins/common/snoise.c
	* plug-ins/common/sobel.c
	* plug-ins/common/sparkle.c
	* plug-ins/common/spread.c
	* plug-ins/common/struc.c
	* plug-ins/common/sunras.c
	* plug-ins/common/svg.c: HIG-ified.

2004-05-19  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpaction.[ch]: new GtkAction subclass which can
	show either a color or viewable preview in GtkImageMenuItem
	proxies.

	* app/widgets/gimpenumaction.[ch]
	* app/widgets/gimppluginaction.[ch]
	* app/widgets/gimpstringaction.[ch]: derive them from GimpAction.

	* app/widgets/gimpactiongroup.c (gimp_action_group_add_actions):
	add GimpActions, not GtkActions.

	(gimp_action_group_set_action_color)
	(gimp_action_group_set_action_viewable): removed all hacks and
	simply set the "color" or "viewable" properties of the GimpAction
	to change. Fixes color/viewable previews in menus.

	* app/actions/file-actions.c: show previews in the "Open Recent"
	menu items.

	Unrelated:

	* app/widgets/widgets-types.h: removed GimpDockedInterface typedef...
	
	* app/widgets/gimpdocked.h: ...and added it here. We don't have
	class struct typedefs in the types header either.

	* app/actions/edit-actions.c: added <Ctrl>+semicolon as shortcut
	for "edit-fill-pattern".

	* app/actions/gradient-editor-actions.c: added some stock IDs.
	Please comment.

2004-05-19  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/papertile.c
	* plug-ins/common/pat.c
	* plug-ins/common/pixelize.c
	* plug-ins/common/png.c
	* plug-ins/common/postscript.c
	* plug-ins/common/psp.c: HIG-ified.

2004-05-19  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/mapcolor.c
	* plug-ins/common/mblur.c
	* plug-ins/common/mng.c
	* plug-ins/common/mosaic.c
	* plug-ins/common/newsprint.c
	* plug-ins/common/oilify.c: HIG-ified.

2004-05-19  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/hot.c
	* plug-ins/common/iwarp.c
	* plug-ins/common/jpeg.c
	* plug-ins/common/lic.c
	* plug-ins/common/mail.c: HIG-ified.

2004-05-19  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/gauss_iir.c
	* plug-ins/common/gauss_rle.c
	* plug-ins/common/gbr.c
	* plug-ins/common/gee.c
	* plug-ins/common/gee_zoom.c
	* plug-ins/common/gif.c
	* plug-ins/common/gih.c
	* plug-ins/common/glasstile.c
	* plug-ins/common/gtm.c: HIG-ified.

2004-05-19  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/exchange.c: fixed minor dialog layout issues.

	* plug-ins/common/screenshot.c: added the camera icon to the dialog.

	* plug-ins/common/film.c
	* plug-ins/common/fractaltrace.c: HIG-ified.

2004-05-19  Sven Neumann  <sven@gimp.org>

	* app/paint/gimppaintcore.c (gimp_paint_core_interpolate): make
	sure that pressure never becomes negative. Fixes bug #123811;
	thanks to Philip Lafleur for investigating this problem.

2004-05-19  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/channel_mixer.c: added some stock icons.

	* plug-ins/common/edge.c
	* plug-ins/common/emboss.c
	* plug-ins/common/engrave.c
	* plug-ins/common/exchange.c: HIG-ified.

	* plug-ins/common/sel_gauss.c: tiny changes for a more consistent
	HIG-ification.

2004-05-19  Michael Natterer  <mitch@gimp.org>

	* tools/pdbgen/pdb/plug_in.pdb: made plugin_icon_register() an
	underscore-prefixed function which needs to be wrapped.

	* libgimp/gimpplugin_pdb.[ch]: regenerated.

	* libgimp/Makefile.am
	* libgimp/gimp.h
	* libgimp/gimpplugin.[ch]: new files containing
	gimp_plugin_icon_register() which has no "icon_data_length"
	parameter and determines it from the passed icon data.

	* libgimp/gimp.def: added gimp_plugin_icon_register.

	* plug-ins/common/plugindetails.c
	* plug-ins/common/screenshot.c
	* plug-ins/common/uniteditor.c
	* plug-ins/print/print.c: don't pass the icon_data_length.

2004-05-18  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/checkerboard.c
	* plug-ins/common/colorify.c
	* plug-ins/common/colortoalpha.c
	* plug-ins/common/compose.c
	* plug-ins/common/convmatrix.c
	* plug-ins/common/csource.c
	* plug-ins/common/cubism.c
	* plug-ins/common/decompose.c
	* plug-ins/common/deinterlace.c
	* plug-ins/common/depthmerge.c
	* plug-ins/common/despeckle.c
	* plug-ins/common/destripe.c
	* plug-ins/common/diffraction.c
	* plug-ins/common/displace.c: HIG-ified.

2004-05-18  Michael Natterer  <mitch@gimp.org>

	Allow plug-ins to register menu icons. Fixes bug #120500.

	* app/core/core-enums.[ch]: added enum GimpIconType which can
	be one of { STOCK_ID, IMAGE_FILE, INLINE_PIXBUF }.

	* app/config/gimpconfigwriter.[ch] (gimp_config_writer_data)
	* app/config/gimpscanner.[ch] (gimp_scanner_parse_data): new
	functions which write/parse raw binary data. Needed for storing
	inline pixbufs in pluginrc.

	* app/config/gimpconfigwriter.[ch] (gimp_config_writer_identifier):
	new function which writes out an unquoted and unescaped string.

	* app/plug-in/plug-in-proc.[ch] (struct PlugInProcDef): added
	new members "icon_type", "icon_data_length" and "icon_data".
	Reordered members so file_proc specific stuff is at the end.

	(plug_in_proc_def_get_stock_id)
	(plug_in_proc_def_get_pixbuf): new functions to access the
	procedure's icon.

	* app/plug-in/plug-in-rc.c: save/restore the registered icons.

	* app/actions/file-dialog-actions.c
	* app/actions/plug-in-actions.c: set the action's stock ID from
	the procedure's stock ID.

	* app/widgets/gimppluginaction.c
	(gimp_plug_in_action_connect_proxy): if the procedure provides a
	pixbuf, set it as icon for the menu item.

	* app/menus/file-dialog-menu.[ch]
	* app/menus/file-open-menu.c
	* app/menus/file-save-menu.c
	* app/xcf/xcf.c: changed accordingly.

	* tools/pdbgen/pdb/plug_in.pdb (plugin_icon_register): new PDB
	function which can be called during query().

	* tools/pdbgen/enums.pl
	* app/pdb/internal_procs.c
	* app/pdb/plug_in_cmds.c
	* libgimp/gimpenums.h
	* libgimp/gimpplugin_pdb.c
	* libgimp/gimpplugin_pdb.h
	* plug-ins/pygimp/gimpenums.py
	* plug-ins/script-fu/script-fu-constants.c: regenerated.

	* plug-ins/common/plugindetails.c
	* plug-ins/common/uniteditor.c
	* plug-ins/print/print.c: register stock_id icons.

	* plug-ins/common/screenshot.c: register an inline_pixbuf icon for
	testing purposes (used emblem-camera.png from gnome-icon-theme).

	* app/actions/dialogs-actions.c
	* app/actions/file-actions.c: unrelated: added some more icons
	to menu items.

2004-05-18  Maurits Rijk  <m.rijk@chello.nl>

	* plug-ins/common/sel_gauss.c: HIGified, fixed indendation, speed
	improvement (around 70 %).

2004-05-18  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/blur.c
	* plug-ins/common/borderaverage.c
	* plug-ins/common/bumpmap.c
	* plug-ins/common/ccanalyze.c: HIG-ified.

2004-05-18  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpsizeentry.[ch] (gimp_size_entry_attach_label):
	return the created label widget so that it can for example be put
	into a GtkSizeGroup.

	* plug-ins/libgimpoldpreview/gimpoldpreview.[ch]: removed the
	optional "Preview" frame. Always put the preview into a sunken
	frame.

	* plug-ins/common/AlienMap2.c
	* plug-ins/common/blinds.c
	* plug-ins/common/flarefx.c
	* plug-ins/common/glasstile.c
	* plug-ins/common/grid.c
	* plug-ins/common/illusion.c
	* plug-ins/common/jigsaw.c
	* plug-ins/common/max_rgb.c
	* plug-ins/common/nlfilt.c
	* plug-ins/common/noisify.c
	* plug-ins/common/nova.c
	* plug-ins/common/plasma.c
	* plug-ins/common/polar.c
	* plug-ins/common/waves.c
	* plug-ins/common/wind.c: changed accordingly, HIG-ified.

2004-05-18  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/aa.c
	* plug-ins/common/align_layers.c
	* plug-ins/common/animationplay.c
	* plug-ins/common/apply_lens.c: HIG-ified.

2004-05-18  Michael Natterer  <mitch@gimp.org>

	* app/core/gimptoolinfo.c: made the "visible" property serializable.

	* app/tools/gimp-tools.c: store the tools' order and visibility
	in a new config file called "toolrc".

2004-05-18  Sven Neumann  <sven@gimp.org>

	* plug-ins/gimpressionist/brush.c: ported to GtkFileChooser.

	* plug-ins/gimpressionist/gimpressionist.h
	* plug-ins/gimpressionist/ppmtool.[ch]: sprinkled some const
	qualifiers.

2004-05-18  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/curve_bend.c
	* plug-ins/ifscompose/ifscompose.c: ported to GtkFileChooser and
	HIG-ified.

2004-05-18  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/channel_mixer.c
	* plug-ins/common/gqbist.c: ported to GtkFileChooser and
	HIG-ified.

	* plug-ins/common/spheredesigner.c: ditto, but needs more love.

2004-05-18  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/plug-in-proc.[ch] (plug_in_proc_def_get_label): new
	function which returns a newly allocated string which is the menu
	item's name stripped of mnemonics an ellipses.

	* app/actions/plug-in-actions.c (plug_in_actions_update)
	* app/plug-in/plug-in.c (plug_in_get_undo_desc): use the function
	instead of implementing the same twice slightly different.

2004-05-17  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/CEL.c
	* plug-ins/common/CML_explorer.c: ported to GtkFileChooser and
	HIG-ified.

2004-05-17  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/AlienMap2.c: HIG-ified (more or less).

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  Michael Natterer  <mitch@gimp.org>

	* app/actions/tool-options-actions.c: added icons to the Save,
	Load, Rename and Delete submenus.

2004-05-17  Michael Natterer  <mitch@gimp.org>

	* app/actions/edit-actions.c (edit_actions_update): don't forget
	to set the sensitivity of "edit-named-copy".

2004-05-17  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimage.c (gimp_image_init): initialize the image
	unit to GIMP_UNIT_PIXEL.

	* app/pdb/image_cmds.c
	* tools/pdbgen/pdb/image.pdb: allow GIMP_UNIT_PIXEL to be used
	in the gimp_image_set_unit() PDB call.

2004-05-16  Sven Neumann  <sven@gimp.org>

	* plug-ins/script-fu/scripts/old-photo.scm: fixed wrong use of
	layer ID; bug #142326.

2004-05-15  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcurvestool.c: fixed position of vertical line
	indicating the picked color. Patch from William Skaggs and
	Søren Wedel Nielsen; fixes bug #142506.

2004-05-15  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/plug-in-params.c (plug_in_proc_args_check): changed
	warnings to include the invalid menu path. Added check that makes
	sure menu paths are either "<Prefix>" or "<Prefix>/foo" but *not*
	"<Prefix>foo".

	* app/actions/plug-in-actions.c: added function
	plug_in_actions_check_translation() which validates both the
	original and translated menu paths and spits detailed error
	messages if any of them is broken. Made action creation simpler
	(?) and more robust.

	* app/menus/plug-in-menus.c: argh, the translated menu path must
	be a sorting criteria *only*. Fixed the whole stuff to always use
	the original menu path because translation is done entirely by
	plug-in-actions.c. Fixes bad crashes for all locales. Added
	boolean return value to plug_in_menus_build_path() and don't try
	to create the menu item in an invalid location if creating the
	submenus failed.

2004-05-14  Sven Neumann  <sven@gimp.org>

	* app/menus/file-dialog-menu.c: check if the file procedure
	registered a menu path at all. The menu should probably be created
	from the registered menu path, not from gimp->[load|save]_procs.

	* app/plug-in/plug-in-proc.[ch]
	* app/plug-in/plug-ins.c: removed broken code that used to sort
	the file procedures.

	* plug-ins/common/CEL.c
	* plug-ins/common/bz2.c
	* plug-ins/common/gz.c
	* plug-ins/common/pcx.c
	* plug-ins/common/pix.c
	* plug-ins/common/sunras.c
	* plug-ins/sgi/sgi.c
	* plug-ins/xjt/xjt.c: register a mimetype, set a translatable
	action name (mostly taken from shared-mime-info) and register to
	the <Load> and <Save> menus using gimp_plugin_menu_register().

2004-05-14  Michael Natterer  <mitch@gimp.org>

	* app/pdb/fileops_cmds.c
	* libgimp/gimpfileops_pdb.c: regenerated.

2004-05-14  Michael Natterer  <mitch@gimp.org>

	* app/actions/select-actions.c (select_actions_update): don't
	make "select-invert" insensitive if there is no selection.

2004-05-14  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/aa.c
	* plug-ins/common/gbr.c
	* plug-ins/common/gih.c
	* plug-ins/common/gtm.c
	* plug-ins/common/header.c
	* plug-ins/common/pat.c
	* plug-ins/common/pnm.c
	* plug-ins/common/psp.c
	* plug-ins/fits/fits.c
	* plug-ins/gfli/gfli.c: register a mimetype, set a translatable
	action name (mostly taken from shared-mime-info) and register to
	the <Load> and <Save> menus using gimp_plugin_menu_register().

2004-05-14  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/pdb/fileops.pdb: added new PDB function
	gimp_register_file_handler_mime() that allows to associate a MIME
	type with a file procecdurre.

	* app/pdb/fileops_cmds.c
	* app/pdb/internal_procs.c
	* libgimp/gimpfileops_pdb.[ch]: regenerated.

	* app/plug-in/plug-in-proc.[ch]
	* app/plug-in/plug-in-rc.c
	* app/plug-in/plug-ins.[ch]: store a mimetype with file procedures.

	* app/actions/file-commands.c
	* app/core/gimpdocumentlist.[ch]
	* app/core/gimpimagefile.[ch]
	* app/file/file-open.[ch]
	* app/file/file-save.c: set the thumbnail's mimetype from the file
	procedure used to load/save the image.

	* app/xcf/xcf.c
	* plug-ins/bmp/bmp.c
	* plug-ins/common/csource.c
	* plug-ins/common/dicom.c
	* plug-ins/common/gif.c
	* plug-ins/common/gifload.c
	* plug-ins/common/jpeg.c
	* plug-ins/common/mng.c
	* plug-ins/common/png.c
	* plug-ins/common/postscript.c
	* plug-ins/common/psd.c
	* plug-ins/common/psd_save.c
	* plug-ins/common/sunras.c
	* plug-ins/common/svg.c
	* plug-ins/common/tga.c
	* plug-ins/common/tiff.c
	* plug-ins/common/wmf.c
	* plug-ins/common/xbm.c
	* plug-ins/common/xpm.c
	* plug-ins/common/xwd.c
	* plug-ins/faxg3/faxg3.c
	* plug-ins/winicon/main.c: register a mimetype, set a translatable
	action name (taken from shared-mime-info) and register to the <Load>
	and <Save> menus using gimp_plugin_menu_register().

2004-05-13  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/lib.pl
	* tools/pdbgen/pdbgen.pl: added new procedure variable 'since'
	that allows to specify when a new function was added. Use that
	info to generate an appropriate gtk-doc comment.

	* tools/pdbgen/pdb/plug_in.pdb: set since = '2.2' for the new
	function gimp_plugin_menu_register().

	* libgimp/gimpplugin_pdb.c: regenerated.

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  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpcontainer.c (gimp_container_add_handler): don't
	try to lookup detailed "notify::foo" signal specs.

2004-05-13  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimptoolview.[ch]: if in list mode, add an "eye"
	column which toggles tool visibility.

2004-05-13  Michael Natterer  <mitch@gimp.org>

	* app/actions/tools-actions.c (tools_actions_update): don't use
	action_data_get_context() to update the "tools" action group
	because it may return NULL. Use gimp_get_user_context() instead
	because the active tool is global regardless of the action group's
	context. Fixes accidential tool hiding when closing the last
	display.

2004-05-13  Sven Neumann  <sven@gimp.org>

	* libgimpthumb/gimpthumbnail.c (gimp_thumbnail_save_thumb): oops.

2004-05-13  Michael Natterer  <mitch@gimp.org>

	Added GimpViewable infrastructure which enables migrating from
	TempBuf to GdkPixbuf for both providing and getting previews:

	* app/core/gimpviewable.[ch]: added new virtual functions
	GimpViewable::get_pixbuf() and GimpViewable::get_new_pixbuf()
	which are implemented exactly as get_preview() and
	get_new_preview() except that get_new_pixbuf() has a default
	implementation which creates the pixbuf from a TempBuf.

	Renamed public functions _get_preview_pixbuf() and
	_get_new_preview_pixbuf() to _get_pixbuf() and _get_new_pixbuf().

	Added gimp_viewable_get_dummy_pixbuf() and use it from
	gimp_viewable_get_dummy_preview().

	* app/core/gimpimagefile.c (gimp_imagefile_save_thumb)
	* app/display/gimpdisplayshell.c (gimp_display_shell_update_icon)
	* app/gui/resize-dialog.c (resize_dialog_new): changed accordingly.

2004-05-13  Sven Neumann  <sven@gimp.org>

	* libgimpthumb/gimpthumbnail.[ch]: added mime-type support.

2004-05-13  Michael Natterer  <mitch@gimp.org>

	* app/menus/Makefile.am: added file-menu.[ch] and
	file-dialog-menu.[ch]

	* app/menus/menus.[ch]: removed menus_open_recent_add()...

	* app/menus/file-menu.[ch]: ...and added it here as file_menu_setup().

	* app/menus/image-menu.c
	* app/menus/toolbox-menu.c: changed accordingly.

	* app/menus/file-dialog-menu.[ch]: added factored out code from the
	file-open and file-save menus as file_dialog_menu_setup().

	* app/menus/file-open-menu.c
	* app/menus/file-save-menu.c: call file_dialog_menu_setup().

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): extended 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  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpwidgets.c (gimp_scale_entry_new_internal)
	* app/widgets/gimpwidgets-utils.c (gimp_table_attach_stock):
	left-align the label.

	* app/actions/channels-commands.c
	* app/actions/layers-commands.c
	* app/actions/qmask-commands.c
	* app/actions/vectors-commands.c
	* app/display/gimpdisplayshell-scale.c
	* app/gui/brush-select.c
	* app/gui/file-new-dialog.c
	* app/gui/info-dialog.c
	* app/gui/info-window.c
	* app/gui/module-browser.c
	* app/gui/offset-dialog.c
	* app/gui/palette-import-dialog.c
	* app/gui/preferences-dialog.c
	* app/gui/resize-dialog.c
	* app/tools/gimpblendoptions.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimppaintoptions-gui.c
	* app/tools/gimpscaletool.c
	* app/tools/gimpselectionoptions.c
	* app/tools/gimpsheartool.c
	* app/tools/gimptextoptions.c
	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimpgrideditor.c
	* app/widgets/gimphistogrameditor.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimpstrokeeditor.c
	* app/widgets/gimpwidgets-utils.c: left-align labels as suggested
	by the HIG.

2004-05-12  Michael Natterer  <mitch@gimp.org>

	* app/config/gimpconfig-deserialize.c
	* app/config/gimpscanner.c
	* app/core/gimp-edit.c
	* app/core/gimpchannel-combine.c
	* app/core/gimpcontainer.c
	* app/core/gimpdrawable-bucket-fill.c
	* app/core/gimpdrawable-combine.c
	* app/core/gimpdrawable.c
	* app/core/gimpgradient.c
	* app/core/gimpimage-flip.c
	* app/core/gimpimage-merge.c
	* app/core/gimpimage-projection.c
	* app/core/gimpimage.c
	* app/display/gimpdisplay-handlers.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpprogress.c
	* app/gui/info-dialog.c
	* app/gui/module-browser.c
	* app/gui/offset-dialog.c
	* app/plug-in/plug-in.c
	* app/tools/gimpdrawtool.c
	* app/tools/tool_manager.c
	* app/widgets/gimpactiongroup.c
	* app/widgets/gimpdialogfactory.c
	* app/widgets/gimpgradienteditor.c
	* app/widgets/gimpitemfactory.c
	* app/widgets/gimppropwidgets.c
	* app/widgets/gimpwidgets-utils.c
	* app/xcf/xcf-save.c
	* libgimp/gimpexport.c
	* libgimpwidgets/gimphelpui.c
	* libgimpwidgets/gimppixmap.c
	* libgimpwidgets/gimpunitmenu.c: replaced G_GNUC_FUNCTION,
	G_GNUC_PRETTY_FUNCTION, G_STRLOC and hardcoded function names in
	g_warning()s by G_STRFUNC.

2004-05-12  Michael Natterer  <mitch@gimp.org>

	* app/actions/gradients-actions.c
	* app/actions/palettes-actions.c
	* app/actions/patterns-actions.c: added/fixed tooltips.

2004-05-11  Michael Natterer  <mitch@gimp.org>

	* configure.in: define G*_DISABLE_DEPRECATED for all G* modules
	except GTK+. Don't do so if compiling against GLib, GTK+ >= 2.5.0
	and Pango >= 1.5.0

	* libgimpwidgets/gimpoffsetarea.c: s/gdk_gc_unref/g_object_unref/

	* app/config/gimpconfig-deserialize.c
	* app/widgets/gimpdeviceinfo.c:
	s/g_value_set_foo_take_ownership/g_value_take_foo/

	* app/text/gimptext-vectors.c
	* app/text/gimptext-bitmap.c:
	s/pango_ft2_font_get_face/pango_fc_font_lock,unlock_face/

2004-05-11  Michael Natterer  <mitch@gimp.org>

	* app/actions/images-commands.c: added missing #includes.

2004-05-11  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcontainermenu.[ch]
	* app/widgets/gimpcontainermenuimpl.[ch]
	* app/widgets/gimpmenuitem.[ch]: removed. Obsoleted by
	GimpContainerViewInterface implemented by GimpContainerComboBox.

2004-05-11  Michael Natterer  <mitch@gimp.org>

	* app/actions/actions.[ch]: added action_data_get_context() and
	macro return_if_no_context().

	* app/actions/brushes-actions.c
	* app/actions/buffers-actions.c
	* app/actions/buffers-commands.c
	* app/actions/data-commands.c
	* app/actions/fonts-actions.c
	* app/actions/fonts-commands.c
	* app/actions/gradients-actions.c
	* app/actions/images-actions.c
	* app/actions/images-commands.c
	* app/actions/palettes-actions.c
	* app/actions/patterns-actions.c
	* app/actions/templates-actions.c
	* app/actions/templates-commands.[ch]
	* app/actions/tools-actions.c
	* app/actions/tools-commands.c: moved lots of code from widgets/
	to the resp. action callbacks.

	* app/widgets/gimpeditor.[ch]: added gimp_editor_add_action_button()
	which creates a GtkButton connected to the resp. action.

	* app/widgets/gimpdatafactoryview.[ch]: added "action_group"
	parameters so we can distinguish brushes, patterns etc. actions.

	* app/widgets/gimpimageview.[ch]
	* app/widgets/gimpbrushfactoryview.c
	* app/widgets/gimpbufferview.c
	* app/widgets/gimpfontview.c
	* app/widgets/gimpgradienteditor.c
	* app/widgets/gimppatternfactoryview.c
	* app/widgets/gimptemplateview.[ch]
	* app/widgets/gimptoolview.c: removed tons of GtkButton::clicked()
	callbacks and use gimp_editor_add_action_button() instead
	of simply _add_button().

	* app/gui/dialogs-constructors.c
	* app/gui/gradient-select.c
	* app/gui/palette-select.c
	* app/gui/pattern-select.c: changed accordingly.

2004-05-11  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpcontainercombobox.c: correctly get the default
	GimpContainerViewInterface implementation and chain up to it for
	clear_items(). Update the preview renderers on "update", enable
	deselecting everything.

	* app/widgets/gimpimagedock.[ch]
	* app/gui/file-new-dialog.c
	* app/gui/palette-import-dialog.c
	* app/gui/preferences-dialog.c
	* app/gui/stroke-dialog.c: use GimpContainerComboBox instead of
	GimpContainerMenuImpl.

	* app/gui/palette-import-dialog.c: cleanup.

2004-05-11  Sven Neumann  <sven@gimp.org>

	* docs/gimptool.1.in: fixed spelling.

2004-05-11  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpcontainertreeview.c: minor cleanup.

2004-05-11  Michael Schumacher <schumaml@cvs.gnome.org>		
        
	* libgimp/gimp.def
	* libgimpbase/gimpbase.def: updated
	
2004-05-11  Sven Neumann  <sven@gimp.org>

	* app/gui/user-install-dialog.c: removed the "Aborting
	Installation" page. We added it as a nice little gimmick but
	obviously people don't understand it's purpose. Fixes bug #142281.

2004-05-11  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcontainercombobox.[ch]: added new widget, almost
	finished.

	* app/widgets/gimpcontainerview.[ch]: added convenience functions
	to get and set the GimpContainerView properties.

	* app/widgets/gimpcontainerbox.c: use the convenience functions.

	* app/gui/file-new-dialog.c: use the new GimpContainerComboBox.

	* etc/templaterc: use "pixels" as the unit for pixel sized templates.

2004-05-11  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpchanneltreeview.c
	* app/widgets/gimpcontainerbox.[ch]
	* app/widgets/gimpcontainereditor.c
	* app/widgets/gimpcontainergridview.[ch]
	* app/widgets/gimpcontainerpopup.c
	* app/widgets/gimpcontainertreeview.[ch]
	* app/widgets/gimpdatafactoryview.c
	* app/widgets/gimpdocumentview.c
	* app/widgets/gimpfontview.c
	* app/widgets/gimpimageview.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimppatternfactoryview.c
	* app/widgets/gimptemplateview.c
	* app/widgets/gimpvectorstreeview.c: code review / cleanup.

2004-05-11  Michael Natterer  <mitch@gimp.org>

	* app/widgets/widgets-types.h
	* app/widgets/gimpcontainerview.[ch]: made GimpContainerView an
	interface. Added accessors for all members in the private struct
	and made it really private.

	* app/widgets/gimpcontainerbox.[ch]: derive it from GimpEditor and
	implement GimpContainerViewInterface and its properties.

	* app/widgets/gimpchanneltreeview.c
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainertreeview.c
	* app/widgets/gimpcontainertreeview-dnd.c
	* app/widgets/gimpdrawabletreeview.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimpvectorstreeview.c: implement
	GimpContainerViewInterface and use the new accessor functions.

	* app/widgets/gimpcontainerpopup.c
	* app/widgets/gimpdocumentview.c: changed accordingly.

	* app/widgets/gimptemplateview.c
	* app/widgets/gimpcontainereditor.c
	* app/widgets/gimpundoeditor.c
	* app/actions/palettes-commands.c: #include "gimpcontainerview.h"

2004-05-11  Sven Neumann  <sven@gimp.org>

	* libgimp/gimp.def
	* libgimp/gimpui.def
	* libgimpbase/gimpbase.def
	* libgimpwidgets/gimpwidgets.def: updated.

2004-05-10  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpframe.c (gimp_frame_style_set): removed a
	redundant call to gtk_widget_queue_resize().

2004-05-10  Sven Neumann  <sven@gimp.org>

	* app/xcf/xcf-save.c (xcf_save_prop): fixed size of colormap
	property. Patch by Daniel Kobras, fixes bug #142149.

2004-05-10  Henrik Brix Andersen  <brix@gimp.org>

	* plug-ins/common/screenshot.c (shoot_dialog): fixed the spacing
	of the dialog, thanks to Sven for pointing out my mistake.

2004-05-10  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimptexteditor.c (gimp_text_editor_set_direction):
	don't call gtk_widget_set_direction() on a non-existant widget.
	Fixes bug #141792.

2004-05-10  Sven Neumann  <sven@gimp.org>

	* app/gui/tips-dialog.c: added missing newline in error message.

2004-05-10  Michael Natterer  <mitch@gimp.org>

	More GimpContainerView chopping:

	* app/widgets/gimpcontainerview.[ch]: added
	GimpContainerViewPrivate struct (which is currently public :-) and
	removed all members from the GimpContainerView struct. Added
	accessors for "context", "container" and "preview_size /
	preview_border_width". Added macro to get the private struct
	(*not* via G_TYPE_INSTANCE_GET_PRIVATE because that's unavailable
	for interfaces).

	* app/widgets/gimpbrushfactoryview.c
	* app/widgets/gimpbufferview.c
	* app/widgets/gimpchanneltreeview.c
	* app/widgets/gimpcontainerbox.c
	* app/widgets/gimpcontainereditor.c
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainerpopup.c
	* app/widgets/gimpcontainertreeview-dnd.c
	* app/widgets/gimpcontainertreeview.c
	* app/widgets/gimpdatafactoryview.c
	* app/widgets/gimpdocumentview.c
	* app/widgets/gimpfontview.c
	* app/widgets/gimpimageview.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimpsessioninfo.c
	* app/widgets/gimptemplateview.c
	* app/widgets/gimptoolview.c
	* app/actions/brushes-actions.c
	* app/actions/buffers-actions.c
	* app/actions/dockable-actions.c
	* app/actions/dockable-commands.c
	* app/actions/documents-actions.c
	* app/actions/fonts-actions.c
	* app/actions/gradients-actions.c
	* app/actions/gradients-commands.c
	* app/actions/images-actions.c
	* app/actions/palettes-actions.c
	* app/actions/palettes-commands.c
	* app/actions/patterns-actions.c
	* app/actions/templates-actions.c
	* app/actions/tools-actions.c
	* app/actions/tools-commands.c: changed accordingly.

2004-05-10  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpmagnifyoptions.[ch]
	* app/tools/gimpmagnifytool.c: applied a patch from William Skaggs
	that changes a misleading option label. Fixes bug #137508.

2004-05-10  Sven Neumann  <sven@gimp.org>

	* app/config/gimpdisplayconfig.c (DEFAULT_IMAGE_TITLE_FORMAT):
	removed the display scale from the default image title because
	it's now displayed in the statusbar. Show the image pixel size
	instead.

	* app/gui/preferences-dialog.c: include a preset for the title
	format string that shows the image size (bug #141720).

2004-05-10  Michael Natterer  <mitch@gimp.org>

	Prepare for making an interface out of GimpContainerView:

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcontainerbox.[ch]: new GimpContainerView
	subclass which implements GimpDocked interface and contains the
	vbox-with-scrolled-window stuff common to GimpContainerGridView
	and GimpContainerTreeView.

	* app/widgets/gimpcontainerview.[ch]: removed that functionality
	here.

	* app/widgets/gimpcontainergridview.[ch]
	* app/widgets/gimpcontainertreeview.[ch]: derive them from
	GimpContainerBox.

	* app/gui/brush-select.c
	* app/gui/font-select.c
	* app/gui/gradient-select.c
	* app/gui/palette-select.c
	* app/gui/pattern-select.c
	* app/widgets/gimpcontainerpopup.c: changed accordingly.

2004-05-10  Sven Neumann  <sven@gimp.org>

	* app/actions/view-actions.c: added a stock icon for "view-zoom-1-1".

	* app/widgets/gimpunitcombobox.[ch]: added functions to get and
	set the active unit.

	* app/widgets/gimpunitstore.c (gimp_unit_store_tree_model_get_value):
	need to special case GIMP_UNIT_PIXEL.

	* app/display/Makefile.am
	* app/display/display-types.h
	* app/display/gimpscalecombobox.[ch]: new widget to be used in the
	display's statusbar.

	* app/display/gimpdisplayshell-cursor.[ch]: always display the
	cursor position, not only if the cursor is inside the image. Added
	new function gimp_display_shell_clear_cursor() to clear the cursor
	label.

	* app/display/gimpdisplayshell-callbacks.c: changed accordingly.

	* app/display/gimpstatusbar.[ch]
	* app/display/gimpdisplayshell.c
	* app/display/gimpdisplayshell-handlers.c
	* app/display/gimpdisplayshell-scale.c: do not explicitely resize
	the statusbar cursor label, connect to GimpDisplayShell::scaled
	instead. Added a GimpScaleComboBox to the status bar.

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  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpuimanager.c: re-added help for menu items. Still
	incomplete because there is no fallback help ID yet when pressing
	F1 over a menu item which has a submenu. Added evil workaround and
	version check for signal brokenness of GtkUIManager in GTK+ 2.4.1.

2004-05-09  Hans Breuer  <hans@breuer.org>

	Merge from stable branch :

	* plug-ins/common/winclipboard.c : support gray images;
	fixes bug #141382

	* plug-ins/common/winprint.c : dito; fixes bug #141145

2004-05-09  Maurits Rijk  <m.rijk@chello.nl>

	* plug-ins/common/aa.c
	* plug-ins/common/apply_lens.c
	* plug-ins/common/autocrop.c
	* plug-ins/common/autostretch_hsv.c: HIGified, GPL license added in
	some plug-ins, minor code clean-up.

2004-05-08  Maurits Rijk  <m.rijk@chello.nl>

	* plug-ins/common/spread.c: HIGified, simplified and fixes #141733
	
2004-05-08  Henrik Brix Andersen  <brix@gimp.org>

	* plug-ins/common/screenshot.c (shoot_dialog): HIGify the
	screenshot plug-in. Fixes part of bug #141772.

2004-05-08  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.c (gimp_statusbar_resize_cursor):
	added 1 pixel horizontal padding around the label.

2004-05-08  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.[ch]: renamed struct member combo to
	unit_combo. Place the combobox into the cursor frame.

2004-05-08  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpunitcombobox.[ch]
	* app/widgets/gimpunitstore.[ch]: added a prototype of a unit menu
	based on GtkComboBox. Will move this to libgimpwidgets later...

	* app/display/gimpstatusbar.[ch]: use the new GimpUnitComboBox and
	GimpUnitStore.

	* themes/Default/gtkrc
	* themes/Small/gtkrc: hardcode the appearance of the
	GimpUnitComboBox. It uses a hack that doesn't work in list mode.

2004-05-07  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimage-colormap.[ch]: added a const qualifier.

	Changed how the image unit and dot-for-dot mode is handled. Might
	break things and certainly needs more changes (mainly in tools):
	
	* app/core/gimptemplate.c: allow GIMP_UNIT_PIXEL as image unit.

	* app/display/gimpdisplayshell-handlers.c
	* app/display/gimpdisplayshell-scale.c
	* app/display/gimpdisplayshell-title.c
	* app/display/gimpstatusbar.c: always use the image unit for the
	rulers and to display lengths.

	* app/widgets/gimptemplateeditor.c: redone GimpTemplateEditor
	based on a dialog mockup from Jimmac and Tigert.

	* app/core/core-enums.[ch]: changed some descriptions used by the
	template editor.

2004-05-07  Michael Natterer  <mitch@gimp.org>

	* plug-ins/common/AlienMap2.c
	* plug-ins/common/CML_explorer.c
	* plug-ins/common/animationplay.c
	* plug-ins/common/despeckle.c
	* plug-ins/fp/fp.c
	* plug-ins/gfig/gfig.c
	* plug-ins/gflare/gflare.c
	* plug-ins/script-fu/script-fu.c
	* plug-ins/twain/twain.c: forgot some gimp_plugin_menu_register().

2004-05-07  Michael Natterer  <mitch@gimp.org>

	* plug-ins/FractalExplorer/FractalExplorer.c
	* plug-ins/Lighting/lighting_main.c
	* plug-ins/MapObject/mapobject_main.c
	* plug-ins/dbbrowser/dbbrowser.c
	* plug-ins/flame/flame.c
	* plug-ins/gimpressionist/gimp.c
	* plug-ins/ifscompose/ifscompose.c
	* plug-ins/imagemap/imap_main.c
	* plug-ins/maze/maze.c
	* plug-ins/pagecurl/pagecurl.c
	* plug-ins/print/print.c
	* plug-ins/rcm/rcm.c
	* plug-ins/winsnap/winsnap.c
	* plug-ins/common/[g-z]*.c: use gimp_plugin_menu_register(). Some
	formatting cleanups in some query() functions.

2004-05-07  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/plug-in-proc.[ch]: removed member "accelerator". 
	It was never set and this is the conceptually wrong place to store
	it anyway.

	* app/actions/file-dialog-actions.c
	* app/actions/plug-in-actions.c
	* app/plug-in/plug-in-message.c
	* app/xcf/xcf.c: changed accordingly.

	* tools/pdbgen/pdb/plug_in.pdb (plugins_query): always return NULL
	as accelerator. Cleaned up the function a bit and made it aware of
	proc_def->menu_label added below.

	* app/pdb/plug_in_cmds.c: regenerated.

2004-05-07  Michael Natterer  <mitch@gimp.org>

	Changed plug-in menu registration again to allow passing just the
	menu item's label (not the full path) in gimp_install_procedure()
	and only the path (excluding the item's label) in
	gimp_plugin_menu_register(). Matches the internal action system
	better and makes translating the menu paths much easier.

	(Of yourse it's still possible to use the old syntax for backward
	compatibility).

	* app/plug-in/plug-in-proc.[ch]: added "gchar *menu_label".

	* app/plug-in/plug-in-params.[ch]: added new functions
	plug_in_param_defs_check() and plug_in_proc_args_check() which
	check if a procedure's parameters match its menu location
	(e.g. <Image> needs RUN-MODE, IMAGE, DRAWABLE).

	* app/plug-in/plug-in-message.c (plug_in_handle_proc_install): if
	registering an old-style (full) menu_path, use
	plug_in_param_defs_check(), set proc_def->menu_label otherwise.

	* tools/pdbgen/pdb/plug_in.pdb (plugin_menu_register): use
	plug_in_proc_args_check() on the passed menu_path and make sure
	old and new style menu registration are not mixed.

	* app/pdb/plug_in_cmds.c: regenerated.

	* app/plug-in/plug-in-rc.c: save/restore "menu_label".

	* app/actions/file-dialog-actions.c
	* app/actions/plug-in-actions.c
	* app/menus/plug-in-menus.c: changed action/menu creation
	accordingly. Some hacks needed to allow both old and new style
	menu_label/menu_paths.

	* app/plug-in/plug-in.c
	* app/widgets/gimpfiledialog.c
	* app/xcf/xcf.c: changed accordingly.

	* plug-ins/common/align_layers.c
	* plug-ins/common/animationplay.c
	* plug-ins/common/animoptimize.c
	* plug-ins/common/apply_lens.c
	* plug-ins/common/autocrop.c
	* plug-ins/common/autostretch_hsv.c
	* plug-ins/common/blinds.c
	* plug-ins/common/blur.c
	* plug-ins/common/borderaverage.c
	* plug-ins/common/bumpmap.c
	* plug-ins/common/c_astretch.c
	* plug-ins/common/ccanalyze.c
	* plug-ins/common/channel_mixer.c
	* plug-ins/common/checkerboard.c
	* plug-ins/common/color_enhance.c
	* plug-ins/common/colorify.c
	* plug-ins/common/colortoalpha.c
	* plug-ins/common/compose.c
	* plug-ins/common/convmatrix.c
	* plug-ins/common/cubism.c
	* plug-ins/common/curve_bend.c
	* plug-ins/common/decompose.c
	* plug-ins/common/deinterlace.c
	* plug-ins/common/depthmerge.c
	* plug-ins/common/destripe.c
	* plug-ins/common/diffraction.c
	* plug-ins/common/displace.c
	* plug-ins/common/edge.c
	* plug-ins/common/emboss.c
	* plug-ins/common/engrave.c
	* plug-ins/common/exchange.c
	* plug-ins/common/film.c
	* plug-ins/common/flarefx.c
	* plug-ins/common/fractaltrace.c
	* plug-ins/common/screenshot.c: ported the first few plug-ins
	to the new registration scheme.

2004-05-06  Manish Singh  <yosh@gimp.org>

	* tools/pdbgen/pdb/app.pl: make libgimp* headers always included
	before any app headers.

        * tools/pdbgen/pdb/paint_tools.pdb: Fix silly "Dodgebure" typo.

	* app/pdb/*_cmds.c: regenerated.

2004-05-06  Sven Neumann  <sven@gimp.org>

	* app/core/gimpdrawable-preview.c
	* app/core/gimpimage-projection.c: added sanity so we don't just
	plain crash when an indexed image doesn't have a colormap.

	* plug-ins/common/png.c: keep at least one entry in the colormap.
	Fixes bug #142029.

2004-05-06  Maurits Rijk  <m.rijk@chello.nl>

	* plug-ins/common/sobel.c: replaced RMS macro by smarter one,
	resulting in a doubling in speed for this plug-in.

	* plug-ins/fp/fp.c: include stdlib for free, malloc and abs.

2004-05-06  Maurits Rijk  <m.rijk@chello.nl>

	* plug-ins/fp/fp_gdk.c
	* plug-ins/fp/fp_gtk.c
	* plug-ins/fp/fp_misc.c
	* plug-ins/fp/fp.h: removed

	* plug-ins/fp/Makefile.am: changed accordingly
	
	* plug-ins/fp/fp.c: merged into one single file to get rid of all 
	global variables and functions. Major clean-up. Still more to come.

2004-05-06  Sven Neumann  <sven@gimp.org>

	* app/gui/about-dialog.c: center the about dialog on the monitor,
	not on the screen. Fixes window position on xinerama setups.

2004-05-06  Michael Natterer  <mitch@gimp.org>

	* tools/pdbgen/pdb/plug_in.pdb: renamed gimp_plugin_menu_add() to
	gimp_plugin_menu_register() for consistency with other
	gimp_plugin_foo_register() functions which can be called during
	query().

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

	* plug-ins/common/ccanalyze.c
	* plug-ins/common/colortoalpha.c
	* plug-ins/common/screenshot.c
	* plug-ins/winsnap/winsnap.c: changed accordingly.

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  Sven Neumann  <sven@gimp.org>

	* app/gui/resize-dialog.[ch]: cleaned up variable names and
	external API. Still quite a mess.

	* app/Makefile.am
	* app/actions/image-commands.c
	* app/actions/layers-commands.c: changed accordingly.

2004-05-06  Sven Neumann  <sven@gimp.org>

	* app/menus/menus.c: no need for including gimp-intl.h.

2004-05-06  Michael Natterer  <mitch@gimp.org>

	* configure.in
	* app/Makefile.am
	* app/menus/.cvsignore
	* app/menus/Makefile.am
	* app/menus/menus-types.h
	* app/menus/menus.[ch]
	* app/menus/file-open-menu.[ch]
	* app/menus/file-save-menu.[ch]
	* app/menus/image-menu.[ch]
	* app/menus/plug-in-menus.[ch]
	* app/menus/tool-options-menu.[ch]
	* app/menus/toolbox-menu.[ch]: moved all menus files to their
	own directory.

	* app/gui/Makefile.am
	* app/gui/menus.[ch]
	* app/gui/file-open-menu.[ch]
	* app/gui/file-save-menu.[ch]
	* app/gui/image-menu.[ch]
	* app/gui/plug-in-menus.[ch]
	* app/gui/tool-options-menu.[ch]
	* app/gui/toolbox-menu.[ch]: removed them here.

	* app/actions/debug-commands.c
	* app/actions/file-commands.c
	* app/gui/brush-select.c
	* app/gui/dialogs.c
	* app/gui/font-select.c
	* app/gui/gradient-select.c
	* app/gui/gui-vtable.c
	* app/gui/gui.c
	* app/gui/palette-select.c
	* app/gui/pattern-select.c
	* app/gui/preferences-dialog.c: changed #includes accordingly.

2004-05-05  Sven Neumann  <sven@gimp.org>

	* app/gui/file-new-dialog.c: use a normal GimpDialog instead of a
	GimpViewableDialog that never has a viewable set.

2004-05-05  Michael Natterer  <mitch@gimp.org>

	* app/gui/brush-select.[ch] (brush_select_new): reordered parameters 
	so the first four are the same for all foo_select_new() functions.

	* tools/pdbgen/pdb/brush_select.pdb: changed accordingly.

	* app/pdb/brush_select_cmds.c: regenerated.

	* app/gui/font-select.c (font_select_new): set the vbox'
	border width to 6 to match the other foo_select dialogs.

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  Michael Natterer  <mitch@gimp.org>

	* app/actions/plug-in-actions.c (plug_in_actions_add_proc): fixed
	bug which would have leaked broken menu translations.

	* app/gui/plug-in-menus.c: removed useless #includes.

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  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  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimphelpui.c: documentation.

2004-05-05  Michael Natterer  <mitch@gimp.org>

	Finally enable global accelerators in all docks:

	* app/widgets/gimpimagedock.c (gimp_image_dock_constructor):
	iterate all of the UI manager's actions and enable their
	accelerators manually. Fixes bug #119878.

2004-05-05  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpviewabledialog.c: added construct properties to
	make it possible to derive from GimpViewableDialog.

	* app/widgets/gimptooldialog.[ch]: make GimpToolDialog a real
	object, not just a convenience constructor.
	
	* themes/Default/gtkrc
	* themes/Small/gtkrc: set a smaller border_width of 6 pixels for
	the action area of tool dialogs.

	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpimagemaptool.c: set a smaller border_width of 6
	pixels on tool dialogs to make them more compact.

2004-05-05  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimpoffsetarea.[ch]: added new function
	gimp_offset_area_set_pixbuf(). Started to clean up the
	code a bit.

	* app/gui/resize-dialog.c (resize_widget_new): use the new feature
	and set a preview of the image. Fixes bug #78733.

2004-05-05  Sven Neumann  <sven@gimp.org>

	* app/gui/info-dialog.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcolorizetool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimpimagemaptool.c
	* app/tools/gimplevelstool.c: use GimpFrame widgets, changed spacings.

	* app/widgets/gimptexteditor.c: tweaked.

2004-05-05  Jakub Steiner <jimmac@ximian.com>

	* data/images/gimp_splash.png: ustable splash

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

	* app/gui/menus.c: register a <Dock> UI manager which has all
	action groups <Image> has except "view".

	* app/widgets/gimpimagedock.[ch]: re-enabled the global shortcuts,
	using UI manager instead of item factory. Unfortunately actions
	without proxy widgets can't be activated so this change is pretty
	useless. Oh well, will find a hack to work around this later...

2004-05-04  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpblendoptions.c
	* app/tools/gimpbucketfilloptions.c
	* app/tools/gimpcoloroptions.c
	* app/tools/gimpinkoptions.c
	* app/tools/gimppaintoptions-gui.c
	* app/tools/gimpselectionoptions.c
	* app/tools/gimptooloptions-gui.c
	* app/tools/gimptransformoptions.c: use GimpFrames where GtkFrame
	was used. Put "Pressure Sensitivity" frame into a GtkExpander.

2004-05-04  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpframe.c: added a style property to control
	boldening of the frame title.
	
	* themes/Default/gtkrc
	* themes/Small/gtkrc: suppress the bold title for GimpFrames in
	GimpDockables,

2004-05-04  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpframe.c (gimp_frame_size_allocate): allocate
	the full width for the label widget, looks better and is more
	convenient to use with activatable widgets such as toggle buttons.

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

	* app/widgets/gimpfiledialog.c: removed debugging output, added
	#warning about runtime version check that can be removed as soon
	as we depend on GTK+ 2.4.1.

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

	* app/actions/file-dialog-actions.c (file_dialog_actions_setup):
	don't forget to set the action's accelerator.

2004-05-04  Sven Neumann  <sven@gimp.org>

	* app/actions/channels-commands.c
	* app/actions/gradient-editor-commands.c
	* app/actions/image-commands.c
	* app/actions/layers-commands.c
	* app/actions/qmask-commands.c
	* app/actions/templates-commands.c
	* app/actions/vectors-commands.c
	* app/display/gimpdisplayshell-filter-dialog.c
	* app/gui/convert-dialog.c
	* app/gui/module-browser.c
	* app/gui/offset-dialog.c
	* app/gui/palette-import-dialog.c
	* app/gui/resize-dialog.c
	* app/gui/resolution-calibrate-dialog.c
	* app/gui/tips-dialog.c
	* app/gui/user-install-dialog.c
	* app/widgets/gimpwidgets-utils.c
	* libgimpwidgets/gimpquerybox.c: set dialog border spacing to 12.

2004-05-04  Sven Neumann  <sven@gimp.org>

	* app/gui/preferences-dialog.c
	* app/widgets/widgets-enums.[ch]
	* app/widgets/gimpwidgets-utils.c (gimp_window_set_hint): added
	new window hint "keep-above" to force toolbox and/or dock windows
	to be kept above (if the WM supports this hint). Fixes bug #131672.

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

	Fix bug #141719:

	* app/tools/gimpmovetool.c (gimp_move_tool_motion): use RINT()
	instead of ROUND() to round double coords to guide positions.

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_canvas_tool_events): pass RINT()-rounded
	coords to gimp_display_shell_update_cursor() instead of implicitly
	truncating by casting to int.

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

	* app/widgets/gimpundoeditor.c: removed code duplication by adding
	utility function gimp_undo_editor_update_buttons(), some general
	cleanups.

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

	* app/core/gimpimage.c (gimp_image_undo_freeze,thaw): emit the
	"undo-freeze" and "undo-thaw" signals only on the first freeze and
	last thaw, not on any of them.

	* app/widgets/gimphelp-ids.h: added GIMP_HELP_EDIT_UNDO_CLEAR.

	* app/widgets/gimpundoeditor.[ch]: added a "Clear Undo History"
	button. Fixes bug #136300.

	Also don't attach to the image's undo stack if the image's undo is
	disabled and set the buttons' sensitivity accordingly. Should fix
	all kinds of unpredictable undo history brokenness.

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

	Treat FG/BG just like all other context properties:

	* app/paint/gimppaintoptions.h: added GIMP_CONTEXT_FOREGROUND_MASK
	and _BACKGROUND_MASK to GIMP_PAINT_OPTIONS_CONTEXT_MASK to specify
	that they are used by GimpPaintOptions (automatically affects all
	paint tools).

	* app/tools/gimpblendtool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpinktool.c: set FOREGROUND_MASK and BACKGROUND_MASK
	manually here.

	* app/tools/tool_manager.c (tool_manager_tool_changed): decide
	about the globality of FG and BG at the same place where we decide
	about the brush's, pattern's etc. globality, but hardcode them to
	global = TRUE instead of looking at GimpConfig.

	Fixes bug #141786.

2004-05-04  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/sobel.c (sobel_dialog): removed frame, adjusted
	spacing, fixes bug #141773.

2004-05-04  Sven Neumann  <sven@gimp.org>

	* app/gui/stroke-dialog.c: 
	* app/widgets/gimpstrokeeditor.c: moved line style options into a
	GtkExpander. Changed dialog spacings.

2004-05-03  Manish Singh  <yosh@gimp.org>

	* app/actions/qmask-actions.c: initialize is_active for qmask-toggle.

	* app/actions/tools-actions.c: set entry help_id from tool_info,
	since gimp_action_group_add_string_actions expects it to be there
	now.

2004-05-03  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpframe.c (gimp_frame_new): added a hack that
	allows to get the label_spacing but no label. Useful when the frame
	is packed into a GtkExpander.

	* app/widgets/gimptemplateeditor.c: pack the "Image Comment" frame
	into a GtkExpander to reduce clutter and dialog size.

2004-05-03  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimphelpui.[ch]: added gimp_help_id_quark()
	which is G_GNUC_CONST and a new macro GIMP_HELP_ID as shortcut.

	* app/widgets/gimpactiongroup.c (gimp_action_group_add_*_actions):
	attach the help ID to the action using the new quark key. Call
	gtk_action_group_add_action() instead of the _with_accel() variant
	if the accel is the empty string (== if we explicitely want no
	accel even if the stock item specifies one). Fixes warning flood
	with GTK+ 2.4.1.

2004-05-03  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpframe.c: if the label_widget is a button, set
	the button label as bold. Cache the indentation instead of
	calculating it over and over again.

	* themes/Default/gtkrc: set HIG-compliant spacing for the
	action_area.

	* app/widgets/gimppropwidgets.[ch]: added
	gimp_prop_enum_radio_box_new() for a radio group that is no
	embedded in a frame.

	* app/widgets/gimpstrokeeditor.c: use a frame-less radio box for
	the Stroke style.

	* app/gui/file-new-dialog.c
	* app/gui/grid-dialog.c
	* app/gui/stroke-dialog.c: HIG-compliant spacings.

2004-05-03  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpdock.c (gimp_dock_key_press_event): new function
	which overrides GtkWindow's default handler in order to give the
	focus widget precedence over accelerators for keys without any
	modifier or with <Shift> modifier. Enables e.g. having a <Shift>+s
	accelerator while still being able to enter 'S' in an entry.
	Thanks to Tim Janik for the code.

2004-05-03  Michael Natterer  <mitch@gimp.org>

	* app/actions/actions.h. added the various return_if_no_foo()
	macros here.

	* app/actions/channels-commands.c
	* app/actions/dialogs-commands.c
	* app/actions/drawable-commands.c
	* app/actions/edit-commands.c
	* app/actions/file-commands.c
	* app/actions/image-commands.c
	* app/actions/layers-commands.c
	* app/actions/qmask-commands.c
	* app/actions/select-commands.c
	* app/actions/vectors-commands.c
	* app/actions/view-commands.c: removed them here. Some cleanup.

2004-05-03  Michael Natterer  <mitch@gimp.org>

	* app/actions/actions.[ch]: added some utility functions to get a
	Gimp, GimpImage, GimpDisplay and GtkWidget from the "data" pointer
	passed to action callbacks.

	* app/actions/channels-actions.c
	* app/actions/channels-commands.c
	* app/actions/drawable-actions.c
	* app/actions/drawable-commands.c
	* app/actions/edit-actions.c
	* app/actions/edit-commands.c
	* app/actions/file-actions.c
	* app/actions/file-commands.c
	* app/actions/help-commands.c
	* app/actions/image-actions.c
	* app/actions/image-commands.c
	* app/actions/layers-actions.c
	* app/actions/layers-commands.c
	* app/actions/plug-in-actions.c
	* app/actions/plug-in-commands.c
	* app/actions/qmask-actions.c
	* app/actions/qmask-commands.c
	* app/actions/select-actions.c
	* app/actions/select-commands.c
	* app/actions/tools-commands.c
	* app/actions/vectors-actions.c
	* app/actions/vectors-commands.c
	* app/actions/view-commands.c: use the new functions instead of
	duplicating insane macros and if() constructs over and over again.

2004-05-03  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpwidgets.c: use a GimpFrame for
	gimp_radio_group_new() and friends.

	* themes/Default/gtkrc
	* themes/Small/gtkrc: set a smaller label_spacing for GimpFrame
	widgets in GimpDockables. Lame hack to keep the tool options
	compact.

	* app/actions/image-commands.c: changed spacing.

	* app/gui/offset-dialog.c: merged check and radio buttons into a
	single radio button group; changed spacing.

2004-05-03  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpframe.c (gimp_frame_size_allocate): respect
	the frame's border width.

	* app/widgets/gimpcolorframe.[ch]: derive from GimpFrame.

	* app/gui/convert-dialog.c
	* app/gui/info-window.c
	* app/gui/palette-import-dialog.c
	* app/gui/resize-dialog.c: use GimpFrames, changed some spacings.

2004-05-03  Michael Natterer  <mitch@gimp.org>

	* app/actions/dockable-commands.c (dockable_add_tab_cmd_callback):
	truncate the passed dialog identifier at the first '|'. Fixes
	creating brushes, paterns etc. dialogs from the dockables'
	"Add Tab" menu.

2004-05-02  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpframe.c (gimp_frame_size_request): take the
	left margin into account.

	* app/widgets/gimpgrideditor.c
	* app/widgets/gimptemplateeditor.c: removed container borders that
	aren't needed any longer.

2004-05-02  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpenumwidgets.c
	* app/widgets/gimpgrideditor.c
	* app/widgets/gimptemplateeditor.c: use the GimpFrame widget,
	changed some spacings to better comply with the HIG.

2004-05-02  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/Makefile.am
	* libgimpwidgets/gimpwidgets.h
	* libgimpwidgets/gimpwidgetstypes.h
	* libgimpwidgets/gimpframe.[ch]: added new widget GimpFrame, a HIG
	compliant variant of GtkFrame.

	* app/gui/preferences-dialog.c: enable the HIG compliant mode by
	default and use the new GimpFrame widget for it.

	* themes/Small/gtkrc: set a smaller spacing between the GimpFrame
	title label and the frame content.

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  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  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  Michael Natterer  <mitch@gimp.org>

	* app/actions/Makefile.am
	* app/actions/file-dialog-actions.[ch]: new files containing
	factored out code to set up the <Load> and <Save> actions.
	Use GimpPlugInActions instead of just GtkActions.

	* app/actions/file-dialog-commands.[ch]: new files containing
	file_dialog_type_cmd_callback() which is a
	GimpPlugInAction::selected() callback now.

	* app/actions/file-commands.[ch]: removed the callback here.

	* app/actions/file-open-actions.c
	* app/actions/file-save-actions.c: removed code duplication and
	use file_dialog_actions_setup() instead.

2004-05-02  Michael Natterer  <mitch@gimp.org>

	* app/actions/*-actions.c: added help IDs to all actions
	representing the toplevel popups and menus (as fallbacks for the
	still-to-be-written help system intrgration of GimpUIManager).

	* app/display/gimpdisplayshell.c (gimp_display_shell_new): removed
	call to gtk_ui_manager_ensure_update() because that's done by
	gimp_ui_manager_ui_get() now.

	* app/widgets/gimpmenufactory.[ch]: removed API to register and
	create item factories.

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

	* app/gui/dialogs.c
	* app/actions/plug-in-commands.c
	* app/gui/file-dialog-utils.c
	* app/gui/file-save-dialog.c
	* app/widgets/gimpdataeditor.c
	* app/widgets/gimpdockable.c
	* app/widgets/gimpdockbook.[ch]
	* app/widgets/gimpimagedock.c
	* app/widgets/gimpitemtreeview.c: removed leftover item factory
	cruft.

	* app/widgets/widgets-types.h: removed item factory typedefs...

	* app/widgets/gimpitemfactory.h: ...and added them here.

	* app/widgets/gimpactiongroup.[ch]: added new function
	gimp_action_group_add_plug_in_actions().

	* app/actions/plug-in-actions.c: use it here instead of adding
	the actions manually.

	* app/widgets/gimptoolbox.c: ported the code which dynamically
	updates the tool button tooltips on accelerator changes to
	GtkAction. Disabled the whole stuff because GTK+ lacks
	gtk_action_get_accel_closure().

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  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-04-30  Pedro Gimeno  <pggimeno@wanadoo.es>

	* app/tools/gimprectselecttool.c: Cleanups.
	(gimp_rect_select_tool_coords_to_integer): Undo my bogus fix for
	bug #138103, which led to bug #140649.

	* app/pdb/procedural_db.c (procedural_db_init_procs): Add missing
	compat procs: gimp_channel_ops_duplicate, gimp_channel_ops_offset.

2004-04-30  Sven Neumann  <sven@gimp.org>

	* app/gui/tool-options-menu.c: added casts to please the compiler.

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

	* app/widgets/gimpuimanager.[ch]: added signal "update" which
	is G_SIGNAL_RUN_LAST, so handlers can hook in before and after
	the default implementation. Update the action groups
	in the default implementations.

	(gimp_ui_manager_ui_get): make sure we always return a widget
	by calling gtk_ui_manager_ensure_update().

	* app/widgets/gimpdockable.c (gimp_dockable_show_menu): make
	sure the dockable menu is loaded before trying to access its
	widgets/actions.

	Resurrected the dynamic tool options menus:

	* app/actions/tool-options-actions.c: dynamically destroy/create
	actions for the tool options' presets.

	* app/actions/tool-options-commands.[ch]: all callbacks are
	GimpEnumAction::selected() callbacks now.

	* app/gui/tool-options-menu.[ch]: connect and connect_after to
	GimpUIManager::update(). Remove the old preset menu items
	in the former callback, create the new ones in the latter.
	Removed the last item factory entries.

	* app/gui/menus.c
	* app/widgets/gimptooloptionseditor.c: changed accordingly.

2004-04-29  Simon Budig  <simon@gimp.org>

	* app/main.c: when glibc is used, call mallopt, so that memory
	chunks >= 4k (= 64*64 pixels, 1bpp - the smallest full tile)
	get allocated via mmap. This ensures that after closing an image
	the memory allocated for image data gets returned to the system.

	Thanks to Phil Blundell <pb@nexus.co.uk> for bringing mallopt
	to my attention.

	Please watch closely for performance problems.

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
	demand only.

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

	* libgimpbase/gimputils.[ch] (gimp_escape_uline): new function
	which does the opposite of gimp_strip_uline().

	* app/actions/file-actions.c (file_actions_last_opened_update):
	escape ulines in filenames so they don't end up as mnemonics.
	Spotted by Pedro Gimeno.

2004-04-29  Manish Singh  <yosh@gimp.org>

	* plug-ins/pygimp/plug-ins/py-slice.py: Quick fix to make uppercase
	tags work properly.

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

	* app/tools/gimp*tool.c (gimp_*_tool_register): stripped the menu
	paths from the "menu_path". Will be renamed to "action_name" or
	something soon...

	* plug-ins/dbbrowser/dbbrowser.c
	* plug-ins/common/plugindetails.c
	* plug-ins/common/uniteditor.c: register under the new
	"Extensions" placeholder.

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-27  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimppluginaction.[ch]: new GtkAction subclass which
	remembers the PlugInProcDef.

	* app/widgets/gimpactiongroup.[ch]: added "gpointer user_data" to
	the GimpActionGroup struct and to gimp_action_group_new(). Removed
	the user_data parameter from gimp_action_group_add_*_actions().

	* app/widgets/gimpactionfactory.[ch]: changed accordingly.

	* app/actions/*-actions.[ch]: removed user_data from all setup_funcs.

	* app/actions/plug-in-actions.c: use a GimpPlugInAction and
	finally use the right user_data for the callback so plug-in
	callbacks have a proper context.

	* app/gui/plug-in-menus.[ch]: renamed plug_in_menus_create2() to
	plug_in_menus_setup().

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

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  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  Michael Natterer  <mitch@gimp.org>

	* app/gui/gui.c (gui_restore_callback): call actions_init()
	(gui_exit_after_callback): call actions_exit().

	* app/gui/menus.c (menus_init)
	(menu_exit): don't call them here.

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  Michael Natterer  <mitch@gimp.org>

	* app/core/gimp.[ch]: removed "locale_domain" and "help_domain"
	parameters from GimpMenusCreateFunc.

	* app/plug-in/plug-ins.c (plug_ins_temp_proc_def_add)
	* app/actions/plug-in-actions.[ch] (plug_in_actions_add_proc_def):
	changed accordingly.

	* app/widgets/gimpactiongroup.[ch]: remember all created action
	groups is a hash table in GimpActionGroupClass.  Added
	gimp_action_groups_from_name() which returns a GList of all groups
	with the given name.

	* app/actions/plug-in-actions.[ch] (plug_in_actions_setup):
	removed the tree sorting code. Actions don't need to be ordered
	alphabetically.

	(plug_in_actions_update): copied & ported plug_in_menus_update().

	* app/gui/gui-vtable.c (gui_menus_create,delete_entry):
	dynamically add/remove plug-in actions in all "plug-in" action
	groups.

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

	* app/core/gimp.[ch]: changed GimpMenusDeleteFunc to take
	a PlugInProcDef* instead of a const gchar*.

	* app/plug-in/plug-ins.c
	* app/gui/gui-vtable.c
	* app/gui/plug-in-menus.[ch]: changed accordingly.

2004-04-25  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/AlienMap2.c: some UI improvements based on a
	patch by William Skaggs (bug #140079).

2004-04-22  Sven Neumann  <sven@gimp.org>

	* app/gui/dialogs-constructors.c
	* app/gui/preferences-dialog.c: silent the compiler.

	* plug-ins/winicon/icodialog.c: simplified by using a
	GimpIntComboBox.

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

	* app/widgets/gimpuimanager.[ch]: remember and ref the created
	widgets.  Added gimp_ui_manager_ui_popup() which pops up a GtkMenu
	with a custom GimpMenuPositionFunc and a GtkDestroyNotify which is
	called on popdown.

	* app/widgets/gimpmenufactory.c (gimp_menu_factory_finalize):
	don't forget to free the list of managed UIs.

	* app/widgets/gimpdockable.[ch]
	* app/widgets/gimpdockbook.[ch]
	* app/widgets/gimpdocked.[ch]
	* app/widgets/gimpeditor.[ch]: added GimpUIManager stuff parallel
	to the to-be-removed GtkItemFactory stuff.

	* 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
	* app/widgets/gimptooloptionseditor.c: changed accordingly and added
	#if 0'ed code which actually uses all the UI managers.

	* app/display/gimpdisplay.c
	* app/display/gimpdisplayshell.c
	* app/gui/gui-vtable.c: disabled some gimp_ui_manager_update()
	calls because they were invoking toggle and radio callbacks
	which still have the wrong signature.

2004-04-22  Sven Neumann  <sven@gimp.org>

	* plug-ins/gflare/gflare.c: ported the last plug-in from
	GtkOptionMenu to GimpIntComboBox.

	* plug-ins/common/newsprint.c: changed a comment that was still
	talking about option menus.

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

	* app/gui/menus.c (menus_init): fixed some typos in the UI Manager
	registration code.

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  Sven Neumann  <sven@gimp.org>

	* plug-ins/rcm/rcm_callback.[ch]
	* plug-ins/rcm/rcm_dialog.c: ported from GtkOptionMenu to
	GimpIntComboBox.

2004-04-22  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpintstore.[ch]: automatically add an "(Empty)"
	item if the store is empty and remove it as soon as other items
	are being added.

	* libgimp/gimpdrawablecombobox.c
	* libgimp/gimpimagecombobox.c: removed handling of the empty list;
	the store does this for us now.

2004-04-22  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpintcombobox.c (gimp_int_combo_box_new):
	removed the check for first_label != NULL. Passing a NULL label
	makes a perfect empty combo_box.

	* plug-ins/common/newsprint.c
	* plug-ins/common/spheredesigner.c: ported from GtkOptioMenu to
	GimpIntComboBox.

2004-04-22  Sven Neumann  <sven@gimp.org>

	* plug-ins/flame/flame.c
	* plug-ins/gimpressionist/brush.c: ported the last two users of
	gimpmenu.h to GimpDrawableComboBox.

	* libgimp/gimpmenu.[ch]: declared the functions found here as
	deprecated.

	* plug-ins/common/plugindetails.c
	* plug-ins/ifscompose/ifscompose.c: silent the compiler.

2004-04-21  Sven Neumann  <sven@gimp.org>

	* libgimp/gimpdrawablecombobox.c 
	* libgimp/gimpimagecombobox.c
	* libgimp/gimpmenu.c: changed the label for the empty menu from
	"None" to "Empty" since that's what GTK+ uses.

	* libgimpwidgets/gimpintcombobox.[ch]: added convenience function
	gimp_int_combo_box_connect().
	
	* plug-ins/common/bumpmap.c
	* plug-ins/common/compose.c
	* plug-ins/common/depthmerge.c
	* plug-ins/common/displace.c
	* plug-ins/common/lic.c
	* plug-ins/common/warp.c: ported to GimpDrawableComboBox.

	* plug-ins/Lighting/lighting_ui.c
	* plug-ins/MapObject/mapobject_ui.c
	* plug-ins/common/sample_colorize.c: use
	gimp_int_combo_box_connect(). This restores the correct behaviour
	of setting the drawable_ID to the first drawable from the list if
	it's invalid.

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

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpuimanager.[ch]: new GtkUIManager subclass. Adds
	API to update all action groups and knows which UIs it can create
	from which XML files.

	* app/widgets/gimpmenufactory.[ch]: register the XML file
	basenames along with path of their toplevel menus. Create
	GimpUIManagers instead of GtkUIManagers and register the
	XML files and menu paths with them.

	* app/gui/menus.c: register all XML files and their toplevel
	menu paths.

	* app/widgets/gimpeditor.[ch]: also create a GimpUIManager when
	creating the GtkItemFactory. Added "const gchar *ui_identifier"
	parameter to gimp_editor_create_menu().

	* app/widgets/gimpcontainereditor.[ch]
	* app/widgets/gimpdataeditor.[ch]
	* app/widgets/gimpdatafactoryview.[ch]
	* app/widgets/gimpitemtreeview.[ch]: added "ui_identifier"
	parameters to all constructors.

	* app/widgets/gimpbrusheditor.c
	* app/widgets/gimpbrushfactoryview.c
	* app/widgets/gimpbufferview.c
	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimpcomponenteditor.c
	* app/widgets/gimpcontainerpopup.c
	* app/widgets/gimpdocumentview.c
	* app/widgets/gimperrorconsole.c
	* app/widgets/gimpfontview.c
	* app/widgets/gimpgradienteditor.c
	* app/widgets/gimpimageview.c
	* app/widgets/gimppaletteeditor.c
	* app/widgets/gimppatternfactoryview.c
	* app/widgets/gimptemplateview.c
	* app/widgets/gimptooloptionseditor.c
	* app/gui/dialogs-constructors.c
	* app/gui/gradient-select.c
	* app/gui/palette-select.c
	* app/gui/pattern-select.c: pass UI identifiers to the changed
	functions above.

	* app/display/gimpdisplayshell.[ch]: added a GimpUIManager for
	the menubar (menubar creating code still commented out).

	* app/display/gimpdisplay.c
	* app/gui/gui-vtable.c: update the ui manager.

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  Sven Neumann  <sven@gimp.org>

	* libgimp/gimpmenu.c (gimp_menu_add_none): use the same label as
	in the new combo_box widgets.

	* libgimpwidgets/gimpintcombobox.[ch]
	* libgimpwidgets/gimpintstore.[ch]: use LibGIMP copyright headers.

2004-04-21  Sven Neumann  <sven@gimp.org>

	* libgimp/gimpdrawablecombobox.c
	* libgimp/gimpimagecombobox.c
	* libgimp/gimppixbuf.c
	* libgimpwidgets/gimpintcombobox.c
	* libgimpwidgets/gimpintstore.c: API documentation.

2004-04-21  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpintcombobox.[ch]: added new functions
	gimp_int_combo_box_[prepend|append].

	* plug-ins/common/sample_colorize.c: ported to GimpDrawableComboBox.

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  Michael Natterer  <mitch@gimp.org>

	More unused action stuff:

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpactionfactory.[ch]: added a simple factory which
	produces GimpActionGroups.

	* app/widgets/gimpactiongroup.[ch]: added an "update_func" member
	to the GimpActionGroup struct. Added it as parameter to
	gimp_action_group_new(). Added function gimp_action_group_update().

	* app/widgets/gimpmenufactory.[ch]: added an "action_factory"
	member and constructor parameter. Added code to create
	GtkUIManagers from registered action group identifiers.

	* app/actions/Makefile.am
	* app/actions/actions.[ch]: new files: create a
	"global_action_factory" and register all action groups with it.

	* app/actions/edit-actions.c: s/edit_action_update/edit_actions_update/

	* app/actions/plug-in-actions.[ch]: added API to add/remove
	plug-in procedure actions dynamically (unfinished).

	* app/gui/menus.c (menus_init): call actions_init().
	(menus_exit): call actions_exit().

2004-04-21  Sven Neumann  <sven@gimp.org>

	* plug-ins/Lighting/lighting_ui.c
	* plug-ins/MapObject/mapobject_ui.c: ported to the new API.

2004-04-21  Sven Neumann  <sven@gimp.org>

	* libgimp/Makefile.am
	* libgimp/gimpui.h
	* libgimp/gimppixbuf.[ch]: new file that holds pixbuf accessors
	to gimp data (drawable and image thumbnails for now).

	* libgimp/gimpdrawablecombobox.[ch]
	* libgimp/gimpimagecombobox.[ch]: new files with GimpIntComboBox
	constructors for image, drawable, channel and layer menus.

	* plug-ins/script-fu/script-fu-scripts.c: use the new functions
	instead of the gimpmenu API that is about to be deprecated.

2004-04-20  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/pdb/fileops.pdb (file_load_thumbnail): removed
	color cast. Merged from stable branch.

	* app/pdb/fileops_cmds.c: regenerated.

2004-04-20  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/Makefile.am
	* libgimpwidgets/gimpwidgets.h
	* libgimpwidgets/gimpwidgetstypes.h
	* libgimpwidgets/gimpintstore.[ch]: added a GimpIntStore, derived
	from GtkListStore, to be used by GimpIntComboBox and also by the
	image and drawable menus.

	* libgimpwidgets/gimpintcombobox.c: use the new GimpIntStore.

	* app/widgets/gimpenumstore.[ch]: derive from GimpIntStore,
	removed API that is provided by the parent class.

	* app/widgets/gimpenumcombobox.[ch]: derive from GimpIntComboBox,
	removed API that is provided by the parent class.

	* app/gui/resize-dialog.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimplevelstool.c
	* app/widgets/gimpcolorframe.c
	* app/widgets/gimphistogrameditor.c
	* app/widgets/gimppropwidgets.c
	* app/widgets/gimpstrokeeditor.c: changed accordingly.

2004-04-20  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpenumstore.[ch]
	* app/widgets/gimpenumcombobox.c: let the pixbuf renderer take care
	of rendering the pixbuf from the stock_id.

2004-04-20  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpmemsizeentry.c
	* modules/cdisplay_colorblind.c
	* modules/cdisplay_proof.c: ported to GimpIntComboBox.

	* libgimpwidgets/gimpwidgets.[ch]: declared the gimp option_menu
	API as deprecated and removed the code here.

	* libgimpwidgets/Makefile.am
	* libgimpwidgets/gimpoldwidgets.[ch]: new files with deprecated
	code, guarded with #ifndef GIMP_DISABLE_DEPRECATED ... #endif.

	* libgimpwidgets/gimpintcombobox.h: added G_BEGIN_DECLS, G_END_DECLS.

	* configure.in (CPP_FLAGS): added -DGIMP_DISABLE_DEPRECATED.

	* app/widgets/gimpwidgets-constructors.c: added a #warning and
	#undef GIMP_DISABLE_DEPRECATED. The paint mode menu is the last
	remaining user of gimp_int_option_menu_new().

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

	* app/gui/convert-dialog.[ch]: renamed convert_to_indexed()
	to convert_dialog_new() and return the dialog. Removed
	convert_to_rgb() and convert_to_grayscale().

	* app/gui/offset-dialog.[ch]: renamed offset_dialog_create()
	to offset_dialog_new() and return the dialog.

	* app/Makefile.am
	* app/actions/drawable-commands.c
	* app/actions/image-commands.c: changed accordingly.

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  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpwidgets-constructors.[ch]: added new function
	gimp_paint_mode_menu_set_history().

	* app/gui/brush-select.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimppropwidgets.c: use the new function instead of
	the deprecated gimp_int_option_menu API.

2004-04-20  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/align_layers.c
	* plug-ins/common/borderaverage.c
	* plug-ins/common/channel_mixer.c
	* plug-ins/common/gif.c
	* plug-ins/common/mng.c
	* plug-ins/flame/flame.c
	* plug-ins/gfig/gfig.c: ported remaining plug-ins to GimpIntComboBox.

2004-04-20  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/iwarp.c (iwarp_get_pixel): check tile != NULL
	before unrefing it. Fixes bug #140554; merged from stable branch.

2004-04-20  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpenumcombobox.c: added more sanity checks.

	* libgimpwidgets/gimpintcombobox.[ch]: added another GimpIntComboBox
	constructor: gimp_int_combo_box_new_array().

	* plug-ins/Lighting/lighting_ui.c
	* plug-ins/MapObject/mapobject_ui.c
	* plug-ins/common/CML_explorer.c: ported to GimpIntComboBox.

2004-04-20  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/Makefile.am
	* libgimpwidgets/gimpwidgets.h
	* libgimpwidgets/gimpwidgetstypes.h
	* libgimpwidgets/gimpintcombobox.[ch]: added new widget
	GimpIntComboBox, a GtkComboBox with a simple list store to hold a
	label and an associated integer value. This is going to replace
	gimp_int_option_menu.

	* plug-ins/common/jpeg.c
	* plug-ins/print/gimp_main_window.c: ported these two plug-ins to
	the newly added widget.

2004-04-20  Sven Neumann  <sven@gimp.org>

	* plug-ins/gfig/gfig.c: removed unused return locations for menu
	item pointers.

2004-04-19  Sven Neumann  <sven@gimp.org>

	* configure.in: set gimp_plugin_version, gimp_sysconf_version and
	gimp_data_version to 2.1 so that the development version is
	clearly separated from stable gimp 2.0.

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  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpactiongroup.c
	* app/widgets/gimpenumcombobox.c
	* app/widgets/gimpenumstore.c: fixed inline docs.

	* app/widgets/gimpenumaction.c: fixed property declaration.

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

	* app/gui/colormap-editor-commands.[ch]
	* app/gui/debug-commands.[ch]
	* app/gui/dockable-commands.[ch]
	* app/gui/error-console-commands.[ch]
	* app/gui/file-commands.[ch]
	* app/gui/gradient-editor-commands.[ch]
	* app/gui/help-commands.[ch]
	* app/gui/qmask-commands.[ch]
	* app/gui/tool-options-commands.[ch]: removed "guint action"
	parameter from all callbacks which don't need it.

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  Michael Natterer  <mitch@gimp.org>

	* app/actions/Makefile.am
	* app/actions/actions-types.h: oops, forgot to commit this one.

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

	* menus/Makefile.am
	* menus/toolbox-menu.xml: added the toolbox menu.

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  Henrik Brix Andersen  <brix@gimp.org>

	* plug-ins/script-fu/scripts/gimp-headers.scm
	* plug-ins/script-fu/scripts/gimp-labels.scm: applied a patch from
	William Skaggs which changes the sub menu title for the gimp web
	theme to classic.gimp.org. Fixes bug #137036.

2004-04-19  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpdrawabletreeview.c: removed unused includes.

2004-04-19  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimppropwidgets.[ch]
	* app/gui/preferences-dialog.c: replaced
	gimp_prop_boolean_option_menu_new() with
	gimp_prop_boolean_combo_box_new().

2004-04-19  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpenumstore.[ch]: avoid unnecessary casts.
	
	* app/widgets/gimpenumcombobox.[ch]: added an API that inserts a
	GtkTreeModelFilter to make items invisible. This is a kludge to
	workaround bug #135875.
 
	* app/tools/gimpcurvestool.c
	* app/tools/gimplevelstool.c
	* app/widgets/gimphistogrameditor.c: use the new function to hide
	channels that are not available.

2004-04-18  Henrik Brix Andersen  <brix@gimp.org>

	* app/widgets/gimptemplateeditor.c
	(gimp_template_editor_constructor): use g_signal_connect_object()
	instead of g_signal_connect(). Fixes bug #140315.

2004-04-18  Pedro Gimeno  <pggimeno@wanadoo.es>

	* plug-ins/common/gauss_rle.c (gauss_rle): Oops, fixed my fix.

2004-04-18  Pedro Gimeno  <pggimeno@wanadoo.es>

	* plug-ins/common/gauss_iir.c: Change tabs to spaces all over the
	file, in preparation for other changes. Minor cleanup.

	* plug-ins/common/gauss_rle.c (gauss_rle): Plug a leak with the
	returned value from make_curve().

	* plug-ins/common/tga.c (load_image): Fix a condition which was
	preventing GRAYA images from loading.

2004-04-18  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpenummenu.[ch]: removed GimpEnumMenu.

	* app/widgets/gimpenumwidgets.[ch]: moved widget constructors that
	don't use GimpEnumMenu from gimpenummenu.[ch] to these new files.

	* app/widgets/gimpenumcombobox.[ch]: added a GtkComboBox widget
	using GimpEnumStore; replaces GimpEnumMenu.

	* app/widgets/gimpenumstore.[ch]: added new function
	gimp_enum_store_lookup_by_value().

	* app/widgets/gimppropwidgets.[ch]: replaced
	gimp_prop_enum_option_menu_new() with gimp_prop_enum_combo_box_new().

	* app/gui/brush-select.[ch]
	* app/gui/convert-dialog.c
	* app/gui/layers-commands.c
	* app/gui/preferences-dialog.c
	* app/gui/resize-dialog.c
	* app/tools/gimpblendoptions.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpmagnifytool.c
	* app/tools/gimppaintoptions-gui.c
	* app/tools/gimpselectionoptions.c
	* app/tools/gimptransformoptions.c
	* app/widgets/gimpcolorframe.c
	* app/widgets/gimpeditor.c
	* app/widgets/gimpgrideditor.c
	* app/widgets/gimphistogrameditor.c
	* app/widgets/gimpstrokeeditor.c
	* app/widgets/gimptemplateeditor.c
	* app/widgets/gimptexteditor.c: ported to GimpEnumComboBox.

2004-04-18  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpenumstore.[ch]: added (yet unused) GimpEnumStore,
	a GtkListStore for enum values.

2004-04-18  Sven Neumann  <sven@gimp.org>

	* plug-ins/print/gimp_main_window.c: replaced wrong use of
	gimp_option_menu with gimp_int_option_menu.

2004-04-18  Sven Neumann  <sven@gimp.org>

	* plug-ins/script-fu/script-fu-scripts.c: use a GtkComboBox for
	SF-OPTION.

2004-04-18  Sven Neumann  <sven@gimp.org>

	* plug-ins/winicon/icodialog.c
	* plug-ins/winicon/icosave.c: ported GtkOptionMenu to GtkComboBox.

2004-04-17  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpwidgets-constructors.[ch]:
	s/GtkSignalFunc/GCallback/

2004-04-17  Henrik Brix Andersen  <brix@gimp.org>

	* app/tools/gimphuesaturationtool.c
	(gimp_hue_saturation_tool_dialog): resolved conflicting
	mnemonic. Fixes bug #139868.

2004-04-17  Henrik Brix Andersen  <brix@gimp.org>

	* plug-ins/common/jpeg.c (save_dialog): live preview doesn't
	modify the undo history of the image anymore, label changed
	accordingly. Fixes bug #140296.

2004-04-16  Pedro Gimeno  <pggimeno@wanadoo.es>

	* plug-ins/common/tile.c (tile): changed a call to
	gimp_image_undo_enable to _undo_disable which was obviously the
	intention of the author. Added a call to gimp_drawable_update to
	get the previews refreshed.

2004-04-16  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpmeasuretool.c: don't use gtk_window_present() to
	raise the tool dialog since it also moves the focus away from the
	image window. Fixes the problem described in bug #139349.

2004-04-16  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcroptool.c: some code cleanup that I forgot to do
	when applying the patch.

2004-04-16  Sven Neumann  <sven@gimp.org>

	* plug-ins/helpbrowser/dialog.c (browser_dialog_load): present the
	help browser window.

2004-04-16  Sven Neumann  <sven@gimp.org>

	* plug-ins/helpbrowser/dialog.c: use a GtkComboBox instead of
	GtkCombo and keep the history in a GtkListStore.

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

	* app/core/gimpmarshal.list: new marshaller VOID:STRING

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpactiongroup.[ch]
	* app/widgets/gimpenumaction.[ch]
	* app/widgets/gimpstringaction.[ch]: added some completely unused
	GtkAction infrastructure.

2004-04-15  Manish Singh  <yosh@gimp.org>

	* tools/Makefile.am
	* app/Makefile.am
	* configure.in: app, tools, and user dir bumped to version 2.1 names.

	* app/text/gimpfontlist.c: since we now depend on pango 1.4, we can
	use pango_fc_font_description_from_pattern() instead of our
	cut-n-paste function, gimp_font_list_font_desc_from_pattern().

2004-04-15  Tor Lillqvist  <tml@iki.fi>

	* app/plug-in/plug-in-message.c (plug_in_handle_proc_install)
	* app/plug-in/plug-in-proc.h (struct _PlugInProcDef)
	* app/plug-in/plug-in-rc.c (plug_in_rc_write)
	* app/plug-in/plug-ins.c (plug_ins_init): Make PDB procedures
	(including their menu entries) installed during a plug-ins init()
	phase show up. Add a flag to PlugInProcDef that tells whether the
	proc was installed during the init() phase. Such procs aren't
	saved to the pluginrc. Move the code that initializes plug-ins
	that need initialization earlier, before the procs are added to
	the PDB and menus are built. Fixes bug #139969.

2004-04-16  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/Makefile.am
	* plug-ins/common/plugin-defs.pl
	* plug-ins/common/AlienMap.c: removed the AlienMap plug-in since
	AlienMap2 duplicates its functionality.

	* plug-ins/common/AlienMap2.c: applied patch from William Skaggs
	with a couple of user interface improvements (bug #140079).

2004-04-15  Tor Lillqvist  <tml@iki.fi>

	* libgimpthumb/Makefile.am: For Win32, install gimpthumb.def, like
	the .def files of the other libgimp* libs.

	* app/Makefile.am (INCLUDES): Add PANGOFT2_CFLAGS.

	* gimp-zip.in: Put also libgimpthumb in the developer package.

2004-04-15  Sven Neumann  <sven@gimp.org>

	* plug-ins/winicon/icodialog.c: fixed gtk+ includes, added a
	warning that deprecated widgets are being used.

2004-04-15  Sven Neumann  <sven@gimp.org>

	* configure.in
	* plug-ins/Makefile.am
	* plug-ins/winicon/Makefile.am
	* plug-ins/winicon/icodialog.[ch]
	* plug-ins/winicon/icoload.[ch]
	* plug-ins/winicon/icosave.[ch]
	* plug-ins/winicon/main.[ch]: added plug-in to load and save
	Windows icon files. Plug-in written by Christian Kreibich, port to
	GIMP-2.0 API by Gregor Riepl, massive code cleanup by me. Fixes
	bug #139160.

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

	* app/widgets/gimpdnd.c (gimp_dnd_data_source_add)
	(gimp_dnd_data_source_remove): use the new dynamic GtkTargetList
	based API for changing the widget's drag source types.

	* app/widgets/gimpdocumentview.c (gimp_document_view_new): simply
	call gimp_dnd_file_source_add() instead of duplicating the whole
	GtkTargetEntry array insanity just for adding one source type.

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

	* plug-ins/FractalExplorer/Dialogs.c
	* plug-ins/flame/flame.c
	* plug-ins/gfig/gfig.c: first plug-ins ported to GtkFileChooser.

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

	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell.c
	* app/widgets/gimpcontainertreeview.c: removed runtime version
	checks and workarounds for bugs which are fixed in GTK+ 2.4.

	* app/widgets/gimpfiledialog.c
	(gimp_file_dialog_selection_changed): added runtime check for GTK+
	2.4.1 and work around GtkFileChooser's missing "update_preview"
	functionality for multiple selections if the dependency is not
	met.

	* app/widgets/gimpwidgets-utils.c (gimp_menu_position)
	(gimp_menu_button_position): call gtk_menu_set_monitor() until
	bug #139187 is fixed.

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

	* app/widgets/gimpfiledialog.[ch]: derive it from GtkFileChooser
	instead of GtkFileSelection.

	* app/gui/file-dialog-utils.c
	* app/gui/file-open-dialog.c
	* app/gui/file-save-dialog.c
	* app/widgets/gimpthumbbox.c: changed accordingly.

	* app/gui/gradients-commands.c
	* app/gui/vectors-commands.c
	* app/tools/gimpimagemaptool.c
	* app/widgets/gimperrorconsole.c
	* app/widgets/gimptexteditor.c
	* libgimpwidgets/gimpfileentry.c: use file choosers instead of
	file selectors.

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

	* configure.in: depend on glib 2.4.0, gtk+ 2.4.0, pangoft2 1.4.0

	* app/sanity.c: changed accordingly.

2004-04-15  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcropoptions.[ch]
	* app/tools/gimpcroptool.[ch]: applied a patch from Jordi Gay that
	allows to keep the aspect ratio fixed.

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

	* app/core/gimplayermask.c (gimp_layer_mask_class_init): set
	translate_desc to "Move Layer Mask".

	* app/tools/gimpeditselectiontool.c: take the undo desc
	from the moved item's class instead of duplicating all
	strings here.

2004-04-15  Sven Neumann  <sven@gimp.org>

	* app/core/gimppalette-import.[ch]
	* app/gui/palette-import-dialog.c: added palette import from RIFF
	palette files based on a patch from ÃRDI GergÃµ (bug #129788).

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

	* app/xcf/xcf.c (xcf_save_invoker) (xcf_load_invoker): forgot
	to add context parameters to this non-generated PDB invokers.
	Fixes XCF loading/saving.

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

	* app/core/gimpitem.[ch]: added "const gchar *stroke_desc" to
	the GimpItemClass struct and always push an undo group
	around GimpItem::stroke().

	* app/core/gimpchannel.c
	* app/core/gimpselection.c
	* app/vectors/gimpvectors.c: set the stroke_desc accordingly
	and don't push undo groups.

	* app/text/gimptextlayer.c (gimp_text_layer_class_init): set
	all of GimpItemClass' undo_descs.

	* app/text/gimptextlayer-transform.c: don't push undo groups here.

2004-04-15  Sven Neumann  <sven@gimp.org>

	* libgimpcolor/gimpcolorspace.c (gimp_rgb_to_hsv): applied patch
	from Marco Munari that removes a redundant "if" (bug #133540).

2004-04-15  Sven Neumann  <sven@gimp.org>

	* plug-ins/ifscompose/ifscompose.c: applied patch from Yeti that
	adds spinbuttons instead of simple text entries (bug #138132).

2004-04-15  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/Makefile.am
	* plug-ins/common/plugin-defs.pl
	* plug-ins/common/gicon.c: removed the GIcon plug-in (addresses
	one aspect of bug #139160).

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

	Context cleanup continued:

	* app/core/gimpitem.[ch]: added context parameter to
	GimpItem::stroke().

	* app/core/gimpchannel.c (gimp_channel_stroke)
	* app/vectors/gimpvectors.c (gimp_vectors_stroke): use it to get
	default values from instead of gimp_get_user_context().

	* app/core/gimpselection.c
	* app/gui/stroke-dialog.c
	* tools/pdbgen/pdb/edit.pdb
	* tools/pdbgen/pdb/paths.pdb: changed accordingly.

	* app/pdb/edit_cmds.c
	* app/pdb/paths_cmds.c: regenerated.

	* app/plug-in/plug-in.[ch]: added GimpContext member to the PlugIn
	struct. Added context parameter to plug_in_new(),
	plug_in_call_query() and plug_in_call_init().

	* app/plug-in/plug-in-run.[ch]: added context parameters to
	plug_in_run() and plug_in_repeat().

	* app/gui/plug-in-commands.c
	* app/gui/vectors-commands.c
	* app/pdb/procedural_db.c
	* app/widgets/gimphelp.c: pass a context to plug_in_run() and
	plug_in_repeat().

	* app/plug-in/plug-in-message.c (plug_in_handle_proc_run): call
	procedures with the plug-in's context.

	* app/plug-in/plug-ins.c: use a temporary context for running the
	plug-ins' query() and init() functions. Use the same context for
	running automatic extensions. This temporarily separates the main
	Script-Fu extension from the user context (i.e. scripts have no
	way of setting/getting the global FG, BG, brush etc.).

2004-04-15  Sven Neumann  <sven@gimp.org>

	* NEWS
	* README: mention that this is the development branch.

2004-04-15  Sven Neumann  <sven@gimp.org>

	* app/paint-funcs/paint-funcs.[ch]: 
	* app/paint-funcs/paint-funcs-generic.h: header cleanup, added
	some const qualifiers, converted tabs to spaces. Fixes bug #140115
	for the HEAD branch.

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

	Get rid of the "current_context" which was in fact just a bunch of
	global variables. Instead, pass the needed context all the way
	from the GUI and the PDB to the core. This is a prerequisite for
	macro recording and generally helps separating the various
	subsystems from each other. Work in progress...

	* app/core/gimp.[ch]: removed member "current_context" and
	gimp_[get|set]_current_context().

	* app/core/gimp-edit.[ch]
	* app/core/gimpdrawable-blend.[ch]
	* app/core/gimpdrawable-bucket-fill.[ch]
	* app/core/gimpdrawable-offset.[ch]
	* app/core/gimpdrawable-transform.[ch]
	* app/core/gimpimage-crop.[ch]
	* app/core/gimpimage-flip.[ch]
	* app/core/gimpimage-merge.[ch]
	* app/core/gimpimage-resize.[ch]
	* app/core/gimpimage-rotate.[ch]
	* app/core/gimpimage.[ch]
	* app/core/gimpimagefile.[ch]
	* app/core/gimpitem-linked.[ch]
	* app/core/gimpitem.[ch]
	* app/core/gimplayer.[ch]
	* app/core/gimpselection.[ch]
	* app/core/gimptemplate.[ch]
	* app/file/file-open.[ch]
	* app/file/file-save.[ch]
	* app/pdb/procedural_db.[ch]
	* app/text/gimptext-compat.[ch]
	* app/text/gimptextlayer-transform.[ch]
	* app/gui/brush-select.[ch]
	* app/gui/font-select.[ch]
	* app/gui/gradient-select.[ch]
	* app/gui/palette-select.[ch]
	* app/gui/pattern-select.[ch]: added tons of "GimpContext *context"
	parameters and use the passed context instead of
	gimp_get_current_context().

	* app/app_procs.c
	* app/batch.c
	* app/core/gimpchannel.c
	* app/core/gimpdrawable.c
	* app/paint/gimperaser.c
	* app/paint/gimppaintbrush.c
	* app/plug-in/plug-in-message.c
	* app/plug-in/plug-ins.c
	* app/text/gimptextlayer.c
	* app/tools/gimpblendtool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpfliptool.c
	* app/tools/gimpinktool.c
	* app/tools/gimptransformtool.c
	* app/vectors/gimpvectors.c
	* app/gui/convert-dialog.c
	* app/gui/drawable-commands.c
	* app/gui/edit-commands.c
	* app/gui/file-commands.c
	* app/gui/file-new-dialog.c
	* app/gui/file-open-dialog.c
	* app/gui/file-save-dialog.c
	* app/gui/image-commands.c
	* app/gui/layers-commands.c
	* app/gui/offset-dialog.c
	* app/gui/select-commands.c
	* app/gui/vectors-commands.c
	* app/widgets/gimpdnd.c
	* app/widgets/gimpdocumentview.c
	* app/widgets/gimphelp.c
	* app/widgets/gimpthumbbox.c: pass gimp_get_user_context() or
	GIMP_CONTEXT(tool_options) or whatever is the right context
	to the changed core functions.

	* tools/pdbgen/app.pl: pass "GimpContext *context" to all
	generated PDB invokers.

	* tools/pdbgen/pdb/brush_select.pdb
	* tools/pdbgen/pdb/brushes.pdb
	* tools/pdbgen/pdb/drawable.pdb
	* tools/pdbgen/pdb/edit.pdb
	* tools/pdbgen/pdb/font_select.pdb
	* tools/pdbgen/pdb/gradient_select.pdb
	* tools/pdbgen/pdb/gradients.pdb
	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/layer.pdb
	* tools/pdbgen/pdb/paint_tools.pdb
	* tools/pdbgen/pdb/palette.pdb
	* tools/pdbgen/pdb/palette_select.pdb
	* tools/pdbgen/pdb/palettes.pdb
	* tools/pdbgen/pdb/paths.pdb
	* tools/pdbgen/pdb/pattern_select.pdb
	* tools/pdbgen/pdb/patterns.pdb
	* tools/pdbgen/pdb/selection.pdb
	* tools/pdbgen/pdb/text_tool.pdb
	* tools/pdbgen/pdb/transform_tools.pdb: pass the new context
	parameter to the changed core functions.

	* app/pdb/*_cmds.c: regenerated.

2004-04-14  RaphaÃ«l Quinet  <quinet@gamers.org>

	* plug-ins/script-fu/scripts/copy-visible.scm: New version of the
	script that works on a temporary copy of the image instead of
	copying the visible layers.  Fixes bug #139989.

2004-04-14  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/film.c: fixed typo (bug #140039).

2004-04-14  Sven Neumann  <sven@gimp.org>

	* configure.in: bumped version to 2.1.0, interface age 0, binary
	age 0. Changed library versioning to include gimp_minor_version
	similar to how gtk+ does it.
	
2004-04-14  Sven Neumann  <sven@gimp.org>

	* Made 2.0.1 release.

2004-04-13  RaphaÃ«l Quinet  <quinet@gamers.org>

	* plug-ins/common/mng.c (query, run): Workaround for bug #139947:
	do not register the plug-in for INDEXED* modes and do not declare
	that it can handle INDEXED images in gimp_export_image().  This
	forces a conversion to RGB instead of generating broken indexed
	images.  The generation of correct indexed MNG files is likely to
	require a newer release of libmng.
	(mng_data): Set default compression level to 9 instead of 6.

2004-04-13  Sven Neumann  <sven@gimp.org>

	* plug-ins/imagemap/imap_cern_parse.c
	* plug-ins/imagemap/imap_csim_parse.c
	* plug-ins/imagemap/imap_ncsa_parse.c: regenerated using GNU Bison
	version 1.875a. Fixes bug #139894.

2004-04-13  Sven Neumann  <sven@gimp.org>

	* tools/gimp-remote.c: reverted last change and go back to the
	solution using fork(). Hopefully fixes bug #139158 this time.

2004-04-13  Sven Neumann  <sven@gimp.org>

	* app/core/gimp-utils.[ch] (gimp_get_default_language): added a
	category parameter to make this function more flexible.

	* app/text/gimptext.c: changed accordingly.

	* app/widgets/gimphelp.c (gimp_help): localize the help pages
	according to the value of LC_MESSAGES. Fixes bug #139917.

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

	Moved the calls to floating_sel_relax()/rigor() from various
	places to two single spots in the core where they are actually
	needed. Fixes bug #138356 (which was caused by the projection
	being triggered in the middle of changing the floating selection's
	size or the size of the drawable it is attached to). This commit
	effectively removes floating selection fiddling from the core's
	public API.

	* app/core/gimpdrawable.[ch] (gimp_drawable_has_floating_sel): new
	function which returns TRUE if there is a floating selection
	attached to the drawable.

	* app/core/gimpdrawable.c (gimp_drawable_translate)
	(gimp_drawable_set_tiles_full): if the drawable *has* a floating
	selection, relax/rigor it before/after modifying the drawable.

	* app/core/gimplayer.c (gimp_layer_translate)
	(gimp_layer_set_tiles): if the layer *is* the floating selection,
	relax/rigor it before/after modifying it.

	* app/core/gimpdrawable-transform.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimage-crop.c
	* app/core/gimpimage-flip.c
	* app/core/gimpimage-resize.c
	* app/core/gimpimage-rotate.c
	* app/core/gimpimage-scale.c
	* app/gui/layers-commands.c
	* app/tools/gimpeditselectiontool.c
	* tools/pdbgen/pdb/layer.pdb: removed calls to
	floating_sel_rigor()/relax() all over the place. Also removed
	lots of undo groups which are obsolete now.

	* app/pdb/layer_cmds.c: regenerated.

2004-04-13  Sven Neumann  <sven@gimp.org>

	* plug-ins/imagemap/imap_file.c (do_file_error_dialog): convert
	the filename to UTF-8 before displaying it.

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

	GimpItem undo group cleanup in preparation of fixing bug #138356:

	* app/core/core-enums.[ch]: renamed LAYER_SCALE and LAYER_RESIZE
	undo groups to ITEM_SCALE and ITEM_RESIZE.

	* app/core/gimpitem.[ch]: always push undo groups around
	GimpItem::translate(), scale(), resize(), flip(), rotate() and
	transform(). Added the resp. undo_desc strings to GimpItemClass.

	* app/core/gimpchannel.[ch]
	* app/core/gimpdrawable.[ch]
	* app/core/gimplayer.c: removed all undo groups from
	implementations of the above methods. Removed the undo_desc
	strings which were moved to GimpItemClass.

	* app/core/gimpimage-crop.c
	* app/core/gimpselection.c
	* app/gui/layers-commands.c
	* app/vectors/gimpvectors.c
	* tools/pdbgen/pdb/layer.pdb: changed accordingly.

	* app/pdb/layer_cmds.c: regenerated.

2004-04-12  Sven Neumann  <sven@gimp.org>

	* configure.in: cleaned up the check for Xmu. Include <gdk/gdkx.h>
	when testing for Xmu.h. Fixes bug #139803.

2004-04-12  Sven Neumann  <sven@gimp.org>

	* libgimpmath/Makefile.am: remove test-md5 on make clean.

2004-04-11  Manish Singh  <yosh@gimp.org>

	* plug-ins/pygimp/plug-ins/py-slice.py: When using a separate dir for
	images, actually prepend the dir to the img srcs in the html. Allow
	only horizontal or vertical guides in an image, do not require both.
	A bit smarter path handling. Addresses most of bug #138714.

2004-04-11  Hans Breuer  <hans@breuer.org>

	* app/makefile.msc : build sanity.obj
	  app/text/makefile.msc : gimptextundo.obj
	  app/widgets/makefile.msc : gimppatternfactoryview.obj

	* plug-ins/common/winclipboard.c : don't call 
	gimp_image_undo_enable() when it's not switched off. 
	Otherwise the undo history would be destroyed with
	Gimp-Core-CRITICAL **: file gimpimage.c: line 1579: assertion 
	`gimage->undo_freeze_count > 0' failed

2004-04-10  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptexttool.c (gimp_text_tool_apply): push an undo
	group only when it's needed. This resurrects text undo compression
	that broke when bug #137767 got fixed.

2004-04-10  Sven Neumann  <sven@gimp.org>

	* docs/gimp-remote.1.in: updated example URL.

2004-04-10  Pedro Gimeno  <pggimeno@wanadoo.es>

	* app/core/gimpdrawable-transform.c
	(gimp_drawable_transform_tiles_affine): Applied patch from William
	Skaggs that addresses bug #120490.

	* app/sanity.c (sanity_check): Modified the message that reports
	an old version of Fontconfig in an attempt to make it more
	informative.

2004-04-10  Sven Neumann  <sven@gimp.org>

	* tools/gimp-remote.c (start_new_gimp): reverted the last change
	and did a different fix that involves closing the X display before
	starting gimp (bug #139158).

2004-04-09  Manish Singh  <yosh@gimp.org>

	* plug-ins/common/jpeg.c: Uglier workaround for bug #138357, since
	the previous one did break error handling. Fixes bug #139571.

2004-04-09  Henrik Brix Andersen  <brix@gimp.org>

	* README.i18n: s/14/20/ plus whitespace clean-up.

2004-04-08  Sven Neumann  <sven@gimp.org>

	* plug-ins/script-fu/siod-wrapper.c: applied a patch from Kevin
	Cozens that makes the Script-Fu PDB marshaller handle NULL
	strings. Some minor code cleanup. Fixes bug #139386.

2004-04-08  Sven Neumann  <sven@gimp.org>

	* tools/gimp-remote.c (start_new_gimp): applied a patch from
	Michael Matz that calls fork() before starting gimp. This is to
	avoid X server authentification problems (bug #139158).

2004-04-07  Henrik Brix Andersen  <brix@gimp.org>

	* configure.in (ALL_LINGUAS): revert addition of "is" until all
	.po files are there.

2004-04-07  SamÃºel JÃ³n Gunnarsson  <sammi@techattack.nu>

	* configure.in: Added "is" to ALL_LINGUAS

2004-04-06  IÃ±aki LarraÃ±aga  <dooteo@euskalgnu.org>

	* configure.in: Added "eu" (Basque) to ALL_LINGUAS.

2004-04-05  Pedro Gimeno  <pggimeno@wanadoo.es>

	* plug-ins/script-fu/scripts/copy-visible.scm: Use
	gimp-image-get-active-layer/channel instead of the passed
	drawable for later restoring the initially active layer/channel.
	Addresses bug #138662.

	* plug-ins/script-fu/scripts/drop-shadow.scm: Add a call to
	gimp-image-set-active-layer in order for it to fail early instead
	of failing with the undo group open in case the drawable is not
	suitable for applying the effect.

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

	* app/core/gimpimage.c (gimp_image_real_mode_changed): update the
	whole image.

	* app/display/gimpdisplay-handlers.c: removed obsolete
	"mode_changed" and "colormap_changed" handlers because GimpImage's
	default handlers already update the whole image.

2004-04-05  Pedro Gimeno  <pggimeno@wanadoo.es>

	Sanitize rectangle and ellipse selection handling (bug #138237
	and bug #138103):

	* app/tools/gimprectselecttool.h
	* app/tools/gimprectselecttool.c (GimpRectSelectTool): new
	member "moved" indicating whether the cursor was moved after
	the click.
	(gimp_rect_select_tool_coords_to_integer): New function for
	consistent conversion of the rectangle FP coords to pixels.
	(gimp_rect_select_tool_button_press,
	gimp_rect_select_tool_button_release,
	gimp_rect_select_tool_motion, gimp_rect_select_tool_draw): use
	it instead of fiddling with the FP coordinates. Update "moved"
	and use it to detect whether the selection needs to be cleared.

	* app/tools/gimpellipseselecttool.c
	(gimp_ellipse_select_tool_draw): use the new coords_to_integer
	function.

2004-04-05  Sven Neumann  <sven@gimp.org>

	* plug-ins/Lighting/lighting_ui.c: applied the second patch
	attached to bug #138788 by William Skaggs. Removes some user
	interface elements that have no corresponding implementation and
	fixes preview updates.

2004-04-04  Sven Neumann  <sven@gimp.org>

	* Makefile.am
	* NEWS.pre-2-0: moved old NEWS to this new file.

	* NEWS: list bugs fixed since 2.0.0.

2004-04-04  Sven Neumann  <sven@gimp.org>

	* Makefile.am
	* docs/Makefile.am: don't install gimptool symlinks to
	gimptool-2.0 and its manpage. gimp.m4 as installed with gimp-1.2
	looks for gimptool (bug #139024).

2004-04-04  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-draw.[ch] pass the bounding box of
	the exposed area to gimp_display_shell_draw_grid() and draw only
	the relevant part of the grid. Fixes bug #138081.

2004-04-04  Sven Neumann  <sven@gimp.org>

	Cache the GC for drawing the grid as suggested in bug #138081:

	* app/display/gimpdisplayshell.[ch]: added a grid_gc member to
	GimpDisplayShell.

	* app/display/gimpdisplayshell-handlers.c
	(gimp_display_shell_grid_notify_handler)
	(gimp_display_shell_disconnect): invalidate the grid GC.

	* app/display/gimpdisplayshell-draw.c (gimp_display_shell_draw_grid):
	use the cached grid_gc. Also applied the fix that Pedro Gimeno did
	for bug #138606.

2004-04-04  Sven Neumann  <sven@gimp.org>

	* app/core/gimpundo.c (gimp_undo_type_to_name): added a missing
	call to gettext(). Fixes bug #139000.

2004-04-03  Manish Singh  <yosh@gimp.org>

	* gimptool-2.0.in: Create any directories in the install path that do
	not already exist. Fixes bug #138980.

	* docs/gimptool.1.in: s/dont/don't/g

2004-04-04  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimagemap.c (gimp_image_map_apply): do nothing if the
	selection is empty. Fixes bug #138973.

2004-04-03  Sven Neumann  <sven@gimp.org>

	* app/text/gimptextlayer.c (gimp_text_layer_new): create the
	initial text layer with a size of 1 x 1 since tile_manager_new()
	does not any longer accept 0 x 0.

	* app/core/gimpdrawable.c (gimp_drawable_configure): check that
	width and height are > 0.

2004-04-03  Sven Neumann  <sven@gimp.org>

	* plug-ins/Lighting/lighting_main.c
	* plug-ins/Lighting/lighting_shade.c: applied the first of two
	patches attached to bug #138788 by William Skaggs.

2004-04-02  Simon Budig  <simon@gimp.org>

	* plug-ins/common/whirlpinch.c: set a proper pixelfetcher 
	edge mode for bigger radii. Avoids getting garbage at the
	image borders.

2004-04-02  Dave Neary  <bolsh@gimp.org>

	* plug-ins/common/jpeg.c: Added .jpe to the list of extensions 
	that the jpeg plug-in recognises. Fixes bug #138776.

2004-04-01  Sven Neumann  <sven@gimp.org>

	* app/gui/user-install-dialog.c: unset the bg_pixmap and tweak
	style colors for all states. Sort of ugly but makes the dialog
	work better with more obscure themes (bug #138379).

2004-04-01  Sven Neumann  <sven@gimp.org>

	* tools/kernelgen.c: updated a comment.

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

	* app/core/core-enums.[ch] (enum GimpUndoType): added undo type
	GIMP_UNDO_TEXT_LAYER_MODIFIED and undo group types
	GIMP_UNDO_GROUP_DRAWABLE and GIMP_UNDO_GROUP_DRAWABLE_MOD.

	* app/core/gimpimage-undo-push.[ch]: added new new function
	gimp_image_undo_push_text_layer_modified() which makes
	modifications of the text_layer's "modified" boolean undoable.

	* app/core/gimpdrawable.[ch]: added new virtual function
	GimpDrawable::push_undo() and moved the actual undo pushing into
	the default implementation gimp_drawable_real_push_undo().

	* app/text/gimptextlayer.c (gimp_text_layer_push_undo): new
	function. Pushes the text_layer's modified state to the undo stack
	after upchaining and sets modified to TRUE.

	(gimp_text_layer_set_tiles): ditto.

	(gimp_lext_layer_apply_region)
	(gimp_text_layer_replace_region): removed because their default
	implementations already call gimp_drawable_push_undo().

	(gimp_text_layer_swap_pixels): removed because swap_pixels() is
	used by undo only and doesn't need to care about the text_layer's
	modified state.

	(gimp_text_layer_render): don't set modified to FALSE here because
	we can't push an undo step here.

	(gimp_text_layer_set): push the modified state to the undo stack
	and set it to FALSE here. Also push the layer's tiles if the
	layer was modified.

	* app/tools/gimptexttool.c (gimp_text_tool_apply): push "modified"
	to the undo stack and set it to FALSE here, too.

	Fixes bug #137767.

2004-03-31  Simon Budig  <simon@gimp.org>

	* app/tools/gimptransformtool.c: One really should use braces
	when mixing additions and multiplication and the operator
	precedence is not the desired one...

	I feel stupid...  :-)

2004-03-31  Michael Natterer  <mitch@gimp.org>

	* app/core/gimp-transform-utils.c
	(gimp_transform_matrix_perspective): make sure 0.0/0.0 results
	in 1.0, not NaN.

	* app/core/gimpdrawable-transform.c
	(gimp_drawable_transform_tiles_affine): instead of returning NULL
	if the transformation shrinks the tiles completely away, return at
	least the pixel (or the row or column of pixels) which best covers
	the sub-pixel area of the transform result:

	- Changed rounding of the transformed coordinates from RINT()
	  to floor()/ceil() so we don't cut off sub-pixel portions of the
	  transform result.
	- Force the minimal size if the changed rounding didn't help.

	Fixes bug #138117.

	Also added paranoia code which falls back to clip_result if the
	passed matrix produces NaN coordinates (copied the FINITE() macro
	from image_cmds.c).

2004-03-30  Sven Neumann  <sven@gimp.org>

	* plug-ins/script-fu/scripts/grid-system.scm: define "map" here,
	the script used to take the definition from alien-glow-arrow.scm
	or beveled-pattern-arrow.scm. Also added an undo group around all
	operations. Fixes bug #138524.

2004-03-30  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/sanity.[ch]: new files implementing sanity_check() for
	run-time checking library versions. Added a check for FreeType but
	disabled it until we figured if and how freetype causes some of
	the DLL hell bugs.

	* app/main.c (main): call it and abort if it fails.

	* app/app_procs.[ch]: added app_gui_abort() so main.c doesn't
	need to #include "gui/gui.h"

	* app/gui/gui.[ch] (gui_libs_init): removed library sanity checking.

	(gui_abort): new function which shows the abort message.

2004-03-30  Michael Natterer  <mitch@gimp.org>

	* configure.in (ALL_LINGUAS): revert addition of "pa" until
	all .po files are there.

2004-03-20  Guntupalli Karunakar  <karunakar@freedomink.org>

	* configure.in: Added "pa" for Punjabi to ALL_LINGUAS.

2004-03-29  Manish Singh  <yosh@gimp.org>

	* plug-ins/common/jpeg.c (struct my_error_mgr): Move setjump_buffer
	to the beginning of the structure, to make sure it is aligned on a
	16-byte boundary for ia64, even with icc. Fixes #138357.

2004-03-29  Sven Neumann  <sven@gimp.org>

	* app/config/gimpguiconfig.c: changed the default for "help-locales"
	from NULL to an empty string. Fixes the generated gimprc man-page.

	* app/config/gimprc-blurbs.h (HELP_LOCALES_BLURB): added missing
	whitespace.

	* app/widgets/gimphelp.c: use the user's locale if "help-locales"
	is NULL or the empty string.

	* docs/gimprc.5.in
	* etc/gimprc: regenerated.

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

	* app/core/core-enums.[ch] (enum GimpUndoType): added new group
	GIMP_UNDO_GROUP_FS_REMOVE.

	* app/core/gimplayer-floating-sel.c (floating_sel_remove): push an
	undo group. Fixes undo corruption spotted by Pedro Gimeno.

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

	* plug-ins/common/guillotine.c (guillotine): Don't just skip
	guides at the image edges but any guide which is at a position we
	already remembered. Should catch all instances of bug #138312 this
	time.

2004-03-28  Sven Neumann  <sven@gimp.org>

	* plug-ins/ifscompose/ifscompose.c: applied patch from David Necas
	that updates the sensitivity of the Delete button and menu entry.
	Fixes bug #138212.

2004-03-28  Sven Neumann  <sven@gimp.org>

	* plug-ins/MapObject/mapobject_main.c: fixed non-interactive call.

	* plug-ins/script-fu/scripts/spinning-globe.scm: pass -1 as
	drawable ID for unused drawables. Fixes bug #138253.
	
2004-03-28  Sven Neumann  <sven@gimp.org>

	* app/text/gimpfontlist.c (gimp_font_list_add_font): validate the
	font name. This should work around the crashes that Windows users
	were experiencing on startup (bug #132366). The real problem needs
	to be fixed elsewhere though.

2004-03-28  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage-undo-push.c (undo_pop_layer): when re-adding
	a layer with mask, don't forget to set layer->mask->removed to FALSE.

2004-03-28  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpitem.[ch]: added "gboolean removed" to the GimpItem
	struct. Defaults to FALSE. Set it to TRUE in gimp_item_removed().
	Added public function gimp_item_is_removed().

	* app/core/gimpimage-undo-push.c (undo_pop_layer)
	(undo_pop_layer_mask) (undo_pop_channel) (undo_pop_vectors):
	set it to FALSE manually when re-adding something from the
	undo stack.

	* tools/pdbgen/app.pl
	* tools/pdbgen/pdb.pl: don't allow any operation on items which
	are removed from the image (and exist on the undo stack only).
	Fixes bug #138311.

	* app/pdb/channel_cmds.c
	* app/pdb/color_cmds.c
	* app/pdb/drawable_cmds.c
	* app/pdb/edit_cmds.c
	* app/pdb/floating_sel_cmds.c
	* app/pdb/image_cmds.c
	* app/pdb/layer_cmds.c
	* app/pdb/paint_tools_cmds.c
	* app/pdb/parasite_cmds.c
	* app/pdb/selection_cmds.c
	* app/pdb/selection_tools_cmds.c
	* app/pdb/transform_tools_cmds.c: regenerated.

2004-03-28  Sven Neumann  <sven@gimp.org>

	* plug-ins/script-fu/scripts/slide.scm: applied a (modified) patch
	from Nils Philippsen that fixes bug #138310.

2004-03-28  Michael Natterer  <mitch@gimp.org>

	* plug-ins/common/guillotine.c (guillotine): applied a (modified)
	patch from Joao S. O. Bueno which removes any guides from the
	cropped images. Fixes bug #138314.

	Skip guides which are at the image's edges because the algorithm
	already assumes that there are always guides at these positions.
	Fixes bug #138312.

2004-03-27  Tor Lillqvist  <tml@iki.fi>

	* plug-ins/help/Makefile.am (AM_LDFLAGS): Use -mwindows on Windows
	to avoid a console window popping up.

2004-03-26  Manish Singh  <yosh@gimp.org>

	* tools/pdbgen/app.pl: don't generate code with tabs.

	* tools/pdbgen/pdb/procedural_db.pdb: convert tabs to spaces in
	helper function declaration.

	* app/pdb/procedural_db.c: convert tabs to spaces.

	* app/pdb/*.c: regenerated, no code changes, only tabs->spaces.

2004-03-26  Manish Singh  <yosh@gimp.org>

	* tools/pdbgen/app.pl: kill whitespace in blank lines.

	* app/pdb/*.c: regenerated, no code changes, only whitespace.

2004-03-26  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdrawable-transform.c
	(gimp_drawable_transform_tiles_affine): return NULL tiles if the
	matrix would transform the drawable into nothing. Fixes the
	core-crashing part of bug #138117 and makes the script fail
	with an execution error.

2004-03-25  Sven Neumann  <sven@gimp.org>

	* README: mention the gimp-perl pre-release and provide a link.

2004-03-25  Michael Natterer  <mitch@gimp.org>

	* app/base/tile-manager.c (tile_manager_new): g_return_if_fail()
	on width, height or bpp <= 0. Doesn't fix anything but badly
	warns (and helps debugging) on bug #138117.

2004-03-25  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpvectortool.c (gimp_vector_tool_button_release):
	fixed condition which triggers the path tool's undo hack.  Fixes
	bug #138086. Also g_object_unref() the undo step.

	Removed trailing whitespace.

2004-03-25  Manish Singh  <yosh@gimp.org>

	* libgimp/gimp.c
	* app/plug-in/plug-in-shm.c: close the shm_open fd in the POSIX
	shm case. We were leaking an fd here.

	* app/tools/gimptexttool.c (gimp_text_tool_connect): remove
	unnecessary G_OBJECT() cast in g_object_set() call.

2004-03-23  Michael Natterer  <mitch@gimp.org>

	* autogen.sh: be verbose about AUTOGEN_CONFIGURE_ARGS in the
	message that is printed if no arguments were passed.

2004-03-23  Sven Neumann  <sven@gimp.org>
	    Michael Natterer <mitch@gimp.org>

	* Made 2.0.0 release.
