Commit graph

563 commits

Author SHA1 Message Date
Sven Neumann 1954ee81fe use the offsets module TILE_WIDTH and TILE_HEIGHT instead of doing the
2007-09-12  Sven Neumann  <sven@gimp.org>

	* app/base/tile.c (tile_data_pointer): use the offsets module
	TILE_WIDTH and TILE_HEIGHT instead of doing the module operation
	in each and every caller.

	* app/base/boundary.c
	* app/base/pixel-region.c
	* app/base/tile-manager.c
	* app/core/gimpchannel.c
	* app/core/gimpdrawable-blend.c
	* app/core/gimpdrawable.c
	* app/core/gimpimage-contiguous-region.c
	* app/core/gimplayer.c
	* app/display/gimpdisplayshell-render.c
	* app/paint-funcs/paint-funcs.c
	* app/paint/gimppaintcore.c
	* app/tools/gimpiscissorstool.c: changed accordingly.


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

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

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

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

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

svn path=/trunk/; revision=23494
2007-09-10 15:29:48 +00:00
Sven Neumann f29621ae1f added a sanity check.
2007-07-26  Sven Neumann  <sven@gimp.org>

	* app/paint/gimpbrushcore.c (gimp_brush_core_interpolate): added a
	sanity check.

svn path=/trunk/; revision=23011
2007-07-26 10:20:54 +00:00
Sven Neumann 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
Sven Neumann 62dbf9e330 applied patch from Jens Persson that adds a LUT to apply the jitter in
2007-07-04  Sven Neumann  <sven@gimp.org>

	* app/paint/gimpbrushcore.[ch]: applied patch from Jens Persson
	that adds a LUT to apply the jitter in polar coordinates (bug 
#434532).


svn path=/trunk/; revision=22859
2007-07-04 06:30:34 +00:00
Michael Natterer 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
Sven Neumann 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
Michael Natterer 1a13f51e02 Part one of fix for bug #449141 (fixes the projection but still leaves
2007-06-21  Michael Natterer  <mitch@gimp.org>

	Part one of fix for bug #449141 (fixes the projection but still
	leaves some image previews unupdated).

	* app/core/gimpimage.c (lots of functions)
	* app/paint/gimppaintcore.c (gimp_paint_core_finish)
	* app/file/file-open.c (file_open_sanitize_image): removed calls
	to gimp_viewable_invalidate_preview(image).

	* app/file/file-open.c (file_open_sanitize_image): update and
	flush the entire image instead. Load plug-ins are not required to
	call gimp_drawable_update() or anything else to make sure the
	projection is up-to-date.

	* app/core/gimpimage.c (gimp_image_real_flush): inavlidate the
	image preview here because we now create it from the projection.
	(this is still not the entirely correct place though).


svn path=/trunk/; revision=22815
2007-06-21 10:09:27 +00:00
Sven Neumann 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
Sven Neumann 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
Michael Natterer 07e1c088ee convert the source region to the dest region's type, not the other way
2007-05-15  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimpheal.c (gimp_heal_motion): convert the source
	region to the dest region's type, not the other way around
	(using the wrong if() condition when doing so). Fixes bug #390938.


svn path=/trunk/; revision=22496
2007-05-15 18:34:25 +00:00
Sven Neumann 45f04cc7b1 instead of just copying the border pixels, convolute the full region and
2007-05-05  Sven Neumann  <sven@gimp.org>

	* app/paint-funcs/paint-funcs.c (convolve_region): instead of 
just
	copying the border pixels, convolute the full region and extend
	the borders.

	* app/paint/gimpconvolve.[ch]: removed broken code that used to
	deal with the image borders. Fixes bug #434279. Also reduced the
	matrix sizes to 3x3 as only the inner 3x3 values were nonzero.


svn path=/trunk/; revision=22424
2007-05-05 19:18:25 +00:00
Sven Neumann 2bcd3afe80 app/paint/gimpsmudge.c (gimp_smudge_start)
2007-05-02  Sven Neumann  <sven@gimp.org>

	* app/paint/gimpsmudge.c (gimp_smudge_start)

	* app/paint/gimpconvolve.c (gimp_convolve_motion): use
	gimp_pickable_get_pixel_at() to get the color to use with
	color_region(). Fixes Smudge and Convolve tools on grayscale images.

svn path=/trunk/; revision=22376
2007-05-02 12:03:19 +00:00
Michael Natterer f2acde4c60 app/base/base-types.h remove redundant and inconsistently used MaskBuf
2007-04-13  Michael Natterer  <mitch@gimp.org>

	* app/base/base-types.h
	* app/base/temp-buf.[ch]: remove redundant and inconsistently used
	MaskBuf type and API.

	* app/core/gimpbrush-scale.c
	* app/paint/gimpbrushcore.[ch]: use TempBuf and its API instead.
	This also optimizes away a useless memset() on brush scaling,
	we completely fill each of the created buffers anyway.


svn path=/trunk/; revision=22249
2007-04-13 14:04:37 +00:00
Michael Natterer 7cb18110b1 app/paint/gimpperspectiveclone.c #include "libgimpmath/gimpmath.h"
2007-04-09  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimpperspectiveclone.c
	* app/paint/gimppaintoptions.c: #include "libgimpmath/gimpmath.h"


svn path=/trunk/; revision=22225
2007-04-09 11:54:44 +00:00
Michael Natterer b2ef4856b0 set core->saved_proj_tiles to NULL after unrefing them.
2007-03-31  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimppaintcore.c (gimp_paint_core_start): set
	core->saved_proj_tiles to NULL after unrefing them.

	* app/paint/gimppaintcore.h: whitespace fixes.


svn path=/trunk/; revision=22210
2007-03-31 16:43:41 +00:00
Sven Neumann f51e694972 compare square of errors instead of calculating the square root. Rewritten
2007-03-30  Sven Neumann  <sven@gimp.org>

	* app/paint/gimpheal.c (gimp_heal_laplace_iteration)
	(gimp_heal_laplace_loop): compare square of errors instead of
	calculating the square root. Rewritten loop to avoid code duplication.

svn path=/trunk/; revision=22200
2007-03-30 09:53:43 +00:00
Michael Natterer c0011477fb cosmetic cleanup.
2007-03-18  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimpbrushcore.c: cosmetic cleanup.


svn path=/trunk/; revision=22144
2007-03-18 20:47:12 +00:00
Michael Natterer aa21da9799 remove parameter "gdouble scale" and use core->scale.
2007-03-18  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimpbrushcore.c
	(gimp_brush_core_scale_mask)
	(gimp_brush_core_scale_pixmap)
	(gimp_brush_core_get_brush_mask): remove parameter
	"gdouble scale" and use core->scale.

	(gimp_brush_core_paste_canvas)
	(gimp_brush_core_replace_canvas)
	(gimp_brush_core_get_brush_mask)
	(gimp_brush_core_color_area_with_pixmap): don't pass core->scale.
	As below, passing anything else makes no sense.

	(gimp_brush_core_interpolate): cleanup.


svn path=/trunk/; revision=22143
2007-03-18 20:13:55 +00:00
Michael Natterer e968a7ff4f removed parameters "GimpImage *dest" (because it's always the passed
2007-03-18  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimpbrushcore.[ch]
	(gimp_brush_core_color_area_with_pixmap): removed parameters
	"GimpImage *dest" (because it's always the passed drawable's
	image) and "gdouble scale" (because passing anything but
	brush_core->scale makes no sense whatsoever).

	* app/paint/gimppaintbrush.c (_gimp_paintbrush_motion): changed
	accordingly.


svn path=/trunk/; revision=22142
2007-03-18 19:58:57 +00:00
Michael Natterer 83981ef404 simplified brush scale calculation by making sure that brush_core->scale
2007-03-18  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimpbrushcore.c: simplified brush scale calculation by
	making sure that brush_core->scale always contains a value that's
	suited as input for gimp_brush_scale_mask/pixmap() (bug #419290).

	(gimp_brush_core_calc_brush_size): removed this function. All
	places can now call gimp_brush_scale_size() directly with
	core->scale as parameter.

	(gimp_brush_core_calc_brush_scale): new function which returns
	a linear scale factor which contains both the area-based pressure
	scale factor and the linear paint options scale factor.

	(gimp_brush_core_start)
	(gimp_brush_core_get_paint_area): use the new function instead
	of doing these calculations manually.

	(gimp_brush_core_interpolate): remove call to
	gimp_brush_core_scale_brush_size() and use core->scale directly.

	(gimp_brush_core_get_paint_area)
	(gimp_brush_core_scale_mask)
	(gimp_brush_core_scale_pixmap): use gimp_brush_scale_size()
	instead of the removed gimp_brush_core_scale_brush_size().

	(gimp_brush_core_create_bound_segs): use only
	paint_options->brush_scale here since the canvas brush preview
	always has to asume full pressure.

	* app/core/gimpbrush.c (gimp_brush_scale_size): special case
	scale == 1.0 and return the mask's width/height without calling
	the virtual function.


svn path=/trunk/; revision=22141
2007-03-18 19:48:36 +00:00
Sven Neumann 642fd34b50 limit brush scale to [0.01, 10.0]
2007-03-14  Sven Neumann  <sven@gimp.org>

	* app/paint/gimppaintoptions.c: limit brush scale to [0.01, 
10.0]


svn path=/trunk/; revision=22115
2007-03-14 08:07:21 +00:00
Martin Nordholts e3d9198cc4 Made brushes upscalable by using scale_region. Downscaling still uses
2007-03-14  Martin Nordholts  <martinn@svn.gnome.org>

	Made brushes upscalable by using scale_region. Downscaling still
	uses functions in app/base/brush-scale.c (because of better
	performance). Parametric brushes of course recalculates masks
	instead of using bitmap scaling. Fixes bug #65030.

	* app/core/gimpbrush.[ch]: Added a private scale_buf method which
	uses scale_region (with GIMP_INTERPOLATION_LINEAR) to scale its
	masks and pixmaps. Also added public virtual method scale_size to
	GimpBrush (overridden by GimpBrushGenerated) which calculates the
	buffer sizes for a given brush scaled with a given scale.

	* app/core/gimpbrushgenerated.c: Implemented the new scale_size
	method inherited from GimpBrush, and modified
	gimp_brush_generated_calc to use this helper function.

	* app/tools/gimppaintoptions-gui.c (gimp_paint_options_gui): Made
	the brush Scale-slider logarithmic.

	* app/paint/gimppaintoptions.c (gimp_paint_options_class_init):
	Changed Scale scale to [0.0, 10.0].

	* app/paint/gimpbrushcore.c:
	(gimp_brush_core_calc_brush_size): Refactored 'get brush size' code
	to where it belongs, in GimpBrush-classes, and allowed scales
	larger than 1.0.


svn path=/trunk/; revision=22113
2007-03-14 00:18:01 +00:00
Michael Natterer 4648f542cf app/core/gimpbrush.[ch] app/core/gimpbrushgenerated.c
2007-03-12  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpbrush.[ch]
	* app/core/gimpbrushgenerated.c
	* app/tools/gimppaintoptions-gui.c
	* app/base/brush-scale.[ch]
	* app/base/temp-buf.[ch]
	* app/paint/gimppaintoptions.c
	* app/paint/gimpbrushcore.c: revert last commit. The patch needs
	more review and it's easier to start from quare one than have
	patches on top of patches.


svn path=/trunk/; revision=22101
2007-03-12 09:33:57 +00:00
Michael Schumacher a4e81c3a6c Made brushes scalable (both up and down) by using existing scaling
2007-03-11  Michael Schumacher  <schumaml@cvs.gnome.org>

	Made brushes scalable (both up and down) by using existing
	scaling routines, and also refactored some brush-code. Patch by
	Martin Nordholts. Fixes bug #65030.

	* app/paint/gimpbrushcore.c:
	(gimp_brush_core_calc_brush_length_scale) Refactored 'get brush
	size' code to where it belongs, in GimpBrush-classes, and renamed
	gimp_brush_core_calc_brush_size to
	gimp_brush_core_calc_brush_length_scale.

	* app/paint/gimppaintoptions.c (gimp_paint_options_class_init):
	Changed Scale scale to [0.0, 100.0].

	* app/base/temp-buf.[ch] (mask_buf_new): Change signature to also
	take a bpp parameter.

	* app/base/brush-scale.[ch]: Changed brush_scale_(mask|pixmap) to
	the new brush_scale_buf, which uses existing scaling routines
	(scale_region) instead of dedicated down-scaling only routines.

	* app/tools/gimppaintoptions-gui.c (gimp_paint_options_gui): Made
	the brush Scale-slider logarithmic.

	* app/core/gimpbrushgenerated.c: Implemented the new
	get_scaled_size method inherited from GimpBrush, and modified
	gimp_brush_generated_calc to use this helper function.

	* app/core/gimpbrush.[ch]: Added public virtual method
	get_scaled_size to GimpBrush, overridden by GimpBrushGenerated,
	which calculates the buffer sizes for a given brush scaled with a
	given scale. Also changed calls to brush_scale_(mask|pixmap) to
	the new brush_scale_buf.

svn path=/trunk/; revision=22099
2007-03-11 16:28:08 +00:00
Michael Natterer 83d3a750d4 include "libgimpmath/gimpmathtypes.h" instead of "libgimpmath/gimpmath.h".
2007-03-09  Michael Natterer  <mitch@gimp.org>

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

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

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

	* app/pdb/paths_cmds.c: regenerated.


svn path=/trunk/; revision=22084
2007-03-09 13:00:01 +00:00
Hans Breuer f8b13080e4 updated
2007-03-04  Hans Breuer  <hans@breuer.org>

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


svn path=/trunk/; revision=22041
2007-03-04 19:04:42 +00:00
Michael Natterer 1da4a19fe7 app/paint/paint-types.h move opaque typedefs of object instances to
2007-02-08  Michael Natterer  <mitch@gimp.org>

	* app/paint/paint-types.h
	* app/paint/*.h: move opaque typedefs of object instances to
	paint-types.h, don't typedef empty class stuctures as their parent
	class (gtk-doc gets confused), cleanups.


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

	Remove support for the old undo pop and free cruft:

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

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

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

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


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

	* app/paint/gimppaintcore-undo.[ch]
	* app/paint/gimpink-undo.[ch]: removed...

	* app/paint/Makefile.am
	* app/paint/paint-types.h
	* app/paint/gimppaintcoreundo.[ch]
	* app/paint/gimpinkundo.[ch]: ...and added as proper undo classes.

	* app/paint/gimppaintcore.[ch]
	* app/paint/gimpink.c: push undos using the new classes.


svn path=/trunk/; revision=21842
2007-02-03 18:48:00 +00:00
Sven Neumann 125c3d9632 added some comments.
2007-01-22  Sven Neumann  <sven@gimp.org>

	* app/paint/gimppaintbrush.c: added some comments.

	* app/paint/gimppaintcore.c: sprinkled with const qualifiers.


svn path=/trunk/; revision=21756
2007-01-22 17:24:17 +00:00
Michael Natterer 3fb0096e62 add support for non-tiled regions.
2007-01-15  Michael Natterer  <mitch@gimp.org>

	* app/base/pixel-region.c (pixel_region_set,get_row): add support
	for non-tiled regions.

	* app/paint/gimpperspectiveclone.[ch]: replace handmade
	transformation code by a call to gimp_transform_region(). Fix
	getting the original pixels for src_pickable != dest_drawable
	(bug #394610). Various small fixes and cleanups.


svn path=/trunk/; revision=21720
2007-01-15 21:54:51 +00:00
Sven Neumann 930d6149da removed all .cvsignore files from SVN
svn path=/trunk/; revision=21612
2006-12-30 14:31:03 +00:00
Sven Neumann 2e3bd47b6f applied patch from Aurore D that improves jitter for brushes with an angle
2006-12-18  Sven Neumann  <sven@gimp.org>

	* app/paint/gimpbrushcore.c (gimp_brush_core_interpolate): applied
	patch from Aurore D that improves jitter for brushes with an angle
	close to 90° (bug #386061).
2006-12-18 10:47:39 +00:00
Michael Natterer c6ef9aa1fe also scale the brush's spacing (by scaling its x_axis and y_axis).
2006-12-10  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimpbrushcore.c: also scale the brush's spacing (by
	scaling its x_axis and y_axis). Addresses bug #65030.
2006-12-09 23:46:16 +00:00
Sven Neumann 41237259c9 In all files, changed the standard copyright notice to say "GIMP - The GNU
2006-12-09  Sven Neumann  <sven@gimp.org>

        * In all files, changed the standard copyright notice to say
        "GIMP - The GNU Image Manipulation Program".
2006-12-09 21:33:38 +00:00
Michael Natterer 3b903bae0c applied modified patch from Adrian Likins which adds a GRand to the
2006-11-22  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimpbrushcore.[ch]: applied modified patch from Adrian
	Likins which adds a GRand to the GimpBrushCore struct and uses it
	instead of using g_random_foo() functions. Fixes bug #377981.
2006-11-22 20:22:32 +00:00
Michael Natterer 6eb7089577 Made all brushes scalable from the tool options. So far only downscaling
2006-11-16  Michael Natterer  <mitch@gimp.org>

	Made all brushes scalable from the tool options. So far only
	downscaling is supported since we lack an algorithm for bitmap
	brush upscaling. Addresses bug #65030.

	* app/paint/gimppaintoptions.[ch]: added "brush-scale" property.

	* app/paint/gimpbrushcore.[ch]: separate pressure logic from brush
	scaling logic and take paint_options->brush_scale into account.
	Added gimp_brush_core_create_bound_segs() which returns BoundSegs
	of the correctly scaled brush mask for the brush preview on the
	canvas.

	* app/tools/gimpbrushtool.c: use gimp_brush_core_create_bound_segs()
	instead of doing this here (also removes all knowledge about lowlevel
	stuff from this file). Connect to notify::brush-scale of the
	paint options and invalidate the brush core's brush accordingly.

	* app/tools/gimppaintoptions-gui.c: added brush scale slider.
2006-11-16 15:11:27 +00:00
Michael Natterer 1186dfd256 Properly abstract brush scaling:
2006-11-09  Michael Natterer  <mitch@gimp.org>

	Properly abstract brush scaling:

	* app/core/gimpbrush.[ch]: added virtual functions
	GimpBrush::scale_mask() and ::scale_pixmap() and default
	implementations which call the functions in base/brush-scale.c.

	* app/core/gimpbrushgenerated.c: factored out brush calculation to
	an internal utility function and call that function from ::dirty()
	and from the new ::scale_mask().

	* app/core/gimpbrushcore.c: use gimp_brush_scale_mask/pixmap()
	instead of using the lowlevel scale functions directly. Fixes the
	uglyness that we were scaling generated brushes instead of simply
	recalculating them in the right size.
2006-11-09 14:54:49 +00:00
Michael Natterer c18faa20fe app/actions/brush-editor-actions.c app/base/tile-manager-crop.c
2006-10-30  Michael Natterer  <mitch@gimp.org>

	* app/actions/brush-editor-actions.c
	* app/base/tile-manager-crop.c
	* app/config/gimpconfig-file.c
	* app/core/gimp-gradients.c
	* app/core/gimpdrawable-histogram.c
	* app/core/gimpimage-colorhash.c
	* app/core/gimpimage-undo-push.c
	* app/dialogs/convert-dialog.c
	* app/dialogs/preferences-dialog.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/gui/gui-vtable.c
	* app/paint/gimpheal.c
	* app/paint/gimppaintcore-undo.c
	* app/plug-in/plug-in-enums.h
	* app/vectors/gimpstroke-new.c
	* app/vectors/gimpvectors-warp.c
	* app/widgets/gimpviewablebox.c
	* app/widgets/gimpviewrenderer-frame.c
	* app/widgets/gimpviewrenderer-utils.c
	* app/xcf/xcf-save.c
	* libgimpwidgets/gimpcontroller.c: all .c files should include
	their headers and all private functions should be static.
	(-Wmissing-declarations -Wmissing-prototypes rocks!)
2006-10-30 10:13:06 +00:00
Michael Natterer dd6f5d711a changed GimpDrawable parameter to "GimpImageType dest_type".
2006-10-26  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage.[ch]
	(gimp_image_transform_rgb)
	(gimp_image_transform_color)
	(gimp_image_transform_temp_buf): changed GimpDrawable parameter to
	"GimpImageType dest_type".

	(gimp_image_get_foreground)
	(gimp_image_get_background): ditto and reordered parameters.

	* app/core/gimp-edit.c
	* app/core/gimpdrawable-bucket-fill.c
	* app/core/gimpdrawable-stroke.c
	* app/core/gimpdrawable-transform.c
	* app/core/gimpdrawable.c
	* app/core/gimpimage-merge.c
	* app/core/gimplayer.c
	* app/core/gimpselection.c
	* app/paint/gimpbrushcore.c
	* app/paint/gimpclone.c
	* app/paint/gimperaser.c
	* app/paint/gimpheal.c
	* app/paint/gimpink.c
	* app/paint/gimppaintbrush.c: changed accordingly.

	* app/core/gimpdrawable-transform.c
	(gimp_drawable_transform_tiles_affine): set the progress to 1.0
	when done, some tiny cleanups around lanczos.
2006-10-25 22:14:36 +00:00
Michael Natterer f939f120d5 app/paint/gimpclone.c app/paint/gimpheal.c
2006-09-26  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimpclone.c
	* app/paint/gimpheal.c
	* app/paint/gimpperspectiveclone.c
	* app/tools/gimpblendtool.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimplevelstool.c: message review. Thanks to Bill.
2006-09-26 21:53:43 +00:00
Michael Natterer 1b1299aff3 added GError** parameter to GimpPaintCore::start().
2006-09-26  Michael Natterer  <mitch@gimp.org>

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

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

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

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

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

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

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

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

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

	* app/tools/gimpblendtool.c: implement initialize() and bail out
	early on indexed images instead of showing a gimp_message() in
	button_press().
2006-09-26 20:55:40 +00:00
Michael Natterer c598fe6566 added some missing g_return_if_fail() and moved variables to local scopes.
2006-09-26  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimppaintcore.c: added some missing g_return_if_fail()
	and moved variables to local scopes.
2006-09-26 09:59:13 +00:00
Sven Neumann 9721459f87 removed unused variables and unused macro.
2006-09-20  Sven Neumann  <sven@gimp.org>

	* app/paint/gimpperspectiveclone.c: removed unused variables and
	unused macro.
2006-09-20 08:20:56 +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
Michael Natterer d607b7da4d cosmetic cleanups, renamed gimp_smudge_nonclipped_painthit_coords() to
2006-09-13  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimpsmudge.c: cosmetic cleanups, renamed
	gimp_smudge_nonclipped_painthit_coords() to
	gimp_smudge_brush_coords ().
2006-09-13 17:32:36 +00:00
Michael Natterer c8800a628b don't access the src_pickable when cloning from a pattern. Fixes runtime
2006-09-13  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimpclone.c (gimp_clone_motion): don't access the
	src_pickable when cloning from a pattern. Fixes runtime warnings.
2006-09-13 10:53:22 +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
Michael Natterer 9eb90fe54e changed src_pickable parameter to src_type.
2006-09-09  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimpclone.c (gimp_clone_line_image): changed src_pickable
	parameter to src_type.

	(gimp_clone_motion): allow the passed srcPR to have alpha even if
	the source pickable is flat. Pass the correct GimpImageType to
	gimp_clone_line_image().
2006-09-09 18:06:24 +00:00