Commit 4762b734 authored by Sven Neumann's avatar Sven Neumann Committed by Sven Neumann

bumped minimum required version of GLib to 2.18.0.

2008-11-04  Sven Neumann  <sven@sven>

	* configure.in: bumped minimum required version of GLib to 
2.18.0.

	* INSTALL: document the updated dependency.

	* app/core/gimp.[ch]: introduced gimp_message_literal(), a 
variant
	of gimp_message() that takes a literal string.

	* app/errors.[ch]: removed format arguments from 
gimp_fatal_error()
	and gimp_terminate() and let them take a literal string instead.

	* app/tools/gimptool.[ch]: introduced 
gimp_tool_message_literal(),
	a variant of gimp_tool_message() that takes a literal string.

	* app/actions/documents-commands.c
	* app/actions/drawable-commands.c
	* app/actions/edit-commands.c
	* app/actions/error-console-commands.c
	* app/actions/file-commands.c
	* app/actions/gradients-commands.c
	* app/actions/image-commands.c
	* app/actions/layers-commands.c
	* app/actions/palettes-commands.c
	* app/actions/plug-in-commands.c
	* app/actions/select-commands.c
	* app/actions/vectors-commands.c
	* app/config/gimprc.c
	* app/core/gimp-modules.c
	* app/core/gimp-parasites.c
	* app/core/gimp-templates.c
	* app/core/gimp-units.c
	* app/core/gimpchannel.c
	* app/core/gimpcontainer-filter.c
	* app/core/gimpdrawable-bucket-fill.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimage-merge.c
	* app/core/gimpimage.c
	* app/core/gimpimagefile.c
	* app/core/gimplayer-floating-sel.c
	* app/core/gimplayer.c
	* app/core/gimpselection.c
	* app/dialogs/convert-dialog.c
	* app/dialogs/dialogs.c
	* app/dialogs/palette-import-dialog.c
	* app/dialogs/preferences-dialog.c
	* app/dialogs/quit-dialog.c
	* app/dialogs/stroke-dialog.c
	* app/display/gimpdisplayshell-dnd.c
	* app/file/file-open.c
	* app/file/file-procedure.c
	* app/file/file-save.c
	* app/file/file-utils.c
	* app/gegl/gimpcurvesconfig.c
	* app/gegl/gimplevelsconfig.c
	* app/gui/gui-message.c
	* app/gui/gui.c
	* app/gui/session.c
	* app/paint/gimpbrushcore.c
	* app/paint/gimpclone.c
	* app/paint/gimpheal.c
	* app/paint/gimpperspectiveclone.c
	* app/paint/gimpsourcecore.c
	* app/pdb/gimppdb-utils.c
	* app/pdb/gimpprocedure.c
	* app/plug-in/gimpplugin-message.c
	* app/plug-in/gimpplugin.c
	* app/plug-in/gimppluginmanager-restore.c
	* app/plug-in/gimppluginprocedure.c
	* app/text/gimptextlayer.c
	* app/tools/gimp-tools.c
	* app/tools/gimpaligntool.c
	* app/tools/gimpblendtool.c
	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimpdesaturatetool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpforegroundselecttool.c
	* app/tools/gimpfreeselecttool.c
	* app/tools/gimpgegltool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimpimagemaptool-settings.c
	* app/tools/gimpiscissorstool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimppainttool.c
	* app/tools/gimpposterizetool.c
	* app/tools/gimpselectiontool.c
	* app/tools/gimpsourcetool.c
	* app/tools/gimpthresholdtool.c
	* app/tools/gimptransformtool.c
	* app/tools/gimpvectortool.c
	* app/widgets/gimpactionview.c
	* app/widgets/gimpcontrollerlist.c
	* app/widgets/gimpcontrollers.c
	* app/widgets/gimpdataeditor.c
	* app/widgets/gimpdevices.c
	* app/widgets/gimpdnd-xds.c
	* app/widgets/gimperrordialog.c
	* app/widgets/gimphelp.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimppdbdialog.c
	* app/widgets/gimpsettingsbox.c
	* app/widgets/gimpvectorstreeview.c
	* app/widgets/gimpwidgets-utils.c
	* app/xcf/xcf-load.c
	* tools/pdbgen/pdb/convert.pdb
	* tools/pdbgen/pdb/edit.pdb
	* tools/pdbgen/pdb/floating_sel.pdb
	* tools/pdbgen/pdb/image.pdb: use the _literal variants for
	g_set_error(), gimp_message() and gimp_tool_message().

	* app/pdb/convert-cmds.c
	* app/pdb/edit-cmds.c
	* app/pdb/floating-sel-cmds.c
	* app/pdb/image-cmds.c: regenerated.


svn path=/trunk/; revision=27548
parent 87dc343b
2008-11-04 Sven Neumann <sven@sven>
* configure.in: bumped minimum required version of GLib to 2.18.0.
* INSTALL: document the updated dependency.
* app/core/gimp.[ch]: introduced gimp_message_literal(), a variant
of gimp_message() that takes a literal string.
* app/errors.[ch]: removed format arguments from gimp_fatal_error()
and gimp_terminate() and let them take a literal string instead.
* app/tools/gimptool.[ch]: introduced gimp_tool_message_literal(),
a variant of gimp_tool_message() that takes a literal string.
* app/actions/documents-commands.c
* app/actions/drawable-commands.c
* app/actions/edit-commands.c
* app/actions/error-console-commands.c
* app/actions/file-commands.c
* app/actions/gradients-commands.c
* app/actions/image-commands.c
* app/actions/layers-commands.c
* app/actions/palettes-commands.c
* app/actions/plug-in-commands.c
* app/actions/select-commands.c
* app/actions/vectors-commands.c
* app/config/gimprc.c
* app/core/gimp-modules.c
* app/core/gimp-parasites.c
* app/core/gimp-templates.c
* app/core/gimp-units.c
* app/core/gimpchannel.c
* app/core/gimpcontainer-filter.c
* app/core/gimpdrawable-bucket-fill.c
* app/core/gimpimage-convert.c
* app/core/gimpimage-merge.c
* app/core/gimpimage.c
* app/core/gimpimagefile.c
* app/core/gimplayer-floating-sel.c
* app/core/gimplayer.c
* app/core/gimpselection.c
* app/dialogs/convert-dialog.c
* app/dialogs/dialogs.c
* app/dialogs/palette-import-dialog.c
* app/dialogs/preferences-dialog.c
* app/dialogs/quit-dialog.c
* app/dialogs/stroke-dialog.c
* app/display/gimpdisplayshell-dnd.c
* app/file/file-open.c
* app/file/file-procedure.c
* app/file/file-save.c
* app/file/file-utils.c
* app/gegl/gimpcurvesconfig.c
* app/gegl/gimplevelsconfig.c
* app/gui/gui-message.c
* app/gui/gui.c
* app/gui/session.c
* app/paint/gimpbrushcore.c
* app/paint/gimpclone.c
* app/paint/gimpheal.c
* app/paint/gimpperspectiveclone.c
* app/paint/gimpsourcecore.c
* app/pdb/gimppdb-utils.c
* app/pdb/gimpprocedure.c
* app/plug-in/gimpplugin-message.c
* app/plug-in/gimpplugin.c
* app/plug-in/gimppluginmanager-restore.c
* app/plug-in/gimppluginprocedure.c
* app/text/gimptextlayer.c
* app/tools/gimp-tools.c
* app/tools/gimpaligntool.c
* app/tools/gimpblendtool.c
* app/tools/gimpbrightnesscontrasttool.c
* app/tools/gimpbucketfilltool.c
* app/tools/gimpcolorbalancetool.c
* app/tools/gimpcolorpickertool.c
* app/tools/gimpcurvestool.c
* app/tools/gimpdesaturatetool.c
* app/tools/gimpeditselectiontool.c
* app/tools/gimpforegroundselecttool.c
* app/tools/gimpfreeselecttool.c
* app/tools/gimpgegltool.c
* app/tools/gimphuesaturationtool.c
* app/tools/gimpimagemaptool-settings.c
* app/tools/gimpiscissorstool.c
* app/tools/gimplevelstool.c
* app/tools/gimpmeasuretool.c
* app/tools/gimppainttool.c
* app/tools/gimpposterizetool.c
* app/tools/gimpselectiontool.c
* app/tools/gimpsourcetool.c
* app/tools/gimpthresholdtool.c
* app/tools/gimptransformtool.c
* app/tools/gimpvectortool.c
* app/widgets/gimpactionview.c
* app/widgets/gimpcontrollerlist.c
* app/widgets/gimpcontrollers.c
* app/widgets/gimpdataeditor.c
* app/widgets/gimpdevices.c
* app/widgets/gimpdnd-xds.c
* app/widgets/gimperrordialog.c
* app/widgets/gimphelp.c
* app/widgets/gimpitemtreeview.c
* app/widgets/gimppdbdialog.c
* app/widgets/gimpsettingsbox.c
* app/widgets/gimpvectorstreeview.c
* app/widgets/gimpwidgets-utils.c
* app/xcf/xcf-load.c
* tools/pdbgen/pdb/convert.pdb
* tools/pdbgen/pdb/edit.pdb
* tools/pdbgen/pdb/floating_sel.pdb
* tools/pdbgen/pdb/image.pdb: use the _literal variants for
g_set_error(), gimp_message() and gimp_tool_message().
* app/pdb/convert-cmds.c
* app/pdb/edit-cmds.c
* app/pdb/floating-sel-cmds.c
* app/pdb/image-cmds.c: regenerated.
2008-11-04 Michael Natterer <mitch@gimp.org>
* app/core/gimpprojection.[ch]: remove public functions
......
--------------------------------------
Installation instructions for GIMP 2.6
Installation instructions for GIMP 2.7
--------------------------------------
There are some basic steps to building and installing GIMP.
GIMP 2.6 replaces earlier GIMP 2.x versions. It is advised that you
uninstall them before installing GIMP 2.6. If you want to keep your
older GIMP 2.x installation in parallel to GIMP 2.6, you have to
GIMP 2.7 replaces earlier GIMP 2.x versions. It is advised that you
uninstall them before installing GIMP 2.7. If you want to keep your
older GIMP 2.x installation in parallel to GIMP 2.7, you have to
choose a separate prefix which is not in your default library search
path.
GIMP 2.6 is fully backward compatible to all earlier GIMP 2.x version.
Plug-ins and scripts written for GIMP 2.4, or GIMP 2.2 or even 2.0,
GIMP 2.7 is fully backward compatible to all earlier GIMP 2.x version.
Plug-ins and scripts written for GIMP 2.6 or earlier GIMP 2.x versions
will continue to work and don't need to be changed nor recompiled to
be used with GIMP 2.x.
be used with GIMP 2.7.
The most important part is to make sure the requirements for a build
are fulfilled. We depend on a number of tools and libraries which are
......@@ -42,7 +42,7 @@ header files installed.
http://svn.gnome.org/svn/gegl/trunk
4. You need to have installed GTK+ version 2.12.5 or newer. GIMP
also need a recent versions of GLib (>= 2.16.1) and Pango (>= 1.18.0).
also need a recent versions of GLib (>= 2.18.0) and Pango (>= 1.20.1).
Sources for these can be grabbed from ftp://ftp.gtk.org/.
5. We use cairo, which is hosted at http://www.cairographics.org/.
......@@ -82,9 +82,9 @@ header files installed.
of make, we'd appreciate if you'd send us a patch with the changes.
13. Install GIMP by running `make install'. In order to avoid clashes
with other versions of GIMP, we install a binary called gimp-2.6.
with other versions of GIMP, we install a binary called gimp-2.7.
By default there's also a link created so that you can type 'gimp'
to start gimp-2.6.
to start gimp-2.7.
Please make sure you don't have any old GTK+-2.x, jpeg, etc. libraries
lying around on your system, otherwise configure may fail to find the
......@@ -96,8 +96,8 @@ packages are included below. Here is an illustration of commands that
might be used to build and install GIMP. The actual configuration,
compilation and installation output is not shown.
% tar xvfz gimp-2.6.x.tar.gz # unpack the sources
% cd gimp-2.6.x # change to the toplevel directory
% tar xvfz gimp-2.7.x.tar.gz # unpack the sources
% cd gimp-2.7.x # change to the toplevel directory
% ./configure # run the `configure' script
% make # build GIMP
% make install # install GIMP
......@@ -132,8 +132,8 @@ These are:
is intended primarily as a convenience for developers.
--enable-gimpdir=DIR. This option changes the default directory
GIMP uses to search for its configuration files from ~/.gimp-2.6
(the directory .gimp-2.6 in the users home directory) to DIR.
GIMP uses to search for its configuration files from ~/.gimp-2.7
(the directory .gimp-2.7 in the users home directory) to DIR.
--enable-binreloc. When compiled for Linux with this option enabled,
GIMP will be binary relocatable. Plug-ins and data files will
......@@ -236,8 +236,8 @@ These are:
if you call configure with --without-desktop-dir.
--disable-default-binary. Use this option if you don't want to make
gimp-2.6 the default gimp installation. Otherwise a link called
gimp pointing to the gimp-2.6 executable will be installed.
gimp-2.7 the default gimp installation. Otherwise a link called
gimp pointing to the gimp-2.7 executable will be installed.
--disable-gimp-console. Use this option if you don't want the
gimp-console binary to be built in addition to the standard binary.
......@@ -258,7 +258,7 @@ The `make' command builds several things:
- A bunch of public libraries in the directories starting with 'libgimp'.
- The plug-in programs in the 'plug-ins' directory.
- Some modules in the 'modules' subdirectory.
- The main GIMP program 'gimp-2.6' in `app'.
- The main GIMP program 'gimp-2.7' in `app'.
The `make install' commands installs the gimp header files associated
with the libgimp libraries, the plug-ins, some data files and the GIMP
......
......@@ -176,7 +176,8 @@ debug_dump_managers_cmd_callback (GtkAction *action,
if (managers)
{
g_print ("\n\n========================================\n"
g_print ("\n\n"
"========================================\n"
"UI Manager: %s\n"
"========================================\n\n",
entry->identifier);
......
......@@ -235,8 +235,8 @@ documents_clear_cmd_callback (GtkAction *action,
if (! gtk_recent_manager_purge_items (gtk_recent_manager_get_default (),
&error))
{
gimp_message (gimp, G_OBJECT (dialog), GIMP_MESSAGE_ERROR,
"%s", error->message);
gimp_message_literal (gimp, G_OBJECT (dialog), GIMP_MESSAGE_ERROR,
error->message);
g_clear_error (&error);
}
}
......
......@@ -59,8 +59,9 @@ drawable_equalize_cmd_callback (GtkAction *action,
if (gimp_drawable_is_indexed (drawable))
{
gimp_message (image->gimp, G_OBJECT (widget), GIMP_MESSAGE_WARNING,
_("Equalize does not operate on indexed layers."));
gimp_message_literal (image->gimp,
G_OBJECT (widget), GIMP_MESSAGE_WARNING,
_("Equalize does not operate on indexed layers."));
return;
}
......@@ -82,8 +83,9 @@ drawable_invert_cmd_callback (GtkAction *action,
if (gimp_drawable_is_indexed (drawable))
{
gimp_message (image->gimp, G_OBJECT (widget), GIMP_MESSAGE_WARNING,
_("Invert does not operate on indexed layers."));
gimp_message_literal (image->gimp,
G_OBJECT (widget), GIMP_MESSAGE_WARNING,
_("Invert does not operate on indexed layers."));
return;
}
......@@ -105,8 +107,9 @@ drawable_levels_stretch_cmd_callback (GtkAction *action,
if (! gimp_drawable_is_rgb (drawable))
{
gimp_message (image->gimp, G_OBJECT (widget), GIMP_MESSAGE_WARNING,
_("White Balance operates only on RGB color layers."));
gimp_message_literal (image->gimp,
G_OBJECT (widget), GIMP_MESSAGE_WARNING,
_("White Balance operates only on RGB color layers."));
return;
}
......
......@@ -198,15 +198,18 @@ edit_cut_cmd_callback (GtkAction *action,
GimpDisplay *display = action_data_get_display (data);
if (display)
gimp_message (image->gimp, G_OBJECT (display), GIMP_MESSAGE_INFO,
_("Cut pixels to the clipboard"));
gimp_message_literal (image->gimp,
G_OBJECT (display), GIMP_MESSAGE_INFO,
_("Cut pixels to the clipboard"));
gimp_image_flush (image);
}
else
{
gimp_message (image->gimp, G_OBJECT (action_data_get_display (data)),
GIMP_MESSAGE_WARNING, "%s", error->message);
gimp_message_literal (image->gimp,
G_OBJECT (action_data_get_display (data)),
GIMP_MESSAGE_WARNING,
error->message);
g_clear_error (&error);
}
}
......@@ -225,15 +228,18 @@ edit_copy_cmd_callback (GtkAction *action,
GimpDisplay *display = action_data_get_display (data);
if (display)
gimp_message (image->gimp, G_OBJECT (display), GIMP_MESSAGE_INFO,
_("Copied pixels to the clipboard"));
gimp_message_literal (image->gimp,
G_OBJECT (display), GIMP_MESSAGE_INFO,
_("Copied pixels to the clipboard"));
gimp_image_flush (image);
}
else
{
gimp_message (image->gimp, G_OBJECT (action_data_get_display (data)),
GIMP_MESSAGE_WARNING, "%s", error->message);
gimp_message_literal (image->gimp,
G_OBJECT (action_data_get_display (data)),
GIMP_MESSAGE_WARNING,
error->message);
g_clear_error (&error);
}
}
......@@ -251,15 +257,18 @@ edit_copy_visible_cmd_callback (GtkAction *action,
GimpDisplay *display = action_data_get_display (data);
if (display)
gimp_message (image->gimp, G_OBJECT (display), GIMP_MESSAGE_INFO,
_("Copied pixels to the clipboard"));
gimp_message_literal (image->gimp,
G_OBJECT (display), GIMP_MESSAGE_INFO,
_("Copied pixels to the clipboard"));
gimp_image_flush (image);
}
else
{
gimp_message (image->gimp, G_OBJECT (action_data_get_display (data)),
GIMP_MESSAGE_WARNING, "%s", error->message);
gimp_message_literal (image->gimp,
G_OBJECT (action_data_get_display (data)),
GIMP_MESSAGE_WARNING,
error->message);
g_clear_error (&error);
}
}
......@@ -312,8 +321,8 @@ edit_paste_as_new_cmd_callback (GtkAction *action,
}
else
{
gimp_message (gimp, NULL, GIMP_MESSAGE_WARNING,
_("There is no image data in the clipboard to paste."));
gimp_message_literal (gimp, NULL, GIMP_MESSAGE_WARNING,
_("There is no image data in the clipboard to paste."));
}
}
......@@ -346,8 +355,8 @@ edit_paste_as_new_layer_cmd_callback (GtkAction *action,
}
else
{
gimp_message (gimp, NULL, GIMP_MESSAGE_WARNING,
_("There is no image data in the clipboard to paste."));
gimp_message_literal (gimp, NULL, GIMP_MESSAGE_WARNING,
_("There is no image data in the clipboard to paste."));
}
}
......@@ -521,9 +530,9 @@ edit_paste (GimpDisplay *display,
}
else
{
gimp_message (display->image->gimp, G_OBJECT (display),
GIMP_MESSAGE_WARNING,
_("There is no image data in the clipboard to paste."));
gimp_message_literal (display->image->gimp, G_OBJECT (display),
GIMP_MESSAGE_WARNING,
_("There is no image data in the clipboard to paste."));
}
}
}
......@@ -539,8 +548,8 @@ cut_named_buffer_callback (GtkWidget *widget,
if (! drawable)
{
gimp_message (image->gimp, NULL, GIMP_MESSAGE_WARNING,
_("There is no active layer or channel to cut from."));
gimp_message_literal (image->gimp, NULL, GIMP_MESSAGE_WARNING,
_("There is no active layer or channel to cut from."));
return;
}
......@@ -554,8 +563,8 @@ cut_named_buffer_callback (GtkWidget *widget,
}
else
{
gimp_message (image->gimp, NULL, GIMP_MESSAGE_WARNING,
"%s", error->message);
gimp_message_literal (image->gimp, NULL, GIMP_MESSAGE_WARNING,
error->message);
g_clear_error (&error);
}
}
......@@ -571,8 +580,8 @@ copy_named_buffer_callback (GtkWidget *widget,
if (! drawable)
{
gimp_message (image->gimp, NULL, GIMP_MESSAGE_WARNING,
_("There is no active layer or channel to copy from."));
gimp_message_literal (image->gimp, NULL, GIMP_MESSAGE_WARNING,
_("There is no active layer or channel to copy from."));
return;
}
......@@ -586,8 +595,8 @@ copy_named_buffer_callback (GtkWidget *widget,
}
else
{
gimp_message (image->gimp, NULL, GIMP_MESSAGE_WARNING,
"%s", error->message);
gimp_message_literal (image->gimp, NULL, GIMP_MESSAGE_WARNING,
error->message);
g_clear_error (&error);
}
}
......@@ -611,8 +620,8 @@ copy_named_visible_buffer_callback (GtkWidget *widget,
}
else
{
gimp_message (image->gimp, NULL, GIMP_MESSAGE_WARNING,
"%s", error->message);
gimp_message_literal (image->gimp, NULL, GIMP_MESSAGE_WARNING,
error->message);
g_clear_error (&error);
}
}
......@@ -80,8 +80,9 @@ error_console_save_cmd_callback (GtkAction *action,
if (value && ! gtk_text_buffer_get_selection_bounds (console->text_buffer,
NULL, NULL))
{
gimp_message (console->gimp, G_OBJECT (console), GIMP_MESSAGE_WARNING,
_("Cannot save. Nothing is selected."));
gimp_message_literal (console->gimp,
G_OBJECT (console), GIMP_MESSAGE_WARNING,
_("Cannot save. Nothing is selected."));
return;
}
......
......@@ -262,9 +262,9 @@ file_save_cmd_callback (GtkAction *action,
break;
case GIMP_PDB_CANCEL:
gimp_message (image->gimp, G_OBJECT (display),
GIMP_MESSAGE_INFO,
_("Saving canceled"));
gimp_message_literal (image->gimp,
G_OBJECT (display), GIMP_MESSAGE_INFO,
_("Saving canceled"));
break;
default:
......@@ -297,8 +297,9 @@ file_save_cmd_callback (GtkAction *action,
}
else
{
gimp_message (image->gimp, G_OBJECT (display),
GIMP_MESSAGE_INFO, _("No changes need to be saved"));
gimp_message_literal (image->gimp,
G_OBJECT (display), GIMP_MESSAGE_INFO,
_("No changes need to be saved"));
saved = TRUE;
break;
}
......@@ -360,9 +361,10 @@ file_revert_cmd_callback (GtkAction *action,
if (! uri)
{
gimp_message (image->gimp, G_OBJECT (display), GIMP_MESSAGE_ERROR,
_("Revert failed. "
"No file name associated with this image."));
gimp_message_literal (image->gimp,
G_OBJECT (display), GIMP_MESSAGE_ERROR,
_("Revert failed. "
"No file name associated with this image."));
}
else if (dialog)
{
......
......@@ -130,10 +130,9 @@ gradients_save_as_pov_ray_response (GtkWidget *dialog,
if (! gimp_gradient_save_pov (gradient, filename, &error))
{
gimp_message (g_object_get_data (G_OBJECT (dialog), "gimp"),
G_OBJECT (dialog),
GIMP_MESSAGE_ERROR,
"%s", error->message);
gimp_message_literal (g_object_get_data (G_OBJECT (dialog), "gimp"),
G_OBJECT (dialog), GIMP_MESSAGE_ERROR,
error->message);
g_clear_error (&error);
return;
}
......
......@@ -174,8 +174,9 @@ image_convert_cmd_callback (GtkAction *action,
if (! gimp_image_convert (image, value, 0, 0, FALSE, FALSE, 0, NULL,
NULL, &error))
{
gimp_message (image->gimp, G_OBJECT (widget), GIMP_MESSAGE_WARNING,
error->message);
gimp_message_literal (image->gimp,
G_OBJECT (widget), GIMP_MESSAGE_WARNING,
error->message);
g_clear_error (&error);
return;
}
......@@ -405,8 +406,9 @@ image_crop_cmd_callback (GtkAction *action,
if (! gimp_channel_bounds (gimp_image_get_mask (image),
&x1, &y1, &x2, &y2))
{
gimp_message (image->gimp, G_OBJECT (widget), GIMP_MESSAGE_WARNING,
_("Cannot crop because the current selection is empty."));
gimp_message_literal (image->gimp,
G_OBJECT (widget), GIMP_MESSAGE_WARNING,
_("Cannot crop because the current selection is empty."));
return;
}
......
......@@ -234,8 +234,9 @@ layers_new_cmd_callback (GtkAction *action,
if (! floating_sel_to_layer (floating_sel, &error))
{
gimp_message (image->gimp, G_OBJECT (widget), GIMP_MESSAGE_WARNING,
error->message);
gimp_message_literal (image->gimp,
G_OBJECT (widget), GIMP_MESSAGE_WARNING,
error->message);
g_clear_error (&error);
return;
}
......@@ -286,8 +287,8 @@ layers_new_last_vals_cmd_callback (GtkAction *action,
if (! floating_sel_to_layer (floating_sel, &error))
{
gimp_message (image->gimp, G_OBJECT (widget), GIMP_MESSAGE_WARNING,
error->message);
gimp_message_literal (image->gimp, G_OBJECT (widget),
GIMP_MESSAGE_WARNING, error->message);
g_clear_error (&error);
return;
}
......@@ -636,8 +637,9 @@ layers_crop_cmd_callback (GtkAction *action,
if (! gimp_channel_bounds (gimp_image_get_mask (image),
&x1, &y1, &x2, &y2))
{
gimp_message (image->gimp, G_OBJECT (widget), GIMP_MESSAGE_WARNING,
_("Cannot crop because the current selection is empty."));
gimp_message_literal (image->gimp,
G_OBJECT (widget), GIMP_MESSAGE_WARNING,
_("Cannot crop because the current selection is empty."));
return;
}
......@@ -997,9 +999,9 @@ layers_edit_layer_response (GtkWidget *widget,
}
else
{
gimp_message (dialog->image->gimp, G_OBJECT (widget),
GIMP_MESSAGE_WARNING,
"%s", error->message);
gimp_message_literal (dialog->image->gimp,
G_OBJECT (widget), GIMP_MESSAGE_WARNING,
error->message);
g_clear_error (&error);
return;
......@@ -1033,8 +1035,9 @@ layers_add_mask_response (GtkWidget *widget,
if (dialog->add_mask_type == GIMP_ADD_CHANNEL_MASK &&
! dialog->channel)
{
gimp_message (image->gimp, G_OBJECT (widget), GIMP_MESSAGE_WARNING,
_("Please select a channel first"));
gimp_message_literal (image->gimp,
G_OBJECT (widget), GIMP_MESSAGE_WARNING,
_("Please select a channel first"));
return;
}
......
......@@ -107,9 +107,10 @@ palettes_merge_callback (GtkWidget *widget,
if (! sel_list)
{
gimp_message (gimp, G_OBJECT (widget), GIMP_MESSAGE_WARNING,
"Can't merge palettes because "
"there are no palettes selected.");
gimp_message_literal (gimp,
G_OBJECT (widget), GIMP_MESSAGE_WARNING,
"Can't merge palettes because "
"there are no palettes selected.");
return;
}
......
......@@ -307,8 +307,9 @@ plug_in_procedure_execute (GimpPlugInProcedure *procedure,
if (error)
{
gimp_message (gimp, G_OBJECT (display), GIMP_MESSAGE_ERROR,
"%s", error->message);
gimp_message_literal (gimp,
G_OBJECT (display), GIMP_MESSAGE_ERROR,
error->message);
g_error_free (error);
}
else
......
......@@ -133,8 +133,9 @@ select_float_cmd_callback (GtkAction *action,
}
else
{
gimp_message (image->gimp, G_OBJECT (widget), GIMP_MESSAGE_WARNING,
"%s", error->message);
gimp_message_literal (image->gimp,
G_OBJECT (widget), GIMP_MESSAGE_WARNING,
error->message);
g_clear_error (&error);
}
}
......@@ -327,8 +328,9 @@ select_stroke_cmd_callback (GtkAction *action,
if (! drawable)
{
gimp_message (image->gimp, G_OBJECT (widget), GIMP_MESSAGE_WARNING,
_("There is no active layer or channel to stroke to."));
gimp_message_literal (image->gimp,
G_OBJECT (widget), GIMP_MESSAGE_WARNING,
_("There is no active layer or channel to stroke to."));
return;
}
......@@ -359,8 +361,9 @@ select_stroke_last_vals_cmd_callback (GtkAction *action,
if (! drawable)
{
gimp_message (image->gimp, G_OBJECT (widget), GIMP_MESSAGE_WARNING,
_("There is no active layer or channel to stroke to."));
gimp_message_literal (image->gimp,
G_OBJECT (widget), GIMP_MESSAGE_WARNING,
_("There is no active layer or channel to stroke to."));
return;
}
......@@ -374,8 +377,9 @@ select_stroke_last_vals_cmd_callback (GtkAction *action,
if (! gimp_item_stroke (GIMP_ITEM (gimp_image_get_mask (image)),
drawable, context, options, FALSE, TRUE, NULL, &error))
{
gimp_message (image->gimp, G_OBJECT (widget), GIMP_MESSAGE_WARNING,
error->message);
gimp_message_literal (image->gimp,
G_OBJECT (widget), GIMP_MESSAGE_WARNING,
error->message);
g_clear_error (&error);
}
else
......
......@@ -281,8 +281,9 @@ vectors_merge_visible_cmd_callback (GtkAction *action,
if (! gimp_image_merge_visible_vectors (image, &error))
{
gimp_message (image->gimp, G_OBJECT (widget), GIMP_MESSAGE_WARNING,
error->message);
gimp_message_literal (image->gimp,
G_OBJECT (widget), GIMP_MESSAGE_WARNING,
error->message);
g_clear_error (&error);
return;
}
......@@ -332,8 +333,9 @@ vectors_selection_to_vectors_cmd_callback (GtkAction *action,
if (! procedure)
{
gimp_message (image->gimp, G_OBJECT (widget), GIMP_MESSAGE_ERROR,
"Selection to path procedure lookup failed.");
gimp_message_literal (image->gimp,
G_OBJECT (widget), GIMP_MESSAGE_ERROR,
"Selection to path procedure lookup failed.");
return;
}
......@@ -354,8 +356,9 @@ vectors_selection_to_vectors_cmd_callback (GtkAction *action,
if (error)
{
gimp_message (image->gimp, G_OBJECT (widget), GIMP_MESSAGE_ERROR,
"%s", error->message);
gimp_message_literal (image->gimp,
G_OBJECT (widget), GIMP_MESSAGE_ERROR,
error->message);
g_error_free (error);
}
}
......@@ -376,8 +379,9 @@ vectors_stroke_cmd_callback (GtkAction *action,
if (! drawable)
{
gimp_message (image->gimp, G_OBJECT (widget), GIMP_MESSAGE_WARNING,
_("There is no active layer or channel to stroke to."));
gimp_message_literal (image->gimp,
G_OBJECT (widget), GIMP_MESSAGE_WARNING,
_("There is no active layer or channel to stroke to."));
return;
}
......@@ -409,8 +413,9 @@ vectors_stroke_last_vals_cmd_callback (GtkAction *action,
if (! drawable)
{
gimp_message (image->gimp, G_OBJECT (widget), GIMP_MESSAGE_WARNING,
_("There is no active layer or channel to stroke to."));
gimp_message_literal (image->gimp,
G_OBJECT (widget), GIMP_MESSAGE_WARNING,
_("There is no active layer or channel to stroke to."));
return;
}
......@@ -425,8 +430,8 @@ vectors_stroke_last_vals_cmd_callback (GtkAction *action,
if (! gimp_item_stroke (GIMP_ITEM (