1. 11 Jul, 2018 1 commit
  2. 11 Feb, 2018 1 commit
  3. 22 Jan, 2018 2 commits
    • Jehan's avatar
      app: all remaining g_assert() replaced by critical warning and return... · 4c2df9b3
      Jehan authored
      ... in app/core.
      Continuing on my crusade against asserting and crashing GIMP.
    • Jehan's avatar
      app: we should not have any g_assert*() code if possible. · f87bc3fe
      Jehan authored
      Replace all g_assert_not_reached() in app/core/ by g_return_if_reached()
      or g_return_val_if_reached(). GIMP may handle a lot of creative work,
      sometimes unsaved for hours. We should not just crash on purpose.
      g_assert*() could theoretically be turned off on a glib build, but this
      is nearly never done, and is not a solution either (actually it is
      probably even worse because the broken code would just continue on a
      forbidden path). It is much better to return with a warning on such
      forbidden code paths, allowing someone to report a bug without
      experiencing a crash and data loss.
      For now, I only took care of g_assert_not_reached() inside app/core.
      More g_assert*() code should be replaced.
      Note: assert are acceptable in plug-ins though, but not in the main
      executable, unless absolutely necessary (something happening so bad that
      crash is better than continuing).
  4. 15 Jul, 2017 1 commit
  5. 29 Oct, 2016 1 commit
    • Michael Natterer's avatar
      Bug 769738 - Add color tags/labels for layers/channels/paths · 31fcd79d
      Michael Natterer authored
      Add property "color-tag" of type enum GimpColorTag to GimpItem so all
      layers, channels and paths can be tagged with a color.
      For interoperability, use the color list from Krita which is a
      superset of Photoshop's colors.
      Features a "Color Tag" submenu in the layers, channels and paths
      menus, a row of color radio buttons in the properties dialogs,
      undo and PDB API.
      As a side effect, some common code is now factores out into
      items-actions.[ch] and items-commands.[ch] which adds visible, linked
      and lock actions for layers and channels.
  6. 12 Aug, 2014 1 commit
  7. 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
      - fix up includes as if libgimpbase depended in GIO, which it soon will
  8. 12 Nov, 2012 1 commit
  9. 09 Nov, 2012 1 commit
    • Michael Natterer's avatar
      Bug 674160 - Redesign of "Lock panel" · d4933b30
      Michael Natterer authored
      Apply and heavily modify patch from remyDev which adds "lock position"
      to GimpItem, similar to "lock content". Lock position disables all
      sorts of translation and transform, from the GUI and the PDB.
      Cleaned up some aspects of the lock content code as well because a
      second instance of similar code always shows what went wrong the first
  10. 30 Jan, 2011 1 commit
  11. 12 Jan, 2011 1 commit
  12. 07 Feb, 2010 2 commits
  13. 06 Feb, 2010 1 commit
    • Michael Natterer's avatar
      Merge the layer, channel and vectors reorder undo into one item undo · 7bfd5dcf
      Michael Natterer authored
      - get rid of the individual undo types and add GIMP_UNDO_ITEM_REORDER.
      - replace the pushing functions by a single one.
      - merge all the actual undo code into gimpitempropundo.[ch].
      - use gimp_item_tree_reorder_item() to do the actual reordering.
      - fix gimp_item_tree_reorder_item() to use an ordinary "push_undo"
        boolean again instead of a pointer to an undo function.
      GimpVectorsPropUndo is now a completely empty skeleton. Keep it around
      anyway, maybe we'll get vectors properties to undo soon.
  14. 31 Aug, 2009 1 commit
  15. 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
  16. 02 Nov, 2008 2 commits
    • Michael Natterer's avatar
      renamed gimp_item_offsets() to gimp_item_get_offset() and · 5b68a1d0
      Michael Natterer authored
      2008-11-03  Michael Natterer  <mitch@gimp.org>
      	* app/core/gimpitem.[ch]: renamed
      	gimp_item_offsets() to gimp_item_get_offset() and
      	gimp_item_set_offsets() to gimp_item_set_offset().
      	* app/actions/drawable-commands.c
      	* app/actions/layers-commands.c
      	* app/core/<many>.c
      	* app/display/gimpdisplayshell-dnd.c
      	* app/display/gimpdisplayshell-preview.c
      	* app/display/gimpdisplayshell-transform.c
      	* app/display/gimpdisplayshell.c
      	* app/paint/gimppaintcore-stroke.c
      	* app/paint/gimppaintcore.c
      	* app/paint/gimpsourcecore.c
      	* app/text/gimptextlayer-xcf.c
      	* app/tools/<many>.c
      	* app/widgets/gimptoolbox-dnd.c
      	* tools/pdbgen/pdb/drawable.pdb
      	* tools/pdbgen/pdb/drawable_transform.pdb
      	* tools/pdbgen/pdb/selection.pdb
      	* tools/pdbgen/pdb/transform_tools.pdb
      	* tools/pdbgen/pdb/vectors.pdb: changed accordingly.
      	* app/pdb/drawable-cmds.c
      	* app/pdb/drawable-transform-cmds.c
      	* app/pdb/selection-cmds.c
      	* app/pdb/vectors-cmds.c
      	* app/pdb/transform-tools-cmds.c: regenerated.
      svn path=/trunk/; revision=27529
    • Martin Nordholts's avatar
      Move the base GeglNode here in preparation for moving the GimpLayer · 24fac1de
      Martin Nordholts authored
      * app/core/gimpitem.[ch]: Move the base GeglNode here in
      preparation for moving the GimpLayer gegl:shift op to here as
      well. After all, the offsets are properties of GimpItem and not
      * app/core/gimpdrawable.[ch]: Delegate appropriate stuff to the
      GimpItem base class, like part of the visibility toggling and the
      creation and destruction of the GimpItem node.
      * app/core/gimplayer.c
      * app/core/gimpchannel.c
      * app/core/gimpdrawablestack.c: Changed accordingly, use the new
      function names.
      * app/core/gimpitempropundo.c
      * app/vectors/gimpvectors-warp.c
      * app/vectors/gimpvectorsmodundo.c: Include gegl.h instead of
      svn path=/trunk/; revision=27521
  17. 16 Nov, 2007 1 commit
    • Michael Natterer's avatar
      app/base/temp-buf.c app/base/tile-manager.c accept NULL in all · 036085fd
      Michael Natterer authored
      2007-11-16  Michael Natterer  <mitch@gimp.org>
      	* app/base/temp-buf.c
      	* app/base/tile-manager.c
      	* app/core/gimpobject.c: accept NULL in all get_memsize() functions.
      	* app/core/gimp-utils.[ch]: ditto. Added gimp_string_get_memsize().
      	* app/core/gimp.c
      	* app/core/gimpbrush.c
      	* app/core/gimpbuffer.c
      	* app/core/gimpcontainer.c
      	* app/core/gimpcontext.c
      	* app/core/gimpdata.c
      	* app/core/gimpdrawable.c
      	* app/core/gimpdrawablemodundo.c
      	* app/core/gimpdrawableundo.c
      	* app/core/gimpimage.c
      	* app/core/gimpitempropundo.c
      	* app/core/gimplayer.c
      	* app/core/gimpmaskundo.c
      	* app/core/gimppalette.c
      	* app/core/gimpparasitelist.c
      	* app/core/gimppattern.c
      	* app/core/gimppreviewcache.c
      	* app/core/gimpundo.c
      	* app/core/gimpundostack.c
      	* app/core/gimpviewable.c
      	* app/pdb/gimpprocedure.c
      	* app/plug-in/gimpplugindef.c
      	* app/plug-in/gimppluginmanager.c
      	* app/plug-in/gimppluginprocedure.c
      	* app/text/gimptext.c
      	* app/text/gimptextlayer.c
      	* app/text/gimptextundo.c
      	* app/vectors/gimpvectorsmodundo.c: simplify
      	GimpObject::get_memsize() implementations accordingly.
      	* app/core/gimpimageundo.c: ditto. Always keep around colormaps in
      	chunks of GIMP_IMAGE_COLORMAP_SIZE to be coonsistent with the
      	other colormap handling code.
      svn path=/trunk/; revision=24174
  18. 02 Feb, 2007 1 commit
    • Michael Natterer's avatar
      app/core/gimpimageundo.[ch] implement image and item parasite attach and · 3c6912c5
      Michael Natterer authored
      2007-02-02  Michael Natterer  <mitch@gimp.org>
      	* app/core/gimpimageundo.[ch]
      	* app/core/gimpitempropundo.[ch]: implement image and item
      	parasite attach and remove undos. They are image/item properties
      	after all.
      	* app/core/gimpimage-undo-push.[ch]: use them here and move the
      	undo functions to the resp. image and item property sections.
      svn path=/trunk/; revision=21835
  19. 31 Jan, 2007 1 commit
  20. 30 Jan, 2007 1 commit
    • Michael Natterer's avatar
      app/core/gimpguideundo.c app/core/gimpimageundo.c · e5419559
      Michael Natterer authored
      2007-01-30  Michael Natterer  <mitch@gimp.org>
      	* app/core/gimpguideundo.c
      	* app/core/gimpimageundo.c
      	* app/core/gimplayerpropundo.c
      	* app/core/gimpsamplepointundo.c
      	* app/core/gimpdrawableundo.c
      	* app/core/gimpitempropundo.c
      	* app/core/gimpchannelpropundo.c
      	* app/core/gimpchannelundo.c
      	* app/core/gimpitemundo.c: chain up last in GimpUndo::free(), use
      	switch() in place of if/else when there is more than one undo type
      	implemented in one file, g_assert_not_reached() in default:, some
      	minor cleanups.
      svn path=/trunk/; revision=21817
  21. 28 Jan, 2007 1 commit
    • Michael Natterer's avatar
      app/core/Makefile.am app/core/core-types.h new undo class which handles · 60370072
      Michael Natterer authored
      2007-01-28  Michael Natterer  <mitch@gimp.org>
      	* app/core/Makefile.am
      	* app/core/core-types.h
      	* app/core/gimpitempropundo.[ch]: new undo class which handles
      	* app/core/gimpimage-undo-push.c: use the new undo class and
      	remove the resp. code here.
      svn path=/trunk/; revision=21790