Commit Graph

2338 Commits

Author SHA1 Message Date
c180bc4590 don't have the tool release ALT when the user releases CONTROL. Fixes
2007-07-25  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimptool.c (gimp_tool_set_active_modifier_state):
	don't have the tool release ALT when the user releases CONTROL.
	Fixes another stuck modifier instance and other modifier
	weirdness.


svn path=/trunk/; revision=22992
2007-07-25 00:39:01 +00:00
e2b9c20b43 fixed a gtk-doc comment.
2007-07-20  Sven Neumann  <sven@gimp.org>

	* app/tools/gimprectangletool.c: fixed a gtk-doc comment.


svn path=/trunk/; revision=22966
2007-07-20 13:18:43 +00:00
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
f6c626fba3 chain up.
2007-07-19  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcolortool.c (gimp_color_tool_draw): chain up.

svn path=/trunk/; revision=22957
2007-07-19 09:09:26 +00:00
9409179aa6 free the context list.
2007-07-17  Sven Neumann  <sven@gimp.org>

	* app/core/gimp.c (gimp_finalize): free the context list.

	* app/tools/gimprectangleoptions.c (gimp_rectangle_options_gui):
	removed unused vbox.

svn path=/trunk/; revision=22944
2007-07-17 11:15:15 +00:00
f3c451becd use the tool-info identifier as the name of the tool-options object.
2007-07-17  Sven Neumann  <sven@gimp.org>

	* app/core/gimptoolinfo.c (gimp_tool_info_new): use the tool-info
	identifier as the name of the tool-options object.

	* app/paint/gimppaintoptions.c (gimp_paint_options_new): use the
	paint-info identifier as the name of the paint-options object.

	* app/paint/gimp-paint.c (gimp_paint_register): added parameter check.

	* app/tools/gimp-tools.c (gimp_tools_init): formatting.

svn path=/trunk/; revision=22941
2007-07-17 10:04:06 +00:00
6b2187c1bd Added members to keep track of for what shell scale the handle sizes were
2007-07-15  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c (struct
	_GimpRectangleToolPrivate): Added members to keep track of for
	what shell scale the handle sizes were calculated. This is
	necessary so that in
	(gimp_rectangle_tool_control): we only update the handle sizes
	when the zoom level has changed. We must test this, because the
	tool is also paused/resumed when highlightning is on, and we don't
	want to update handle sizes just because highlightning happends to
	be on.
	(gimp_rectangle_tool_scale_has_changed): Added helper function.

svn path=/trunk/; revision=22933
2007-07-15 09:43:49 +00:00
3a5d96d4f9 Check agains tool->display, this check was lost when this function was
2007-07-14  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_set_highlight): Check agains tool->display,
	this check was lost when this function was moved out of
	gimp_rectangle_tool_configure.

svn path=/trunk/; revision=22931
2007-07-14 20:15:08 +00:00
a8237b23b3 Also update rectangle handle sizes when canvas zoom is changed. (Forgot
2007-07-14  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c (gimp_rectangle_tool_control):
	Also update rectangle handle sizes when canvas zoom is
	changed. (Forgot that in previous commit.)

svn path=/trunk/; revision=22930
2007-07-14 16:29:04 +00:00
5b3f4ea658 Made the rectangle tool handles not resize during rectangle manipulation,
2007-07-14  Martin Nordholts  <martinn@svn.gnome.org>

	Made the rectangle tool handles not resize during rectangle
	manipulation, as outlined in the spec, by separating highlight
	updating and handle size updating calls.

	* app/tools/gimprectangletool.c (gimp_rectangle_tool_configure):
	Renamed to
	(gimp_rectangle_tool_update_handle_sizes): and moved
	gimp_rectangle_tool_set_highlight out of it. These two are now
	called independantly.

svn path=/trunk/; revision=22929
2007-07-14 16:03:13 +00:00
82430afc70 Fixed crash when creating a rectangle with constraints outside of canvas
2007-07-14  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c (gimp_rectangle_tool_clamp_width)
	(gimp_rectangle_tool_clamp_height): Fixed crash when creating a
	rectangle with constraints outside of canvas bounds.

svn path=/trunk/; revision=22928
2007-07-14 10:01:46 +00:00
72ec24da5f Don't execute selection if a dead area is clicked.
2007-07-13  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_button_release): Don't execute selection if a
	dead area is clicked.

svn path=/trunk/; revision=22927
2007-07-13 20:49:32 +00:00
eed8dc9b68 Update handle sizes and highlight area also when Ctrl is released.
2007-07-13  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_active_modifier_key): Update handle sizes and
	highlight area also when Ctrl is released.

svn path=/trunk/; revision=22926
2007-07-13 19:07:02 +00:00
838d61670e Removed bitfieldized values from the SideToResize enum, they are
2007-07-11  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c: Removed bitfieldized values from
	the SideToResize enum, they are irrelevant. Also renamed
	HANDLE_SIZE to MAX_HANDLE_SIZE.

svn path=/trunk/; revision=22909
2007-07-11 05:09:50 +00:00
b62c673dcf Removed declaration of gimp_rectangle_tool_update_and_redraw;
forgot that in previous patch.

svn path=/trunk/; revision=22904
2007-07-08 22:03:52 +00:00
3ae75615d9 Completely rewrote logic in gimp_rectangle_tool_motion, in effect also
2007-07-08  Martin Nordholts  <martinn@svn.gnome.org>

	Completely rewrote logic in gimp_rectangle_tool_motion, in effect
	also fixing bug #353936 and bug #398188. The general strategy now
	is to have specialized functions doing one thing, and one thing
	only.

	The patch also makes adjusting the rectangle through the keyboard
	and through the rectangle tool options follow tool options.

	* app/tools/gimprectangletool.c (gimp_rectangle_tool_motion):
	Completely refactored.

	(gimp_rectangle_tool_active_modifier_key):
	(gimp_rectangle_tool_update_options): Submit to tool options.

	(gimp_rectangle_tool_apply_coord)
	(gimp_rectangle_tool_clamp)
	(gimp_rectangle_tool_clamp_width)
	(gimp_rectangle_tool_clamp_height)
	(gimp_rectangle_tool_keep_inside)
	(gimp_rectangle_tool_keep_inside_horizontally)
	(gimp_rectangle_tool_keep_inside_vertically)
	(gimp_rectangle_tool_apply_fixed_width)
	(gimp_rectangle_tool_apply_fixed_height)
	(gimp_rectangle_tool_apply_aspect)
	(gimp_rectangle_tool_update_with_coord)
	(gimp_rectangle_tool_get_constraints)
	(gimp_rectangle_tool_handle_general_clamping): The new specialized
	functions.

svn path=/trunk/; revision=22903
2007-07-08 21:57:22 +00:00
d8803f29b6 Block gimp_rectangle_tool_options_notify when changing fixed-aspect
2007-07-08  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_active_modifier_key): Block
	gimp_rectangle_tool_options_notify when changing fixed-aspect
	through the shift key. Fixes bug #417168.


svn path=/trunk/; revision=22896
2007-07-08 13:38:58 +00:00
a2c401b0f6 changed the highlighting of the side handles to follow changes in the
2007-07-05  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpdrawtool.c (gimp_draw_tool_draw_corner): changed
	the highlighting of the side handles to follow changes in the
	specification.

	* app/tools/gimprectangletool.c (gimp_rectangle_tool_draw): cosmetics.

svn path=/trunk/; revision=22867
2007-07-05 11:49:00 +00:00
25fca1a6e2 Started taking GimpRectangleTool towards the new specification. The side
2007-06-30  Martin Nordholts  <martinn@svn.gnome.org>

	Started taking GimpRectangleTool towards the new specification.
	The side handles now have the same width and height as the
	corresponding corner handles, and the size of the side handles do
	not span across the whole rectangle. Side handles also have a
	limited mimimum size, just as corner handles.

	* app/tools/gimprectangletool.c (gimp_rectangle_tool_oper_update,
	gimp_rectangle_tool_draw, gimp_rectangle_tool_configure,
	gimp_rectangle_tool_get_anchor): Changed accordingly.

	* app/tools/gimpdrawtool.c (gimp_draw_tool_draw_corner): Changed
	accordingly.

svn path=/trunk/; revision=22856
2007-06-30 18:13:41 +00:00
eeb6d20d8b Made GimpRectangleTools remember where the "other side" is when
2007-06-29  Martin Nordholts  <martinn@svn.gnome.org>

	Made GimpRectangleTools remember where the "other side" is when
	fixed-center is turned on, and reset the "other side" to that position
	when fixed-center is turned off again. Fixes bug 398183.

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_button_press): Remember "other side".
	(gimp_rectangle_tool_active_modifier_key): When fixed-center is turned
	off, reset "other side".
	(gimp_rectangle_tool_get_other_side)
	(gimp_rectangle_tool_get_other_side_coord)
	(gimp_rectangle_tool_set_other_side_coord): New functions.

svn path=/trunk/; revision=22854
2007-06-29 16:37:50 +00:00
4625597ab8 update the image, not the drawable so we avoid constantly invalidating the
2007-06-27  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimagemap.c (gimp_image_map_clear)
	(gimp_image_map_do): update the image, not the drawable so we
	avoid constantly invalidating the drawable preview.

	* app/tools/gimpimagemaptool.c (gimp_image_map_tool_response):
	invalidate the drawable preview here.

	* app/paint/gimppaintcore.c (gimp_paint_core_paste)
	(gimp_paint_core_replace): clean up drawable offset handling code.


svn path=/trunk/; revision=22843
2007-06-26 22:41:06 +00:00
8c8d3786d9 Removed useless image flushing which caused the image preview to be
2007-06-27  Michael Natterer  <mitch@gimp.org>

	Removed useless image flushing which caused the image preview to
	be updated needlessly:

	* app/core/gimpimagemap.c (gimp_image_map_do): don't flush the
	image when the idle rendering is completed, emit our own "flush"
	signal instead just as for the incremental display updates.

	* app/tools/gimpimagemaptool.c (gimp_image_map_tool_notify_preview):
	when switching off the preview don't flush the image, only flush
	projection and display.


svn path=/trunk/; revision=22842
2007-06-26 22:14:35 +00:00
d2cb639b5e unset the active color picker when the dialog is unmapped. Fixes bug
2007-06-26  Sven Neumann  <sven@gimp.org>

	* app/tools/gimplevelstool.c: unset the active color picker when
	the dialog is unmapped. Fixes bug #451272.

	* app/tools/gimpimagemaptool.c: formatting.

svn path=/trunk/; revision=22838
2007-06-26 16:02:14 +00:00
09578ea070 removed extra check for gthread and fold it into the GLIB and GTK checks.
2007-06-25  Sven Neumann  <sven@gimp.org>

	* configure.in: removed extra check for gthread and fold it into
	the GLIB and GTK checks.

	* */Makefile.am: changed accordingly.

	* app/main.c (main): always call g_thread_init().

svn path=/trunk/; revision=22832
2007-06-25 12:41:59 +00:00
5544877753 initialize the destination pixel region properly. Fixes bug #450291.
2007-06-25  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpiscissorstool.c (gradmap_tile_validate): 
initialize
	the destination pixel region properly. Fixes bug #450291.


svn path=/trunk/; revision=22830
2007-06-25 07:32:56 +00:00
bc159e1c93 app/tools/gimpiscissorstool.c (gradmap_tile_validate) (find_max_gradient)
2007-06-25  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpiscissorstool.c (gradmap_tile_validate)
	(find_max_gradient) minor code cleanup.


svn path=/trunk/; revision=22829
2007-06-25 07:04:42 +00:00
8755f459ac minor code cleanup.
2007-06-25  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpiscissorstool.c (gradmap_tile_validate): minor
	code cleanup.


svn path=/trunk/; revision=22828
2007-06-25 06:57:31 +00:00
610feafb3e app/base/base-types.h app/base/tile-manager.[ch] removed accessors for
2007-06-21  Sven Neumann  <sven@gimp.org>

	* app/base/base-types.h
	* app/base/tile-manager.[ch]
	* app/base/tile-manager-private.h: removed accessors for user_data.
	Instead pass the user_data when setting the validation proc.

	* app/base/tile-pyramid.c
	* app/core/gimpchannel.c
	* app/core/gimpprojection.c
	* app/core/gimpselection.c
	* app/tools/gimpiscissorstool.c: changed accordingly.

svn path=/trunk/; revision=22820
2007-06-21 14:36:58 +00:00
263567109d introduced local variables in an attempt to make the code a little more
2007-06-21  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcurvestool.c: introduced local variables in an
	attempt to make the code a little more readable.

svn path=/trunk/; revision=22814
2007-06-21 09:27:55 +00:00
2025f54f69 set proper step and page increments in the scale entry for the corner
2007-06-19  Sven Neumann  <sven@gimp.org>

	* app/tools/gimprectangleselectoptions.c
	(gimp_rect_select_options_gui): set proper step and page
	increments in the scale entry for the corner radius.


svn path=/trunk/; revision=22801
2007-06-19 06:22:59 +00:00
50e8d93b54 free live-wire Curve segment using g_slice_free().
2007-06-18  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpiscissorstool.c (gimp_iscissors_tool_draw): free
	live-wire Curve segment using g_slice_free().


svn path=/trunk/; revision=22799
2007-06-18 19:58:06 +00:00
e23f585f07 removed unused variable.
2007-06-11  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpscaletool.c: removed unused variable.

svn path=/trunk/; revision=22754
2007-06-11 16:07:59 +00:00
f322854007 app/text/Makefile.am app/core/Makefile.am app/tools/Makefile.am
2007-06-07  Sven Neumann  <sven@gimp.org>

	* app/text/Makefile.am
	* app/core/Makefile.am
	* app/tools/Makefile.am
	* app/display/Makefile.am
	* app/widgets/Makefile.am
	* app/base/Makefile.am
	* app/paint/Makefile.am
	* app/plug-in/Makefile.am
	* libgimp/Makefile.am
	* libgimpthumb/Makefile.am
	* tools/pdbgen/Makefile.am
	* libgimpwidgets/Makefile.am: applied the remaining parts of the
	patch from Daniel Richard G. to fix out-of-source-tree builds
	(bug #444960).

svn path=/trunk/; revision=22735
2007-06-07 13:19:44 +00:00
de848de405 remove compat property "threshold" because the parser now silently skips
2007-06-04  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpmagnifyoptions.c: remove compat property
	"threshold" because the parser now silently skips unknown
	properties.


svn path=/trunk/; revision=22700
2007-06-04 10:56:17 +00:00
bbe3a11840 commented out debug output.
2007-06-01  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpperspectiveclonetool.c: commented out debug 
output.


svn path=/trunk/; revision=22692
2007-06-01 15:47:13 +00:00
ade4dd09d5 formatting
svn path=/trunk/; revision=22660
2007-05-30 11:56:52 +00:00
f67306c1d3 Added missing include.
2007-05-30  Mukund Sivaraman  <muks@mukund.org>

        * app/tools/gimpdrawtool.c: Added missing include.

        * app/tools/gimpbycolorselecttool.c: Removed unused variable.

        * app/plug-in/gimpenvirontable.c: Added cast for callback function.

        * plug-ins/script-fu/tinyscheme/scheme.c: Correctly cast pointer to
        an long integer type.


svn path=/trunk/; revision=22659
2007-05-30 11:49:14 +00:00
2027fdf9ab use GSlice to allocate the transform matrix.
2007-05-29  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpdrawtool.c: use GSlice to allocate the transform
	matrix.

svn path=/trunk/; revision=22652
2007-05-29 09:44:31 +00:00
ac2f30c485 use a GQueue to store the points.
2007-05-23  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpiscissorstool.[ch]: use a GQueue to store the points.

svn path=/trunk/; revision=22597
2007-05-23 14:56:21 +00:00
ab71eb9f6a app/paint/gimppaintoptions.c app/tools/gimpcolorbalancetool.c
2007-05-23  Sven Neumann  <sven@gimp.org>

	* app/paint/gimppaintoptions.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcolorizetool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimpforegroundselecttool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimpiscissorstool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimprectangleoptions.c
	* app/tools/gimprectangletool.c
	* app/tools/gimpthresholdtool.c
	* app/tools/tool_manager.c: allocate structs using GSlice.

svn path=/trunk/; revision=22595
2007-05-23 13:49:06 +00:00
395dc8aa13 remove "threshold" from the options struct and added compat code in
2007-05-22  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpmagnifyoptions.[ch]: remove "threshold" from
	the options struct and added compat code in get_property().


svn path=/trunk/; revision=22579
2007-05-22 17:25:35 +00:00
e5070a2486 add a local GimpDisplayConfig variable to improve readability.
2007-05-16  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpbrushtool.c (gimp_brush_tool_constructor): add a
	local GimpDisplayConfig variable to improve readability.


svn path=/trunk/; revision=22514
2007-05-16 18:47:47 +00:00
a4eafbad64 moved brush drawing code to the new function gimp_brush_tool_draw_brush().
2007-05-07  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpbrushtool.[ch] (gimp_brush_tool_draw): moved
	brush drawing code to the new function gimp_brush_tool_draw_brush().

	* app/tools/gimpsourcetool.c: (gimp_source_tool_draw): draw the
	brush outline at the source position (bug #435545).


svn path=/trunk/; revision=22450
2007-05-07 10:19:04 +00:00
0fef82fb16 app/base/gimplut.[ch] app/tools/gimpcurvestool.c reverted the changes done
2007-05-05  Sven Neumann  <sven@gimp.org>

	* app/base/gimplut.[ch]
	* app/tools/gimpcurvestool.c
	* app/tools/gimplevelstool.c: reverted the changes done for bug
	#331782. See the bug report for an explanation.


svn path=/trunk/; revision=22421
2007-05-05 14:29:37 +00:00
a89d0a1cc8 app/base/gimplut.c app/base/gimplut.h app/tools/gimpcurvestool.c Fixed the
2007-05-05  Mukund Sivaraman  <muks@mukund.org>

        * app/base/gimplut.c
        * app/base/gimplut.h
        * app/tools/gimpcurvestool.c
        * app/tools/gimplevelstool.c: Fixed the value channel color
        correction in the curves and levels tools to only modify the
        value channel and not the hues. Fixes bug #331782.


svn path=/trunk/; revision=22418
2007-05-05 11:51:03 +00:00
f9d9ecfd7a fixed off-by-one (too large) drawing of boundaries by copying the resp.
2007-05-05  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpdrawtool.c (gimp_draw_tool_draw_boundary): fixed
	off-by-one (too large) drawing of boundaries by copying the resp.
	code and its obscure comment from gimpdisplayshell-selection.c
	Fixes bug #416432.


svn path=/trunk/; revision=22417
2007-05-05 04:33:38 +00:00
c70b55a403 removed get_color_at() from the GimpPickable interface. Implement the same
2007-05-02  Sven Neumann  <sven@gimp.org>

	* app/core/gimppickable.[ch]: removed get_color_at() from the
	GimpPickable interface. Implement the same functionality using
	get_pixel_at() but with a saner API.

	* app/core/gimpdrawable.c
	* app/core/gimpprojection.c
	* app/core/gimpimagemap.c: removed get_color_at() implementations.

	* app/tools/gimpbycolorselecttool.c: adapt to API change of
	gimp_pickable_get_color_at().

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


svn path=/trunk/; revision=22383
2007-05-02 17:15:03 +00:00
6a9db536e9 if we are in adjust mode, skip the GimpBrushClass when chaining up. Fixes
2007-05-02  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpperspectiveclonetool.c
	(gimp_perspective_clone_tool_cursor_update): if we are in adjust
	mode, skip the GimpBrushClass when chaining up. Fixes bug #354933.

svn path=/trunk/; revision=22379
2007-05-02 13:24:14 +00:00
8776dc7f38 When adjusting a rectangle it feels unintuitive that the center of the
2007-05-02  Martin Nordholts  <martinn@svn.gnome.org>

	When adjusting a rectangle it feels unintuitive that the center of
	the rectangle when Ctrl is used lands on the corner that was used
	to resize the rectangle. This commit changes the center of the
	rectangle when Ctrl is used on a already-created rectangle to the
	center of the rectangle when the user starts adjusting the size.

	* app/tools/gimprectangletool.c (struct
	_GimpRectangleToolPrivate): Added center_[xy]_on_fixed_center
	members that keeps track on where the center of the rectangle
	should be when the Ctrl modifier is used.

	* app/tools/gimprectangletool.c: Added convenience function
	gimp_rectangle_tool_get_fixed_center_coords.

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_button_press): Sets the
	center_[xy]_on_fixed_center members depending on whether the button
	press modifies an existing rectangle or creates a new one.

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_active_modifier_key): Adjusted to accomodate to
	above mentioned changes.


svn path=/trunk/; revision=22374
2007-05-02 09:14:35 +00:00
e3813131b7 also use the middle mouse button for panning.
2007-04-25  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpscrolledpreview.c: also use the middle mouse
	button for panning.

	* plug-ins/common/nova.c: override the default mouse handling of
	the GimpScrolledPreview and allow to reposition the center using
	the left mouse button. Fixes bug #364432.

	* app/tools/gimprectangletool.c: formatting.

svn path=/trunk/; revision=22319
2007-04-25 10:10:43 +00:00