Commit graph

2142 commits

Author SHA1 Message Date
Michael Natterer
4f415c13e4 don't restore the entire affected area of the drawable here (it can take
2006-09-24  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimagemap.c (gimp_image_map_apply): don't restore
	the entire affected area of the drawable here (it can take *long*
	on large selections).

	(gimp_image_map_do): do it here instead, as we idle-process the
	chunks. Slightly reduces overall speed but improves responsiveness
	*massively*

	(gimp_image_map_get_color_at): fixed to honor undo tiles offset
	and be readable.

	(gimp_image_map_commit)
	(gimp_image_map_clear)
	(gimp_image_map_clear): don't unref the image_map here. Objects
	don't memory manage themselves.

	Cleaned up the entire file and got rid of all sorts of uglyness.

	* app/tools/gimpimagemaptool.c: unref the image_map here.

	* app/tools/gimpcurvestool.c (curves_graph_events): update the
	preview on button_press when we are dragging a free curve.
2006-09-24 10:29:21 +00:00
Michael Natterer
14ea7265ff jikes, update the preview only if we actually drag the curve, not on any
2006-09-24  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpcurvestool.c (curves_graph_events): jikes, update
	the preview only if we actually drag the curve, not on any mouse
	movement.
2006-09-23 22:43:13 +00:00
William Skaggs
0b005ffe99 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/tools/gimpcroptool.c
	* app/tools/gimprectangleselecttool.c
	* app/tools/gimprectangletool.[ch]: put back code for responding
	to modifiers pressed after mouse1-down, at mitch's request.
2006-09-23 22:32:35 +00:00
William Skaggs
977952caff Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/tools/gimprectangleselecttool.c
	* app/tools/gimprectangletool.[ch]:simplify code by
	removing unneeded properties and getters/setters.
2006-09-23 21:22:33 +00:00
William Skaggs
60611ebb54 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/tools/gimprectangleoptions.[ch]
	* app/tools/gimprectangleselecttool.c
	* app/tools/gimprectangletool.c
	* app/tools/gimpselectionoptions.c: move "auto-shrink"
	and "shrink-merged" from selection options to
	rectangle options where they belong; now shown
	for crop tool as well as rect select.
2006-09-23 20:45:06 +00:00
William Skaggs
bc355f4f45 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/widgets/gimppropwidgets.c
	* app/tools/gimprectangleoptions.c: add functionality
	for aspect ratio control.
2006-09-23 19:40:40 +00:00
William Skaggs
2c07e922a2 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/actions/tools-actions.c
	* app/actions/tools-commands.[ch]: add new actions for
	toggling "fixed-aspect" and "fixed-center" options of
	rectangle tools.

	* app/tools/gimprectangletool.[ch]
	* app/tools/gimprectangleselecttool.c
	* app/tools/gimpcroptool.c: rely on new actions for
	keyboard control, not on modifiers pressed after
	mouse1-down.
2006-09-23 19:38:26 +00:00
William Skaggs
7b8d12e0b6 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/widgets/gimppropwidgets.[ch]
	* app/tools/gimprectangleoptions.c
	* app/tools/gimprectangletool.c: more work on option
	layout and handling.
2006-09-22 18:27:21 +00:00
Michael Natterer
1419751614 changed all message setting functions to use printf-style argument lists.
2006-09-22  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpstatusbar.[ch]: changed all message setting
	functions to use printf-style argument lists. Added new API to
	show a temporary message that stays on top regardless of any other
	message activity and disappears after 3 seconds.

	* app/actions/edit-commands.c: show a statusbar message when
	pasting fails because the clipboard contains no image data. Pop a
	dialog when "Paste as New" fails. Addresses bug #357059 for
	internal functions.

	* app/display/gimpdisplayshell-title.c
	* app/gui/gui.c
	* app/tools/gimptool.c: changed accordingly.
2006-09-22 16:44:47 +00:00
William Skaggs
24546bc818 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/widgets/gimppropwidgets.c (gimp_prop_aspect_ratio_new):
	some small bug-fixes.

	* app/tools/gimprectangleoptions.[ch]: major revision.  Got
	rid of lots of unneeded getter/setter-clutter, simplified
	set of options and appearance of gui.  Still work in progress.

	* app/tools/gimprectangleselectoptions.c
	* app/tools/gimprectangletool.c: corresponding changes.
2006-09-21 20:16:25 +00:00
William Skaggs
43eb155668 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/tools/gimpselectionoptions.[ch]: remove
	rectangle-related options no longer used anywhere.
2006-09-21 20:12:23 +00:00
William Skaggs
7903feff20 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/display/gimpcanvas.[ch]
	* app/tools/gimpdrawtool.[ch]: remove recently added code relating
	to stippled xor drawing -- not handled well by some display
	drivers.

	* app/tools/gimprectangletool.c: improve drawing of handles.
2006-09-20 20:23:49 +00:00
Michael Natterer
7b0531aa91 implement GimpPaintCore::start() and set paint_core->use_saved_proj to
2006-09-20  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimpsourcecore.c: implement GimpPaintCore::start()
	and set paint_core->use_saved_proj to TRUE when we are using
	the destination drawable image's projection as source. Return
	FALSE from start() if there is no src_drawable set and removed
	checks for src_drawable != NULL further down in the code path.

	* app/tools/gimpperspectiveclonetool.c (button_press)
	* app/tools/gimpsourcetool.c (button_press): don't fiddle with
	paint_core->use_saved_proj here.

	* app/paint/gimpclone.c: implement GimpPaintCore::start() and
	return FALSE if we are in pattern mode and there is no pattern to
	clone from. Removed GimpPaintCore::paint() implementation because
	all it did was popping a message if there is no pattern. Removed
	check for pattern != NULL and cleaned up the file a bit.

	* app/paint/gimpperspectiveclone.c (paint): removed message about
	no pattern to clone from.
2006-09-19 23:14:50 +00:00
William Skaggs
73a25c2a61 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/tools/gimpairbrushtool.c
	* app/tools/gimpaligntool.c
	* app/tools/gimpblendtool.c
	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpbycolorselecttool.c
	* app/tools/gimpclonetool.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcolorizetool.c
	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpconvolvetool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimpdodgeburntool.c
	* app/tools/gimpellipseselecttool.c
	* app/tools/gimperasertool.c
	* app/tools/gimpfliptool.c
	* app/tools/gimpforegroundselecttool.c
	* app/tools/gimpfreeselecttool.c
	* app/tools/gimpfuzzyselecttool.c
	* app/tools/gimphealtool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimpinktool.c
	* app/tools/gimpiscissorstool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpmagnifytool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimpmovetool.c
	* app/tools/gimppaintbrushtool.c
	* app/tools/gimppenciltool.c
	* app/tools/gimpperspectiveclonetool.c
	* app/tools/gimpperspectivetool.c
	* app/tools/gimpposterizetool.c
	* app/tools/gimprectangleselecttool.c
	* app/tools/gimprectangletool.c
	* app/tools/gimprotatetool.c
	* app/tools/gimpscaletool.c
	* app/tools/gimpsheartool.c
	* app/tools/gimpsmudgetool.c
	* app/tools/gimptexttool.c
	* app/tools/gimpthresholdtool.c
	* app/tools/gimpvectortool.c:  Apply patch from J. Baker,
	with some modifications, to improve tooltips and tool
	names.  Almost fixes bug #356137.
2006-09-18 18:00:22 +00:00
Sven Neumann
b39784d20a rewrote the UI without tables and separators (eek). Also fixes bug
2006-09-18  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpaligntool.c: rewrote the UI without tables and
	separators (eek). Also fixes bug #355986.
2006-09-18 13:26:12 +00:00
Michael Natterer
334f160ea3 app/tools/gimpperspectiveclonetool.c (button_press) need to instruct the
2006-09-16  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpperspectiveclonetool.c (button_press)
	* app/tools/gimpsourcetool.c (button_press): need to instruct the
	paint_core to make a copy of the projection whenever we clone from
	the same *image*, not from the same display. Fixes crash when
	cloning from the same image's projection in another view
	(bug #356209).
2006-09-16 21:49:53 +00:00
William Skaggs
3c2c165b9c Bill Skaggs <weskaggs@primate.ucdavis.edu>
Trying to implement some usability recommendations from
	Peter Sikking: bigger handles, more feedback to user.

	* app/display/gimpcanvas.[ch]: add
	GIMP_CANVAS_STYLE_XOR_STIPPLED to set of styles.

	* app/tools/gimpdrawtool.[ch]
	(gimp_draw_tool_draw_rectangle_stippled): new function.
	Needs a better stipple pattern, though.

	* app/tools/gimprectangletool.c: bigger handles in corners,
	and highlight thing that user is currently moving.
2006-09-15 00:01:59 +00:00
William Skaggs
769fd8c5a3 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/widgets/gimprectangletool.c: even if constraining to boundaries,
	keep updating rectangel when pointer goes outside boundaries.
	Fixes bug #355740.
2006-09-14 21:51:35 +00:00
William Skaggs
4ff0ca1c38 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/widgets/gimppropwidgets.[ch]: add prop widget specially
	for controlling aspect ratio.

	* app/tools/gimprectangleoptions.ch]: use "aspect-numerator"
	and "aspect-denominator" properties instead of "aspect",
	and use new prop widget in gui to set and display them.

	* app/tools/gimprectangletool.c: calculate aspect from
	numerator and denominator.
2006-09-14 17:11:24 +00:00
Michael Natterer
1db7c2075a when editing a "smooth" curve, update the image while dragging instead of
2006-09-14  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpcurvestool.c (curves_graph_events): when editing a
	"smooth" curve, update the image while dragging instead of on
	button_release. Suggested by Joel Becker.
2006-09-14 17:05:43 +00:00
Sven Neumann
14d80ba157 app/actions/image-actions.c app/dialogs/preferences-dialog.c
2006-09-14  Sven Neumann  <sven@gimp.org>

	* app/actions/image-actions.c
	* app/dialogs/preferences-dialog.c
	* app/tools/gimpvectortool.c
	* app/widgets/gimpcontrollereditor.c:
	* plug-ins/common/autocrop.c
	* plug-ins/common/max_rgb.c: resolved conflicting mnemonics, added
	some new ones (bug #355761).
2006-09-14 08:24:05 +00:00
Michael Natterer
bb0d526498 Need to be more careful with setting a tool's focus_dislay now that tools
2006-09-13  Michael Natterer  <mitch@gimp.org>

	Need to be more careful with setting a tool's focus_dislay now
	that tools can receive modifier events in more circumstances
	(fixes warnings with GimpEditSelectionTool)

	* app/tools/gimptool.c (gimp_tool_button_release): ref the tool
	around the function's body (GimpEditSelectionTool unrefs itself in
	button_release()), don't reset the active_modifier_state if it is 0.

	(gimp_tool_set_focus_display): reset the active_modifier_state if
	it is != 0 and the tool had an old focus_display.

	* app/tools/tool_manager.c (tool_manager_push,pop_tool): set the
	old active_tool's focus_display on the new one.
2006-09-13 21:28:17 +00:00
Michael Natterer
ca9825ecc5 added macro GIMP_PERSPECTIVE_CLONE_TOOL_GET_OPTIONS()
2006-09-13  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpperspectiveclonetool.h: added macro
	GIMP_PERSPECTIVE_CLONE_TOOL_GET_OPTIONS()

	* app/tools/gimpperspectiveclonetool.c: use it. Some minor
	cleanups, removed unused includes.
2006-09-13 18:00:30 +00:00
Sven Neumann
0fb9104817 removed "Resize" from the tool name and description.
2006-09-13  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcroptool.c (gimp_crop_tool_register): removed
	"Resize" from the tool name and description.
2006-09-13 16:03:24 +00:00
Michael Natterer
a4edd11b28 simplified by calling gimp_draw_tool_pause/resume() unconditionally (it
2006-09-13  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpbrushtool.c: simplified by calling
	gimp_draw_tool_pause/resume() unconditionally (it does no harm,
	regardless of whether the tool is in color picking mode or not).
	Return early in gimp_brush_tool_draw() if color picking is
	enabled.

	* app/tools/gimpsmudgetool.c (gimp_smudge_tool_init): don't enable
	color picking, the tool doesn't use FG or BG.
2006-09-13 11:04:49 +00:00
Michael Natterer
2e0f6b6b02 chain up before clearing src_drawable and src_display, so the draw tool
2006-09-13  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpsourcetool.c (gimp_source_tool_control): chain
	up before clearing src_drawable and src_display, so the draw
	tool can undraw the source marker. Fixes bug #355746.
2006-09-13 10:56:24 +00:00
Michael Natterer
0a341138e2 app/tools/gimpmeasuretool.h fixed _GET_OPTIONS() macros.
2006-09-13  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpmeasuretool.h
	* app/tools/gimppainttool.h: fixed _GET_OPTIONS() macros.
2006-09-13 10:44:40 +00:00
Sven Neumann
bd754a97b0 update coordinates in status bar.
2006-09-13  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpblendtool.c (gimp_blend_tool_active_modifier_key):
	update coordinates in status bar.
2006-09-13 10:06:49 +00:00
Sven Neumann
7dc4ad0f8e update status bar and optional dialog window.
2006-09-13  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpmeasuretool.c
(gimp_measure_tool_active_modifier_key):
	update status bar and optional dialog window.
2006-09-13 06:49:20 +00:00
Michael Natterer
3bc9a7af2d added local "gboolean press" variables to improve readability.
2006-09-13  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimptool.c (gimp_tool_set_active_modifier_state):
	added local "gboolean press" variables to improve readability.

2
2006-09-12 22:55:03 +00:00
Michael Natterer
2ab5d86ae8 implement active_modifier_key() and give immediate feedback when Control
2006-09-12  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpmeasuretool.[ch]: implement active_modifier_key()
	and give immediate feedback when Control (constrain to 15 degrees)
	is toggled. Did a s/mtool/measure/g.
2006-09-12 20:24:50 +00:00
Michael Natterer
8f9864755f reset the active_modifier_state *after* invoking the tool's
2006-09-12  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimptool.c (gimp_tool_button_release): reset the
	active_modifier_state *after* invoking the tool's button_release().

	* app/tools/gimpblendtool.[ch]: implement active_modifier_key()
	and give immediate feedback when Control (constrain to 15 degrees)
	is toggled.
2006-09-12 19:36:05 +00:00
Michael Natterer
868b8afbff Added new tool API for modifier key events while the tool is active and
2006-09-12  Michael Natterer  <mitch@gimp.org>

	Added new tool API for modifier key events while the tool
	is active and implement it in the rect select and crop tools.
	Fixes bug #316156 and bug #355302.

	* app/tools/gimptool.[ch]: added GimpTool::active_modifier_key()
	and public function gimp_tool_set_active_motifier_state(). Remember
	the active_state at button_press and reset it on button_release.
	Ignore releases of modifiers that were pressed at button_press (but
	only ignore them once).

	* app/tools/tool_manager.[ch]: added wrapper
	tool_manager_active_modifier_state_active().

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_events): return FALSE for all modifiers even
	when mouse button 1 is pressed.

	(gimp_display_shell_canvas_tool_events): when bouse button 1 is
	pressed *and* the tool is active, dispatch the new active_modifier
	events to tools.

	* app/tools/gimpcroptool.c
	* app/tools/gimprectangleselecttool.c
	* app/tools/gimprectangletool.[ch]: implement active_modifier_key()
	instead of modifier_key().
2006-09-12 18:41:09 +00:00
Sven Neumann
7cbb46b2f0 if the "bad" cursor modifier is set, show the cursor regardless of the
2006-09-12  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpbrushtool.c (gimp_brush_tool_cursor_update): if
	the "bad" cursor modifier is set, show the cursor regardless of
	the gimprc "show-paint-tool-cursor" setting.
2006-09-12 14:24:10 +00:00
Michael Natterer
ff45766f9b made gimp_source_core_motion() a public function for the time being,
2006-09-12  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimpsourcecore.[ch]: made gimp_source_core_motion() a
	public function for the time being, pending further refactoring.

	* app/paint/gimpperspectiveclone.[ch]: derive from GimpClone and
	remove everything that is already imeplemented in the parent
	classes. Particullarly, removed motion() implementation in favor
	of a get_source() implementation and simply use GimpClone's
	motion(). Also refuse to work on indexed drawables.

	* app/paint/gimpperspectivecloneoptions.[ch]: derive from
	GimpCloneOptions and remove everything that is already done by the
	parent classes.

	* app/tools/gimpperspectiveclonetool.c: changed
	accordingly. Doesn't derive from GimpSourceTool yet since there is
	some virtual function refactoring in GimpSourceTool missing.
2006-09-12 12:57:55 +00:00
Sven Neumann
a03e14af1a app/composite/gimp-composite-generic.c app/core/gimpimage-convert.c
2006-09-12  Sven Neumann  <sven@gimp.org>

	* app/composite/gimp-composite-generic.c
	* app/core/gimpimage-convert.c
	* app/actions/view-actions.c
	* app/dialogs/grid-dialog.c
	* app/dialogs/offset-dialog.c
	* app/dialogs/palette-import-dialog.c
	* app/display/gimpnavigationeditor.c
	* app/tools/gimpiscissorstool.c
	* app/widgets/gimptoolbox-image-area.c
	* plug-ins/common/CML_explorer.c
	* plug-ins/common/apply_lens.c
	* plug-ins/common/cubism.c
	* plug-ins/common/curve_bend.c
	* plug-ins/common/exchange.c
	* plug-ins/common/fp.c
	* plug-ins/common/gif.c
	* plug-ins/common/iwarp.c
	* plug-ins/common/laplace.c
	* plug-ins/common/mapcolor.c
	* plug-ins/common/nlfilt.c
	* plug-ins/common/nova.c
	* plug-ins/common/psp.c
	* plug-ins/common/randomize.c
	* plug-ins/common/sparkle.c
	* plug-ins/common/tga.c
	* plug-ins/common/threshold_alpha.c
	* plug-ins/common/unsharp.c
	* plug-ins/common/vpropagate.c
	* plug-ins/gfig/gfig-dialog.c
	* plug-ins/gflare/gflare.c
	* plug-ins/ifscompose/ifscompose.c: removed unused macros.
2006-09-12 11:46:10 +00:00
Michael Natterer
d61e8e49e6 chain up to activate/halt the tool.
2006-09-12  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpcolortool.c (gimp_color_tool_button_press)
	(gimp_color_tool_button_release): chain up to activate/halt the tool.

	* app/tools/gimppainttool.c (gimp_paint_tool_button_press)
	(gimp_paint_tool_button_release)
	(gimp_paint_tool_motion): if the color tool is enabled, chain up
	early and return. Fixes selection PAUSE/RESUME mismatch that was
	hiding this display's selection forever when moving sample points.
2006-09-12 09:05:41 +00:00
Michael Natterer
05cd50c9f6 app/display/gimpdisplayshell-callbacks.c
2006-09-12  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	* app/tools/gimpforegroundselecttool.c
	* app/tools/gimpmovetool.c
	* app/tools/gimppainttool.c
	* app/tools/gimprectangletool.c
	* app/tools/gimpselectiontool.c
	* app/tools/gimpsourcetool.c
	* app/tools/gimpvectortool.c: back out change committed on
	2006-08-21 which passed modifier events to tools even while mouse1
	was down. This generated way too much unexpected events that would
	have to be special cased in all tools. Will implement an anternate
	solution soon.
2006-09-12 08:33:30 +00:00
Sven Neumann
7053e3daac app/tools/gimpclonetool.c app/tools/gimpconvolvetool.c
2006-09-12  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpclonetool.c
	* app/tools/gimpconvolvetool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimpdodgeburntool.c
	* app/tools/gimperasertool.c
	* app/tools/gimppainttool.c
	* app/tools/gimpperspectiveclonetool.c
	* app/tools/gimpregionselecttool.c
	* app/tools/gimpselectiontool.c
	* app/tools/gimpsmudgetool.c
	* app/tools/gimpvectortool.c: removed trailing dot from
statusbar
	messages.

	* app/widgets/gimpwidgets-utils.c (gimp_suggest_modifiers):
don't
	use "try" if the modifier action has been specified.
2006-09-12 06:37:54 +00:00
Sven Neumann
2426755ba9 added function gimp_get_tool_info().
2006-09-08  Sven Neumann  <sven@gimp.org>

	* app/core/gimp.[ch]: added function gimp_get_tool_info().

	* app/actions/tools-commands.c
	* app/actions/vectors-commands.c
	* app/tools/gimppainttool.c
	* app/widgets/gimpdrawabletreeview.c
	* app/widgets/gimpselectioneditor.c
	* app/widgets/gimptoolbox.c: use the new function instead of poking
	into gimp->tool_info_list.

	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell.[ch]: moved code that deals with
	the space key into separate functions. Added space_shaded_tool
	to GimpDisplayShell instead of using a static variable for it.

	* app/tools/tool_manager.c: removed unused include.
2006-09-08 13:42:00 +00:00
Hans Breuer
ccb25e3798 updated
2006-09-08  Hans Breuer  <hans@breuer.org>

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

	* app/paint/gimpperspectiveclone.c : error C2057: expected constant
	expression. Stack allocation of dynamic sized arrays is afaik a GCC
	extension, use g_alloca() instead.
2006-09-08 11:45:06 +00:00
Michael Natterer
1c309997e7 fix the tool's menu path and accelerator.
2006-09-08  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpperspectiveclonetool.c
	(gimp_perspective_clone_tool_register): fix the tool's menu path
	and accelerator.
2006-09-08 08:39:55 +00:00
Michael Natterer
1b1497657a Merged the "soc-2006-perspective-clone" branch. That branch is now
2006-09-07  Michael Natterer  <mitch@gimp.org>

	Merged the "soc-2006-perspective-clone" branch. That branch is
	now officially closed and all further fixes and changes have to
	be applied to HEAD.

	Did some minor adjustments, mostly small indentation and spacing
	fixes. Derive the tool from GimpBrushTool and renamed the enum
	added to paint-enums.h and it values, added stock icon and menu
	entry.

	Thanks a lot to Pedro Alonso Ferrer!

	* app/paint/paint-enums.[ch]: new enum GimpPerspectiveCloneMode.

	* app/paint/Makefile.am
	* app/paint/gimpperspectiveclone.[ch]
	* app/paint/gimpperspectivecloneoptions.[ch]: the perspective
	clone core and its options.

	* app/paint/gimp-paint.c: register it.

	* app/tools/Makefile.am
	* app/tools/gimpperspectiveclonetool.[ch]: the perspective clone tool.

	* app/tools/gimp-tools.c: register it.

	* app/tools/gimppaintoptions-gui.c: show the widgets that are used
	by perspective clone.

	* app/widgets/gimphelp-ids.h: the help ID.

	* themes/Default/images/Makefile.am
	* themes/Default/images/tools/stock-tool-perspective-clone-16.png
	* themes/Default/images/tools/stock-tool-perspective-clone-22.png
	* libgimpwidgets/gimpstock.[ch]: its stock ID and icons.

	* menus/image-menu.xml.in: added it to the menu.
2006-09-07 17:10:22 +00:00
Michael Natterer
58908ecf4d removed unused variable.
2006-09-07  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpfreeselecttool.c: removed unused variable.
2006-09-07 12:57:06 +00:00
William Skaggs
5e9dc3c0d8 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/tools/tools-enums.[ch]: add GimpRectangleConstraint
	enum.

	* app/tools/gimprectangletool.[ch]: replace "constrain"
	boolean with "constraint" enum property.  Implement
	constraints in motion handler -- the implementation
	is rather elegant but pretty tricky.

	* app/tools/gimpcroptool.c: constrain to image bounds,
	or to active drawable bounds if "current layer only"
	option is checked.

	* app/tools/gimpellipseselecttool.c
	* app/tools/gimprectangleselecttool.c: no constraint.

	This addresses bug #353936 -- I would say fixes it, but it
	probably needs some fine-tuning.  Also perhaps fixes
	bug #329817 a bit better than before.
2006-09-06 22:51:54 +00:00
William Skaggs
c28e8253d4 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/tools/tools-enums.[ch]: remove GimpCropMode enum;
	missed in previous commit.
2006-09-06 15:59:11 +00:00
William Skaggs
05f8df22d7 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/tools/gimpcroptool.c
	* app/tools/gimpcropoptions.[ch]: remove "crop vs resize"
	option, as recommended in bug #353936.
2006-09-06 15:38:28 +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
Sven Neumann
3b92ec7406 hide the internal API.
2006-09-04  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-selection.[ch]: hide the internal
API.

	* app/display/gimpdisplayshell-appearance.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-handlers.c
	* app/display/gimpdisplayshell.[ch]
	* app/tools/gimpcolortool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpmovetool.c: changed accordingly.

	* app/config/gimpdisplayconfig.c
	* app/dialogs/preferences-dialog.c: increased the default
marching
	ants speed.
2006-09-04 17:18:38 +00:00
Michael Natterer
fca7fc0257 removed enum GimpHealAlignMode, we use the GimpSourceAlignMode now and can
2006-09-04  Michael Natterer  <mitch@gimp.org>

	* app/paint/paint-enums.[ch]: removed enum GimpHealAlignMode, we
	use the GimpSourceAlignMode now and can always disable REGISTERED
	in the GUI should it turn out to be really totally pointless.

	* app/paint/Makefile.am
	* app/paint/gimphealoptions.[ch]: removed. Its properties are
	completely covered by GimpSourceOptions.

	* app/paint/gimpheal.[ch]: derive from GimpSourceCore.

	* app/tools/gimphealtool.[ch]: derive from GimpSourceTool.
2006-09-04 15:40:56 +00:00