Commit Graph

2086 Commits

Author SHA1 Message Date
Sven Neumann 1051b7167a use italic style for the informative label.
2006-08-31  Sven Neumann  <sven@gimp.org>

	* app/tools/gimp-tools.c: use italic style for the informative label.
2006-08-31 10:33:31 +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
Sven Neumann d43ec35436 app/config/gimprc-blurbs.h app/dialogs/preferences-dialog.c string changes
2006-08-30  Sven Neumann  <sven@gimp.org>

	* app/config/gimprc-blurbs.h
	* app/dialogs/preferences-dialog.c
	* app/tools/gimpmoveoptions.c: string changes as suggested in
	bug #353440.
2006-08-30 15:35:56 +00:00
Michael Natterer b53aa45a76 Changed GimpViewable preview rendering to have a context to get
2006-08-29  Michael Natterer  <mitch@gimp.org>

	Changed GimpViewable preview rendering to have a context to get
	FG/BG/whatever from. Use the context to enable dynamic FG/BG
	colors in gradients. Fixes bug #127676 and bug #352214. Addresses
	bug #128367 (doesn't fix it because there's no loading/saving and
	no GUI yet).

	* app/core/core-enums.[ch]: added enum GimpGradientColor to enable
	specifying gradient colors in terms of foreground and background.

	* app/core/gimpgradient.[ch]: added color_type members to the
	GimpGradientSegment struct and honor them in
	gimp_gradient_get_color_at(). Added GimpContext parameters to all
	functions which finally call get_color_at().

	* app/core/gimp-gradients.c: use the new method to implement the
	builtin gradients.

	* app/core/gimpviewable.[ch]: added GimpContext parameters to all
	get_preview() and get_pixbuf() functions.

	* app/core/gimpbrush.c
	* app/core/gimpbuffer.c
	* app/core/gimpdrawable-preview.[ch]
	* app/core/gimpgradient.c
	* app/core/gimpimage-preview.[ch]
	* app/core/gimpimagefile.c
	* app/core/gimppalette.c
	* app/core/gimppattern.c
	* app/core/gimpundo.[ch]
	* app/text/gimpfont.c
	* app/vectors/gimpvectors-preview.[ch]: changed ::get_preview()
	and ::get_pixbuf() implementations accordingly.

	* app/core/gimpdrawable-blend.c
	* app/core/gimppalette-import.[ch]
	* app/dialogs/dialogs-constructors.c
	* app/dialogs/palette-import-dialog.c
	* app/dialogs/resize-dialog.c
	* app/display/gimpdisplayshell-layer-select.c
	* app/display/gimpdisplayshell.c
	* app/display/gimpnavigationeditor.c
	* app/paint/gimppaintoptions.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimptexttool.c
	* app/actions/gradient-editor-commands.c
	* app/widgets/gimpaction.c
	* app/widgets/gimpbrusheditor.[ch]
	* app/widgets/gimpbufferview.c
	* app/widgets/gimpcellrendererviewable.c
	* app/widgets/gimpchanneltreeview.c
	* app/widgets/gimpclipboard.c
	* app/widgets/gimpcoloreditor.c
	* app/widgets/gimpcomponenteditor.c
	* app/widgets/gimpcontainerbox.c
	* app/widgets/gimpcontainercombobox.c
	* app/widgets/gimpcontainereditor.c
	* app/widgets/gimpcontainerentry.c
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainertreeview.[ch]
	* app/widgets/gimpdataeditor.[ch]
	* app/widgets/gimpdevicestatus.c
	* app/widgets/gimpdnd.[ch]
	* app/widgets/gimpdrawabletreeview.c
	* app/widgets/gimpfiledialog.c
	* app/widgets/gimpgradienteditor.[ch]
	* app/widgets/gimpgradientselect.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimppaletteeditor.[ch]
	* app/widgets/gimppropwidgets.[ch]
	* app/widgets/gimpselectioneditor.c
	* app/widgets/gimpthumbbox.[ch]
	* app/widgets/gimptoolbox-image-area.c
	* app/widgets/gimptoolbox-indicator-area.c
	* app/widgets/gimptooloptionseditor.c
	* app/widgets/gimpundoeditor.c
	* app/widgets/gimpvectorstreeview.c
	* app/widgets/gimpview-popup.[ch]
	* app/widgets/gimpview.[ch]
	* app/widgets/gimpviewablebutton.c
	* app/widgets/gimpviewabledialog.c
	* app/widgets/gimpviewrenderer.[ch]
	* app/widgets/gimpviewrenderer-frame.c
	* app/widgets/gimpviewrendererbrush.c
	* app/widgets/gimpviewrendererbuffer.c
	* app/widgets/gimpviewrendererdrawable.c
	* app/widgets/gimpviewrenderergradient.c
	* app/widgets/gimpviewrendererimage.c
	* tools/pdbgen/pdb/drawable.pdb
	* tools/pdbgen/pdb/gradient.pdb
	* tools/pdbgen/pdb/gradients.pdb
	* tools/pdbgen/pdb/image.pdb: added tons of GimpContext members
	and parameters, implement GimpDocked::set_context() in many
	widgets. Pass these locally remembered contexts to GimpViewable
	functions. Did some minor cleanups on the way. There are still
	some minor FIXMEs around where the code uses a NULL context (which
	is allowed by the APIs)

	* app/pdb/drawable_cmds.c
	* app/pdb/gradient_cmds.c
	* app/pdb/gradients_cmds.c
	* app/pdb/image_cmds.c: regenerated.
2006-08-29 21:44:51 +00:00
Sven Neumann f234f146e7 app/tools/gimptextoptions.[ch] app/tools/gimptexttool.c make the text
2006-08-28  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptextoptions.[ch]
	* app/tools/gimptexttool.c
	* app/widgets/gimptexteditor.[ch]: make the text editor transient
	to the display shell.
2006-08-28 15:26:25 +00:00
Michael Natterer 031e8e7905 app/tools/gimpairbrushtool.c app/tools/gimpalignoptions.c
2006-08-28  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpairbrushtool.c
	* app/tools/gimpalignoptions.c
	* app/tools/gimpblendoptions.c
	* app/tools/gimpbucketfilloptions.c
	* app/tools/gimpclonetool.c
	* app/tools/gimpcolorpickeroptions.c
	* app/tools/gimpconvolvetool.c
	* app/tools/gimpcropoptions.c
	* app/tools/gimpdodgeburntool.c
	* app/tools/gimperasertool.c
	* app/tools/gimpflipoptions.c
	* app/tools/gimphistogramoptions.c
	* app/tools/gimpinkoptions-gui.c
	* app/tools/gimpmagnifyoptions.c
	* app/tools/gimpmeasureoptions.c
	* app/tools/gimpmoveoptions.c
	* app/tools/gimppaintoptions-gui.c
	* app/tools/gimprectangleoptions.c
	* app/tools/gimprectangleselectoptions.c
	* app/tools/gimpsmudgetool.c
	* app/tools/gimptextoptions.c
	* app/tools/gimptransformoptions.c
	* app/tools/gimpvectoroptions.c: code cleanup.
2006-08-27 22:19:35 +00:00
Michael Natterer 2c47580867 applied modified patch from David Gowers which selects a matching color
2006-08-27  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpcolortool.c (gimp_color_tool_real_picked): applied
	modified patch from David Gowers which selects a matching color
	from the palette editor's active palette. I'm not sure if this
	behavior is desirable but we'll never find out if we dont't try.
	Fixes bug #343358.
2006-08-27 12:19:25 +00:00
William Skaggs 61f13fd41c Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/tools/gimpselectiontool.c (gimp_selection_tool_modifier_key):
	When Alt is down, don't allow other modifiers to change the
	operation shown in the options.  Fixes bug #349338.
2006-08-25 22:07:26 +00:00
William Skaggs 1d03a22c3f Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/core/gimpchannel-select.[ch]: add push_undo arguments
	to several gimp_channel_select_foo functions.

	* app/actions/vectors-commands.c
	* app/core/gimpchannel-select.c
	* app/core/gimpchannel-select.h
	* app/pdb/paths_cmds.c
	* app/pdb/selection_tools_cmds.c
	* app/pdb/vectors_cmds.c
	* app/tools/gimpellipseselecttool.c
	* app/tools/gimpfreeselecttool.c
	* app/tools/gimprectangleselecttool.c
	* app/tools/gimpvectortool.c
	* tools/pdbgen/pdb/paths.pdb
	* tools/pdbgen/pdb/selection_tools.pdb
	* tools/pdbgen/pdb/vectors.pdb:  add push_undo argument
	to function calls where needed.
2006-08-25 17:19:36 +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
William Skaggs 588a77fa2b Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/tools/gimprectangletool.c (gimp_rectangle_tool_motion):
	respect "fixed-center" constraint even if "fixed-aspect"
	or "aspect-square" constraints are active.
2006-08-22 16:16:36 +00:00
William Skaggs 43b02f10ee Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/tools/gimprectangletool.c (gimp_rectangle_tool_motion):
	remove some constraining code that shouldn't have been there,
	and simplify a bit.
2006-08-22 15:58:14 +00:00
Sven Neumann 942fa969c8 fixed code that moves the angle between +/- pi (bug #352341).
2006-08-22  Sven Neumann  <sven@gimp.org>

	* app/tools/gimprotatetool.c (gimp_rotate_tool_motion): fixed code
	that moves the angle between +/- pi (bug #352341).
2006-08-22 12:20:12 +00:00
William Skaggs d47e125c3c Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/tools/gimpclonetool.c
	* app/tools/gimpforegroundselecttool.c: rewrite modifer_key
	functions more readably; no functional changes.
2006-08-21 19:04:05 +00:00
William Skaggs d4f2171301 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/display/gimpdisplayshell-callbacks.c: allow modifier key events
	for Shift and Control to be propagated even if button1 is down.

	* app/tools/gimpclonetool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpforegroundselecttool.c
	* app/tools/gimpmovetool.c
	* app/tools/gimppainttool.c
	* app/tools/gimpvectortool.c: change  modifier_key method
	to prevent any bad consequences.

	* app/tools/gimprectangletool.[ch]:  add modifier_key handler, and use it
	to toggle "make-square" if Shift is pressed while button1 is down, and
	"fixed-center" if Control is pressed while button1 is down.

	* app/tools/gimprectangleselecttool.c (gimp_rectangle_tool_modifier_key):
	call rectangle tool modifer_key method after chaining up.
2006-08-21 17:10:29 +00:00
Sven Neumann 3360cb3150 don't include gimp-intl.h.
2006-08-16  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpbrushtool.c: don't include gimp-intl.h.
2006-08-16 10:34:44 +00:00
Michael Natterer 269ab384cf app/tools/Makefile.am app/tools/tools-types.h new GimpPaintTool subclass
2006-08-15  Michael Natterer  <mitch@gimp.org>

	* app/tools/Makefile.am
	* app/tools/tools-types.h
	* app/tools/gimpbrushtool.[ch]: new GimpPaintTool subclass which
	completely handles brush outline drawing.

	* app/tools/gimppainttool.[ch]: removed all brush stuff here.

	* app/tools/gimpclonetool.[ch]
	* app/tools/gimpconvolvetool.[ch]
	* app/tools/gimpdodgeburntool.[ch]
	* app/tools/gimperasertool.[ch]
	* app/tools/gimppaintbrushtool.[ch]
	* app/tools/gimpsmudgetool.[ch]: derive from GimpBrushTool.

	* app/tools/gimpinktool.c: removed now obsolete cursor_update()
	implementation.
2006-08-15 21:46:22 +00:00
Kevin Sookocheff 02156f9a74 Partially implemented sample-merged healing. 2006-08-15 21:15:59 +00:00
Michael Natterer 2a97cb07c1 added check for GIMP_TRANSLATE_MODE_MASK_COPY_TO_LAYER which was forgotten
2006-08-15  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpeditselectiontool.c (gimp_edit_selection_tool_start):
	added check for GIMP_TRANSLATE_MODE_MASK_COPY_TO_LAYER which was
	forgotten when this mode was introduced.
2006-08-15 21:15:49 +00:00
Sven Neumann cbce9d135f fixed cursor handling on button press and release events.
2006-08-15  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcurvestool.c (curves_graph_events): fixed cursor
	handling on button press and release events.
2006-08-15 20:10:49 +00:00
Hans Breuer 37e4b80204 updated
2006-08-15  Hans Breuer  <hans@breuer.org>

	* **/makefile.msc app/gimpcore.def : updated

	* app/xcf/xcf-save.c(1464) : error C2036: 'void *' : unknown size
	pointer arithmetics on void a pointer looks like a GCC extension
	* app/tools/gimpbrightnesscontrasttool.c
	  app/tools/gimpcolorbalancetool.c
	  app/tools/gimphuesaturationtool.c
	  app/tools/gimpcolorizetool.c : #include "core/gimp.h" for gimp_message
	* app/tools/gimpiscissorstool.c : use RINT() rather than rint()
	* app/widgets/gimpcontrollerlist.c : #include "gimpwidgets-utils.h"
	for gimp_show_message_dialog
	* app/core/gimpprogress.c(229) : 'gimp_progress_message' must
	return a value
2006-08-15 15:13:08 +00:00
Michael Natterer 2c47055043 Fixed rounding and double vs. integer inconsistency when dealing with
2006-08-14  Michael Natterer  <mitch@gimp.org>

	Fixed rounding and double vs. integer inconsistency when dealing
	with mouse coordinates. Fixes bug #350694.

	* app/tools/gimpiscissorstool.c
	(clicked_on_vertex)
	(clicked_on_curve): added double x and y parameters and use them
	instead of the integer iscissors->x and ->y. Cleaned up the
	functions a bit.

	(gimp_iscissors_tool_button_press)
	(gimp_iscissors_tool_motion): changed accordingly, also rint() the
	passed mouse coords when assigning them to iscissors->x and ->y.

	Unrelated cleanup:

	(iscissors_free_buffers): removed, folded into reset()
	(precalculate_arrays): removed, folded into class_init()
2006-08-14 20:32:42 +00:00
Sven Neumann 36b4860e6d simplified code for statusbar display.
2006-08-14  Sven Neumann  <sven@gimp.org>

	* app/tools/gimprectangletool.c (gimp_rectangle_tool_motion):
	simplified code for statusbar display.
2006-08-14 14:17:18 +00:00
Sven Neumann f47007d897 changed the limits for "pressx" and "pressy". It's wrong to disallow
2006-08-14  Sven Neumann  <sven@gimp.org>

	* app/tools/gimprectangletool.c: changed the limits for "pressx"
	and "pressy". It's wrong to disallow negative values here.
2006-08-14 14:06:38 +00:00
Sven Neumann df30e50fc2 do not select ISCISSORS_OP_MOVE_POINT for terminal points. Fixes bug
2006-08-14  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpiscissorstool.c (gimp_iscissors_tool_oper_update):
	do not select ISCISSORS_OP_MOVE_POINT for terminal points. Fixes
	bug #132352.
2006-08-14 12:34:42 +00:00
Karine Delvare b8920f4869 restore rectangle settings. Fixes bug #346683.
2006-08-13  Karine Delvare  <edhel@gimp.org>

	* app/tools/gimprectangleoptions.c: restore rectangle settings.
	Fixes bug #346683.
2006-08-13 15:59:18 +00:00
Sven Neumann c2fb42003a introduced a simple message dialog to use when there's no progress but a
2006-08-11  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpwidgets-utils.[ch]: introduced a simple message
	dialog to use when there's no progress but a parent widget.

	* app/dialogs/convert-dialog.c
	* app/dialogs/palette-import-dialog.c
	* app/dialogs/preferences-dialog.c
	* app/dialogs/stroke-dialog.c
	* app/tools/gimpimagemaptool.c
	* app/widgets/gimpactionview.c
	* app/widgets/gimpcontrollerlist.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimppdbdialog.c
	* app/widgets/gimpvectorstreeview.c: use the new utility function
	instead of g_message().
2006-08-11 12:56:26 +00:00
William Skaggs d5cfa53e83 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/tools/gimprectangleselecttool.[ch]: if the user is
	modifying a rectangle and the mode is REPLACE, don't
	show the marching ants for the previous selection, because
	it confuses users.  Should fix bug #347945.
2006-08-10 19:03:46 +00:00
Sven Neumann 6f6bb9051d for load and save errors, use a GtkMessageDialog and make it transient for
2006-08-10  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpimagemaptool.c: for load and save errors, use a
	GtkMessageDialog and make it transient for the tool dialog.

	* app/tools/gimpvectortool.c: use gimp_message().
2006-08-10 12:46:01 +00:00
Sven Neumann 056c8f77f5 app/tools/gimpimagemaptool.[ch] app/tools/gimpcurvestool.c improved error
2006-08-10  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpimagemaptool.[ch]
	* app/tools/gimpcurvestool.c
	* app/tools/gimplevelstool.c: improved error handling for
	gimp_image_map_tool_settings_load().

	* app/tools/gimpposterizetool.c: added missing include.

	* app/config/gimpconfig-file.c: rephrased error messages.
2006-08-10 12:04:35 +00:00
Sven Neumann 2b8ea21f36 added new function gimp_display_shell_transform_segments().
2006-08-09  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-transform.[ch]: added new function
	gimp_display_shell_transform_segments().

	* app/display/gimpdisplayshell-selection.c (selection_transform_segs)
	* app/tools/gimpregionselecttool.c
	(gimp_region_select_tool_calculate): use the new function instead
	of looping over the segments.
2006-08-09 14:05:00 +00:00
Sven Neumann f29b6c5027 use the new transform functions.
2006-08-09  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-draw.c (gimp_display_shell_draw_pen)
	(gimp_display_shell_draw_vector): use the new transform functions.

	* app/tools/gimpdrawtool.c  (gimp_draw_tool_draw_lines)
	(gimp_draw_tool_draw_strokes): bail out early if num_points == 0.
2006-08-09 13:40:21 +00:00
Sven Neumann 1c33f14bcf renamed transform_coords() to transform_coordinate(); same for the
2006-08-09  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-transform.[ch]: renamed
	transform_coords() to transform_coordinate(); same for the
	untransform variant. Added new functions transform_points() and
	transform_coords() that work on arrays.

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

	* app/tools/gimpdrawtool.c (gimp_draw_tool_draw_lines)
	(gimp_draw_tool_draw_strokes): use the new transform functions.
2006-08-09 13:15:49 +00:00
Sven Neumann 99f44594bd implement using gimp_draw_tool_draw_lines().
2006-08-09  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpiscissorstool.c (iscissors_draw_curve):
	implement using gimp_draw_tool_draw_lines().
2006-08-09 11:15:15 +00:00
Sven Neumann fc47eb5cbd implement using gimp_draw_tool_draw_lines().
2006-08-09  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpfreeselecttool.c (gimp_free_select_tool_draw):
	implement using gimp_draw_tool_draw_lines().
2006-08-08 23:25:44 +00:00
Sven Neumann 48d054e8d4 added new function gimp_message() as a replacement for g_message(). Part
2006-08-08  Sven Neumann  <sven@gimp.org>

	* app/core/gimp.[ch]: added new function gimp_message() as a
	replacement for g_message(). Part of the fix for bug #347214.

	* app/actions/data-commands.c
	* app/actions/documents-commands.c
	* app/actions/file-commands.c
	* app/actions/layers-commands.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimagefile.c
	* app/core/gimpitem.c
	* app/core/gimplayer.c
	* app/dialogs/file-open-dialog.c
	* app/dialogs/file-open-location-dialog.c
	* app/dialogs/file-save-dialog.c
	* app/display/gimpdisplayshell-dnd.c
	* app/pdb/gimppdb.c
	* app/tools/gimpblendtool.c
	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcolorizetool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpposterizetool.c
	* app/tools/gimpthresholdtool.c
	* app/widgets/gimpwidgets-utils.c
	* app/xcf/xcf-load.c
	* app/xcf/xcf-private.h
	* app/xcf/xcf-save.c
	* app/xcf/xcf.c
	* tools/pdbgen/pdb/brush.pdb
	* tools/pdbgen/pdb/gradient.pdb
	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/palette.pdb: use gimp_message() instead of
	gimp_message() whenever we have a GimpProgress.

	* app/pdb/brush_cmds.c
	* app/pdb/gradient_cmds.c
	* app/pdb/image_cmds.c
	* app/pdb/palette_cmds.c: regenerated.
2006-08-08 21:06:36 +00:00
Sven Neumann 29a494d146 made GimpToolOptions a prerequisite of the GimpRectangleOptions interface.
2006-08-08  Sven Neumann  <sven@gimp.org>

	* app/tools/gimprectangleoptions.c
	(gimp_rectangle_options_interface_get_type): made
GimpToolOptions a
	prerequisite of the GimpRectangleOptions interface.

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_interface_get_type): made GimpDrawTool a
	prerequisite of the GimpRectangleTool interface.
2006-08-08 11:51:04 +00:00
Karine Delvare f72524032c Applied patch from Karl Günter Wünsch which finishes improving rectangle
2006-08-06  Karine Delvare  <edhel@gimp.org>

	* app/tools/gimprectangletool.c: Applied patch from Karl Günter
	Wünsch which finishes improving rectangle tools behaviour when
	resizing with fixed ratio. Fixes bug #349337.
2006-08-06 09:17:28 +00:00
Michael Natterer 9dabd23e2d Applied (modified and enhanced) patch from Chris Moller which allows tools
2006-08-05  Michael Natterer  <mitch@gimp.org>

	Applied (modified and enhanced) patch from Chris Moller which allows
	tools to distinguish similar colors not only by composite, but also
	by R, G, B, H, S and V. Fixes bug #348291.

	* app/core/core-enums.[ch]: added new enum GimpSelectCriterion
	which can be one of { COMPOSITE, R, G, B, H, S, V }.

	* app/core/gimpimage-contiguous-region.[ch]: added
	select_criterion params and create the region based on difference
	by the selected criterion.

	* app/core/gimpchannel-select.[ch]
	* app/core/gimpdrawable-bucket-fill.[ch]: take criterion params and
	pass them through to the contiguous region functions.

	* app/tools/gimpbucketfilloptions.[ch]
	* app/tools/gimpselectionoptions.[ch]: added criterion properties
	and GUI to select it.

	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpbycolorselecttool.c
	* app/tools/gimpfuzzyselecttool.c: pass the selected criterion to
	the resp. core functions.

	* app/widgets/gimpdrawabletreeview.c
	* app/widgets/gimpselectioneditor.c
	* app/display/gimpdisplayshell-dnd.c
	* tools/pdbgen/pdb/edit.pdb
	* tools/pdbgen/pdb/selection_tools.pdb: changed accordingly
	(simply pass GIMP_SELECT_CRITERION_COMPOSITE in most cases).

	* app/pdb/edit_cmds.c
	* app/pdb/selection_tools_cmds.c: regenerated.
2006-08-05 13:02:47 +00:00
Raphael Quinet 1999e437d4 app/core/gimpimage-convert-data.h app/core/gimpimage-convert.c
2006-08-04  Raphael Quinet  <raphael@gimp.org>

	* app/core/gimpimage-convert-data.h
	* app/core/gimpimage-convert.c
	* app/core/gimpimage-convert.h
	* tools/pdbgen/pdb/convert.pdb: Applied slightly modified patch
	from David Gowers allowing a custom dither matrix to be used when
	converting images to indexed mode.  Fixes bug #136604.

	* app/pdb/convert_cmds.c
	* libgimp/gimpconvert_pdb.h
	* libgimp/gimpconvert_pdb.c: Regenerated.

	* app/tools/gimpselectiontool.c: N_() should have been _().
2006-08-04 17:54:26 +00:00
Michael Natterer d25406c924 app/core/gimpchannel.c (gimp_channel_bounds) allow to pass in NULL return
2006-08-03  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpchannel.c (gimp_channel_bounds)
	* app/core/gimpdrawable.c (gimp_drawable_mask_bounds)
	(gimp_drawable_mask_intersect): allow to pass in NULL return
	locations for any of the boundary return values.

	* app/tools/gimpselectiontool.c (gimp_selection_tool_oper_update):
	don't require hovering the selection for moving the selected
	pixels, since this can be distinguished by looking at the
	modifiers now. Check for the presence of any selected pixels
	instead. Fixes bug #349341.
2006-08-03 18:17:42 +00:00
Raphael Quinet d2adebbc18 use gimp_suggest_modifiers().
2006-08-03  Raphael Quinet  <raphael@gimp.org>

	* app/tools/gimpselectiontool.c (gimp_selection_tool_oper_update):
	use gimp_suggest_modifiers().

	* app/tools/gimpclonetool.c (gimp_clone_tool_oper_update): suggest
	ctrl only when cloning from the image, not from a pattern

	* app/tools/gimpsmudgetool.c (gimp_smudge_tool_init): don't
	suggest Ctrl for that tool, even if it can be used.
2006-08-03 09:06:36 +00:00
Raphael Quinet 8960d6ac5a Allow some paint tools to not suggest using the Ctrl modifier.
2006-08-02  Raphael Quinet  <raphael@gimp.org>

	* app/tools/gimppainttool.c (gimp_paint_tool_oper_update): Allow
	some paint tools to not suggest using the Ctrl modifier.

	* app/tools/gimpvectortool.c (gimp_vector_tool_status_update):
	slightly more elegant way to free the status string.
2006-08-02 14:41:24 +00:00
Raphael Quinet a54a6b162c app/widgets/gimpwidgets-utils.h New utility function to build status bar
2006-08-02  Raphael Quinet  <raphael@gimp.org>

	* app/widgets/gimpwidgets-utils.h
	* app/widgets/gimpwidgets-utils.c (gimp_suggest_modifiers):
	New utility function to build status bar messages while allowing
	dynamic names for the modifiers.

	* app/tools/gimppainttool.h
	* app/tools/gimppainttool.c: Added new members to the class in
	order to allow paint tools to set different status messages for
	the normal case or when drawing a line.

	* app/tools/gimpclonetool.c
	* app/tools/gimpconvolvetool.c
	* app/tools/gimpdodgeburntool.c
	* app/tools/gimperasertool.c
	* app/tools/gimpsmudgetool.c: Use the new functions to set
	appropriate messages in the status bar.  Still work in progress,
	partial fix for bug #124040.

	* app/tools/gimpvectortool.c: Use gimp_suggest_modifiers().
2006-08-01 23:42:12 +00:00
Karine Delvare 58fa28a58d Applied patch from Karl Günter Wünsch which Corrects the asyncronicity
2006-07-31  Karine Delvare  <edhel@gimp.org>

	* app/tools/gimprectangletool.c: Applied patch from Karl Günter
	Wünsch which Corrects the asyncronicity between mouse cursor and
	selected edge on egde resizing. Partial fix for bug #349337.
2006-07-31 20:46:40 +00:00
Michael Natterer a5a96a2b00 use g_type_is_a() where possible instead of checking individual tool types
2006-07-31  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpselectionoptions.c (gimp_selection_options_gui):
	use g_type_is_a() where possible instead of checking individual
	tool types separately.
2006-07-31 11:45:50 +00:00
Michael Natterer 2882253fa5 app/tools/Makefile.am new abstract base class which does about the same as
2006-07-31  Michael Natterer  <mitch@gimp.org>

	* app/tools/Makefile.am
	* app/tools/gimpregionselecttool.[ch]: new abstract base class
	which does about the same as GimpFuzyySelectTool did, apart from
	creating the mask of the selected region.

	* app/tools/gimpbycolorselecttool.[ch]
	* app/tools/gimpfuzzyselecttool.[ch]: removed all code and only
	implement GimpRegionSelectTool::get_mask(). Fuzzy and by-color
	select behave exactly the same now. Fixes bug #126748.
2006-07-31 11:42:51 +00:00
Raphael Quinet 3739ee1883 app/tools/gimppainttool.c app/tools/gimpvectortool.c Update the status bar
2006-07-30  Raphael Quinet  <raphael@gimp.org>

	* app/tools/gimppainttool.c
	* app/tools/gimpvectortool.c
	* app/tools/gimpselectiontool.c: Update the status bar messages.
	Work in progress, partial fix for bug #124040.
2006-07-30 20:15:07 +00:00
Karine Delvare d16cfa55d7 check zero division in the right place. Fixes bug #348807.
2006-07-30  Karine Delvare  <edhel@gimp.org>

	* app/tools/gimprectangletool.c: check zero division in the right
	place. Fixes bug #348807.
2006-07-30 19:38:50 +00:00
Michael Natterer 9426dd3702 removed GObject::dispose() implementation (no need to disconnect from a
2006-07-28  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpbycolorselecttool.c: removed GObject::dispose()
	implementation (no need to disconnect from a signal connected with
	g_signal_connect_object). Code cleanup in some functions.
2006-07-28 20:04:06 +00:00