1. 23 May, 2014 1 commit
  2. 13 May, 2014 1 commit
  3. 12 May, 2014 1 commit
  4. 13 Mar, 2014 1 commit
    • João Sebastião de Oliveira Bueno's avatar
      Adds "fill" arrange modes to the Align Tool · 72ac5370
      João Sebastião de Oliveira Bueno authored
      The Align Tool had to be used in a very hacky way if one
      intended to evenly distribute items across an image,
      or other reference object (it would actually require one to
      calculate the item spacing out of GIMP). This adds vertical
      and horizontal fill modes: the reference object is divided
      in N equal segments, where N is the number of items,
      and each item is placed in the center of one of
      these segments. The existing "offset" parameter
      is used as an extra margin for the distribution,
      and can be set to negative values, so that the items can
      even get moved outside the boundaries of the reference object.
      72ac5370
  5. 08 Mar, 2014 1 commit
  6. 26 Oct, 2013 1 commit
    • Hartmut Kuhse's avatar
      Completely rewrite metadata handling using gexiv2 · 21bed1e2
      Hartmut Kuhse authored
      Based on original patches from Hartmut Kuhse and modified
      by Michael Natterer. Changes include:
      
      - remove libexif dependency and add a hard dependency on gexiv2
      - typedef GExiv2Metadata to GimpMetadata to avoid having to
        include gexiv2 globally
      - add basic GimpMetadata handling functions to libgimpbase
      - add image and image file specific metadata functions to libgimp,
        including the exif orientation image rotate dialog
      - port plug-ins to use the new APIs
      - port file-tiff-save's UI to GtkBuilder
      - add new plug-in "metadata" to view the image's metadata
      - keep metadata around as GimpImage member in the core
      - update the image's metadata on image size, resolution and precision
        changes
      - obsolete the old metadata parasites
      - migrate the old parasites to new GimpMetadata object on XCF load
      21bed1e2
  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
        globally
      - fix up includes as if libgimpbase depended in GIO, which it soon will
      697572cc
  8. 23 Jun, 2013 1 commit
    • Michael Natterer's avatar
      Add support for both gamma-corrected and linear for all bit depths · caf73f5f
      Michael Natterer authored
      - Add new enum GimpComponentType which contains u8, u16, u32 etc.
      - Change GimpPrecision to be u8-linear, u8-gamma, u16-linear etc.
      - Add all the needed formats to gimp-babl.c
      - Bump the XCF version to 5 and make sure version 4 with the old
        GimpPrecision enum values is loaded correctly
      
      This change blows up the precision enums in "New Image" and
      Image->Precision so we can test all this stuff. It is undecided what
      format will be user-visible options in 2.10.
      caf73f5f
  9. 10 Nov, 2012 1 commit
  10. 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
      time.
      d4933b30
  11. 06 Sep, 2012 1 commit
    • Michael Natterer's avatar
      Bug 683462 - cropping with rectangular select tool leaves misaligned... · e546f2b4
      Michael Natterer authored
      Reset the tool on image changes again, but not if only the active
      drawable changes, so keep bug #678890 closed:
      
      Introduce new dirty flag GIMP_DIRTY_ACTIVE_DRAWABLE and set it on all
      tools' dirty_mask except for rect select. Check the new flag when
      reseting the active tool because of a drawable change.
      e546f2b4
  12. 02 May, 2012 11 commits
  13. 09 Oct, 2010 2 commits
  14. 02 Oct, 2010 1 commit
    • Michael Natterer's avatar
      app: add a layer boundary canvas item class · 3e69ae00
      Michael Natterer authored
      and use it to draw the layer boundary. Remove a lot of stuff
      that was there only to draw the boundary before:
      
      - remvoe all layer boundary stuff from the selection code
      - remove gimp_display_shell_draw_layer()
      - remove enum values GIMP_SELECTION_LAYER_ON,OFF from core-enums.h
      - remove all lines calling gimp_image_selection_control() with
        the removed enum values
      - remove gimp_layer_boundary()
      3e69ae00
  15. 08 Apr, 2010 1 commit
  16. 14 Mar, 2010 2 commits
  17. 21 Feb, 2010 1 commit
  18. 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.
      7bfd5dcf
  19. 13 Sep, 2009 1 commit
    • Michael Natterer's avatar
      Fix undoing a group layer type conversion · 717b4e6a
      Michael Natterer authored
      * app/core/gimpdrawable.[ch]: add "gboolean push_undo" to
        GimpDrawable::convert_type().
      
      * app/core/gimpdrawable-convert.[ch]: same here for the gray and rgb
        conversion functions.
      
      * app/core/gimpchannel.c
      * app/core/gimplayer.c: pass FALSE when called from GimpItem::convert()
        because it can be called on unattached items only.
      
      * app/core/gimpimage-convert.c: pass TRUE.
      
      * app/core/core-enums.[ch]
      * app/core/gimpgrouplayerundo.[ch]
      * app/core/gimpimage-undo-push.[ch]: add GIMP_UNDO_GROUP_LAYER_CONVERT
        which simply calls gimp_drawable_convert_type() with the old type
        when undone/redone.
      
      * app/core/gimpgrouplayer.c: push a group layer convert undo so this
        can be properly undone/redone.
      717b4e6a
  20. 07 Sep, 2009 1 commit
    • Michael Natterer's avatar
      Add facility to compress multiple group layer resizings into one · 4df9b252
      Michael Natterer authored
      * app/core/gimpgrouplayer.[ch]: add gimp_group_layer_suspend_resize()
        and gimp_group_layer_resume_resize() and call them around functions
        where all a group's children are transformed (translated, resized
        etc).  This way we go from the worst case of reallocating the
        group's projection tiles once for each child down to exactly one
        reallocation.
      
      * app/core/Makefile.am
      * app/core/core-enums.[ch]
      * app/core/core-types.h
      * app/core/gimpimage-undo-push.[ch]
      * app/core/gimpgrouplayerundo.[ch]: add new undo class
        GimpGroupLayerUndo which implements undos for suspend/resume of
        group layers and calls them in reverse order when undoing.
      4df9b252
  21. 06 Aug, 2009 1 commit
    • Michael Natterer's avatar
      Make reordering items between groups work in the core and the UI · d059f239
      Michael Natterer authored
      * app/core/gimpimage.[ch]: rename all gimp_image_reposition_foo() to
        gimp_image_reorder_foo() and added "new_parent" parameters. Factor
        out calculating of the item's new container and index to a utility
        function.
      
      * app/core/core-enums.[ch]: rename the REPOSITION undos to REORDER.
      
      * app/core/gimpimage-undo-push.[ch]
      * app/core/gimpchannelpropundo.[ch]
      * app/core/gimplayerpropundo.[ch]
      * app/vectors/gimpvectorspropundo.[ch]: change accordingly. Remember
        the old parent item in all item reorder undos.
      
      * app/widgets/gimpitemtreeview.h: change GimpReorderItemFunc prototype
        accordingly.
      
      * app/widgets/gimpchanneltreeview.c
      * app/widgets/gimplayertreeview.c
      * app/widgets/gimpvectorstreeview.c (class_init): follow image API
        name changes.
      
      * app/widgets/gimpitemtreeview.c (gimp_item_tree_view_drop_viewable):
        implement reordering of items between groups.
      
      * app/widgets/gimpcontainertreeview.c
        (gimp_container_tree_view_reorder_item): fix to reorder the item
        within its level of the tree (unrelated to above changes, but needed
        to make them work).
      d059f239
  22. 09 Nov, 2008 2 commits
    • Michael Natterer's avatar
      remove floating_sel_remove() and reorder one function. · 1cdf6c5b
      Michael Natterer authored
      2008-11-09  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimplayer-floating-sel.[ch]: remove
      	floating_sel_remove() and reorder one function.
      
      	* app/core/gimpimage.c (gimp_image_remove_layer): add the single
      	line of special code that needs to be done when removing a
      	floating selection.
      
      	* app/core/gimpselection.c
      	* app/actions/layers-commands.c
      	* tools/pdbgen/pdb/floating_sel.pdb: changed accordingly.
      
      	* app/pdb/floating-sel-cmds.c: regenerated.
      
      	* app/core/core-enums.[ch]
      	* app/core/gimpimage-undo.c: remove enum value
      	GIMP_UNDO_GROUP_FS_REMOVE.
      
      
      svn path=/trunk/; revision=27583
      1cdf6c5b
    • Michael Natterer's avatar
      Bye bye floating_sel_rigor() and floating_sel_relax(): · 855b114f
      Michael Natterer authored
      2008-11-09  Michael Natterer  <mitch@gimp.org>
      
      	Bye bye floating_sel_rigor() and floating_sel_relax():
      
      	* app/core/gimpdrawable.[ch] (gimp_drawable_init_src_region):
      	implement compositing the floating selection on the fly. Add
      	return parameter "TileManager **temp_tiles" which returns the temp
      	buffer used for compositing; the caller has to unref the tiles.
      
      	* app/core/gimpchannel-project.c
      	* app/core/gimplayer-project.c: unref the temp_tiles.
      
      	* app/core/gimplayer.[ch]: remove members fs.backing_store and
      	fs.initial.
      
      	* app/core/gimplayer-floating-sel.[ch]: remove functions rigor(),
      	relax(), store() and restore(), they are not needed any longer.
      	Some minor cleanup, more to come.
      
      	* app/core/gimpprojection-construct.c: don't composite the
      	floating selection before projecting because that happens on the
      	fly now.
      
      	* app/core/core-enums.[ch]
      	* app/core/gimpfloatingselundo.c
      	* app/core/gimpimage-undo-push.[ch]: remove the rigor and relax
      	undos.
      
      	* app/core/gimpdrawable.c
      	* app/core/gimpimage-convert.c
      	* app/core/gimpimage-duplicate.c
      	* app/core/gimpimage.c
      	* app/core/gimplayer.c
      	* app/xcf/xcf-save.c: remove all calls to rigor and relax and all
      	implementations of virtual functions that were just there to
      	rigor/releax around chaining up.
      
      	* tools/pdbgen/pdb/floating_sel.pdb: remove all code from the
      	rigor and relax wrappers and deprecate the API.
      
      	* app/pdb/floating-sel-cmds.c
      	* libgimp/gimpfloatingsel_pdb.[ch]: regenerated.
      
      	* plug-ins/file-xjt/xjt.c: don't call rigor and relax.
      
      
      svn path=/trunk/; revision=27579
      855b114f
  23. 06 Nov, 2008 1 commit
    • Sven Neumann's avatar
      use NC_() to mark enum values for translation. Use a lower-case short form · 02817081
      Sven Neumann authored
      2008-11-06  Sven Neumann  <sven@gimp.org>
      
      	* tools/gimp-mkenums: use NC_() to mark enum values for 
      translation.
      	Use a lower-case short form of the type name as translation 
      context.
      
      	* libgimp/libgimp-intl.h: define the NC_() macro as noop.
      
      	* libgimpbase/gimpbasetypes.[ch]
      	* libgimpbase/gimpbase.def: added new functions to set and
      	get a translation context on an enum type.
      
      	* app/base/Makefile.am
      	* app/core/Makefile.am
      	* app/display/Makefile.am
      	* app/paint/Makefile.am
      	* app/plug-in/Makefile.am
      	* app/text/Makefile.am
      	* app/tools/Makefile.am
      	* app/widgets/Makefile.am
      	* libgimp/Makefile.am
      	* libgimpbase/Makefile.am:
      	* libgimpconfig/Makefile.am
      	* libgimpthumb/Makefile.am
      	* libgimpwidgets/Makefile.am: register the translation context
      	with the enum types.
      
      	* app/display/display-enums.h
      	* libgimpbase/gimpbaseenums.h
      	* libgimpconfig/gimpcolorconfig-enums.h: removed old-style 
      explicit
      	translation context.
      
      	* app/base/base-enums.c
      	* app/core/core-enums.c
      	* app/display/display-enums.c
      	* app/paint/paint-enums.c
      	* app/plug-in/plug-in-enums.c
      	* app/text/text-enums.c
      	* app/tools/tools-enums.c
      	* app/widgets/widgets-enums.c
      	* libgimpbase/gimpbaseenums.c
      	* libgimpconfig/gimpcolorconfig-enums.c
      	* libgimpwidgets/gimpwidgetsenums.c: regenerated.
      
      
      svn path=/trunk/; revision=27562
      02817081
  24. 03 Nov, 2008 1 commit
    • Sven Neumann's avatar
      app/base/Makefile.am app/core/Makefile.am app/display/Makefile.am · fe520925
      Sven Neumann authored
      2008-11-03  Sven Neumann  <sven@gimp.org>
      
      	
      	* app/base/Makefile.am
      	* app/core/Makefile.am
      	* app/display/Makefile.am
      	* app/paint/Makefile.am
      	* app/plug-in/Makefile.am
      	* app/text/Makefile.am
      	* app/tools/Makefile.am
      	* app/widgets/Makefile.am
      	* libgimp/Makefile.am
      	* libgimpbase/Makefile.am: 
      	* libgimpconfig/Makefile.am
      	* libgimpthumb/Makefile.am
      	* libgimpwidgets/Makefile.am: micro-optimization in the 
      generated
      	enum registration code.
      
      	* app/base/base-enums.c
      	* app/core/core-enums.c
      	* app/display/display-enums.c
      	* app/paint/paint-enums.c
      	* app/plug-in/plug-in-enums.c
      	* app/text/text-enums.c
      	* app/tools/tools-enums.c
      	* app/widgets/widgets-enums.c
      	* libgimpbase/gimpbaseenums.c
      	* libgimpconfig/gimpcolorconfig-enums.c
      	* libgimpwidgets/gimpwidgetsenums.c: regenerated.
      
      
      svn path=/trunk/; revision=27538
      fe520925
  25. 23 Oct, 2008 1 commit
    • Michael Natterer's avatar
      rename GimpStrokeStyle to GimpFillStyle. · 3dfef0f1
      Michael Natterer authored
      2008-10-23  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/core-enums.[ch]: rename GimpStrokeStyle to GimpFillStyle.
      
      	* app/core/gimpfilloptions.[ch]
      	* app/core/gimpdrawable-stroke.c
      	(gimp_drawable_stroke_scan_convert): changed accordingly.
      
      
      svn path=/trunk/; revision=27379
      3dfef0f1
  26. 09 Apr, 2008 2 commits