1. 14 Jan, 2018 1 commit
    • Michael Natterer's avatar
      Bug 792470 - Some filters e.g. "Levels" are not added to "Repeat last" history · b23f231a
      Michael Natterer authored
      The four remaining "classic" color tools (Brightness-Contrast, Curves,
      Levels and Threshold) are in fact just special UIs for otherwise
      completely normal filter ops.
      
      Add normal filter actions for them and invoke them like all
      other filters, which makes them show up in the filter history
      automatically.
      
      The only small hack needed is to special case them in
      gimp_gegl_procedure_execute_async() so the right tools are created
      instead of the default GimpOperationTool. Also, blacklist the
      automatically generated tools actions from action search and the
      shortcut editor.
      b23f231a
  2. 05 Jan, 2018 1 commit
    • Michael Natterer's avatar
      Bug 757444 - Curves and Levels should operate by default on linear RGB... · 54d3beab
      Michael Natterer authored
      ...and present linear RGB Histograms
      
      This is step one: implement the feature at all (without new defaults
      or proper GUI, cough).
      
      Add boolean "linear" properties to GimpOperationPointFilter,
      GimpCurvesConfig and GimpLevelsConfig.
      
      In the filter, simply set the input/output formats to linear in
      prepare().
      
      In the curves and levels tools, add "Linear" toggles from hell,
      like in the histogram dockable, and make sure things work right
      wrt changing and resetting the property, switching from levels
      to curves, and picking colors.
      
      The result currently changes when switching a non-nop curves/levels
      between perceptual and linear, because adjusting the parameters
      between the spaces is not implemented yet.
      54d3beab
  3. 02 Jan, 2018 1 commit
    • Michael Natterer's avatar
      Bug 762443 - Levels tool Output Level sliders works incorrectly · dce93c7d
      Michael Natterer authored
      Add "clamp-input" (which clamps the input values to [0..1])
      and "clamp-output" (which clips the final result to [0..1]),
      properties, parameters and GUI to:
      
      - GimpLevelsConfig
      - GimpOperationLevels
      - The levels tool dialog
      - The gimp_drawable_levels() PDB API
      
      The old deprecated gimp_levels() PDB API now sets both clamping
      options to TRUE which restores the 2.8 behavior.
      
      Also reorder some stuff in GimpLevelsConfig and elsewhere so the
      levels parameters are always in the same order.
      dce93c7d
  4. 14 Oct, 2013 1 commit
    • Michael Natterer's avatar
      app,libgimp*: fix includes to follow our include policy · 697572cc
      Michael Natterer authored
      - 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
      697572cc
  5. 10 May, 2012 2 commits
  6. 09 May, 2012 1 commit
  7. 03 May, 2012 1 commit
  8. 02 May, 2012 3 commits
  9. 29 Mar, 2012 1 commit
  10. 25 Mar, 2012 1 commit
  11. 28 Apr, 2011 1 commit
  12. 16 Jul, 2009 1 commit
  13. 21 Feb, 2009 1 commit
  14. 17 Jan, 2009 1 commit
    • Michael Natterer's avatar
      Change licence to GPLv3 (and to LGPLv3 for libgimp). · d9b5207a
      Michael Natterer authored
      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
      d9b5207a
  15. 01 Nov, 2008 1 commit
    • Martin Nordholts's avatar
      Prefix the GIMP GEGL operations with "gimp:" instead of "gimp-" so we · a9e18758
      Martin Nordholts authored
      * app/gegl/gimpoperation*.c: Prefix the GIMP GEGL operations with
      "gimp:" instead of "gimp-" so we follow the GEGL prefix style and
      better serialize to XML.
      
      * app/tools/gimp*tool.c
      
      * app/core/gimpdrawable-*.c
      * app/core/gimpdrawable.c
      * app/core/gimpimagemap.c
      * app/core/gimpprojection.c: Changed accordingly.
      
      svn path=/trunk/; revision=27512
      a9e18758
  16. 19 Oct, 2008 1 commit
    • Martin Nordholts's avatar
      Rename the convenient channel offset defines from FOO_PIX to FOO as this · e38ca549
      Martin Nordholts authored
      * app/base/base-types.h: Rename the convenient channel offset
      defines from FOO_PIX to FOO as this increases readability.
      
      * app/base/color-balance.c
      * app/base/colorize.c
      * app/base/desaturate.c
      * app/base/hue-saturation.c
      * app/base/siox.c
      * app/base/threshold.c
      
      * app/core/gimp-edit.c
      * app/core/gimp-transform-region.c
      * app/core/gimpchannel.c
      * app/core/gimpdrawable-bucket-fill.c
      * app/core/gimpdrawable-convert.c
      * app/core/gimpdrawable-stroke.c
      * app/core/gimpdrawable.c
      * app/core/gimpimage-convert.c
      * app/core/gimpimage.c
      * app/core/gimppalette-import.c
      * app/core/gimppickable.c
      
      * app/gegl/gimpoperation*mode.c
      * app/gegl/gimpoperationcolorbalance.c
      * app/gegl/gimpoperationcolorize.c
      * app/gegl/gimpoperationhuesaturation.c
      * app/gegl/gimpoperationlevels.c
      * app/gegl/gimpoperationposterize.c
      * app/gegl/gimpoperationthreshold.c
      
      * app/paint-funcs/subsample-region.c
      
      * app/paint/gimpclone.c
      * app/paint/gimppaintbrush.c
      
      * app/widgets/gimpviewrenderer.c: Adapt.
      
      svn path=/trunk/; revision=27324
      e38ca549
  17. 11 Jun, 2008 1 commit
    • Sven Neumann's avatar
      app/gegl/gimpoperationcolorbalance.c app/gegl/gimpoperationcolorize.c · 0b6e61e1
      Sven Neumann authored
      2008-06-11  Sven Neumann  <sven@gimp.org>
      
      	* app/gegl/gimpoperationcolorbalance.c
      	* app/gegl/gimpoperationcolorize.c
      	* app/gegl/gimpoperationcurves.c
      	* app/gegl/gimpoperationdesaturate.c
      	* app/gegl/gimpoperationhuesaturation.c
      	* app/gegl/gimpoperationlevels.c
      	* app/gegl/gimpoperationposterize.c
      	* app/gegl/gimpoperationthreshold.c
      	* app/gegl/gimpoperationtilesink.c
      	* app/gegl/gimpoperationtilesource.c: added const to GeglRectangle*
      	argument.
      
      svn path=/trunk/; revision=25918
      0b6e61e1
  18. 04 Jun, 2008 1 commit
    • Michael Natterer's avatar
      depend on GEGL >= 0.0.17, add check for BABL => 0.0.21. · 24acc89f
      Michael Natterer authored
      2008-06-04  Michael Natterer  <mitch@gimp.org>
      
      	* configure.in: depend on GEGL >= 0.0.17, add check for
      	BABL => 0.0.21.
      
      	* app/sanity.c: bump GEGL sanity check and add BABL check.
      
      	* app/gegl/gimpoperationcolorbalance.c
      	* app/gegl/gimpoperationcolorize.c
      	* app/gegl/gimpoperationcurves.c
      	* app/gegl/gimpoperationdesaturate.c
      	* app/gegl/gimpoperationhuesaturation.c
      	* app/gegl/gimpoperationlevels.c
      	* app/gegl/gimpoperationposterize.c
      	* app/gegl/gimpoperationthreshold.c: adapt to new process()
      	signature.
      
      
      svn path=/trunk/; revision=25886
      24acc89f
  19. 11 May, 2008 1 commit
    • Sven Neumann's avatar
      optimized for the case where gamma is 1.0. · 9070d836
      Sven Neumann authored
      2008-05-11  Sven Neumann  <sven@gimp.org>
      
      	* app/gegl/gimpoperationlevels.c (gimp_operation_levels_map):
      	optimized for the case where gamma is 1.0.
      
      
      svn path=/trunk/; revision=25636
      9070d836
  20. 12 Feb, 2008 1 commit
    • Michael Natterer's avatar
      app/gegl/gimpoperationcolorbalance.c app/gegl/gimpoperationcolorize.c · c409f1b8
      Michael Natterer authored
      2008-02-12  Michael Natterer  <mitch@gimp.org>
      
      	* app/gegl/gimpoperationcolorbalance.c
      	* app/gegl/gimpoperationcolorize.c
      	* app/gegl/gimpoperationcurves.c
      	* app/gegl/gimpoperationdesaturate.c
      	* app/gegl/gimpoperationhuesaturation.c
      	* app/gegl/gimpoperationlevels.c
      	* app/gegl/gimpoperationposterize.c
      	* app/gegl/gimpoperationthreshold.c
      	* app/gegl/gimpoperationtilesink.c
      	* app/gegl/gimpoperationtilesource.c: added categories and very
      	lame descriptions. Dunno if the categories are good that way but
      	at least they are not NULL now.
      
      
      svn path=/trunk/; revision=24876
      c409f1b8
  21. 30 Jan, 2008 1 commit
    • Øyvind Kolås's avatar
      stop using gegl_operation_class_set_name() for gimp gegl ops. · 47fc7211
      Øyvind Kolås authored
      * app/gegl/gimpoperationcolorbalance.c:
      * app/gegl/gimpoperationcolorize.c:
      * app/gegl/gimpoperationcurves.c:
      * app/gegl/gimpoperationdesaturate.c:
      * app/gegl/gimpoperationhuesaturation.c:
      * app/gegl/gimpoperationlevels.c:
      * app/gegl/gimpoperationposterize.c:
      * app/gegl/gimpoperationthreshold.c:
      * app/gegl/gimpoperationtilesink.c:
      * app/gegl/gimpoperationtilesource.c:
      * app/gegl/gimpoperationdesaturate.c: stop using
      gegl_operation_class_set_name() for gimp gegl ops.
      
      svn path=/trunk/; revision=24750
      47fc7211
  22. 28 Jan, 2008 1 commit
    • Michael Natterer's avatar
      app/gegl/gimpoperationcolorbalance.c app/gegl/gimpoperationcolorize.c · 2b2bd6e9
      Michael Natterer authored
      2008-01-28  Michael Natterer  <mitch@gimp.org>
      
      	* app/gegl/gimpoperationcolorbalance.c
      	* app/gegl/gimpoperationcolorize.c
      	* app/gegl/gimpoperationcurves.c
      	* app/gegl/gimpoperationdesaturate.c
      	* app/gegl/gimpoperationhuesaturation.c
      	* app/gegl/gimpoperationlevels.c
      	* app/gegl/gimpoperationposterize.c
      	* app/gegl/gimpoperationthreshold.c: replace for() loops over the
      	samples by while() loop counting down the passed "samples"
      	parameter.
      
      
      svn path=/trunk/; revision=24738
      2b2bd6e9
  23. 25 Jan, 2008 1 commit
    • Michael Natterer's avatar
      app/gegl/Makefile.am app/gegl/gegl-types.h new parent class for all image · a85213cd
      Michael Natterer authored
      2008-01-25  Michael Natterer  <mitch@gimp.org>
      
      	* app/gegl/Makefile.am
      	* app/gegl/gegl-types.h
      	* app/gegl/gimpoperationpointfilter.[ch]: new parent class for all
      	image map operations. Features a "config" member and "public"
      	get_property() and set_property() functions to be used by
      	subclasses.
      
      	* app/gegl/gimpoperationcolorbalance.[ch]
      	* app/gegl/gimpoperationcolorize.[ch]
      	* app/gegl/gimpoperationcurves.[ch]
      	* app/gegl/gimpoperationhuesaturation.[ch]
      	* app/gegl/gimpoperationlevels.[ch]
      	* app/gegl/gimpoperationposterize.[ch]
      	* app/gegl/gimpoperationthreshold.[ch]: derive from
      	GimpOperationPointFilter, remove "config" members, remove
      	finalize(), get_property() and set_property() implementations and
      	use the ones provided by the parent class.
      
      
      svn path=/trunk/; revision=24713
      a85213cd
  24. 23 Jan, 2008 1 commit
    • Michael Natterer's avatar
      new utility function which maps a single value. · 5d07620d
      Michael Natterer authored
      2008-01-23  Michael Natterer  <mitch@gimp.org>
      
      	* app/gegl/gimpoperationlevels.[ch]
      	(gimp_operation_levels_map_input): new utility function which maps
      	a single value.
      
      	* app/tools/gimplevelstool.[ch] (levels_update_adjustments): use the
      	new function to create the input arrays for gimp_color_bar_set_buffer().
      
      	Removed the Levels struct from the GimpLevelsTool struct and only
      	use it in map() when needed.
      
      	* app/base/levels.[ch]: remove obsolete API and struct members.
      
      
      svn path=/trunk/; revision=24682
      5d07620d
  25. 17 Jan, 2008 1 commit
    • Michael Natterer's avatar
      app/gegl/Makefile.am app/gegl/gegl-types.h new config object for the · adf8f480
      Michael Natterer authored
      2008-01-17  Michael Natterer  <mitch@gimp.org>
      
      	* app/gegl/Makefile.am
      	* app/gegl/gegl-types.h
      	* app/gegl/gimplevelsconfig.[ch]: new config object for the levels
      	operation's settings.
      
      	* app/gegl/gimpoperationlevels.[ch]: remove all properties and add
      	a "config" property instead.
      
      	* app/tools/gimplevelstool.[ch]: keep a GimpLevelsConfig around.
      
      
      svn path=/trunk/; revision=24637
      adf8f480
  26. 16 Jan, 2008 1 commit
    • Michael Natterer's avatar
      Fix gegl types and includes so we can include operations from app/gegl in · 7b8fa4c3
      Michael Natterer authored
      2008-01-16  Michael Natterer  <mitch@gimp.org>
      
      	Fix gegl types and includes so we can include operations from
      	app/gegl in other gimp files (needed soon):
      
      	* app/gegl/gegl/gegl-types.h: not copied from gegl any longer.
      	Now contains only two typedefs needed by the copied operation
      	headers.
      
      	* app/gegl/gegl-types.h: include above types file.
      
      	* app/gegl/gimp-gegl.c
      	* app/gegl/gimpoperationcolorbalance.c
      	* app/gegl/gimpoperationcolorize.c
      	* app/gegl/gimpoperationdesaturate.c
      	* app/gegl/gimpoperationhuesaturation.c
      	* app/gegl/gimpoperationlevels.c
      	* app/gegl/gimpoperationposterize.c
      	* app/gegl/gimpoperationthreshold.c
      	* app/gegl/gimpoperationtilesink.c
      	* app/gegl/gimpoperationtilesource.c: include only <gegl.h> and
      	"gegl-types.h" from this directory, which is much more gimpish
      	now. Include "gegl/buffer/gegl-buffer.h" in the source and sink
      	operations.
      
      	* app/tools/gimpimagemaptool.h: warn about inclusion of <gegl.h>
      	only if it hasn't been included before, so it only warns in the
      	files where we still have to address this issue.
      
      
      svn path=/trunk/; revision=24625
      7b8fa4c3
  27. 15 Jan, 2008 1 commit
    • Michael Natterer's avatar
      app/gegl/gimpoperationcolorize.[ch] app/gegl/gimpoperationlevels.[ch] · 57211570
      Michael Natterer authored
      2008-01-15  Michael Natterer  <mitch@gimp.org>
      
      	* app/gegl/gimpoperationcolorize.[ch]
      	* app/gegl/gimpoperationlevels.[ch]
      	* app/gegl/gimpoperationthreshold.[ch]: changed all properties from
      	float to double.
      
      	* app/gegl/gimpoperationcolorize.c: normalized property ranges to
      	[0.0..1.0] or [-1.0..1.0] resp.
      
      	* app/tools/gimpcolorizetool.c: changed accordingly.
      
      
      svn path=/trunk/; revision=24621
      57211570
  28. 07 Jan, 2008 2 commits
    • Michael Natterer's avatar
      add properties, some cleanup. · 27319afd
      Michael Natterer authored
      2008-01-07  Michael Natterer  <mitch@gimp.org>
      
      	* app/gegl/gimpoperationlevels.[ch]: add properties, some cleanup.
      
      	* app/tools/gimplevelstool.c: use gegl_node_set() instead of
      	accessing the operation directly.
      
      
      svn path=/trunk/; revision=24566
      27319afd
    • Michael Natterer's avatar
      app/gegl/Makefile.am app/gegl/gegl-types.h new operator. · 1c804c8d
      Michael Natterer authored
      2008-01-07  Michael Natterer  <mitch@gimp.org>
      
      	* app/gegl/Makefile.am
      	* app/gegl/gegl-types.h
      	* app/gegl/gimpoperationlevels.[ch]: new operator.
      
      	* app/gegl/gimp-gegl.c: register it.
      
      	* app/tools/gimplevelstool.c: use it,
      
      
      svn path=/trunk/; revision=24565
      1c804c8d