2009-01-17 Michael Natterer <mitch@gimp.org>
* all files with a GPL header and all COPYING files:
Change licence to GPLv3 (and to LGPLv3 for libgimp).
Cleaned up some copyright headers and regenerated the parsers in
the ImageMap plugin.
svn path=/trunk/; revision=27913
* app/gegl/gimpoperationpointlayermode.c
(gimp_operation_point_layer_mode_process): Implemented Erase, Anti
Erase, Color Erase and Replace. These are not normal layer modes
and handle alpha in their own way. In addition to this, the
behavior of Replace doesn't map very well to GEGL which uses
infinite sized "layers".
Completely works the same:
o Erase
o Anti Erase
o Color Erase
Works different but similar:
o Replace
* app/paint-funcs/paint-funcs.[ch]: Expose
paint_funcs_color_erase_helper() so it can be used in the
GimpOperationPointLayerMode implementation. Once the migration is
complete this function can be moved entirely to the op and be
tailored to work on premultiplied data.
svn path=/trunk/; revision=27502
2008-10-13 Sven Neumann <sven@gimp.org>
Bug 547967 – Improve app/paint-funcs/ maintainability
Applied patch from Luidnel Maignan that splits the legacy code
for
layer modes into new files.
* app/paint-funcs/Makefile.am
* app/paint-funcs/layer-modes.[ch]
* app/paint-funcs/paint-funcs-utils.h: new files with code taken
from ...
* app/paint-funcs/paint-funcs-generic.h
* app/paint-funcs/paint-funcs.c: ... these two files.
svn path=/trunk/; revision=27268
2008-09-01 Sven Neumann <sven@gimp.org>
* app/paint-funcs/paint-funcs.[ch]: added clear_region().
* app/base/tile-manager-crop.c
* app/core/gimpchannel.c
* app/core/gimpimage-merge.c
* app/core/gimpmaskundo.c
* app/core/gimpprojection-construct.c: use it instead of calling
color_region() with a zero color.
svn path=/trunk/; revision=26826
2008-08-12 Sven Neumann <sven@gimp.org>
* app/paint-funcs/paint-funcs.c (replace_inten_pixels): applied
a
slightly modified version of the patch from Luidnel Maignan as
attached to bug #105568. Fixes incorrect alpha treatment in
plug-in selection masking.
svn path=/trunk/; revision=26524
2007-10-21 Michael Natterer <mitch@gimp.org>
* app/dialogs/fade-dialog.c (fade_dialog_new): revert change below.
* app/paint-funcs/paint-funcs.c (replace_inten_pixels): also honor
the passed opacity when there is no mask. Fixes blending in
replace mode then where is no selection.
svn path=/trunk/; revision=23893
2007-10-09 Sven Neumann <sven@gimp.org>
* app/base/tile.[ch]
* app/paint-funcs/paint-funcs.c: moved code to update tile row
hints to tile.[ch].
svn path=/trunk/; revision=23777
2007-10-06 Sven Neumann <sven@gimp.org>
* app/core/gimpimage-colormap.c (gimp_image_set_colormap): set
all
entries to zero before assigning the new colormap.
* app/paint-funcs/paint-funcs.[ch]: added const qualifiers.
svn path=/trunk/; revision=23748
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-04-25 Sven Neumann <sven@gimp.org>
* app/paint-funcs/paint-funcs.c (convolve_region): round pixel values
instead if just casting the float to an integer. Fixes bug #432978.
svn path=/trunk/; revision=22322
2007-03-30 Sven Neumann <sven@gimp.org>
* app/paint-funcs/paint-funcs.c: hardcode the result of
log (1.0 / 255.0) and avoid a useless call to sqrt().
svn path=/trunk/; revision=22201
2007-03-05 Michael Natterer <mitch@gimp.org>
Makes default Select -> Border behaviour consistent, and makes
'sticky image edges' optional by adding a checkbox in the Border
Selection dialog. Patch by Martin Nordholts. Fixes bug #350009.
* app/actions/select-commands.c (select_border_cmd_callback)
(select_border_callback): Added edge-lock checkbox to dialog and
modified calls accordingly.
* app/paint-funcs/paint-funcs.c (border_region)
(compute_transition): Fixed algorithm. (compute_transition is a
helper function to the algorithm). Also clarified many parts of
the algorithm with comments.
* app/paint-funcs/paint-funcs.h
* app/core/gimpchannel.[ch]
* app/core/gimpselection.c: Added gboolean edge_lock to function
calls/signatures.
* app/pdb/selection_cmds.c: Regenerated.
svn path=/trunk/; revision=22047
2006-09-28 Sven Neumann <sven@gimp.org>
* app/composite/gimp-composite.h
* app/composite/gimp-composite-generic.c
* app/paint-funcs/paint-funcs-generic.h
* app/paint-funcs/paint-funcs.c: added lots of const qualifiers,
moved variables to local scopes.
* app/base/pixel-processor.c: formatting.
2006-06-05 Sven Neumann <sven@gimp.org>
* app/paint-funcs/paint-funcs.[ch]
* app/core/gimpchannel.[ch]
* app/core/gimpselection.c:
* app/actions/select-commands.c: further cleaned up the patch
from
bug #88633.
2006-06-05 Michael Natterer <mitch@gimp.org>
Applied slightly modified patch from saulgoode which allows to
border a selection without feathering. Fixes bug #88633.
* app/paint-funcs/paint-funcs.[ch] (border_region): added boolean
"feather_border" parameter.
* app/core/gimpchannel.[ch]: GimpChannel::border(): ditto.
* app/core/gimpselection.c: changed accordingly.
* app/actions/select-commands.c: added a toggle to the border
dialog and pass it to gimp_channel_border().
* tools/pdbgen/pdb/selection.pdb: pass TRUE here.
* app/pdb/selection_cmds.c: regenerated.
2006-05-23 Michael Natterer <mitch@gimp.org>
Fix for bug #333156:
* app/paint-funcs/paint-funcs-types.h (enum CombinationMode):
added value COMBINE_INTEN_A_INDEXED.
* app/paint-funcs/paint-funcs.c
(combine_inten_a_and_indexed_pixels): new function which
implements the new CombinationMode.
(combine_sub_region)
(combine_regions): added the needed bits to call the new function.
* app/core/gimpprojection-construct.c (project_indexed): added
mask PixelRegion parameter since that's supported by paint-funcs
now, replaced g_warning() about unimplemented combine type
by call to combine_regions(..., COMBINE_INTEN_A_INDEXED).
(gimp_projection_construct_layers): pass the mask to
project_indexed() and removed comments about not supporting it.
2006-05-16 Michael Natterer <mitch@gimp.org>
* app/paint-funcs/paint-funcs-generic.h
* app/paint-funcs/paint-funcs.[ch]: implement copy_color() and
copy_color_pixels() which copy only the color bytes into a dest
that has one byte less than src. Renamed component_pixels() to
copy_component_pixels().
* app/core/Makefile.am
* app/core/core-types.h
* app/core/gimpbrushclipboard.[ch]: new GimpBrush subclass that
auto-updates its contents from gimp->global_buffer.
* app/core/gimp.c (gimp_real_initialize): add a clipboard brush to
the brush factory. Fixes bug #111082.
2006-04-25 Sven Neumann <sven@gimp.org>
* app/paint-funcs/paint-funcs-generic.h
* app/paint-funcs/paint-funcs.c: code cleanup, moved variables into
local scopes, added const qualifiers.
M ChangeLog
M app/paint/gimpconvolve.c
M app/paint-funcs/paint-funcs.c
M app/paint-funcs/paint-funcs.h
M app/tools/gimpiscissorstool.c
M libgimpbase/gimputils.c
M modules/colorsel_cmyk.c
M regexrepl/regex.c
2005-11-09 Michael Natterer <mitch@gimp.org>
* app/paint-funcs/paint-funcs-generic.h
* app/paint-funcs/paint-funcs.c: reverted patch which makes
alpha=255 when turned off because these functions are not only
used for display projection. Re-opens bug #143315.
Fixes bug #307213.
2005-08-09 Michael Natterer <mitch@gimp.org>
* app/paint-funcs/paint-funcs.[ch] (extract_from_inten_pixels)
(extract_from_indexed_pixels): pass src_bytes and dest_bytes to
these functions instead of just the source's bytes and whether it
has an alpha. Honor dest_bytes when extracting instead of crashing
by always asuming that the destination has alpha.
Fixes bug #312392.
(extract_from_region): removed has_alpha paramater. pass
src->bytes and dest->bytes to above functions.
* app/core/gimpselection.c (gimp_selection_extract): changed
accordingly.
2005-07-13 Sven Neumann <sven@gimp.org>
* app/paint-funcs/paint-funcs.[ch]: added smooth_region(), a
simple convolution filter to smooth a mask.
* app/base/segmentator.c (smooth_mask): use the new function.
2005-06-17 Sven Neumann <sven@gimp.org>
* app/paint-funcs/paint-funcs.[ch]: pass GimpImageBaseType to
extract_from_region() instead of some anonymous integer. Added
some const qualifiers.
* app/paint-funcs/paint-funcs.c
* app/paint-funcs/paint-funcs-generic.h: fix bug #143315. When the
visibility of the Alpha channel is turned off, it should make alpha=255.
2005-01-11 Sven Neumann <neumann@jpk.com>
* app/base/base-enums.[ch]
* app/core/gimpdrawable-transform.c
* app/core/gimpdrawable.c
* app/paint-funcs/Makefile.am
* app/paint-funcs/paint-funcs.[ch]
* app/paint-funcs/scale-funcs.[ch]: applied patch by Geert Jordaens
(after a good deal of reformatting for coding style compliance).
This factors the scale routines into their own file and adds a
sinc-based (Lanczos) interpolation routine (bug #162250).