Commit Graph

191 Commits

Author SHA1 Message Date
Michael Natterer 9e76b64f13 Bug 723392 - Pasting an image replaces color profile with default one
gimp_pixbuf_get_icc_profile(): use gdk_pixbuf_get_option() not
g_object_get() to get the pixbuf's profile.
2015-06-30 12:01:06 +02:00
Michael Natterer 4422128ecc libgimpcolor: add gimp_pixbuf_get_icc_profile()
which decodes and returns the pixbuf's base64-encoded "icc-profile"
property.
2015-06-16 23:43:40 +02:00
Michael Natterer 86e88b9b40 libgimpcolor: fix error message in gimp_color_profile_get_format() 2015-06-12 20:43:17 +02:00
Michael Natterer 4910c28957 libgimpcolor: rename the gimp_lcms_*() functions to gimp_color_profile_*()
because it doesn't make sense to call the typedef GimpColorProfile
but the function namespace gimp_lcms_*().
2015-06-03 09:41:23 +02:00
Michael Natterer 8005eea835 Remove the "GIMP" from all "Since: GIMP 2.x" API doc comments
because it confuses gtk-doc and breaks some links. Also change the
"Index of new symbols in GIMP 2.x" sections to be what seems to be the
modern standard (looked at the GLib and GTK+ docs), and update some
other stuff.
2015-05-31 21:18:09 +02:00
Michael Natterer 6b40652d07 libgimpcolor: add some missing API docs 2015-05-31 02:47:24 +02:00
Michael Natterer f1c46b3656 libgimpcolor: fix API docs of gimp_rgb[a]_get,set_pixel() 2015-05-31 02:33:38 +02:00
Michael Natterer 2e07e938f4 app, libgimpcolor: never return NULL in GimpColorManaged::get_color_profile() 2015-05-30 22:23:25 +02:00
Michael Natterer cdb3b0aabb libgimpcolor: add GimpColorManaged::get_color_profile()
which returns a GimpColorProfile instead of just an ICC blob like
get_icc_profile(). Also, it will always return a profile, as in
fall back to the built-in profiles automatically.
2015-05-13 00:43:16 +02:00
Michael Natterer ff337409c1 libgimpcolor: add gimp_lcms_add_linear_rgb_profile()
taken from gegl:lcms-from-profile.
2015-05-12 22:47:12 +02:00
Michael Natterer 5255eee0d8 libgimpcolor: add typedef gpointer GimpColorTransform
for publically passing around cmsHTRANSFORM without having to include
lcms.
2015-05-09 00:50:20 +02:00
Michael Natterer e663c947a0 libgimpcolor: add gimp_lcms_get_format()
Which returns an lcms format given a Babl format. It also returns a
Babl format to be used instead of the passed format, but only if lcms
doesn't support the passed format.
2015-05-08 12:52:22 +02:00
Michael Natterer e01f067332 libgimpcolor: add API docs to gimplcms.c 2015-05-07 02:00:33 +02:00
Michael Natterer dcf21efcc2 libgimpcolor: add gimp_lcms_profile_close()
So code that only needs a profile's metadata doesn't need to depend on
lcms2 any longer.
2015-05-06 16:28:45 +02:00
Elle Stone 3925466db5 libgimpcolor: change LUMINANCE Y values to match sRGB built-in profile 2015-02-14 17:40:54 +01:00
Jehan 8c1cd7caac Makefile: fix VPATH builds for win32. 2014-09-14 18:28:26 +02:00
Michael Natterer b7863269f0 libgimpcolor: change gimp_lcms_profile_open_from_file() from filename to GFile
and change most of the lcms plug-in to using GFile too.
2014-07-04 23:57:27 +02:00
Michael Natterer c726ea309a libgimpcolor: deprecate gimp_bilinear_pixels_8() 2014-06-30 18:28:43 +02:00
Michael Natterer 8bb0fa8372 libgimpcolor: deprecate most of gimpcolorspace.[ch]
Only leave the functions undeprecated that work on structs of doubles.
2014-06-30 17:39:15 +02:00
Michael Natterer 614c61a3dd Don't #include <glib.h> before <lcms.h>
The include claimed to be because of "inline" in the lcms header, but
that was probably lcms1, since there is no trace of inline in the
lcms2 header.
2014-04-10 20:48:22 +02:00
Michael Natterer f1223a741a libgimpcolor: move GIMP_LCMS_MD5_DIGEST_LENGTH to the .c file 2014-04-10 20:41:32 +02:00
Michael Natterer ba85bb78ba Bug 727185 - Converting to GIMP built-in sRGB produces the wrong RGB values
Profiles from disk have a lower precision than those created from
scratch via lcms API. Ensure identical profiles by returning a
"loaded" profile from gimp_lcms_create_srgb_profile() (simply do a
save/load roundtrip in memory).
2014-04-10 16:30:04 +02:00
Michael Natterer d7037650df libgimpcolor: add gimp_lcms_profile_get_label()
which returns a string meant to label the profile in the GUI, it's
either the profile's description, its model, or "(unnamed profile)" as
a fallback. Use the function instead of duplicating that logic
inconsistently and imcompletely all over the place.
2014-03-30 03:12:42 +02:00
Michael Natterer 32e47cf70d libgimpcolor: add gimp_lcms_profile_is_equal()
and remove all of our own MD5 digest code and API. is_equal() uses
lcms' own MD5 API which I missed before. Thanks Elle for pointing that
out :)
2014-03-29 10:40:47 +01:00
Michael Natterer b3395d989e libgimpcolor: return an optional MD5 digest from gimp_lcms_create_srgb_profile()
pass NULL in most places, use the feature in the lcms.c plu-gin.
2014-03-23 23:34:47 +01:00
Michael Natterer ddc9c864be libgimpcolor: move the GimpColorProfile typedef to gimpcolortypes.h 2014-03-16 18:36:12 +01:00
Michael Natterer f322be2fac libgimpcolor: add gimp_lcms_profile_open_from_file() and _from_data()
which work just like their lcms counterparts but return an optional
md5 digest of the ICC data and a GError in case opening fails.
2014-03-16 15:57:14 +01:00
Daniel Sabo b54b59c9e8 Use EXTRA_foo_DEPENDENCIES for adding .def files
The foo_DEPENDENCIES rule replaces the default dependencies, where
EXTRA_foo_DEPENDENCIES just appends to it. This was causing libgimp
and libgimpui to build out of order.
2014-03-15 14:23:38 -07:00
Michael Natterer ebc53672cb libgimpcolor: add gimp_lcms_profile_is_rgb() and _is_cmyk()
And change all lcms code to use it.
2014-03-15 21:47:13 +01:00
Michael Natterer 2cdf1985e6 libgimpcolor: add a bunch or information strings to the sRGB profile
so it can be treated like any other profile and needs no special
casing.
2014-03-15 00:09:35 +01:00
Michael Natterer 13ee151a1e libgimp*: use LIBADD and DEPENDENCIES consistently in all Makefiles 2014-03-14 22:39:51 +01:00
Michael Natterer 6f62d6b11b libgimpcolor: add gimp_lcms_profile_get_summary()
Which returns an "executive summary" of the profile, much like lcms1's
"profile info" API. Refactor common code out of the other string
getters.
2014-03-14 20:26:15 +01:00
Michael Natterer cf05b69e1e libgimpcolor: link test-color-parser against libgimpbase 2014-03-14 02:52:59 +01:00
Michael Natterer eee6fa1e4b libgimpcolor: start adding profile utility functions to gimplcms.[ch]
Add functions to get a profile's description, manufacturer, model and
copyright, and use them instead of implementing the same 10 times.

Also add a GimpColorProfile typedef which avoids both having to
include lcms globally or using a gpointer instead (which looks bad and
non-descriptive in an API).
2014-03-14 01:48:39 +01:00
Michael Natterer 76beb20b18 libgimpcolor: rename our sRGB profile to "GIMP built-in sRGB" 2014-03-03 21:45:43 +01:00
Massimo Valentini 9498cc615d Bug 722676: Pasting image from clipboard sometimes does not work.
Change gimp_pixbuf_create_buffer() to copy the pixels if a linear
buffer cannot be created. Add functions that convert between
GimpTempBuf and GdkPixbuf. Fix users of gimp_pixbuf_create_buffer()
to make the least possible copies. Patch modified by Mitch.
2014-02-23 00:49:56 +01:00
Elle Stone 78e2c4808d libgimpcolor: comment out line that makes V2 profile and add more docs 2014-02-16 22:09:46 +01:00
Michael Natterer d4fd13e440 libgimpcolor: add gimp_lcms_create_srgb_profile() to gimpcolor.def 2014-02-09 23:26:19 +01:00
Elle Stone 05c5ca3216 Bug 723787 - Neutral sRGB profile matching Argyllcms sRGB.icm
Add gimp_lcms_create_srgb_profile() to libgimpcolor and use it where
we used to call cmsCreate_sRGBProfile().
2014-02-09 23:10:56 +01:00
Daniel Sabo afc40ffda0 Add automake 1.13+ test outputs to .gitignore 2014-01-10 15:31:34 -08:00
Michael Natterer 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
Mikael Magnusson 6afc29543e app: add gimp_hsl_set_alpha to gimpcolor.def 2013-06-16 20:55:03 +02:00
Mikael Magnusson 1947d8def8 app: avoid reading uninitialized memory
gimp_rgb_to_hsl and hsl_to_rgb reads the a member, so set it before
calling them. Add gimp_hsl_set_alpha() for this purpose.

Found by coverity
2013-06-15 22:40:49 +02:00
Michael Natterer ec786816bb */Makefile.am: merge INCLUDES into AM_CPPFLAGS
automake-1.13 finally warns about this anachronism.
2013-06-05 20:48:37 +02:00
Michael Natterer fe19ad9706 Bug 683694 - Spelling errors
Reworded all places that used to say "allows to".
2012-11-11 15:50:25 +01:00
Michael Natterer 486e76bdab libgimp*: use GIMP_API_VERSION in Makefile.am instead of hardcoding 2.0 2012-05-04 15:38:45 +02:00
Michael Muré b694141eb7 fix compilation of a test 2012-05-03 20:36:28 +09:00
Michael Natterer b3e785e5e5 libgimpcolor: return the right format from gimp_cairo_surface_get_format() 2012-05-03 04:19:41 +02:00
Michael Natterer 00b3a9c745 libgimpcolor: add Cairo <-> GEGL utility functions from app/ 2012-05-03 04:07:16 +02:00
Michael Natterer d766ec6ae9 libgimpcolor: rename gimpcairocolor.[ch] to gimpcairo.[ch] 2012-05-03 03:56:10 +02:00