Commit Graph

311 Commits

Author SHA1 Message Date
75061fccfd app/actions/channels-commands.c app/actions/colormap-actions.c
2007-12-25  Michael Natterer  <mitch@gimp.org>

	* app/actions/channels-commands.c
	* app/actions/colormap-actions.c
	* app/actions/colormap-commands.c
	* app/actions/image-commands.c
	* app/core/gimp-edit.c
	* app/core/gimpdrawable-preview.c
	* app/core/gimpimage-colorhash.c
	* app/core/gimpimage-colormap.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimage-crop.c
	* app/core/gimpimage-duplicate.c
	* app/core/gimpimage-flip.c
	* app/core/gimpimage-guides.c
	* app/core/gimpimage-merge.c
	* app/core/gimpimage-preview.c
	* app/core/gimpimage-quick-mask.c
	* app/core/gimpimage-resize.c
	* app/core/gimpimage-rotate.c
	* app/core/gimpimage-sample-points.c
	* app/core/gimpimage-scale.c
	* app/core/gimpimage-snap.c
	* app/core/gimpimage.c
	* app/core/gimpimagefile.c
	* app/core/gimpimageundo.c
	* app/core/gimpitem-preview.c
	* app/core/gimpitem.c
	* app/core/gimplayer.c
	* app/core/gimppalette-import.c
	* app/core/gimpprojection-construct.c
	* app/core/gimpprojection.c
	* app/core/gimpselection.c
	* app/core/gimpundo.c
	* app/dialogs/layer-options-dialog.c
	* app/dialogs/print-size-dialog.c
	* app/display/gimpdisplay.c
	* app/display/gimpdisplayshell-draw.c
	* app/display/gimpdisplayshell-scale.c
	* app/display/gimpdisplayshell-scroll.c
	* app/display/gimpdisplayshell-title.c
	* app/display/gimpdisplayshell-transform.c
	* app/display/gimpdisplayshell.c
	* app/display/gimpstatusbar.c
	* app/file/file-open.c
	* app/paint/gimppaintoptions.c
	* app/tools/gimpaligntool.c
	* app/tools/gimpcolortool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpiscissorstool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimpmovetool.c
	* app/tools/gimpperspectiveclonetool.c
	* app/tools/gimprectangleselecttool.c
	* app/tools/gimprectangletool.c
	* app/tools/gimprotatetool.c
	* app/vectors/gimpvectors-export.c
	* app/vectors/gimpvectors-import.c
	* app/vectors/gimpvectors.c
	* app/widgets/gimpimagepropview.c
	* app/widgets/gimpnavigationview.c
	* app/widgets/gimpselectioneditor.c
	* app/widgets/gimpviewrendererdrawable.c
	* app/widgets/gimpviewrendererimage.c
	* app/xcf/xcf-load.c
	* app/xcf/xcf-save.c
	* tools/pdbgen/pdb/guides.pdb
	* tools/pdbgen/pdb/image.pdb: use accessors for many image properties.

	* app/pdb/guides_cmds.c
	* app/pdb/image_cmds.c: regenerated.


svn path=/trunk/; revision=24432
2007-12-25 16:21:40 +00:00
1014fca378 Reverted the changes that made GimpRectangleTool keep track of its active
2007-12-14  Martin Nordholts  <martinn@svn.gnome.org>

	Reverted the changes that made GimpRectangleTool keep track of its
	active display in GimpRectangleToolPrivate, the approach is
	broken.

svn path=/trunk/; revision=24364
2007-12-14 17:22:46 +00:00
8208d16bb0 Changed name of `gimp_rectangle_tool_is_active_at' to
2007-12-13  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.[ch]: Changed name of
	`gimp_rectangle_tool_is_active_at' to
	`gimp_rectangle_tool_is_active_on_display'.

	* app/tools/gimpcroptool.c
	* app/tools/gimprectangleselecttool.c: Use the new name.

svn path=/trunk/; revision=24360
2007-12-13 21:48:55 +00:00
f643d5545c Don't use the `display' member of GimpTool for keeping track of what
2007-12-13  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.[ch]: Don't use the `display' member
	of GimpTool for keeping track of what display the rectangle is
	active on. Instead store the active display in
	GimpRectangleToolPrivate. This change is based on a patch by Bill
	Skaggs.
	(gimp_rectangle_tool_is_active)
	(gimp_rectangle_tool_is_active_at)
	(gimp_rectangle_tool_get_active_display): New public functions for
	GimpRectangleTool active-display interaction.

	* app/tools/gimpellipseselecttool.c
	(gimp_ellipse_select_tool_select): Use the active display of
	GimpRectangleTool instead of tool->display.

	* app/tools/gimprectangleselecttool.c
	(gimp_rect_select_tool_rectangle_changed): Use the active display
	of GimpRectangleTool instead of tool->display.

	* app/tools/gimpcroptool.c
	(gimp_crop_tool_button_press): Use the active display of
	GimpRectangleTool instead of tool->display.

svn path=/trunk/; revision=24358
2007-12-13 21:30:59 +00:00
453f54584d Make canceling work a bit better.
2007-12-13  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_button_release): Make canceling work a bit
	better.

svn path=/trunk/; revision=24355
2007-12-13 20:14:41 +00:00
c0ab783568 Extended public interface a bit. (gimp_rectangle_tool_point_in_rectangle):
2007-12-12  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c: Extended public interface a bit.
	(gimp_rectangle_tool_point_in_rectangle): New convenience function
	to test if a point is within the rectangle (if active).
	(gimp_rectangle_tool_rectangle_is_new): New function so that
	clients can determine if the rectangle currently being
	rubber-banded was created from scatch or not.

svn path=/trunk/; revision=24343
2007-12-12 21:11:56 +00:00
8372fd28bf Added gimp_rectangle_tool_init() (and minor code cleanup).
2007-12-09  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.[ch]: Added
	gimp_rectangle_tool_init() (and minor code cleanup).

	* app/tools/gimprectangleselecttool.c
	(gimp_rect_select_tool_init): Call gimp_rectangle_tool_init().

	* app/tools/gimpcroptool.c
	(gimp_crop_tool_init): Call gimp_rectangle_tool_init().

svn path=/trunk/; revision=24304
2007-12-09 09:38:34 +00:00
fddd27bc83 Also update the integer representation of the rect when the GObject
2007-12-06  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_set_property): Also update the integer
	representation of the rect when the GObject properties has been
	set.

svn path=/trunk/; revision=24277
2007-12-06 20:55:10 +00:00
7c27d0d2eb Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/tools/gimprectangletool.c: initialize vars to quiet
	stupid compile warnings.

svn path=/trunk/; revision=24236
2007-11-27 19:28:38 +00:00
6e22ccd92a Renamed RECT_* identifiers of the GimpRectangleFunction enum to
2007-11-24  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.[ch]: Renamed RECT_* identifiers of
	the GimpRectangleFunction enum to GIMP_RECTANGLE_TOOL_*.

	* app/tools/gimprectangleselecttool.c: Use the new names.

svn path=/trunk/; revision=24226
2007-11-24 09:27:55 +00:00
4fee7a4e0e Ported the internal representation of the rectangle to gdouble:s instead
2007-11-24  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.[ch]: Ported the internal
	representation of the rectangle to gdouble:s instead of
	gint:s. This solves problems like not being able to swap portrait
	for landscape on very small rectangle and bug #442027, as well as
	provides a nice base to solve other similar problems when they are
	discovered. It is possible to choose what precision the
	GimpRectangleTool:s will appear to have externally through a new
	GimpRectanglePrecision enum and property, but the gdouble
	precision mode still requires some work in order to be useful. In
	the processes quite some refactoring has taken place, mostly
	restructuring code and splitting larger functions into smaller
	more managable ones.
	(gimp_rectangle_tool_rect_rubber_banding_func)
	(gimp_rectangle_tool_setup_snap_offsets)
	(gimp_rectangle_tool_apply_fixed_rule)
	(gimp_rectangle_tool_update_int_rect)
	(gimp_rectangle_tool_get_public_rect): New helper functions.

	* app/tools/tools-enums.h: Added GimpRectanglePrecision.

svn path=/trunk/; revision=24224
2007-11-24 09:09:26 +00:00
25ebadcd30 Avoid GimpRectangleTool internals to make use of its public own interface
2007-11-13  Martin Nordholts  <martinn@svn.gnome.org>

	Avoid GimpRectangleTool internals to make use of its public own
	interface by making gimp_rectangle_tool_get_other_side() work on
	pointers to members instead of GObject property names.

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_set_other_side_coord)
	(gimp_rectangle_tool_get_other_side_coord): Use
	gimp_rectangle_tool_get_other_side() in the new way.

svn path=/trunk/; revision=24152
2007-11-13 21:30:45 +00:00
f211ed5b59 Fixed warnings about negative rectangle widths/heights when toggling
2007-11-13  Martin Nordholts  <martinn@svn.gnome.org>

	Fixed warnings about negative rectangle widths/heights when
	toggling 'Fixed center' while rubber banding a rectangle.

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_set_other_side_coord): Finnishing off with a
	call to gimp_rectangle_tool_check_function() as changing the
	coordinates of the opposite side might swap the orientation of the
	rectangle.

svn path=/trunk/; revision=24151
2007-11-13 21:15:57 +00:00
49e2670eb6 Removed gimp_rectangle_tool_get_press_coords() as it doesn't make sense
2007-11-11  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.[ch]: Removed
	gimp_rectangle_tool_get_press_coords() as it doesn't make sense
	for a rectangle tool interface to provide this functionality.
	Clients should take care of that themselves. Also adjusted
	internal code accordingly.

	* app/tools/gimprectangleselecttool.c: Remember the pressed
	coordinates on _button_press instead of asking GimpRectangleTool
	about it.

svn path=/trunk/; revision=24119
2007-11-11 14:00:48 +00:00
760edd173d Updated comments to reflect current behaviour.
2007-11-11  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_update_with_coord): Updated comments to
	reflect current behaviour.

svn path=/trunk/; revision=24116
2007-11-11 07:59:51 +00:00
e157ac06b1 Lessen code bloat by removing code that manages center-[xy] properies of
2007-11-11  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c: Lessen code bloat by removing
	code that manages center-[xy] properies of GimpRectangleOptions.
	Instead use x1, y1 and x2, y2 when working with the rectangle
	center.

	* app/tools/gimprectangleoptions.[ch]: Removed "center-x" and
	"center-y" properties.

svn path=/trunk/; revision=24115
2007-11-11 07:44:17 +00:00
2ce790a8a5 Don't use any dead areas in narrow-mode, and adjust constants a bit.
2007-11-06  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_update_handle_sizes): Don't use any dead
	areas in narrow-mode, and adjust constants a bit.

	* app/tools/gimpdrawtool.c (gimp_draw_tool_draw_corner): Adjusted
	to always draw side handles in narrow mode without dead areas.

svn path=/trunk/; revision=24077
2007-11-06 22:04:18 +00:00
bd1db1a1c8 Bail out early if the rectangle function is RECT_DEAD. This prevents
2007-11-05  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c (gimp_rectangle_tool_motion): Bail
	out early if the rectangle function is RECT_DEAD. This prevents
	flickering.

svn path=/trunk/; revision=24071
2007-11-05 20:24:11 +00:00
0e70d5f5a7 also don't show the shell highlight when a rectangle is being moved.
2007-11-05  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c: also don't show the shell
	highlight when a rectangle is being moved. Achieved through
	slightly modifying code logic and renaming variables and functions
	a bit.

svn path=/trunk/; revision=24070
2007-11-05 20:17:56 +00:00
a07756d894 Do not do shell darkening while GimpRectangleTool rectangles are being
2007-11-04  Martin Nordholts  <martinn@svn.gnome.org>

	Do not do shell darkening while GimpRectangleTool rectangles are
	being rubber-banded.

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_button_press)
	(gimp_rectangle_tool_button_release): Maintain a variable keeping
	track of if the rectangle is being rubber banded or not.
	(gimp_rectangle_tool_update_highlight): Do not set a shell
	highligt if the rectangle is being rubber-banded.
	(gimp_rectangle_tool_rubber_banding_func): New helper function.

svn path=/trunk/; revision=24059
2007-11-04 21:26:01 +00:00
587b350b36 Consistently use the name rect_tool' instead of rectangle' or
2007-11-04  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c: Consistently use the name
	`rect_tool' instead of `rectangle' or `rectangle_tool' for
	pointers to GimpRectangleTool.

svn path=/trunk/; revision=24054
2007-11-04 14:47:48 +00:00
c902d7bc74 Put GimpRectangleTool handles on the outside of the rectangle when it has
2007-11-04  Martin Nordholts  <martinn@svn.gnome.org>

	Put GimpRectangleTool handles on the outside of the rectangle when
	it has a small width or height. Some polishing left to do but the
	base functionality works nicely.

	* app/tools/gimpdrawtool.[ch] (gimp_draw_tool_draw_corner): Add a
	put_outside boolean parameter that if true draws the handles on
	the outside of the rectangle.

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_update_handle_sizes)
	(gimp_rectangle_tool_coord_on_handle)
	(gimp_rectangle_tool_draw): Take into account if the rectangle is
	in narrow-mode or not.

svn path=/trunk/; revision=24053
2007-11-04 14:10:56 +00:00
ba62d2b9d3 some general indentation, spacing and coding style convention paranoia
2007-10-31  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimprectangletool.c: some general indentation, spacing
	and coding style convention paranoia cleanups.

	(gimp_rectangle_tool_get_constraints): set all return values also
	when bailing out early to avoid valgrind warnings about
	uninitialized memory.


svn path=/trunk/; revision=24009
2007-10-31 10:36:03 +00:00
3057677e59 initialize variables to suppress a compiler warning.
2007-10-29  Sven Neumann  <sven@gimp.org>

	* app/tools/gimprectangletool.c (gimp_rectangle_tool_coord_on_handle):
	initialize variables to suppress a compiler warning.

svn path=/trunk/; revision=23983
2007-10-29 17:11:17 +00:00
7bf0fb645f Renamed handle_[wh] to corner_handle_[wh] since that are the appropriate
2007-10-26  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c (struct GimpRectangleToolPrivate):
	Renamed handle_[wh] to corner_handle_[wh] since that are the
	appropriate names.

svn path=/trunk/; revision=23960
2007-10-26 21:07:45 +00:00
5e2f39b645 Use new helper functions to decide if the cursor is on a handle (or
2007-10-26  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c (gimp_rectangle_tool_oper_update):
	Use new helper functions to decide if the cursor is on a
	handle (or outside of the rectangle + handle bounds) to ease the
	introduction of having handles on the outside of the pending
	rectangle.
	(gimp_rectangle_tool_coord_outside)
	(gimp_rectangle_tool_coord_on_handle): New helper functions.

svn path=/trunk/; revision=23959
2007-10-26 20:58:08 +00:00
c40518f33a Aligned static function prototypes.
2007-10-25  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c: Aligned static function
	prototypes.

svn path=/trunk/; revision=23951
2007-10-25 20:43:51 +00:00
3f1d817eb6 Tiny cosmetic change on the ClampedSide enum definition.
2007-10-25  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c: Tiny cosmetic change on the
	ClampedSide enum definition.

svn path=/trunk/; revision=23950
2007-10-25 20:28:23 +00:00
17eb0c6934 honor the "show-pixels" and "show-percent" properties of the unit param
2007-10-16  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimppropwidgets.c (gimp_prop_size_entry_new):
	honor the "show-pixels" and "show-percent" properties of the unit
	param spec.

	* app/tools/gimprectangletool.c (gimp_rectangle_tool_start): set
	the image's width/height on the size entries so the percent unit
	works correctly.


svn path=/trunk/; revision=23852
2007-10-16 15:39:56 +00:00
a16e2c9a9f added the x and y size entries to the GimpRectangleOptionPrivate struct.
2007-10-15  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimprectangleoptions.[ch]: added the x and y size
	entries to the GimpRectangleOptionPrivate struct.

	* app/tools/gimprectangletool.c (gimp_rectangle_tool_start): set
	the image's resolution on the x, y, width and height size entries.


svn path=/trunk/; revision=23829
2007-10-15 16:26:05 +00:00
1e71a30ce3 renamed properties x0 and y0 to x and y. Also reordered all property code
2007-10-14  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimprectangleoptions.[ch]: renamed properties x0 and
	y0 to x and y. Also reordered all property code to be in the same
	order and added some empty lines to group the properties.

	* app/tools/gimprectangletool.c: changed accordingly.


svn path=/trunk/; revision=23822
2007-10-14 19:48:56 +00:00
0a824ddba0 added parameter "gboolean property_is_pixel" which indicates that the
2007-10-14  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimppropwidgets.[ch] (gimp_prop_size_entry_new):
	added parameter "gboolean property_is_pixel" which indicates that
	the stored property value is always in pixels and not in the
	selected unit.

	* app/tools/gimptextoptions.c
	* app/widgets/gimpstrokeeditor.c: pass FALSE to keep the old
	behavior.

	* app/tools/gimprectangleoptions.c (gimp_rectangle_options_gui):
	added property "fixed-unit" which is used for all fixed values
	now. Perhaps we need separate units for width/height/size. Enable
	the unit menu on the "Width" and "Height" size entries of the
	"Fixed" section and configure them to store the value in
	pixels. This was the easy part, some other widgets still need unit
	support.

	* app/tools/gimprectangletool.c (gimp_rectangle_tool_start): set
	the image's resolution on the size entries changed above.


svn path=/trunk/; revision=23821
2007-10-14 18:51:58 +00:00
09516e5837 When Fixed: Size/Aspect ratio numbers are swapped and the Fixed:-rule is
2007-10-14  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_options_notify): When Fixed: Size/Aspect
	ratio numbers are swapped and the Fixed:-rule is active, swap
	width and height on any pending rectangle. Fixed bug #479999.

svn path=/trunk/; revision=23818
2007-10-14 08:26:18 +00:00
9305d2a1cc Use ROUND() not round().
2007-10-13  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_apply_aspect): Use ROUND() not round().

svn path=/trunk/; revision=23816
2007-10-13 12:14:46 +00:00
de694a5de3 Use round() when solving the aspect ratio equations as this produces more
2007-10-13  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_apply_aspect): Use round() when solving the
	aspect ratio equations as this produces more accurate results.

svn path=/trunk/; revision=23811
2007-10-13 10:17:50 +00:00
e51e8d9a05 app/core/gimpitem.c app/tools/gimprectangletool.c fixed ambiguous gtk-doc
2007-10-09  Sven Neumann  <sven@gimp.org>

	* app/core/gimpitem.c
	* app/tools/gimprectangletool.c
	* app/tools/tools-utils.c: fixed ambiguous gtk-doc comments.

svn path=/trunk/; revision=23779
2007-10-09 15:59:04 +00:00
7b65c24e35 Enforce constraints of any pending rectangle when setting a constraint.
2007-09-22  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_set_constraint): Enforce constraints of any
	pending rectangle when setting a constraint.

svn path=/trunk/; revision=23615
2007-09-22 18:20:29 +00:00
dd7fa05cdc Call gimp_rectangle_tool_rectangle_changed after 'Auto shrink selection',
2007-09-06  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c (gimp_rectangle_tool_auto_shrink):
	Call gimp_rectangle_tool_rectangle_changed after 'Auto shrink
	selection', and recalculate handle sizes. Fixes bug #474344.

svn path=/trunk/; revision=23471
2007-09-06 20:38:11 +00:00
63fbdc2600 Generalize the default Fixed: Aspect ratio option setting code so that it
2007-09-01  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimpcroptool.c
	(gimp_crop_tool_update_default_fixed_ratio_options):
	Generalize the default Fixed: Aspect ratio option setting code
	so that it can later be used for Fixed: Size as well, and move
	it to

	* app/tools/gimprectangletool.[ch]
	(gimp_rectangle_tool_pending_size_set)
	(gimp_rectangle_tool_constraint_size_set): and use these two new
	functions instead.

svn path=/trunk/; revision=23435
2007-09-01 20:01:38 +00:00
6b8026a5fd Don't adjust the rectangle shape if it is is merely being moved.
2007-08-21  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_update_with_coord): Don't adjust the
	rectangle shape if it is is merely being moved.

svn path=/trunk/; revision=23343
2007-08-21 19:52:00 +00:00
af13bcb9fc Don't make GIMP_RECTANGLE_CONSTRAIN_NONE into
2007-08-18  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c: Don't make
	GIMP_RECTANGLE_CONSTRAIN_NONE into GIMP_RECTANGLE_CONSTRAIN_IMAGE,
	and restructure the code a bit in the rectagle adjusting functions
	so that they can handle the _NONE constraint. The effect of this
	change is that rectangle tools no longer are constrained when
	using fixed-rules.

svn path=/trunk/; revision=23319
2007-08-18 09:44:18 +00:00
264d44588b Clear highlight in previously active shell when changing active shell.
2007-08-18  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_button_press): Clear highlight in previously
	active shell when changing active shell.

svn path=/trunk/; revision=23318
2007-08-18 06:59:02 +00:00
eb06a11ea9 Connect to the "image-changed" signal of GimpContext and update default
2007-08-17  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimpcroptool.c
	(gimp_crop_tool_constructor): Connect to the "image-changed"
	signal of GimpContext and update default aspect when image
	changes (fixes bug #417166), by using
	(gimp_crop_tool_update_default_fixed_ratio_options): which is a
	new function that does this. This function is called whenever it
	is time to update defualts.

	* app/tools/gimprectangletool.[ch]: Made
	gimp_rectangle_tool_get_constraint part of the rectangle tool API.

svn path=/trunk/; revision=23312
2007-08-17 18:29:09 +00:00
4356bb7aeb Update handle sizes based on the shell-visible part of the rectangle.
2007-08-11  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_update_handle_sizes): Update handle sizes
	based on the shell-visible part of the rectangle.
	(gimp_rectangle_tool_start, gimp_rectangle_tool_halt):
	Connect/disconnect to the "scrolled" signal of the shell and
	update handle sizes.

svn path=/trunk/; revision=23204
2007-08-11 09:42:16 +00:00
8f69046e11 Halt the tool on cancel if a rectangle has not previously been created.
2007-08-11  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_button_release): Halt the tool on cancel if a
	rectangle has not previously been created.

svn path=/trunk/; revision=23202
2007-08-11 08:42:59 +00:00
49a9bdc6d1 Renamed from gimp_rectangle_tool_set_highlight
2007-08-11  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_update_highlight): Renamed from
	gimp_rectangle_tool_set_highlight
	(gimp_rectangle_tool_button_release): Add call to
	gimp_rectangle_tool_update_highlight to keep highlight in sync
	when a crop rectangle is cancelled.

svn path=/trunk/; revision=23201
2007-08-11 08:27:00 +00:00
fd5363cd87 Set default 'Fixed: Aspect ratio' values to the size of the pending crop
2007-08-10  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimpcroptool.c (gimp_crop_tool_button_release): Set
	default 'Fixed: Aspect ratio' values to the size of the pending
	crop rectangle. Fixes bug #355545.

	* app/tools/gimprectangletool.[ch]
	(gimp_rectangle_tool_get_rectangle_size): New helper function.

svn path=/trunk/; revision=23194
2007-08-10 16:41:30 +00:00
e87d0a123a Use separate desired-fixed-size-width/height properties for Fixed: Size
2007-08-08  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangleoptions.[ch]: Use separate
	desired-fixed-size-width/height properties for Fixed: Size instead
	of sharing properties with Fixed: Width/Height.

	* app/tools/gimprectangletool.c: Use the two new properties for
	Fixed: Size.

svn path=/trunk/; revision=23140
2007-08-08 06:10:00 +00:00
9a350d71e3 When a new rectangle is created and Fixed: Size is used, set rectangle
2007-08-05  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c (gimp_rectangle_tool_motion): When
	a new rectangle is created and Fixed: Size is used, set rectangle
	function to RECT_MOVING.

svn path=/trunk/; revision=23117
2007-08-05 10:52:38 +00:00
f33ef1024c Update tool options after shrinking.
2007-08-05  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c (gimp_rectangle_tool_auto_shrink):
	Update tool options after shrinking.

svn path=/trunk/; revision=23116
2007-08-05 10:28:19 +00:00