Commit graph

210 commits

Author SHA1 Message Date
Martin Nordholts
d85d7ac785 Align static function prototypes.
* app/tools/gimptransformtool.c: Align static function prototypes.

svn path=/trunk/; revision=27625
2008-11-12 06:17:01 +00:00
Sven Neumann
4762b73403 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
2008-11-04 12:33:09 +00:00
Michael Natterer
56b5909c8a add "GimpImageType type" parameter because there are only a few calls to
2008-11-03  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdrawable.[ch] (gimp_drawable_set_tiles): add
	"GimpImageType type" parameter because there are only a few calls
	to this function which (can easily pass the current type); however
	most calls to gimp_drawable_set_tiles_full() were just using the
	function because of the type argument and passed in the item's
	current offsets (which means peeking into the item struct or using
	temp variables).

	* app/core/gimpdrawable-offset.c (gimp_drawable_offset)
	* app/text/gimptextlayer.c (gimp_text_layer_render)
	* app/tools/gimptransformtool.c (gimp_transform_tool_doit): pass
	the type to set_tiles().

	* app/core/gimpchannel.c (gimp_channel_convert)
	* app/core/gimpimage-convert.c (gimp_image_convert)
	* app/core/gimplayer.c (gimp_layer_convert,add_alpha,flatten):
	change calls to set_tiles_full() into set_tiles() because the
	offset doesn't change.


svn path=/trunk/; revision=27535
2008-11-03 20:51:46 +00:00
Michael Natterer
5b68a1d0eb renamed gimp_item_offsets() to gimp_item_get_offset() and
2008-11-03  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpitem.[ch]: renamed
	gimp_item_offsets() to gimp_item_get_offset() and
	gimp_item_set_offsets() to gimp_item_set_offset().

	* app/actions/drawable-commands.c
	* app/actions/layers-commands.c
	* app/core/<many>.c
	* app/display/gimpdisplayshell-dnd.c
	* app/display/gimpdisplayshell-preview.c
	* app/display/gimpdisplayshell-transform.c
	* app/display/gimpdisplayshell.c
	* app/paint/gimppaintcore-stroke.c
	* app/paint/gimppaintcore.c
	* app/paint/gimpsourcecore.c
	* app/text/gimptextlayer-xcf.c
	* app/tools/<many>.c
	* app/widgets/gimptoolbox-dnd.c
	* tools/pdbgen/pdb/drawable.pdb
	* tools/pdbgen/pdb/drawable_transform.pdb
	* tools/pdbgen/pdb/selection.pdb
	* tools/pdbgen/pdb/transform_tools.pdb
	* tools/pdbgen/pdb/vectors.pdb: changed accordingly.

	* app/pdb/drawable-cmds.c
	* app/pdb/drawable-transform-cmds.c
	* app/pdb/selection-cmds.c
	* app/pdb/vectors-cmds.c
	* app/pdb/transform-tools-cmds.c: regenerated.


svn path=/trunk/; revision=27529
2008-11-02 23:03:29 +00:00
Michael Natterer
f7287be7b5 app/tools/gimptool.[ch] made all GimpCoords* in the tool API const.
2008-11-01  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimptool.[ch]
	* app/tools/tool_manager.[ch]: made all GimpCoords* in the tool
	API const.

	* app/tools/gimpaligntool.c
	* app/tools/gimpblendtool.c
	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpbrushtool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpcolortool.c
	* app/tools/gimpconvolvetool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimpdodgeburntool.c
	* app/tools/gimpeditselectiontool.[ch]
	* app/tools/gimperasertool.c
	* app/tools/gimpfliptool.c
	* app/tools/gimpforegroundselecttool.c
	* app/tools/gimpfreeselecttool.c
	* app/tools/gimpiscissorstool.c
	* app/tools/gimpmagnifytool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimpmovetool.c
	* app/tools/gimppainttool.c
	* app/tools/gimpperspectiveclonetool.c
	* app/tools/gimprectangleselecttool.c
	* app/tools/gimprectangletool.[ch]
	* app/tools/gimpregionselecttool.c
	* app/tools/gimpselectiontool.[ch]
	* app/tools/gimpsourcetool.c
	* app/tools/gimptexttool.c
	* app/tools/gimptransformtool.c
	* app/tools/gimpvectortool.c: changed accordingly and added const
	to all GimpCoords* in utility functions too.

	* app/tools/gimptexttool.c: don't modify the passed coords. In
	fact, simply removed the code that did because it had no effect.


svn path=/trunk/; revision=27517
2008-11-01 15:17:36 +00:00
Michael Natterer
5503e6a055 Add GEGL_CFLAGS and #includes as if gimpdrawable.h and gimpimage.h had a
2008-10-09  Michael Natterer  <mitch@gimp.org>

	Add GEGL_CFLAGS and #includes as if gimpdrawable.h and gimpimage.h
	had a GEGL dependency (they will have in the next commit, but I
	wanted to keep the commit separate).

	* app/dialogs/Makefile.am
	* app/file/Makefile.am
	* app/gui/Makefile.am
	* app/menus/Makefile.am
	* app/paint/Makefile.am
	* app/plug-in/Makefile.am
	* app/text/Makefile.am
	* app/vectors/Makefile.am
	* app/widgets/Makefile.am
	* app/xcf/Makefile.am: add GEGL_CFLAGS.

	* app/actions/*.c
	* app/core/*.c
	* app/dialogs/*.c
	* app/display/*.c
	* app/file/*.c
	* app/gui/*.c
	* app/menus/*.c
	* app/paint/*.c
	* app/pdb/gimppdb-utils.c
	* app/pdb/gimpprocedure.c
	* app/plug-in/*.c
	* app/text/*.c
	* app/tools/*.c
	* app/vectors/*.c
	* app/widgets/*.c
	* app/xcf/*.c: add <gegl.h> or replace <glib-object.h> by <gegl.h>
	to all files which include a drawable subclass or gimpimage.h

	* tools/pdbgen/app.pl: include <gegl.h> instead of <glib-object.h>
	in all generated files.

	* app/pdb/*-cmds.c: regenerated.

	* data/images/gimp-splash.png: the goat is still sleeping.
	By Aurore Derriennic.


svn path=/trunk/; revision=27202
2008-10-09 20:24:04 +00:00
Sven Neumann
66a3aedea6 expose the preview when the tool is initialized. Fixes missing redraws
2008-09-04  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptransformtool.c 
(gimp_transform_tool_initialize):
	expose the preview when the tool is initialized. Fixes missing
	redraws when the tool is selected from the menus (bug #550911).

	(gimp_transform_tool_motion): expose the preview after
	recalculating the transformation matrix.


svn path=/trunk/; revision=26868
2008-09-04 21:34:38 +00:00
Sven Neumann
26645c5549 moved hiding the dialog from gimp_transform_tool_real_transform() to
2008-08-27  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptransformtool.c: moved hiding the dialog from 
	gimp_transform_tool_real_transform() to 
gimp_transform_tool_doit().
	Delay undrawing the preview in doit() until the transformation 
is
	done. This removes the annoying flicker at the end.


svn path=/trunk/; revision=26789
2008-08-27 09:56:46 +00:00
Sven Neumann
915803cfa9 fixed compilation
svn path=/trunk/; revision=26788
2008-08-27 08:21:34 +00:00
Sven Neumann
28cdc4d9a0 hide the tool dialog before starting to perform the transformation.
2008-08-27  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptransformtool.c 
(gimp_transform_tool_real_transform):
	hide the tool dialog before starting to perform the 
transformation.


svn path=/trunk/; revision=26787
2008-08-27 07:42:28 +00:00
Michael Natterer
d51c50820f Bug 496772 – Position shown in the statusbar needs more precision (for
2008-08-20  Michael Natterer  <mitch@gimp.org>

	Bug 496772 – Position shown in the statusbar needs more
	precision (for some tools)

	* app/display/display-enums.[ch]: add enum GimpCursorPrecision
	which can be one of { PIXEL_CENTER, PIXEL_BORDER, SUBPIXEL }.

	* app/display/gimpdisplayshell-cursor.[ch]: add "precision"
	parameter to gimp_display_shell_update_cursor() and pass it
	on to the statusbar.

	* app/display/gimpstatusbar.[ch]: add "precision" parameters to
	the cursor coordinates APIs, offset the passed coords accordingly
	and display them with one decimal point if SUBPIXEL is requested
	and the display's unit is PIXEL. Keep a second floating-point
	format string around at any time.

	* app/tools/gimptoolcontrol.[ch]: add a "precision" member and API
	so tools can configure the precision they need. Defalt to
	PIXEL_CENTER since that's right for almost all tools.

	* app/display/gimpdisplayshell-callbacks.c: pass the tool's
	precision to gimp_display_shell_update_cursor().

	* app/tools/gimptool.[ch]: add "precision" parameter to
	gimp_tool_push_status_coords() and pass it on to the statusbar.

	* app/tools/gimpaligntool.c
	* app/tools/gimpblendtool.c
	* app/tools/gimpcolortool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpfliptool.c
	* app/tools/gimpfreeselecttool.c
	* app/tools/gimpmovetool.c
	* app/tools/gimppainttool.c
	* app/tools/gimpperspectiveclonetool.c
	* app/tools/gimprectangleselecttool.c
	* app/tools/gimprectangletool.c
	* app/tools/gimptransformtool.c
	* app/tools/gimpvectortool.c: set precision in init() where
	needed. Adjust the precision in the fly when needed, e.g. while
	moving guides or when toggling hard-edge on paint tools. Also pass
	an appropriate precision to gimp_tool_push_status_coords(), which
	is not always the tool's precision as used for cursor display.


svn path=/trunk/; revision=26681
2008-08-20 16:22:09 +00:00
Sven Neumann
9b7a46311f don't reserve Delete for use by tools. Fixes bug #532116.
2008-05-10  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_events) 
(gimp_display_shell_canvas_tool_events):
	don't reserve Delete for use by tools. Fixes bug #532116.

	* app/tools/gimpimagemaptool.c
	* app/tools/gimptransformtool.c: don't use Delete (you can still
	use the Backspace key to achieve the same).


svn path=/trunk/; revision=25607
2008-05-10 10:20:42 +00:00
Sven Neumann
32d8cb9a4e app/actions/tools-actions.c app/actions/tools-commands.[ch] allow to
2008-03-06  Sven Neumann  <sven@gimp.org>

	* app/actions/tools-actions.c 
	* app/actions/tools-commands.[ch]
	* app/tools/gimptransformtool.c: allow to control the preview
	opacity by actions (defaults to < to > keys).

svn path=/trunk/; revision=25050
2008-03-06 17:13:59 +00:00
Sven Neumann
b870738a86 app/tools/gimptransformtool.c app/tools/gimptransformoptions.[ch] take the
2008-03-06  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptransformtool.c
	* app/tools/gimptransformoptions.[ch]
	* app/display/gimpdisplayshell-preview.c: take the preview opacity
	from the transform tool options. Based on a patch from Tom Lechner.
	Closes bug #520690.

svn path=/trunk/; revision=25049
2008-03-06 11:54:44 +00:00
Sven Neumann
abb3fd7b66 applied some unrelated cleanups from a patch from Tom Lechner (from bug
2008-03-05  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptransformtool.[ch]: applied some unrelated
	cleanups from a patch from Tom Lechner (from bug #167926).


svn path=/trunk/; revision=25037
2008-03-05 19:56:26 +00:00
Michael Natterer
23456dc253 app/display/gimpdisplayshell-callbacks.c
2008-02-16  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	* app/tools/gimpforegroundselecttool.c
	* app/tools/gimpimagemaptool.c
	* app/tools/gimpiscissorstool.c
	* app/tools/gimppolygonselecttool.c
	* app/tools/gimprectangletool.c
	* app/tools/gimptransformtool.c
	* app/tools/gimpvectortool.c
	* app/widgets/gimpcontainerpopup.c
	* app/widgets/gimppaletteview.c
	* libgimpwidgets/gimpcolorhexentry.c
	* libgimpwidgets/gimpnumberpairentry.c
	* plug-ins/script-fu/script-fu-console.c: Unify the handling of
	various "Enter" and "Space" keysyms all over the place. Fixes bug
	#516544 (also see gtk bug #515047).


svn path=/trunk/; revision=24894
2008-02-16 17:51:02 +00:00
Michael Natterer
b7dace78b4 app/tools/gimpeditselectiontool.c app/tools/gimpiscissorstool.c
2007-12-21  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpiscissorstool.c
	* app/tools/gimptexttool.c
	* app/tools/gimptransformtool.c: use accessors for drawable and
	item properties.


svn path=/trunk/; revision=24424
2007-12-21 20:10:27 +00:00
Sven Neumann
77b7161a32 app/core/gimp-transform-region.[ch] app/core/gimpchannel.c
2007-09-10  Sven Neumann  <sven@gimp.org>

	* app/core/gimp-transform-region.[ch]
	* app/core/gimpchannel.c
	* app/core/gimpdrawable-transform.[ch]
	* app/core/gimpdrawable.c
	* app/core/gimpimage-item-list.[ch]
	* app/core/gimpitem-linked.[ch]
	* app/core/gimpitem.[ch]
	* app/core/gimplayer.c
	* app/paint/gimpperspectiveclone.c
	* app/vectors/gimpvectors.c: removed supersample parameter from
	transform functions and perform it depending on the interpolation
	type (bug #473265).

	* app/tools/gimptransformoptions.[ch]
	* app/tools/gimptransformtool.c: removed Supersample toggle from
	the transform tool options.

	* tools/pdbgen/pdb/drawable_transform.pdb
	* tools/pdbgen/pdb/transform_tools.pdb: document that the
	supersample parameter is unused and improved documentation of the
	recursion-level parameter.

	* app/pdb/transform_tools_cmds.c
	* app/pdb/drawable_transform_cmds.c
	* libgimp/gimpdrawabletransform_pdb.c: regenerated.

svn path=/trunk/; revision=23494
2007-09-10 15:29:48 +00:00
Sven Neumann
a5d10b2ff0 renamed gimp_image_active_drawable() to gimp_image_get_active_drawable().
2007-07-19  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimage.[ch]: renamed gimp_image_active_drawable() to
	gimp_image_get_active_drawable().

	* app/[lots of files]
	* tools/pdbgen/pdb/paths.pdb
	* tools/pdbgen/pdb/image.pdb: changed accordingly.

svn path=/trunk/; revision=22958
2007-07-19 14:59:51 +00:00
Sven Neumann
e2b83b288c app/tools/gimpdrawtool.[ch] app/tools/gimpperspectiveclonetool.c compare
2007-03-30  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpdrawtool.[ch]
	* app/tools/gimpperspectiveclonetool.c
	* app/tools/gimptransformtool.c: compare squared distances.

svn path=/trunk/; revision=22198
2007-03-30 09:41:18 +00:00
Michael Natterer
e8edf3f408 added new ugly function gimp_dialog_factory_hide_dialog() which does
2007-03-13  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpdialogfactory.[ch]: added new ugly function
	gimp_dialog_factory_hide_dialog() which does gtk_widget_hide() and
	sets the stored visibility state to GIMP_DIALOG_VISIBILITY_INVISIBLE
	in order to avoid re-showing dialogs that were already insivible due
	to TAB-toggling when we gtk_widget_hided them.

	* app/tools/gimptransformtool.c
	* app/tools/gimpimagemaptool.c: use the new function instead of
	gtk_widget_hide() to hide tool dialogs. Fixes bug #414006.


svn path=/trunk/; revision=22111
2007-03-13 22:55:07 +00:00
Sven Neumann
54f709ec06 added a g_return_if_fail() check to catch bug #414006.
2007-03-13  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptransformtool.c (gimp_transform_tool_response):
	added a g_return_if_fail() check to catch bug #414006.


svn path=/trunk/; revision=22108
2007-03-13 07:43:37 +00:00
Michael Natterer
83d3a750d4 include "libgimpmath/gimpmathtypes.h" instead of "libgimpmath/gimpmath.h".
2007-03-09  Michael Natterer  <mitch@gimp.org>

	* app/core/core-types.h: include "libgimpmath/gimpmathtypes.h"
	instead of "libgimpmath/gimpmath.h".

	* app/core/gimpbrush.h
	* app/paint/gimppaintcore.h
	* app/paint/gimpperspectiveclone.h
	* app/text/gimptext.h
	* app/tools/gimptransformtool.h: include gimpvector.h and
	gimpmatrix.h explicitely where they are needed in public structs.

	* app/*/*.c
	* tools/pdbgen/pdb/paths.pdb: include "libgimpmath/gimpmath.h"
	where needed.

	* app/pdb/paths_cmds.c: regenerated.


svn path=/trunk/; revision=22084
2007-03-09 13:00:01 +00:00
Michael Natterer
974a74004f remove useless includes. Some minor cleanup.
2007-03-09  Michael Natterer  <mitch@gimp.org>

	* app/tools/*.c: remove useless includes. Some minor cleanup.


svn path=/trunk/; revision=22083
2007-03-09 11:10:40 +00:00
Sven Neumann
f663cb8bc4 app/tools/gimpperspectivetool.c app/tools/gimpscaletool.c
2007-03-08  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpperspectivetool.c
	* app/tools/gimpscaletool.c
	* app/tools/gimprotatetool.c
	* app/tools/gimpfliptool.c
	* app/tools/gimpsheartool.c
	* app/tools/gimptransformtool.[ch]: removed shell_desc member 
from
	GimpTransformToolClass and just use the tool blurb instead.


svn path=/trunk/; revision=22067
2007-03-08 08:21:39 +00:00
Michael Natterer
d7ed63948c Step one towards enabling tool cancellation by other means than mouse
2007-02-27  Michael Natterer  <mitch@gimp.org>

	Step one towards enabling tool cancellation by other means than
	mouse button 3 and towards proper "clicked" semantics.

	* app/tools/tools-enums.[ch]: added enum GimpButtonReleaseType
	which can be one of { NORMAL, CANCEL, CLICK } (click is curently
	unused).

	* app/tools/gimptool.[ch] (GimpTool::button_release): added
	"release_type" parameter.

	(gimp_tool_button_release): if the state contains
	GDK_BUTTON3_MASK, call the tool's button_release() with CANCEL,
	use NORMAL otherwise.

	* app/tools/gimpaligntool.c
	* app/tools/gimpblendtool.c
	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpcolortool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpforegroundselecttool.c
	* app/tools/gimpfreeselecttool.c
	* app/tools/gimpiscissorstool.c
	* app/tools/gimpmagnifytool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimpmovetool.c
	* app/tools/gimppainttool.c
	* app/tools/gimprectangleselecttool.c
	* app/tools/gimprectangletool.[ch]
	* app/tools/gimpregionselecttool.c
	* app/tools/gimptransformtool.c
	* app/tools/gimpvectortool.c (button_release): added
	"release_type" parameters and get rid of own checks for
	GDK_BUTTON3_MASK.


svn path=/trunk/; revision=22015
2007-02-27 18:55:12 +00:00
Sven Neumann
f267e26644 just redraw the canvas
svn path=/trunk/; revision=22006
2007-02-26 16:03:14 +00:00
Sven Neumann
e644c56ce0 queue a redraw of the display shell instead of exposing the transform
2007-02-26  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptransformtool.c (gimp_transform_tool_doit): queue
	a redraw of the display shell instead of exposing the transform
	preview. Removes annoying flicker when the tool is finished.


svn path=/trunk/; revision=22004
2007-02-26 15:12:26 +00:00
Michael Natterer
bdc91d6c52 Remove support for the old undo pop and free cruft:
2007-02-03  Michael Natterer  <mitch@gimp.org>

	Remove support for the old undo pop and free cruft:

	* app/core/core-types.h: remove typedefs GimpUndoPopFunc and
	GimpUndoFreeFunc.

	* app/core/gimpundo.[ch]: remove members and properties size,
	data, pop_func and free_func.

	* app/core/gimpimage-undo.[ch] (gimp_image_undo_push): remove
	parameters size, struct_size, pop_func and free_func.

	* app/core/gimpimage-undo-push.c
	* app/tools/gimptransformtool.c
	* app/paint/gimpink.c
	* app/paint/gimppaintcore.c: change calls to above function
	accordingly.


svn path=/trunk/; revision=21845
2007-02-03 22:25:32 +00:00
Michael Natterer
426020da7b app/tools/gimpforegroundselecttool-undo.[ch] removed...
2007-02-03  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpforegroundselecttool-undo.[ch]
	* app/tools/gimptransformtool-undo.[ch]: removed...

	* app/tools/Makefile.am
	* app/tools/tools-types.h
	* app/tools/gimpforegroundselecttoolundo.[ch]
	* app/tools/gimptransformtoolundo.[ch]: ...and added a proper undo
	classes.

	* app/tools/gimptransformtool.c: push undos using the new class.


svn path=/trunk/; revision=21843
2007-02-03 21:22:37 +00:00
Sven Neumann
4cbb8d7fad store the original aspect ratio. Let the Ctrl key toggle the aspect ratio
2006-12-29  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptransformtool.[ch]: store the original aspect
ratio.
	Let the Ctrl key toggle the aspect ratio constraint also while
the
	mouse is being pressed.

	* app/tools/gimpscaletool.c (gimp_scale_tool_motion): use the
	original aspect ratio when applying the constraint.
2006-12-29 20:04:34 +00:00
Mukund Sivaraman
f0cff0ff92 app/core/Makefile.am app/core/gimp-transform-resize.c
2006-12-24  Mukund Sivaraman  <muks@mukund.org>

        * app/core/Makefile.am
        * app/core/gimp-transform-resize.c
        * app/core/gimpchannel.c
        * app/core/gimpdrawable-transform.c
        * app/core/gimpdrawable-transform.h
        * app/core/gimpdrawable.c
        * app/core/gimpimage-item-list.c
        * app/core/gimpimage-item-list.h
        * app/core/gimpitem-linked.c
        * app/core/gimpitem-linked.h
        * app/core/gimpitem.c
        * app/core/gimpitem.h
        * app/core/gimplayer.c
        * app/pdb/drawable_transform_cmds.c
        * app/text/gimptextlayer-transform.c
        * app/text/gimptextlayer-transform.h
        * app/tools/gimptransformoptions.c
        * app/tools/gimptransformtool.c
        * app/vectors/gimpvectors.c
        * libgimp/gimpdrawabletransform_pdb.c
        * libgimp/gimpdrawabletransform_pdb.h
        * libgimp/gimpenums.c.tail
        * libgimpbase/gimpbase.def
        * libgimpbase/gimpbaseenums.c
        * libgimpbase/gimpbaseenums.h
        * tools/pdbgen/enums.pl
        * tools/pdbgen/pdb/drawable_transform.pdb: implemented UI and PDB
        for new clipping modes for affine transforms (crop to largest
        rectangle, and crop to largest rectangle with the source's aspect
        ratio); fixed various bugs in the largest rectangle computation
        code; set padding to 6 in the transformation tool options.
2006-12-24 16:48:08 +00:00
Sven Neumann
41237259c9 In all files, changed the standard copyright notice to say "GIMP - The GNU
2006-12-09  Sven Neumann  <sven@gimp.org>

        * In all files, changed the standard copyright notice to say
        "GIMP - The GNU Image Manipulation Program".
2006-12-09 21:33:38 +00:00
Sven Neumann
b41bc68023 improved highlighting. (gimp_draw_tool_draw_arc_by_anchor): take width and
2006-11-07  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpdrawtool.[ch] (gimp_draw_tool_draw_corner):
	improved highlighting.
	(gimp_draw_tool_draw_arc_by_anchor): take width and height
	arguments instead of radius_x and radius_y.

	* app/tools/gimpiscissorstool.c
	* app/tools/gimpvectortool.c: slightly increased handle sizes.

	* app/tools/gimpmeasuretool.c: increased size of the end points.

	* app/tools/gimpperspectiveclonetool.c: increased handle size.

	* app/tools/gimprectangletool.c: renamed variables.

	* app/tools/gimpsourcetool.c: use a single define for the target
size.

	* app/tools/gimptransformtool.[ch]: increased handle size. Made
	the area that can be grabbed identical to the displayed handle.
	Replaced filled circle with a circle outline and a cross.

	* app/tools/gimptransformtool-undo.c: follow renaming of define
in
	gimptransformtool.h.
2006-11-07 11:09:51 +00:00
Michael Natterer
a0de9b3172 call response(OK) instead of calling doit() directly, so all transform
2006-10-19  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimptransformtool.c
	(gimp_transform_tool_button_release): call response(OK) instead of
	calling doit() directly, so all transform confirmation goes
	through response() now.
2006-10-19 17:37:25 +00:00
Michael Natterer
0c3ba5b6f9 show the outline of the selection while transforming it. Fixes bug
2006-10-19  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimptransformtool.c (gimp_transform_tool_draw): show
	the outline of the selection while transforming it.
	Fixes bug #362587.
2006-10-19 17:11:30 +00:00
Michael Natterer
616c79de15 allow showing the grid for path transforms. Fixes bug #362588.
2006-10-19  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimptransformtool.c (gimp_transform_tool_draw): allow
	showing the grid for path transforms. Fixes bug #362588.
2006-10-19 14:07:19 +00:00
Michael Natterer
10f9181e64 added _valist() variants of all printf-style functions.
2006-09-28  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpstatusbar.[ch]: added _valist() variants
	of all printf-style functions.

	* app/tools/gimptool.[ch] (gimp_tool_push_status)
	(gimp_tool_replace_status)
	(gimp_tool_message): take printf-style ... arguments and use the
	new valist() variants of the statusbar API to avoid additional
	strdups. Revert previous commit from Sven, he will add back that
	feature differently right away :)

	* app/tools/gimpmeasuretool.c
	* app/tools/gimppainttool.c: use the new printf-style status API
	where possible.

	* app/tools/gimptransformtool.c: accidentially removed
	"core/gimp.h", added it back.
2006-09-28 11:07:55 +00:00
Michael Natterer
e19c0977b0 added gimp_tool_message() which uses the new statusbar messages.
2006-09-28  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimptool.[ch]: added gimp_tool_message() which uses
	the new statusbar messages.

	* app/tools/gimptool.c
	* app/tools/gimppainttool.c: use it instead of accessing the
	statusbar directly.

	* app/tools/gimptransformtool.c: use it instead of gimp_message().
2006-09-28 08:32:09 +00:00
Michael Natterer
1b1299aff3 added GError** parameter to GimpPaintCore::start().
2006-09-26  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimppaintcore.[ch]: added GError** parameter to
	GimpPaintCore::start().

	* app/tools/gimppainttool.c (button_press): display the error in
	the statusbar.

	* app/paint/gimppaintcore-stroke.c: pass a NULL error, effectively
	swallowing mssages. Will fix that later.

	* app/paint/gimpbrushcore.c
	* app/paint/gimpclone.c
	* app/paint/gimpsourcecore.c: changed accordingly. Set the error
	instead of calling g_message().

	* app/paint/gimpheal.c
	* app/paint/gimpperspectiveclone.c: implement start() and bail out
	early on indexed drawables instead of showing a g_message() in
	other functions that are called later.

	* app/tools/gimptool.[ch]: added GError** to GimpTool::initialize().

	* app/tools/gimptool.c (gimp_tool_initialize): display the error
	in the statusbar. Keep the external API GError-free.

	* app/tools/gimprectangletool.[ch]: added GError** to
	gimp_rectangle_tool_initialize().

	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcolorizetool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimpimagemaptool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpperspectiveclonetool.c
	* app/tools/gimpposterizetool.c
	* app/tools/gimpthresholdtool.c
	* app/tools/gimptransformtool.c: changed accordingly. Set the
	errors in initialize() instead of using gimp_message().

	* app/tools/gimpblendtool.c: implement initialize() and bail out
	early on indexed images instead of showing a gimp_message() in
	button_press().
2006-09-26 20:55:40 +00:00
Michael Natterer
6c7f0c6830 added gimp_tool_get_options() so tools don't need to incude
2006-09-05  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimptool.[ch]: added gimp_tool_get_options() so tools
	don't need to incude "core/gimptoolinfo.h" just to get to
	their options.

	* app/tools/gimp*tool.h: added macros GIMP_FOO_TOOL_GET_OPTIONS()
	which return specific tool options types and do all casting
	themselves.

	* app/tools/*.c: use the new macros and don't include
	"core/gimptoolinfo.h" in most files.

	* app/tools/gimpcolorpickertool.c (gimp_color_picker_tool_register):
	make it use the parent context's FG and BG.

	* app/tools/gimpcolortool.c (gimp_color_tool_real_picked): set the
	color on the tool's options, not on the user context.
2006-09-05 18:25:31 +00:00
Michael Natterer
a6dbb78dfa added GimpContext parameters and create the GimpView with that context.
2006-09-01  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpviewabledialog.[ch]: added GimpContext
	parameters and create the GimpView with that context.

	* app/widgets/gimpcolordialog.[ch]
	* app/dialogs/convert-dialog.[ch]
	* app/dialogs/desaturate-dialog.[ch]
	* app/dialogs/grid-dialog.[ch]
	* app/dialogs/image-properties-dialog.[ch]
	* app/dialogs/layer-add-mask-dialog.[ch]
	* app/dialogs/offset-dialog.[ch]
	* app/dialogs/print-size-dialog.[ch]
	* app/dialogs/resize-dialog.[ch]
	* app/dialogs/scale-dialog.[ch]
	* app/dialogs/stroke-dialog.[ch]
	* app/dialogs/template-options-dialog.[ch]
	* app/dialogs/vectors-options-dialog.[ch]: added GimpContext
	parameters here too and pass them to gimp_viewable_dialog_new().

	* app/actions/colormap-editor-commands.c
	* app/actions/drawable-commands.c
	* app/actions/gradient-editor-commands.c
	* app/actions/image-commands.c
	* app/actions/layers-commands.c
	* app/actions/palette-editor-commands.c
	* app/actions/select-commands.c
	* app/actions/vectors-commands.c
	* app/actions/view-commands.c
	* app/dialogs/channel-options-dialog.c
	* app/dialogs/dialogs-constructors.c
	* app/dialogs/image-merge-layers-dialog.c
	* app/dialogs/image-scale-dialog.c
	* app/dialogs/layer-options-dialog.c
	* app/display/gimpdisplayshell-filter-dialog.c
	* app/display/gimpdisplayshell-scale.c
	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpimagemaptool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimptexttool.c
	* app/tools/gimptransformtool.c
	* app/tools/gimpvectortool.c
	* app/widgets/gimpcolorpanel.c
	* app/widgets/gimpcontrollereditor.c
	* app/widgets/gimpcontrollerlist.c
	* app/widgets/gimptoolbox-color-area.c: pass contexts to above
	dialog constructors.
2006-09-01 11:26:54 +00:00
Sven Neumann
7ccdcd6226 moved declarations at the beginning of the functions.
2006-08-31  Sven Neumann  <sven@gimp.org>

	* app/composite/gimp-composite-mmx.c: moved declarations at the
	beginning of the functions.

	* app/tools/gimptransformtool.c (gimp_transform_tool_doit):
	display a message if no paths are available. Could catch this
	earlier, but this is the least intrusive change to fix bug #353495.
2006-08-31 10:04:01 +00:00
William Skaggs
15620f36b2 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/tools/tools-enums.h
	* app/tools/gimptransformtool.[ch]: add support for handles at
	midpoints of edges.

	* app/tools/gimpscaletool.c: use midpoint handles for scaling
	with fixed width or height.  Fixes bug #344955.
2006-08-23 22:13:17 +00:00
Sven Neumann
9282180296 Applied patch from Zbigniew Chyla (bug 345982):
2006-06-27  Sven Neumann  <sven@gimp.org>

	Applied patch from Zbigniew Chyla (bug 345982):

	* app/tools/gimptransformtool.[ch]: added undo_desc field for
	storing undo string and use that, not tool_info->blurb.

	* app/tools/gimpfliptool.c
	* app/tools/gimpperspectivetool.c
	* app/tools/gimprotatetool.c
	* app/tools/gimpscaletool.c
	* app/tools/gimpsheartool.c: set undo_desc.
2006-06-27 20:05:56 +00:00
Sven Neumann
9c445e8d47 do not call bounds() and recalc() with a NULL display. Added sanity checks
2006-06-27  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptransformtool.c
(gimp_transform_tool_notify_type):
	do not call bounds() and recalc() with a NULL display.  Added
	sanity checks for the display parameter to both functions.
	Fixes bug #345791.
2006-06-27 18:52:24 +00:00
Michael Natterer
de603f4f86 always upchain.
2006-06-22  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimptransformtool.c: (gimp_transform_tool_control):
	always upchain.

	(gimp_transform_tool_cursor_update): use the small crosshair
	instead of GIMP_CURSOR_MOUSE as default cursor to avoid hotspot
	jumping.

	(gimp_transform_tool_doit): call prepare() after bounds().
2006-06-22 10:15:39 +00:00
Sven Neumann
7caa909385 added TRANSFORM_HANDLE_NONE (will get rid of TRANSFORM_CREATING later).
2006-06-20  Sven Neumann  <sven@gimp.org>

	* app/tools/tools-enums.h: added TRANSFORM_HANDLE_NONE (will
	get rid of TRANSFORM_CREATING later).

	* app/tools/gimptransformtool.[ch]: added member "use_handles" and
	default to FALSE for all "use_foo" variables.  Only deal with the
	handles the specific transform tool asks for.  Set cursors
	according to the active handle.

	* app/tools/gimpfliptool.c
	* app/tools/gimpperspectivetool.c
	* app/tools/gimprotatetool.c
	* app/tools/gimpscaletool.c
	* app/tools/gimpsheartool.c: changed accordingly.
2006-06-20 08:22:39 +00:00
Sven Neumann
5f7e1ac363 cleanup.
2006-06-19  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpscaletool.c (gimp_scale_tool_motion): cleanup.

	* app/tools/gimptransformtool.c
(gimp_transform_tool_cursor_update):
	simplified; removed checks that didn't change the cursor anyway.
2006-06-19 08:15:50 +00:00
Sven Neumann
df7310625a renamed TransformAction enum values to something more descriptive.
2006-06-18  Sven Neumann  <sven@gimp.org>

	* app/tools/tools-enums.h: renamed TransformAction enum values
to
	something more descriptive.

	* app/tools/gimpperspectivetool.c
	* app/tools/gimpscaletool.c
	* app/tools/gimpsheartool.c
	* app/tools/gimptransformtool.c: changed accordingly.
2006-06-18 17:44:06 +00:00