1. 19 May, 2016 1 commit
  2. 30 May, 2013 1 commit
  3. 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
  4. 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
  5. 10 Sep, 2007 1 commit
    • Sven Neumann's avatar
      app/core/gimp-transform-region.[ch] app/core/gimpchannel.c · 77b7161a
      Sven Neumann authored
      2007-09-10  Sven Neumann  <sven@gimp.org>
      
      	* app/core/gimp-transform-region.[ch]
      	* app/core/gimpchannel.c
      	* app/core/gimpdrawable-transform.[ch]
      	* app/core/gimpdrawable.c
      	* app/core/gimpimage-item-list.[ch]
      	* app/core/gimpitem-linked.[ch]
      	* app/core/gimpitem.[ch]
      	* app/core/gimplayer.c
      	* app/paint/gimpperspectiveclone.c
      	* app/vectors/gimpvectors.c: removed supersample parameter from
      	transform functions and perform it depending on the interpolation
      	type (bug #473265).
      
      	* app/tools/gimptransformoptions.[ch]
      	* app/tools/gimptransformtool.c: removed Supersample toggle from
      	the transform tool options.
      
      	* tools/pdbgen/pdb/drawable_transform.pdb
      	* tools/pdbgen/pdb/transform_tools.pdb: document that the
      	supersample parameter is unused and improved documentation of the
      	recursion-level parameter.
      
      	* app/pdb/transform_tools_cmds.c
      	* app/pdb/drawable_transform_cmds.c
      	* libgimp/gimpdrawabletransform_pdb.c: regenerated.
      
      svn path=/trunk/; revision=23494
      77b7161a
  6. 24 Dec, 2006 1 commit
    • Mukund Sivaraman's avatar
      app/core/Makefile.am app/core/gimp-transform-resize.c · f0cff0ff
      Mukund Sivaraman authored
      2006-12-24  Mukund Sivaraman  <muks@mukund.org>
      
              * app/core/Makefile.am
              * app/core/gimp-transform-resize.c
              * app/core/gimpchannel.c
              * app/core/gimpdrawable-transform.c
              * app/core/gimpdrawable-transform.h
              * app/core/gimpdrawable.c
              * app/core/gimpimage-item-list.c
              * app/core/gimpimage-item-list.h
              * app/core/gimpitem-linked.c
              * app/core/gimpitem-linked.h
              * app/core/gimpitem.c
              * app/core/gimpitem.h
              * app/core/gimplayer.c
              * app/pdb/drawable_transform_cmds.c
              * app/text/gimptextlayer-transform.c
              * app/text/gimptextlayer-transform.h
              * app/tools/gimptransformoptions.c
              * app/tools/gimptransformtool.c
              * app/vectors/gimpvectors.c
              * libgimp/gimpdrawabletransform_pdb.c
              * libgimp/gimpdrawabletransform_pdb.h
              * libgimp/gimpenums.c.tail
              * libgimpbase/gimpbase.def
              * libgimpbase/gimpbaseenums.c
              * libgimpbase/gimpbaseenums.h
              * tools/pdbgen/enums.pl
              * tools/pdbgen/pdb/drawable_transform.pdb: implemented UI and PDB
              for new clipping modes for affine transforms (crop to largest
              rectangle, and crop to largest rectangle with the source's aspect
              ratio); fixed various bugs in the largest rectangle computation
              code; set padding to 6 in the transformation tool options.
      f0cff0ff
  7. 09 Dec, 2006 1 commit
  8. 21 May, 2006 1 commit
    • Michael Natterer's avatar
      app/core/Makefile.am new files with functions to translate, flip, rotate, · 3e5b6e0e
      Michael Natterer authored
      2006-05-21  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/Makefile.am
      	* app/core/gimpimage-item-list.[ch]: new files with functions to
      	translate, flip, rotate, transform and align a list of items
      	inside an undo group.
      
      	(gimp_image_item_list_get_list): returns a list of items matching
      	any combination of GimpItemTypeMask and GimpItemSet.
      
      	* app/core/gimpitem.[ch]: added new function gimp_item_is_in_set().
      
      	* app/core/gimpitem-linked.[ch]: use the new functions. Removed
      	gimp_item_linked_get_list().
      
      	* app/tools/gimpeditselectiontool.c: use
      	gimp_image_item_list_get_list() instead of
      	gimp_item_linked_get_list().
      
      	* app/core/gimpimage-resize.c
      	* app/tools/gimpaligntool.c: use the new functions instead of
      	creating and iterating the lists manually.
      3e5b6e0e
  9. 19 May, 2006 1 commit
    • Michael Natterer's avatar
      remove enum GimpItemLinkedMask... · 42ff7f49
      Michael Natterer authored
      2006-05-19  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpitem-linked.h: remove enum GimpItemLinkedMask...
      
      	* app/core/core-enums.[ch]: ...and add it here as GimpItemTypeMask.
      	Renamed enum GimpImageResizeLayers to GimpItemSet.
      
      	* app/core/gimpitem-linked.[ch]
      	* app/core/gimpimage-resize.[ch]
      	* app/dialogs/resize-dialog.[ch]
      	* app/actions/image-commands.c
      	* app/actions/layers-commands.c
      	* app/tools/gimpeditselectiontool.c: changed accordingly.
      42ff7f49
  10. 16 Nov, 2004 1 commit
    • Michael Natterer's avatar
      removed redundant "gimage" parameter. · c0d91794
      Michael Natterer authored
      2004-11-16  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpitem-linked.[ch] (gimp_item_linked_get_list):
      	removed redundant "gimage" parameter.
      
      	* app/tools/gimpeditselectiontool.c: changed accordingly.
      c0d91794
  11. 10 Aug, 2004 1 commit
    • Michael Natterer's avatar
      Redid the whole internal progress stuff: don't pass around · 02d2b990
      Michael Natterer authored
      2004-08-10  Michael Natterer  <mitch@gimp.org>
      
      	Redid the whole internal progress stuff: don't pass around
      	progress_callback and progress_data; instead, provide a
      	pointer to a GimpProgressInterface which can be implemented
      	by a variety of backends.
      
      	Addresses (but not yet fixes) bugs #6010, #97266 and #135185.
      
      	* app/display/Makefile.am
      	* app/display/gimpprogress.[ch]: removed the old progress hack.
      
      	* app/core/Makefile.am
      	* app/core/core-types.h
      	* app/core/gimpprogress.[ch]: implement GimpProgressInterface.
      
      	* app/widgets/Makefile.am
      	* app/widgets/widgets-types.h
      	* app/widgets/gimpprogressdialog.[ch]: the standalone progress
      	dialog as widget implementing GimpProgressInterface.
      
      	* app/display/gimpdisplay.c
      	* app/display/gimpstatusbar.[ch]
      	* app/widgets/gimpfiledialog.[ch]
      	* app/widgets/gimpthumbbox.[ch]: added GimpProgressInterface
      	implementation to these classes.
      
      	* app/core/gimp-gui.[ch]
      	* app/gui/gui-vtable.c: replaced the old progress vtable entries
      	by two new to create and destroy a GimpProgressDialog in case
      	no other progress is available.
      
      	* app/pdb/procedural_db.[ch]
      	* app/plug-in/plug-in-run.[ch]
      	* tools/pdbgen/app.pl: pass a GimpProgress to all PDB wrappers and
      	all plug-ins.
      
      	* app/plug-in/plug-in.[ch]
      	* app/plug-in/plug-ins.c
      	* app/plug-in/plug-in-message.c
      	* app/plug-in/plug-in-progress.c: handle the case there the
      	plug-in was crated with a progress as well as the case where it
      	wasn't.
      
      	* app/app_procs.c
      	* app/batch.c
      	* app/xcf/xcf.c
      	* app/file/file-open.[ch]
      	* app/file/file-save.[ch]
      	* app/widgets/gimphelp.c
      	* app/widgets/gimpbrushselect.c
      	* app/widgets/gimpfontselect.c
      	* app/widgets/gimpgradientselect.c
      	* app/widgets/gimppaletteselect.c
      	* app/widgets/gimppatternselect.c: changed accordingly.
      
      	* app/core/gimpimagefile.[ch]
      	* app/display/gimpdisplayshell-dnd.c
      	* app/gui/file-open-dialog.c
      	* app/gui/file-open-location-dialog.c
      	* app/gui/file-save-dialog.c
      	* app/widgets/gimplayertreeview.c
      	* app/widgets/gimptoolbox-dnd.c: pass a GimpProgress to all file
      	related functions. Embed the progress in the file dialog where
      	possible.
      
      	* app/core/gimpdrawable-blend.[ch]
      	* app/core/gimpdrawable-transform.[ch]
      	* app/core/gimpimage-convert.[ch]
      	* app/core/gimpimage-flip.[ch]
      	* app/core/gimpimage-resize.[ch]
      	* app/core/gimpimage-rotate.[ch]
      	* app/core/gimpimage-scale.[ch]
      	* app/core/gimpitem-linked.[ch]
      	* app/core/gimpitem.[ch]
      	* app/core/gimpchannel.c
      	* app/core/gimpdrawable.c
      	* app/core/gimplayer.c
      	* app/core/gimpselection.c
      	* app/vectors/gimpvectors.c: replaced callback/data by GimpProgress.
      
      	* app/tools/gimpblendtool.c
      	* app/tools/gimptransformtool.c
      	* app/gui/convert-dialog.c
      	* app/actions/documents-commands.c
      	* app/actions/file-commands.c
      	* app/actions/image-commands.c
      	* app/actions/layers-commands.c
      	* app/actions/plug-in-commands.c
      	* app/actions/vectors-commands.c
      	* tools/pdbgen/pdb/convert.pdb
      	* tools/pdbgen/pdb/edit.pdb
      	* tools/pdbgen/pdb/image.pdb
      	* tools/pdbgen/pdb/layer.pdb: changed callers accordingly.
      
      	* app/pdb/*_cmds.c: regenerated.
      02d2b990
  12. 14 Apr, 2004 1 commit
    • Michael Natterer's avatar
      Get rid of the "current_context" which was in fact just a bunch of global · 18d9161e
      Michael Natterer authored
      2004-04-15  Michael Natterer  <mitch@gimp.org>
      
      	Get rid of the "current_context" which was in fact just a bunch of
      	global variables. Instead, pass the needed context all the way
      	from the GUI and the PDB to the core. This is a prerequisite for
      	macro recording and generally helps separating the various
      	subsystems from each other. Work in progress...
      
      	* app/core/gimp.[ch]: removed member "current_context" and
      	gimp_[get|set]_current_context().
      
      	* app/core/gimp-edit.[ch]
      	* app/core/gimpdrawable-blend.[ch]
      	* app/core/gimpdrawable-bucket-fill.[ch]
      	* app/core/gimpdrawable-offset.[ch]
      	* app/core/gimpdrawable-transform.[ch]
      	* app/core/gimpimage-crop.[ch]
      	* app/core/gimpimage-flip.[ch]
      	* app/core/gimpimage-merge.[ch]
      	* app/core/gimpimage-resize.[ch]
      	* app/core/gimpimage-rotate.[ch]
      	* app/core/gimpimage.[ch]
      	* app/core/gimpimagefile.[ch]
      	* app/core/gimpitem-linked.[ch]
      	* app/core/gimpitem.[ch]
      	* app/core/gimplayer.[ch]
      	* app/core/gimpselection.[ch]
      	* app/core/gimptemplate.[ch]
      	* app/file/file-open.[ch]
      	* app/file/file-save.[ch]
      	* app/pdb/procedural_db.[ch]
      	* app/text/gimptext-compat.[ch]
      	* app/text/gimptextlayer-transform.[ch]
      	* app/gui/brush-select.[ch]
      	* app/gui/font-select.[ch]
      	* app/gui/gradient-select.[ch]
      	* app/gui/palette-select.[ch]
      	* app/gui/pattern-select.[ch]: added tons of "GimpContext *context"
      	parameters and use the passed context instead of
      	gimp_get_current_context().
      
      	* app/app_procs.c
      	* app/batch.c
      	* app/core/gimpchannel.c
      	* app/core/gimpdrawable.c
      	* app/paint/gimperaser.c
      	* app/paint/gimppaintbrush.c
      	* app/plug-in/plug-in-message.c
      	* app/plug-in/plug-ins.c
      	* app/text/gimptextlayer.c
      	* app/tools/gimpblendtool.c
      	* app/tools/gimpbucketfilltool.c
      	* app/tools/gimpcroptool.c
      	* app/tools/gimpeditselectiontool.c
      	* app/tools/gimpfliptool.c
      	* app/tools/gimpinktool.c
      	* app/tools/gimptransformtool.c
      	* app/vectors/gimpvectors.c
      	* app/gui/convert-dialog.c
      	* app/gui/drawable-commands.c
      	* app/gui/edit-commands.c
      	* app/gui/file-commands.c
      	* app/gui/file-new-dialog.c
      	* app/gui/file-open-dialog.c
      	* app/gui/file-save-dialog.c
      	* app/gui/image-commands.c
      	* app/gui/layers-commands.c
      	* app/gui/offset-dialog.c
      	* app/gui/select-commands.c
      	* app/gui/vectors-commands.c
      	* app/widgets/gimpdnd.c
      	* app/widgets/gimpdocumentview.c
      	* app/widgets/gimphelp.c
      	* app/widgets/gimpthumbbox.c: pass gimp_get_user_context() or
      	GIMP_CONTEXT(tool_options) or whatever is the right context
      	to the changed core functions.
      
      	* tools/pdbgen/app.pl: pass "GimpContext *context" to all
      	generated PDB invokers.
      
      	* tools/pdbgen/pdb/brush_select.pdb
      	* tools/pdbgen/pdb/brushes.pdb
      	* tools/pdbgen/pdb/drawable.pdb
      	* tools/pdbgen/pdb/edit.pdb
      	* tools/pdbgen/pdb/font_select.pdb
      	* tools/pdbgen/pdb/gradient_select.pdb
      	* tools/pdbgen/pdb/gradients.pdb
      	* tools/pdbgen/pdb/image.pdb
      	* tools/pdbgen/pdb/layer.pdb
      	* tools/pdbgen/pdb/paint_tools.pdb
      	* tools/pdbgen/pdb/palette.pdb
      	* tools/pdbgen/pdb/palette_select.pdb
      	* tools/pdbgen/pdb/palettes.pdb
      	* tools/pdbgen/pdb/paths.pdb
      	* tools/pdbgen/pdb/pattern_select.pdb
      	* tools/pdbgen/pdb/patterns.pdb
      	* tools/pdbgen/pdb/selection.pdb
      	* tools/pdbgen/pdb/text_tool.pdb
      	* tools/pdbgen/pdb/transform_tools.pdb: pass the new context
      	parameter to the changed core functions.
      
      	* app/pdb/*_cmds.c: regenerated.
      18d9161e
  13. 13 Mar, 2004 1 commit
    • Michael Natterer's avatar
      Completed the fix for bug #136702: · 2498c665
      Michael Natterer authored
      2004-03-13  Michael Natterer  <mitch@gimp.org>
      
      	Completed the fix for bug #136702:
      
      	* app/core/gimpitem.[ch]: added "gboolean supersample" and
      	"gint recursion_level" to GimpItem::transform().
      
      	* app/core/gimpitem-linked.[ch]	(gimp_item_linked_transform): ditto.
      
      	* app/core/gimpdrawable-transform.[ch]: added "recursion_level"
      	parameters and removed the RECURSION_LEVEL #define.
      
      	* app/core/gimpchannel.c
      	* app/core/gimpdrawable.c
      	* app/core/gimplayer.c
      	* app/vectors/gimpvectors.c: changed accordingly.
      
      	* app/tools/gimptransformoptions.[ch]: added new property
      	"recursion_level" which is not serializable and has no GUI. Pretty
      	useless, but it's IMHO better to hardcode the default value here
      	than in gimpdrawable-transform.c
      
      	* app/tools/gimptransformtool.c: changed accordingly.
      
      	* tools/pdbgen/pdb/transform_tools.pdb: hardcode "recursion_level"
      	to 3.
      
      	* app/pdb/transform_tools_cmds.c: regenerated.
      2498c665
  14. 11 Sep, 2003 1 commit
    • Michael Natterer's avatar
      made gimp_item_linked_get_list() and the GimpItemLinkedMask enum public. · c7414c12
      Michael Natterer authored
      2003-09-11  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpitem-linked.[ch]: made gimp_item_linked_get_list()
      	and the GimpItemLinkedMask enum public. Hiding them just causes
      	code duplication.
      
      	* app/tools/gimpdrawtool.[ch]: added a GList of GimpVectors and a
      	GimpMatrix3 transformation matrix for them. Just set them with
      	gimp_draw_tool_set_vectors() and gimp_draw_tool_set_transform()
      	and chain up in your tools's GimpdrawTool::draw() implementation
      	to get the vectors drawn.
      
      	* app/tools/gimpeditselectiontool.c: use
      	gimp_item_linked_get_list() instead of traversing image->layers,
      	->channels and ->vectors manually to find the linked items.
      	Use gimp_draw_tool_set_vectors() and _set_transform() to show
      	the linked vectors while moving.
      
      	(gimp_edit_selection_tool_arrow_key): transform all linked items,
      	not just the linked layers.
      c7414c12
  15. 07 Jul, 2003 1 commit
    • Sven Neumann's avatar
      libgimpmath/gimpmathtypes.h moved struct declarations. · 5c4020ed
      Sven Neumann authored
      2003-07-07  Sven Neumann  <sven@gimp.org>
      
      	* libgimpmath/gimpmathtypes.h
      	* libgimpmath/gimpvector.h: moved struct declarations.
      
      	* libgimpmath/gimpmatrix.[ch]: made GimpMatrix3 and GimpMatrix4
      	structs instead of typedefs for arrays. Pass them by reference,
      	not by value. Added lots of const qualifiers.
      
      	* app/core/gimpchannel.c
      	* app/core/gimpdrawable-transform-utils.[ch]
      	* app/core/gimpdrawable-transform.[ch]
      	* app/core/gimpdrawable.c
      	* app/core/gimpitem-linked.[ch]
      	* app/core/gimpitem.[ch]
      	* app/core/gimplayer.c
      	* app/pdb/transform_tools_cmds.c
      	* app/tools/gimpperspectivetool.c
      	* app/tools/gimprotatetool.c
      	* app/tools/gimpscaletool.c
      	* app/tools/gimpsheartool.c
      	* app/tools/gimptransformtool.c
      	* app/vectors/gimpvectors.c
      	* tools/pdbgen/pdb/transform_tools.pdb: changed accordingly.
      5c4020ed
  16. 20 May, 2003 1 commit
    • Michael Natterer's avatar
      don't default to clip_result == TRUE (unlike the other transform · 966fb559
      Michael Natterer authored
      2003-05-20  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpchannel.c (gimp_channel_rotate): don't default to
      	clip_result == TRUE (unlike the other transform functions).
      
      	* app/core/gimpdrawable-transform.c
      	(gimp_drawable_transform_tiles_rotate): fixed offset calculation.
      
      	* app/core/gimpimage-rotate.c: change the image size *after* all items
      	are rotated. Adjust all items' offsets after rotation. Rotate the
      	resolutions too. Seems to work now and fixes bug #6101.
      
      	* app/core/gimpimage.c (gimp_image_size_changed): emit
      	"size_changed" on all vectors.
      
      	* app/core/gimpitem-linked.[ch]: added gimp_item_linked_rotate().
      
      	* app/gui/drawable-commands.c: flip and rotate linked items too.
      
      	* app/vectors/gimpvectors.c (gimp_vectors_rotate): fixed rotation
      	angles.
      
      	Unrelated:
      
      	* app/core/gimpimage-merge.c: don't #include "path.h".
      966fb559
  17. 13 May, 2003 1 commit
    • Michael Natterer's avatar
      added "gboolean clip_result" to GimpItem::flip(). · a4395cea
      Michael Natterer authored
      2003-05-13  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpitem.[ch]: added "gboolean clip_result" to
      	GimpItem::flip().
      
      	* app/vectors/gimpvectors.c
      	* app/tools/gimpfliptool.c: changed accordingly.
      
      	* app/core/gimpdrawable.c: implement GimpItem::flip() and
      	GimpItem::transform().
      
      	* app/core/gimpchannel.c
      	* app/core/gimplayer.c: chain up in flip() and transform() and do
      	only the layer/channel specific stuff here.
      
      	* app/core/gimpdrawable-transform.[ch]: fixed indentation.
      	(gimp_drawable_transform_tiles_flip): added "gboolean clip_result"
      	and warn that it is not yet implemented.
      	(gimp_drawable_transform_tiles_affine): when transforming a
      	channel set bg_color to transparent. Clip channels (but not layer
      	masks) only if the passed tiles have bpp == 1 (the channel is
      	unfloated).
      	(gimp_drawable_transform_affine): clip all unfloated channels.
      
      	* app/core/gimpitem-linked.[ch]: added gimp_item_linked_get_list()
      	utility function to avoind iterating all layers/channels/vectors
      	in all functions.
      
      	* app/tools/gimptransformtool.c: clip all unfloated channels.
      
      	The clipping fixes above together fix bug #112858.
      a4395cea
  18. 12 May, 2003 1 commit
    • Michael Natterer's avatar
      Added support for transforming linked layers, channels and vectors. Fixes · 45334e63
      Michael Natterer authored
      2003-05-12  Michael Natterer  <mitch@gimp.org>
      
      	Added support for transforming linked layers, channels
      	and vectors. Fixes bug #86277.
      
      	* app/core/gimpdrawable-transform.[ch]
      	(gimp_drawable_transform_tiles_flip): added "gdouble axis" and
      	calculate the resulting drawable offset.
      	(gimp_drawable_transform_flip): calculate the axis and pass it to
      	the function above.
      	(gimp_drawable_transform_[tiles_]affine): reordered parameters.
      
      	* app/core/gimpitem.[ch]: added virtual functions GimpItem::flip()
      	and GimpItem::transform().
      
      	* app/core/gimpchannel.c
      	* app/core/gimplayer.c
      	* app/vectors/gimpvectors.c: implement flip() and transform().
      	Note that all functions always transform the whole item,
      	regardless of a present selection.
      
      	* app/core/Makefile.am
      	* app/core/gimpitem-linked.[ch]: new files containing utility
      	functions which translate, flip and transform all linked items.
      
      	* app/tools/gimpfliptool.c
      	* app/tools/gimptransformtool.c
      	* tools/pdbgen/pdb/layer.pdb: use the new gimp_item_linked_*()
      	functions to translate, flip and transform all linked items.
      
      	* tools/pdbgen/pdb/transform_tools.pdb: follow
      	gimp_drawable_transform_affine() API change.
      
      	* app/pdb/layer_cmds.c
      	* app/pdb/transform_tools_cmds.c: regenerated.
      45334e63