Commit Graph

452 Commits

Author SHA1 Message Date
e089095631 Bug 744265 - layer mode 'addition' makes wrong gray values
Move CLAMP code in addition blend mode (CLAMP the result, not an
intermediate value).
2015-10-13 22:47:31 +02:00
997314d4e9 Bug 754518 - gimp-drawable-curves-spline does not take the advertised...
...number of points

gimp_curves_config_new_spline(): set the GimpCurve's n_points, not
n_samples. The bug title describes exactly what was happening.
2015-09-07 21:43:18 +02:00
4479cedf13 app: rename mask enum values GIMP_COMPONENT_RED,GREEN,BLUE etc.
to GIMP_COMPONENT_MASK_RED,GREEN,BLUE etc.
2015-09-07 00:35:02 +02:00
46eef4d09d app: remove references to plug_in_icc_profile_apply_rgb() from Makefiles 2015-08-27 13:52:26 +02:00
97e55692eb app: the blend tool was rendering all gradients off-by-0.5
When calculating the color of a pixel, we want to calculate the color
at its center, not at its top-left corner. Found by Raymond Jennings.
2015-08-26 23:23:16 +02:00
9171de3b80 tests: link against -lm
(see commit 4c7338c097)
2015-07-16 14:27:04 +02:00
a7b84ded8e Bug 325564 - Use CIE LCH instead of HSL for layer mode Color
Add Hue, Chroma, Color and Lightness layer modes in LCH color space.
2015-06-02 01:37:26 +02:00
bc4cf9918f Bug 673501 - Issue with Overlay
GIMP's OVERLAY mode was identical to SOFTLIGHT. This commit fixes the
issue and introduces a NEW_OVERLAY mode and enum value.

- change gimp:overlay-mode to be a real (svg-ish) overlay mode
- when compositing, map OVERLAY to gimp:softlight-mode
- when compisiting, map NEW_OVERLAY to gimp:overlay-mode
- bump the XCF version when NEW_OVERLAY is used
- map OVERLAY to SOFTLIGHT when loading and saving XCF
- map OVERLAY to softlight in all PDB setters
- map OVERLAY to softlight when deserializing a GimpContext
- change all paint mode menus to show an entry for NEW_OVERLAY
  instead of OVERLAY
- change PSP, PSD and OpenRaster to use NEW_OVERLAY

These changes should (redundantly) make sure that no OVERLAY enum
value is used in the core any longer because it gets mapped to
SOFTLIGHT at all entry points, with the downside of introducing a
setter/getter asymmetry when OVERLAY was set in a PDB api.
2015-04-29 13:32:58 -04:00
81fa953ccb Bug 746649 - Duplicate auto-saved presets for color tools
Implement GimpConfigInterface::equal() for the brightness-contrast,
colorize, and threshold config objects, to prevent the parent class'
timestamp being compared by the generic default implementation.
2015-04-09 01:14:41 +02:00
678b61a3ac Bug 742623: Equalize operation fills buffer with nan values in floating point precision
Use histogram bins count to process equalization instead of "256" hard-coded value.
2015-02-10 12:08:04 +01:00
e629f4c14b app: add GimpOperationScalarMultiply
which multiplies each float in a gegl_format_n(float, n) input
by a factor.
2014-11-07 00:42:58 +01:00
dbfbc221a5 Bug 736232 - Strange result using transparent layer, blending modes...
...and layer opacity

Use a temporary variable to store intermediate result instead of
writting 2 times to the output buffer, because input and output
buffer might be the same.
2014-10-03 00:17:49 +02:00
fe3c0e4020 Bug 732787 - Posterize doesn't work as expected with alpha channel
GimpOperationPosterize: also posterize the alpha channel. Seems like a
no-brainer to me, and is actually useful (see bug). The old behavior
is still available by simply disabling the alpha channel in the
channels dialog.
2014-09-25 23:12:35 +02:00
1db5c06f54 Bug 735902 - Drawing a gradient should never produce negative RGB channel values
Use MAX(value, 0.0) on the result of dithering.
2014-09-08 22:49:51 +02:00
14978bfe5d Simplify calls to g_output_stream_write_all()
It returns TRUE only if all bytes were written, so there is no need to
get and check the bytes_written return value.
2014-09-07 20:30:14 +02:00
9a245989c0 fix bogus checks against unsigned variables.
Spotted by Andrey Karpov using static code analysis:
   http://www.viva64.com/en/b/0273/
2014-08-16 00:37:13 +02:00
dbd1f0500e app: Switch to the GeglAccessMode enum in GimpOperationBlend
See b5530e9e3d
2014-07-22 14:09:20 -04:00
8fef1918a9 app: Support gradients with fg/bg segments in the blend tool preview. 2014-07-22 13:13:47 -04:00
5839b5e4af app: Add a gegl op to render gradients 2014-07-22 13:13:47 -04:00
3f52828896 app: change GimpImageFile and GimpDocumentList to speak GFile 2014-07-07 23:58:11 +02:00
29427fa4f1 app: port GimpImageMapTool settings import/export to streams
Simplifies and centralizes error checking and reporting.
2014-07-04 18:31:00 +02:00
b4cdecb4c3 app: port the curves and levels cruft format loaders to GIO 2014-07-04 13:18:01 +02:00
249041d927 Bug 732698 - Select > Shrink/Grow/Border not working in GIMP master
Always pass level = 0 to gegl_buffer_set(). This actually makes a
difference since GEGL's level processing got some fixes.
2014-07-03 20:47:02 +02:00
a572638656 app: fix copy/paste GError bug in some calls to g_file_replace() 2014-07-03 13:01:01 +02:00
4e6a6079f4 app: port levels cruft format saving to GIO 2014-07-02 23:45:16 +02:00
87ecc83885 app: port curves cruft format saving to GIO 2014-07-02 23:40:26 +02:00
b5530e9e3d Use the new GeglAccessMode enum instead of the old values 2014-07-02 02:00:35 +02:00
784e74e1d8 app: remove bogus (but harmless) assignment from GimpOperationColorize 2014-06-30 17:28:04 +02:00
847606d177 app: add back gimp_curves_config_new_spline,explicit()
but as versions using gdouble instead of guint8. Use the new functions
from the just renamed _cruft() variants.
2014-06-17 22:23:41 +02:00
f5e4f01c52 app: make gimp_curves_config_new_spline,explicit() handle variable #points
Also, append _cruft to the function name because they take guint8*
arrays, will add proper ones next.
2014-06-17 21:10:33 +02:00
0206effba0 Bug 731697 - Colorize operation does not restitute alpha channel correctly
Copy the src alpha value in GimpOperationColorize.
2014-06-15 23:39:09 +02:00
a7c82d2964 app: rework gimp:shapeburst towards more floats, try to improve readability. 2014-06-14 02:56:33 +02:00
8aa0019c2e app: clean up inclusion of gegl-plugin.h, mostly removals 2014-06-10 03:13:09 +02:00
8be52f6aa7 app, libgimp*: pass translated blurbs to GIMP_CONFIG_INSTALL_PROP_FOO()
instead of passing N_()-strings; and remove gettext() calls on these
strings when using them. Reduces complexitx, and fixes double- and
untranslated strings. Also enables to treat properties of GIMP and
GEGL objects the same way, which was totally broken before.
2014-05-14 23:34:01 +02:00
23037b5230 app: convert all stock IDs kept around by the core by icon names
Particularly GimpViewable's stock_id. Make sure old config files
containing stock IDs are still properly parsed.
2014-05-07 01:01:56 +02:00
d9cf36d07d app: remove gimp:cast-format and use gegl:cast-format 2014-05-05 19:30:21 +02:00
8f648471e6 app: add new operation gimp:cast-format
which casts between two arbitrary formats of the same bpp.
2014-05-04 20:42:58 +02:00
16819917f5 app: add a boolean "normalize" property to gimp:shapeburst
and do the normalization in the op, instead of exporting the
max_iterations via a property and doing the normalization outside.
2014-05-01 20:40:55 +02:00
830dbf6d5b app: remove some disabled code from gimp:shapeburst 2014-05-01 20:33:57 +02:00
540d3bb6ae app: port gimp:shapeburst's input from u8 to float 2014-05-01 20:32:26 +02:00
3915ac01b4 Bug 728607 - Patch to make divide blend mode work at 32-bit floating point
Properly port divide mode to 32-bit float.
2014-04-30 00:16:11 +02:00
22c222291d libgimpbase,*: clean up enum values in gimpbaseenums.h
GIMP_ADD_foo_MASK -> GIMP_ADD_MASK_foo
GIMP_foo_MODE -> GIMP_BLEND_foo
GIMP_foo_CLONE -> GIMP_CLONE_foo
GIMP_foo -> GIMP_DODGE_BURN_TYPE_foo
GIMP_foo -> GIMP_TRANSFER_foo

Add compat values for the old names and compat code to script-fu
and pygimp.
2014-04-29 20:58:30 +02:00
fcecafa479 Bug 723213 - colors/levels/auto is broken for high bitdepth images
Port gimp_levels_config_stretch_channel() to histograms with
variable number of bins. Still behaves differently for different
bit depths tho.
2014-01-30 00:19:37 +01:00
84c132addc Bug 721553 - License text contains obsolete FSF postal address
These files were forgotten when changing license from GPL2 to GPL3.
2014-01-05 14:25:46 +01:00
697572ccc0 app,libgimp*: fix includes to follow our include policy
- don't include <gdk-pixbuf/gdk-pixbuf.h> in headers in app/
- instead, include it in many .c files instead of <glib-object.h>,
  finally acknowledging the fact that app/ depends on gdk-pixbuf almost
  globally
- fix up includes as if libgimpbase depended in GIO, which it soon will
2013-10-15 01:58:39 +02:00
ed1b7f4697 app: minor typo spotted on gimp:grow operation. s/diection/direction/ 2013-09-16 00:43:44 +12:00
05646749f5 app: port the mask border operation from u8 to float 2013-08-24 19:48:01 +02:00
7ac385caec app: port the mask shrink and grow operations from u8 to float 2013-08-24 19:08:48 +02:00
fe02ef78ca Revert "app: enable caching on layer mode ops"
This reverts commit 35b5b624e9.

it caused rendering artifacts.
2013-08-10 17:44:39 +02:00
35b5b624e9 app: enable caching on layer mode ops 2013-08-10 16:25:50 +02:00