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).
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.
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.
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).
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.
- 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
This only helps to maintain proper includes in app/ and shouldn't
affect plug-ins at all, because these are supposed to only include the
main headers from libgimp/ since the beginning of time.
The gimpfootypes.h files do not have these guards, so we can continue
to maintain app/'s include policy that is very likely to error out if
wrong things are included.
2009-01-23 Kevin Cozens <kcozens@cvs.gimp.org>
* libgimpcolor/gimprgb-parse.c: Applied patch from Andreas Turtschan
to fix more RGB colour values. Fixes bug #568909.
svn path=/trunk/; revision=27937
2009-01-23 Kevin Cozens <kcozens@cvs.gimp.org>
* libgimpcolor/gimprgb-parse.c: Applied patch from Andreas Turtschan
to fix colour values for slategray and slategray. Fixes bug #568839.
svn path=/trunk/; revision=27932
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
2008-12-10 Sven Neumann <sven@gimp.org>
* libgimpcolor/gimprgb-parse.c: updated link to the color
keywords
in the SVG spec.
svn path=/trunk/; revision=27772
* app/gegl/gimpoperationpointlayermode.c
(gimp_operation_point_layer_mode_process): Implemented the layer
modes Hue, Saturation, Color and Value.
Works the same for 100% opaque layers:
o Hue
o Saturation
o Color
o Value
* libgimpcolor/gimphsl.[ch]: Added gimp_hsl_set().
svn path=/trunk/; revision=27466
2007-10-29 Sven Neumann <sven@gimp.org>
* libgimpcolor/gimpadaptivesupersample.c
(gimp_adaptive_supersample_area): return with a warning if
called
with NULL render_func or put_pixel_func.
svn path=/trunk/; revision=23985
2007-09-28 Sven Neumann <sven@gimp.org>
* libgimpcolor/gimpcolorspace.c (gimp_hsv_to_rgb_int): avoid the
ambiguity of returning different values for the same color and
limit the Hue output range to [0..359].
svn path=/trunk/; revision=23681
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-01 Sven Neumann <sven@gimp.org>
* libgimpcolor/Makefile.am
* libgimpcolor/gimpcolor.h
* libgimpcolor/gimpcolortypes.h
* libgimpcolor/gimpcolormanaged.[ch]: added an interface that
will
be used to implement the missing bits of color management.
* libgimpcolor/gimpcolor.def: updated.
svn path=/trunk/; revision=22691
2007-05-26 Michael Natterer <mitch@gimp.org>
* libgimpcolor/gimprgb.c (gimp_param_rgb_values_cmp): fully
initialize all bytes of "int1" and "int2" so we don't produce
wrong color compare results (and shut up valgrind).
Fixes bug #353696.
svn path=/trunk/; revision=22627
2006-04-27 Sven Neumann <sven@gimp.org>
* libgimpcolor/gimprgb.[ch]: hide the GimpParamSpecRGB struct
again. Added getter for the has_alpha field.
* libgimpcolor/gimpcolor.def: updated.
* app/config/gimpconfig-dump.c
* libgimpconfig/gimpconfig-serialize.c: use
gimp_param_spec_rgb_has_alpha() instead of accessing the
GimpParamSpecRGB struct directly.
2006-04-27 Sven Neumann <sven@gimp.org>
* libgimpcolor/gimprgb.[ch]: added "has_alpha" to GimpParamSpecRGB.
Made the GimpParamSpecRGB struct public. When validating a color,
only look at the alpha channel if has_alpha is set.
* libgimpconfig/gimpconfig-params.h: added "has_alpha" to
GIMP_CONFIG_INSTALL_PROP_RGB macro definition.
* libgimpconfig/gimpconfig-serialize.c: serialize color values as
"(rgb r g b)" if the param-spec indicates that the alpha channel
is meaningless.
* app/config/gimpconfig-dump.c: take "has_alpha" into account when
documenting color properties.
* app/core/gimpcontext.c
* app/core/gimpgrid.c
* app/display/gimpdisplayoptions.c
* app/text/gimptext.c
* app/widgets/gimpaction.c
* app/widgets/gimpcolorbar.c
* libgimpwidgets/gimpcolorarea.c
* libgimpwidgets/gimpcolorbutton.c: specify whether color properties
have an alpha channel.
* tools/pdbgen/app.pl: handle "has_alpha" for color paramaters.
* tools/pdbgen/pdb/channel.pdb
* tools/pdbgen/pdb/context.pdb
* tools/pdbgen/pdb/grid.pdb
* tools/pdbgen/pdb/image.pdb: set the "has_alpha" flag where
appropriate.
* app/pdb/gimp-pdb-compat.c (gimp_pdb_compat_param_spec): set
"has_alpha" to TRUE for GIMP_PDB_COLOR.
* app/pdb/channel_cmds.c
* app/pdb/context_cmds.c
* app/pdb/gradient_cmds.c
* app/pdb/grid_cmds.c
* app/pdb/image_cmds.c
* app/pdb/palette_cmds.c
* app/pdb/palettes_cmds.c
* app/pdb/selection_tools_cmds.c: regenerated.
* app/config/gimpdisplayconfig.c (gimp_display_config_class_init):
removed unused code.
2006-04-02 Michael Natterer <mitch@gimp.org>
* app/core/gimpparamspecs.[ch]: removed GIMP_TYPE_PARASITE,
GIMP_TYPE_PARAM_PARASITE and the GimpRGB utility functions. Some
fixes/cleanup in the new array and string array code.
* libgimpbase/gimpbase.def
* libgimpbase/gimpparasite.[ch]
* libgimpcolor/gimpcolor.def
* libgimpcolor/gimprgb.[ch]: added the parasite and rgb stuff here.
* app/pdb/gimpargument.c: #include "libgimpbase/gimpbase.h"
* app/pdb/procedural_db.c: removed unused variable.
2006-03-27 Michael Natterer <mitch@gimp.org>
* libgimpcolor/gimprgb.c (gimp_param_rgb_init): default to fully
opaque black instead of fully transparent.
(gimp_param_spec_rgb): allow a NULL default value. Simply use the
opaque black set in init().
2005-06-03 Manish Singh <yosh@gimp.org>
* libgimpcolor/gimprgb.h: whitespace fix.
* libgimpwidgets/gimpchainbutton.h
* libgimpwidgets/gimpwidgetsenums.[ch]: move GimpChainPosition
to a registered enum, and register GimpSizeEntryUpdatePolicy as
as well.
* libgimp/gimpuitypes.h
* libgimp/gimpdrawablecombobox.[ch]: turn these into GObjects
with their own types.
* libgimp/gimpimagecombobox.c: use G_DEFINE_TYPE.
2004-09-18 Sven Neumann <sven@gimp.org>
* app/actions/qmask-commands.c
* libgimpcolor/gimprgb.c (gimp_rgba_distance): just some cleanup.
* app/core/gimpimage-qmask.c (gimp_image_set_qmask_color): always
set gimage->qmask_color regardless of the qmask state.
* libgimpwidgets/gimpcolorbutton.c (gimp_color_button_new): set
the type before setting the color.
2004-07-31 Hans Breuer <hans@breuer.org>
* app/display/makefile.msc app/widgets/makefile.msc : build
but *dont link* display-enums.obj, widget-enums.obj and
gimpdisplayoptions.obj. They must be in the dll
* app/makefile.msc : build gimp.exe and gimp-console.exe both
using the same gimp-core.dll
* app/gimpcore.def : new file, exports for gimp-core.dll
* app/Makefile.am : added to EXTRA_DIST
* cursors/makefile.msc : new file to create gimp-tool-cursors.h
* cursors/Makefile.am : added to EXTRA_DIST
* **/makefile.msc : updated
* app/main.c app/app_procs.c : moved code to close the console
from the former to the later. It only is to be used if The Gimp
is not build as console app.
* plug-ins/gfig/gfig.c : dont gimp_drawable_detach() the same
drawable twice
* plug-ins/gfig-dialog.c() : added a g_return_if_fail() to avoid
crashing on File/Import
2004-07-26 Sven Neumann <sven@gimp.org>
* libgimpcolor/gimprgb.[ch]: register GimpRGB as a boxed type.
* libgimpcolor/gimpadaptivesupersample.c
* libgimpcolor/gimpcolorspace.c
* libgimpcolor/gimprgb-parse.c
* libgimp/gimp.h: include <glib-object.h> instead of <glib.h>.
2004-07-26 Sven Neumann <sven@gimp.org>
* libgimpcolor/gimprgb-parse.c
* libgimpcolor/gimprgb.h: added new function gimp_rgb_list_names()
that gives access to the list of SVG color keywords.
* libgimpwidgets/Makefile.am
* libgimpwidgets/gimpwidgets.h
* libgimpwidgets/gimpwidgetstypes.h
* libgimpwidgets/gimpcolorhexentry.[ch]: added new widget that
allows to enter colors in hex notation or by using color names.
* libgimpwidgets/gimpcolorscales.c: use a GimpColorHexEntry.
2004-07-23 Sven Neumann <sven@gimp.org>
* libgimpcolor/test-color-parser.c: added more test samples.
* libgimpcolor/gimprgb-parse.c: fixed a bug that I found with the
new tests.
* app/core/gimpgradient-load.c: changed SVG parser to handle
gradients that are defined more deeply in the SVG hierarchy. Added
a simplistic CSS style parser to deal with gradient definitions
that use CSS to define the gradient stop properties (closes bug
#148127).
2004-07-23 Sven Neumann <sven@gimp.org>
* libgimpcolor/Makefile.am
* libgimpcolor/test-color-parser.c: added a simple unit test
framework for the color parser.
* libgimpcolor/gimprgb-parse.c: fixed parsing of rgba() values.
* libgimpmath/test-md5.c: minor cleanup.
2004-07-22 Sven Neumann <sven@gimp.org>
* libgimpcolor/gimprgb-parse.c
* libgimpcolor/gimprgb.h: improved the CSS color parser code,
added new function gimp_rgba_parse_css(), added support for HSL
color values.
2004-07-22 Sven Neumann <sven@gimp.org>
* libgimpcolor/gimprgb-parse.c
* libgimpcolor/gimprgb.h: use a signed integer to pass the string
length to the new parser functions. The API explicitely asks for
-1 to be passed...
* app/core/gimp.c
* app/core/gimpgradient-load.[ch]
* app/core/gimpgradient.h: added preliminary support for loading
simple SVG gradients (see bug #148127). Be careful with this new
feature; editing the loaded gradient will cause the SVG file to be
overwritten! Work in progress...
2004-07-22 Sven Neumann <sven@gimp.org>
* libgimpcolor/Makefile.am
* libgimpcolor/gimprgb-parse.c
* libgimpcolor/gimprgb.[ch]: added more RGB parsers and moved the
code to a dedicated file.
* libgimpcolor/gimpcolor.def: added new symbols.
* libgimpwidgets/gimpcolorscales.c: use gimp_rgb_parse_hex().
2004-07-22 Sven Neumann <sven@gimp.org>
* app/widgets/gimpactionview.c: rephrased the text for the dialog
that appears if a new shortcut collides with an existing one.
* libgimpcolor/gimprgb.[ch]: added new function gimp_rgb_parse_name()
which accepts RGB colors in hexadezimal notation or as SVG color
keywords.
2004-04-15 Sven Neumann <sven@gimp.org>
* libgimpcolor/gimpcolorspace.c (gimp_rgb_to_hsv): applied patch
from Marco Munari that removes a redundant "if" (bug #133540).
2004-03-20 Sven Neumann <sven@gimp.org>
* configure.in: set version number to 2.0.0, version string to
"2.0rc1".
* app/Makefile.am
* libgimp/Makefile.am
* libgimpbase/Makefile.am
* libgimpcolor/Makefile.am
* libgimpmath/Makefile.am
* libgimpmodule/Makefile.am
* libgimpthumb/Makefile.am
* libgimpwidgets/Makefile.am
* tools/Makefile.am: changed 1.3 to 2.0 all over the place.
* README
* NEWS: updated for the 2.0rc1 release.
2004-02-07 Hans Breuer <hans@breuer.org>
* gimpdefs.msc : new file to keep common definitions for the msc build
* **/makefile.msc : use common defintions, e.g. GIMP_VER
* Makefile.am : add the former to EXTRA_DIST
2004-01-21 Manish Singh <yosh@gimp.org>
* configure.in: modernized, made a lot of things m4 macros, and made
versioning a lot more finegrained, in anticipation for post-2.0.
* autogen.sh: bumped up libtool and glib minimum requirements to match
reality.
* gimp-2.0.pc.in
* gimpthumb-2.0.pc.in
* gimpui-2.0.pc.in: adapted to new versioning variables, and bring
in RT_LIBS when needed.
* */*/Makefile.am: adapted to new versioning variables.
2003-11-15 Sven Neumann <sven@gimp.org>
* libgimp/gimp.def
* libgimpcolor/gimpcolor.def
* libgimpwdidgets/gimpwidgets.def: updated based on a patch from
Michael Schumacher.
2003-11-08 Dave Neary <bolsh@gimp.org>
* libgimpcolor/gimpcolorspace.c: Finished gtk-docs. The docs for
these could perhaps include formulae, but for most of the
colorspaces that would be the same thing as copying the code
into a comment, which seems pointless.
2003-10-17 Sven Neumann <sven@gimp.org>
* app/widgets/gimpdnd.c: some minor code cleanup.
* libgimpcolor/gimpcolorspace.c: removed trailing whitespace.
2003-10-16 Dave Neary <bolsh@gimp.org>
* libgimpcolor/gimpcolorspace.c: Corrected mistake - two
definitions of gimp_hsl_value (both static). I changed the
latter to gimp_hsl_value_int.
2003-10-16 Dave Neary <bolsh@gimp.org>
* app/base/color-balance.c
* app/base/hue-saturation.c
* app/composite/gimp-composite-generic.c
* app/paint-funcs/paint-funcs-generic.h
* app/tools/gimphuesaturationtool.c
* libgimpcolor/gimpcolorspace.[ch]: Changed all occurrences of
gimp_rgb_to_hls_int and gimp_hls_to_rgb_int to
gimp_rgb_to_hsl_int and gimp_hsl_to_rgb_int respectively. This
closes bug #124661.
2003-10-09 Tor Lillqvist <tml@iki.fi>
* gimp-zip.in: New file, shell script used to build zipfiles for
distribution of Windows runtime and developer packages.
* Makefile.am
* configure.in: Add it, expand it.
* libgimp*/Makefile.am: On Windows, install and uninstall the .def
files.
* app/config/gimpguiconfig.c: On Windows, don't use the internal
help browser by default, as it isn't there. Don't use a fixed
guess for Internet Explorer's path on Windows. We don't even need
to know the path to the web browser, we can use ShellExecute() in
the webbrowser plug-in.
* plug-ins/common/webbrowser.c: Use ShellExecute() on Windows.
* po*/makefile.cygwin: Remove, unmaintained.
2003-09-10 Manish Singh <yosh@gimp.org>
* libgimpcolor/Makefile.am
* libgimpmath/Makefile.am: add a dependency on libgimpbase.la so
they get rebuilt when the version number changes.
* Makefile.am: build libgimpbase before the above
2003-09-03 Sven Neumann <sven@gimp.org>
* libgimpcolor/gimpcolorspace.[ch] (gimp_rgb_to_cmyk_int): made
pullout a percentage instead of a maximal value.
(gimp_rgb_to_cmyk): added a pullout parameter here as well.
* app/gui/info-window.c
* plug-ins/common/newsprint.c: changed accordingly.
* modules/colorsel_cmyk.c: allow to specify the amount of black
pulled out when converting to CMYK.
2003-09-02 Sven Neumann <sven@gimp.org>
* libgimpcolor/gimpcolorspace.c (gimp_rgb_to_cmyk_int): allow to
specify the amount of black pullout. Documented the function.
* plug-ins/common/newsprint.c: use the RGB to CMYK routine from
libgimpcolor.
2003-09-01 Tor Lillqvist <tml@iki.fi>
* README.win32: Update.
* app/composite/gimp-composite-mmx.c: For some reason the gcc&gas
combination used on Win32 wants identifiers prefixed with
underscores in the asm sequences.
* plug-ins/common/ps.c (ps_open): [Win32] Don't write the gs
executable name into the indirect command line file. Do write the
quoted form of the filename to it.
(my_shell_quote): New funcion. Use instead of g_shell_quote() on
Windows, as g_shell_quote() always uses single quotes, which don't
mean anything to the Windows shell (or C runtime startup
code). (This might be argued to be a bug in GLib, maybe
g_shell_quote should behave differently accoring to platform.)
* etc/gimprc.win32: Remove, generate with gimpconfig-dump.
* */makefile.mingw.in: Remove, unmaintained.
2003-08-31 Sven Neumann <sven@gimp.org>
* libgimpcolor/gimpcolorspace.c: applied a patch from S. Mukund
that fixes the gimp_hsv_to_rgb_int() and gimp_rgb_to_hsv_int()
functions (bug #115626).
2003-07-26 Hans Breuer <hans@breuer.org>
* libgimp/gimpcompat.h : renamed GimpOrientationType
with Compat postfix to avoid name clashing when using
this header together with libgimp/gimpenums.h
* app/composite/makefile.msc : (new file)
**/makefile.msc : updated
* libgimp/gimp.c : use static defined _tile<widht|height>
in this file instead of function call
* libgimp/gimp.def libgimp/libgimpui.def : moved from former
to latter : gimp_<brush|font|gradient|pattern>_select_<new|destroy>
added to former gimp_<brushes|gradients|patterns>_popup
* app/paint/gimppaintcore.h : removed double semicolon
which gave msvc error C2059: syntax error : ';'
* libgimpbase/gimpwin32-io.h : (new file) compatibilty defines
which were spread over multiple files to make up mostly for
missing unistd.h
* app/base/tile-swap.c app/core/gimpimagefile.c
libgimpbase/gimpdatafiles.c
plug-ins/FractalExplorer/FractalExplorer.c : use new header
* plug-ins/gflare/gflare.c
plug-ins/flame/flame.c
plug-ins/FractalExplorer/Dialogs.c :
removed #ifdef G_OS_WIN32 special casing, not needed anymore
due to g_file_test() usage
* app/text/*.* : changes required for build with PangoWin32,
but not commited ...
2003-07-20 Tor Lillqvist <tml@iki.fi>
* libgimpcolor/gimpcolor.def
* libgimpmath/gimpmath.def: Updates.
* libgimp/gimp.c (gimp_config): [Win32] Use gimp_tile_width() and
_height() instead of now nonexistent _gimp_tile_width and _height
variables.
2003-07-15 Sven Neumann <sven@gimp.org>
* libgimpcolor/gimpcolor.h: include <libgimpcolor/gimpcmyk.h>.
* modules/Makefile.am
* modules/colorsel_cmyk.c: added a simple CMYK color selector.
2003-07-14 Sven Neumann <sven@gimp.org>
* libgimpcolor/Makefile.am
* libgimpcolor/makefile.msc
* libgimpcolor/gimpcmyk.[ch]: new files that define a GimpCMYK
structure similar to GimpRGB.
* libgimpcolor/gimpcolortypes.h: added the GimpCMYK typedef.
* libgimpcolor/gimpcolorspace.[ch]: added conversions between RGB
and CMYK. This implementation is the naive approach without any
color calibration whatsoever.
* libgimpcolor/gimphsv.[ch]
* libgimpcolor/gimprgb.[ch]: purely cosmetic changes.
2003-06-21 Sven Neumann <sven@gimp.org>
* libgimpcolor/gimpcolorspace.c (gimp_hsv_to_rgb_int): removed
calls to ROUND() in two places where they should not have been
added. Fixes bug #115626.
2003-06-16 Sven Neumann <sven@gimp.org>
* libgimpcolor/gimpcolorspace.c: Applied a patch from S. Mukund
<muks@mukund.org> fixing rounding problems that caused bug #55261.
2003-06-11 Sven Neumann <sven@gimp.org>
* app/gui/info-window.c
* libgimpwidgets/gimpcolorscales.c
* libgimpwidgets/gimpcolorselect.c: applied some slightly modified
patches from Michael Bushey that fix rounding errors when
converting between color values in gdouble and guchar
representation (bug #109241).
* libgimpcolor/gimpcolorspace.c
* libgimpcolor/gimprgb.c: similar fixes here.
2003-05-20 Michael Natterer <mitch@gimp.org>
Some color API cleanup:
* libgimpcolor/gimpcolortypes.h: added struct GimpHSL. All values
are doubles in a [0.0..1.0] range.
* libgimpcolor/gimpcolorspace.[ch]: changed the GimpRGB <-> HSL
functions to use the new struct instead of separate hue, saturation
and lightness doubles. Note that the hue range has changed from
[0.0..360.0] to [0.0..1.0].
* app/base/colorize.c (colorize_calculate)
* plug-ins/common/AlienMap2.c (transform): changed accordingly.
2003-05-19 Michael Natterer <mitch@gimp.org>
* libgimpcolor/gimpcolorspace.c (gimp_hsl_to_rgb): fixed to work
like gimp_hls_to_rgb_int() (does the right thing now for the
saturation == 0 case). Some minor cleanups.
Implemented "Colorize" as suggested in bug #20509. It's not a
toggle in the "Hue/Saturation" tool dialog (which would be a gross
hack IMHO) but a separate tool. Fixes bug #20509.
* app/base/Makefile.am
* app/base/base-types.h
* app/base/colorize.[ch]: the actual mapping function lives
here. Its algorithm was taken from the "colorify" plug-in.
* app/tools/Makefile.am
* app/tools/gimpcolorizetool.[ch]: the tool.
* app/tools/tools.c: register it.
* app/gui/dialogs.c: session-manage its dialog.
* libgimpwidgets/gimpstock.[ch]
* themes/Default/images/Makefile.am
* themes/Default/images/tools/stock-tool-colorize-16.png
* themes/Default/images/tools/stock-tool-colorize-22.png: new
icons from Jimmac.
Unrelated:
* app/tools/gimpbrightnesscontrasttool.c
* app/tools/gimpcolorbalancetool.c
* app/tools/gimphuesaturationtool.c
* app/tools/gimpposterizetool.c
* app/tools/gimpthresholdtool.c: don't #include "tool_manager.h"
2003-03-02 Sven Neumann <sven@gimp.org>
* libgimpcolor/gimpbilinear.[ch]
* libgimpcolor/gimpcolor.def: applied a patch from David Necas
<yeti@physics.muni.cz> that adds gimp_bilinear_pixels_8(), a new
function that computes the bilinear interpolation of four pixels.
2003-03-02 Sven Neumann <sven@gimp.org>
* libgimpcolor/libgimpcolor-sections.txt
* libgimpcolor/tmpl/gimpbilinear.sgml: updated.
2003-02-27 Sven Neumann <sven@gimp.org>
* libgimpcolor/gimprgb.c: fixed gimp_rgb_intensity_uchar() which
used to return 0 or 1 instead of 0 to 255. Fixes bug #107202.