1. 02 Mar, 2006 1 commit
    • Michael Natterer's avatar
      added new methods ::get_bytes() and ::flush() · b55ce9ea
      Michael Natterer authored
      2006-03-02  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimppickable.[ch]: added new methods ::get_bytes() and
      	::flush()
      
      	* app/core/gimpchannel.c
      	* app/core/gimpdrawable.c
      	* app/core/gimpimagemap.c
      	* app/core/gimpprojection.c: implement ::get_bytes()
      
      	* app/core/gimpprojection.c: implement ::flush() (immediately
      	process both the idle renderer's queue and the unflushed update
      	areas, to make sure that any reading from the projection will
      	re-construct it).
      
      	* app/core/gimp-edit.c
      	* app/core/gimpchannel.c
      	* app/core/gimpimage-contiguous-region.c
      	* app/core/gimpimage-crop.c
      	* app/core/gimppalette-import.c
      	* app/paint/gimpclone.c
      	* app/tools/gimpbycolorselecttool.c
      	* app/tools/gimpiscissorstool.c
      	* tools/pdbgen/pdb/image.pdb: use the pickable interface more
      	consistently when reading from any drawable or the projection, and
      	call gimp_pickable_flush() before doing so. Fixes bug #332933.
      
      	* app/core/gimpimage-pick-color.c: added comment why the we don't
      	call gimp_pickable_flush() here.
      
      	* app/pdb/image_cmds.c
      	* libgimp/gimpimage_pdb.c: regenerated.
      b55ce9ea
  2. 23 Dec, 2005 1 commit
  3. 10 Dec, 2005 1 commit
  4. 09 Oct, 2005 1 commit
    • Michael Natterer's avatar
      set the "tooltip" return value to NULL before calling the virtual · 34697840
      Michael Natterer authored
      2005-10-10  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpviewable.c (gimp_viewable_get_description): set the
      	"tooltip" return value to NULL before calling the virtual function.
      
      	* app/core/gimpbrush.c
      	* app/core/gimpbuffer.c
      	* app/core/gimpchannel.c
      	* app/core/gimplayer.c
      	* app/core/gimppaintinfo.c
      	* app/core/gimppalette.c
      	* app/core/gimppattern.c
      	* app/core/gimptoolinfo.c (get_description): don't do it here.
      
      	* app/core/gimpbuffer.c
      	* app/core/gimppaintinfo.c: untabbify, cleanup.
      
      	* app/core/gimpobject.c: emit "notify::name" whenerver the name
      	changes, clenup.
      34697840
  5. 19 Sep, 2005 1 commit
    • Michael Natterer's avatar
      Did a global s/qmask/quick-mask/: · 1adf3d71
      Michael Natterer authored
      2005-09-19  Michael Natterer  <mitch@gimp.org>
      
      	Did a global s/qmask/quick-mask/:
      
      	* app/actions/qmask-actions.[ch]
      	* app/actions/qmask-commands.[ch]
      	* app/core/gimpimage-qmask.[ch]
      	* menus/qmask-menu.xml
      	* themes/Default/images/stock-qmask-off-16.png
      	* themes/Default/images/stock-qmask-on-16.png: removed.
      
      	* app/actions/quick-mask-actions.[ch]
      	* app/actions/quick-mask-commands.[ch]
      	* app/core/gimpimage-quick-mask.[ch]
      	* menus/quick-mask-menu.xml
      	* themes/Default/images/stock-quick-mask-off-16.png
      	* themes/Default/images/stock-quick-mask-on-16.png: added.
      
      	* app/actions/Makefile.am
      	* app/actions/actions.c
      	* app/core/Makefile.am
      	* app/core/core-enums.[ch]
      	* app/core/gimpchannel.c
      	* app/core/gimpimage-duplicate.c
      	* app/core/gimpimage-undo.c
      	* app/core/gimpimage.[ch]
      	* app/core/gimpundo.[ch]
      	* app/display/gimpdisplayshell-appearance.c
      	* app/display/gimpdisplayshell-callbacks.[ch]
      	* app/display/gimpdisplayshell-handlers.c
      	* app/display/gimpdisplayshell.[ch]
      	* app/menus/menus.c
      	* app/widgets/gimphelp-ids.h
      	* libgimpwidgets/gimpstock.[ch]
      	* menus/Makefile.am
      	* menus/image-menu.xml.in
      	* themes/Default/images/Makefile.am: changed accordingly.
      1adf3d71
  6. 20 Aug, 2005 1 commit
    • Michael Natterer's avatar
      renamed puclic functions, defines and enums to live in a proper "boundary" · 4fb1743f
      Michael Natterer authored
      2005-08-20  Michael Natterer  <mitch@gimp.org>
      
      	* app/base/boundary.[ch]: renamed puclic functions, defines and
      	enums to live in a proper "boundary" namespace. Cleaned up and
      	simplified internal code even more.
      
      	* app/core/gimpchannel.c
      	* app/core/gimpdrawable-stroke.c
      	* app/core/gimplayer-floating-sel.c
      	* app/paint/gimppaintcore-stroke.c
      	* app/tools/gimpeditselectiontool.c
      	* app/tools/gimpfuzzyselecttool.c
      	* app/tools/gimppainttool.c: changed accordingly.
      4fb1743f
  7. 12 Jul, 2005 1 commit
  8. 11 Jul, 2005 1 commit
    • Michael Natterer's avatar
      added GimpPickable::get_opacity_at() · d64bf356
      Michael Natterer authored
      2005-07-11  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimppickable.[ch]: added GimpPickable::get_opacity_at()
      
      	* app/core/gimpchannel.[ch]: removed gimp_channel_value() and
      	implement ::get_opacity_at() instead.
      
      	* app/core/gimplayer.[ch]: removed gimp_layer_pick_correlate()
      	and implement ::get_opacity_at() instead.
      
      	* app/core/gimpselection.c: GimpChannel::value() doesn't exist
      	any more.
      
      	* app/core/gimpprojection.c: implement ::get_opacity_at(), always
      	returns OPAQUE.
      
      	* app/core/gimpimage.c
      	* app/tools/gimpbucketfilltool.c
      	* app/tools/gimpclonetool.c
      	* app/tools/gimpfliptool.c
      	* app/tools/gimpiscissorstool.c
      	* app/tools/gimpnewrectselecttool.c
      	* app/tools/gimprectangletool.c
      	* app/tools/gimpselectiontool.c
      	* app/tools/gimptransformtool.c
      	* tools/pdbgen/pdb/selection.pdb: changed accordingly.
      
      	* app/pdb/selection_cmds.c: regenerated.
      d64bf356
  9. 09 Jul, 2005 1 commit
  10. 18 Feb, 2005 1 commit
    • Sven Neumann's avatar
      app/core/Makefile.am new files holding gimp_drawable_convert_rgb() and · 52d6f00e
      Sven Neumann authored
      2005-02-18  Sven Neumann  <sven@gimp.org>
      
      	* app/core/Makefile.am
      	* app/core/gimpdrawable-convert.[ch]: new files holding
      	gimp_drawable_convert_rgb() and gimp_drawable_convert_grayscale()
      	moved out of gimpimage-convert.[ch].
      
      	* app/core/gimpchannel.c
      	* app/core/gimpimage-convert.[ch]
      	* app/core/gimplayer.c: changed accordingly.
      52d6f00e
  11. 11 Feb, 2005 1 commit
    • Sven Neumann's avatar
      code cleanup. Removed unsued code, renamed variables and types. · adff5aeb
      Sven Neumann authored
      2005-02-11  Sven Neumann  <sven@gimp.org>
      
      	* app/base/pixel-processor.[ch]: code cleanup. Removed unsued code,
      	renamed variables and types.
      
      	* app/base/gimphistogram.c
      	* app/core/gimpchannel-combine.c
      	* app/core/gimpchannel.c
      	* app/core/gimpdrawable-equalize.c
      	* app/core/gimpdrawable-invert.c
      	* app/core/gimpdrawable-levels.c
      	* app/paint-funcs/paint-funcs.c
      	* tools/pdbgen/pdb/color.pdb: changed accordingly.
      
      	* app/pdb/color_cmds.c: regenerated.
      adff5aeb
  12. 15 Jan, 2005 2 commits
    • Michael Natterer's avatar
      implement GimpItem::convert(). Handles any drawable, including conversion · db89496a
      Michael Natterer authored
      2005-01-15  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpchannel.c: implement GimpItem::convert(). Handles
      	any drawable, including conversion to GRAY, flattening and
      	resizing.
      
      	* app/widgets/gimpchanneltreeview.c: implement dropping of all
      	kinds of drawables as new channels. Fixes bug #158133.
      
      	Simplified component dropping by removing stuff which is done by
      	gimp_item_convert() now.
      db89496a
    • Michael Natterer's avatar
      don't require a non-NULL color parameter (just leave the default color · d0a78f3b
      Michael Natterer authored
      2005-01-15  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpchannel.c (gimp_channel_new*): don't require a
      	non-NULL color parameter (just leave the default color untouched
      	if NULL is passed).
      
      	* app/actions/channels-commands.c
      	* app/core/gimpchannel-select.c: pass NULL as color for temporary
      	channels or channels where we used to pass black.
      d0a78f3b
  13. 16 Nov, 2004 1 commit
    • Michael Natterer's avatar
      app/core/gimpchannel-select.c app/core/gimpchannel.c · 0d5df419
      Michael Natterer authored
      2004-11-16  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpchannel-select.c
      	* app/core/gimpchannel.c
      	* app/core/gimpdrawable-desaturate.c
      	* app/core/gimpdrawable-equalize.c
      	* app/core/gimpdrawable-histogram.c
      	* app/core/gimpdrawable-invert.c
      	* app/core/gimpdrawable-levels.c
      	* app/core/gimpdrawable-offset.c
      	* app/core/gimpdrawable-stroke.c
      	* app/core/gimpdrawable-transform.c
      	* app/core/gimpdrawable.c
      	* app/core/gimpitem-linked.c
      	* app/core/gimpitem.c
      	* app/core/gimplayer.c
      	* app/core/gimpselection.c
      	* app/paint/gimppaintcore-stroke.c
      	* app/text/gimptextlayer.c: in all functions which somehow
      	(explicitely or implicitely) touch undo, either g_return_if_fail()
      	on gimp_item_is_attached() or simply don't push an undo step if
      	feasible (e.g. for simple stuff like layer opacity).
      
      	* tools/pdbgen/pdb/color.pdb
      	* tools/pdbgen/pdb/drawable.pdb
      	* tools/pdbgen/pdb/image.pdb
      	* tools/pdbgen/pdb/layer.pdb
      	* tools/pdbgen/pdb/paint_tools.pdb: let PDB wrappers fail
      	accordingly so they don't run into the assertions added above.
      
      	* app/pdb/color_cmds.c
      	* app/pdb/drawable_cmds.c
      	* app/pdb/image_cmds.c
      	* app/pdb/layer_cmds.c
      	* app/pdb/paint_tools_cmds.c: regenerated.
      0d5df419
  14. 22 Oct, 2004 1 commit
    • Michael Natterer's avatar
      added new enum GimpStrokeMethod which can be one of { LIBART, PAINT_CORE · 06447c00
      Michael Natterer authored
      2004-10-22  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/core-enums.[ch]: added new enum GimpStrokeMethod which
      	can be one of { LIBART, PAINT_CORE }.
      
      	* app/core/Makefile.am
      	* app/core/core-types.h
      	* app/core/gimpstrokedesc.[ch]: new object which encapsulates
      	the params and setup logic for the different stroke methods.
      
      	* app/core/gimpitem.[ch]: use it in GimpItem::stroke() and
      	in the gimp_item_stroke() wrapper.
      
      	* app/core/gimpchannel.c (gimp_channel_stroke)
      	* app/core/gimpselection.c (gimp_selection_stroke)
      	* app/vectors/gimpvectors.c (gimp_vectors_stroke): changed accprdingly.
      
      	* app/actions/select-commands.c
      	* app/actions/vectors-commands.c
      	* app/dialogs/stroke-dialog.c
      	* tools/pdbgen/pdb/edit.pdb
      	* tools/pdbgen/pdb/paths.pdb: use GimpStrokeDesc. Simplifies the
      	code quite a bit.
      
      	* app/pdb/edit_cmds.c
      	* app/pdb/paths_cmds.c: regenerated.
      06447c00
  15. 25 Sep, 2004 1 commit
    • Michael Natterer's avatar
      added comment about not changing the silly "Qmask" string because it is · 5aeac72e
      Michael Natterer authored
      2004-09-25  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpimage-qmask.h: added comment about not changing the
      	silly "Qmask" string because it is used to identify the Quick Mask
      	in the XCF.
      
      	* app/core/gimpchannel.c: implement GimpViewable::get_description()
      	and return "Quick Mask" if it's the Quick Mask.
      
      	* app/actions/qmask-actions.c
      	* app/actions/qmask-commands.c
      	* app/core/core-enums.[ch]
      	* app/core/gimpimage-qmask.c
      	* app/display/gimpdisplayshell.c: s/QuickMask/Quick Mask/.
      5aeac72e
  16. 31 Aug, 2004 1 commit
    • Michael Natterer's avatar
      added "GimpPaintInfo *paint_info" member and construct property. Changed · 9e76c5a4
      Michael Natterer authored
      2004-08-31  Michael Natterer  <mitch@gimp.org>
      
      	* app/paint/gimppaintoptions.[ch]: added "GimpPaintInfo *paint_info"
      	member and construct property. Changed gimp_paint_options_new()
      	to take only a GimpPaintInfo parameter.
      
      	* app/core/gimpitem.c (gimp_item_stroke)
      	* app/core/gimppaintinfo.c (gimp_paint_info_new): changed accordingly.
      
      	* app/core/gimpchannel.c (gimp_channel_stroke)
      	* app/vectors/gimpvectors.c (gimp_vectors_stroke): use
      	paint_options->paint_info->paint_type directly instead of casting
      	to GimpToolOptions and using
      	tool_options->tool_info->paint_info->paint_type (eek). Fixes crash
      	when stroking via the PDB because newly created GimpToolOptions
      	instances have no "tool_info" pointer yet.
      
      	* tools/pdbgen/pdb/paint_tools.pdb: changed all paint PDB wrappers
      	accordingly.
      
      	* app/pdb/paint_tools_cmds.c: regenerated.
      9e76c5a4
  17. 26 Aug, 2004 2 commits
    • Michael Natterer's avatar
      removed "gboolean use_default_values" from GimpItem::stroke(). · f1d0db6d
      Michael Natterer authored
      2004-08-26  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpitem.[ch]: removed "gboolean use_default_values"
      	from GimpItem::stroke().
      
      	* app/core/gimpchannel.c
      	* app/core/gimpselection.c
      	* app/vectors/gimpvectors.c: changed accordingly.
      f1d0db6d
    • Michael Natterer's avatar
      implement the whole paint_options fiddling here instead of in each · 23bd1216
      Michael Natterer authored
      2004-08-26  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpitem.c (gimp_item_stroke): implement the whole
      	paint_options fiddling here instead of in each subclass and pass
      	either GimpStrokeOptions or GimpPaintOptions (instead of
      	GimpStrokeOptions or GimpPaintInfo) to GimpItem::stroke().
      
      	Also copied code (that needs to be abstracted to a utility
      	function) from the tool_manager which makes sure we really use the
      	global brush, pattern etc. if these options are checked in prefs.
      	Fixes bug #150716.
      
      	* app/core/gimpchannel.c (gimp_channel_stroke)
      	* app/vectors/gimpvectors.c (gimp_vectors_stroke): removed the
      	duplicated code mentioned above and simply use the paint_options
      	passed.
      23bd1216
  18. 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
  19. 13 Jul, 2004 1 commit
  20. 05 Jul, 2004 1 commit
    • Michael Natterer's avatar
      added signal "color-changed" and emit it in gimp_channel_set_color() and · d476ee65
      Michael Natterer authored
      2004-07-05  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpchannel.[ch]: added signal "color-changed" and emit
      	it in gimp_channel_set_color() and gimp_channel_set_opacity().
      
      	* app/core/gimpimage-qmask.[ch]: added new functions
      	gimp_image_set,get_qmask_color().
      
      	* app/core/gimpimage.[ch]: install a "color-changed" handler on
      	gimage->channels and update gimage->qmask_color when the qmask's
      	color changes. Fixes bug #145361.
      
      	* app/actions/qmask-commands.c: use the new qmask color API.
      d476ee65
  21. 15 Apr, 2004 2 commits
    • Michael Natterer's avatar
      added "const gchar *stroke_desc" to the GimpItemClass struct and always · f41e1ff5
      Michael Natterer authored
      2004-04-15  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpitem.[ch]: added "const gchar *stroke_desc" to
      	the GimpItemClass struct and always push an undo group
      	around GimpItem::stroke().
      
      	* app/core/gimpchannel.c
      	* app/core/gimpselection.c
      	* app/vectors/gimpvectors.c: set the stroke_desc accordingly
      	and don't push undo groups.
      
      	* app/text/gimptextlayer.c (gimp_text_layer_class_init): set
      	all of GimpItemClass' undo_descs.
      
      	* app/text/gimptextlayer-transform.c: don't push undo groups here.
      f41e1ff5
    • Michael Natterer's avatar
      Context cleanup continued: · 837fa429
      Michael Natterer authored
      2004-04-15  Michael Natterer  <mitch@gimp.org>
      
      	Context cleanup continued:
      
      	* app/core/gimpitem.[ch]: added context parameter to
      	GimpItem::stroke().
      
      	* app/core/gimpchannel.c (gimp_channel_stroke)
      	* app/vectors/gimpvectors.c (gimp_vectors_stroke): use it to get
      	default values from instead of gimp_get_user_context().
      
      	* app/core/gimpselection.c
      	* app/gui/stroke-dialog.c
      	* tools/pdbgen/pdb/edit.pdb
      	* tools/pdbgen/pdb/paths.pdb: changed accordingly.
      
      	* app/pdb/edit_cmds.c
      	* app/pdb/paths_cmds.c: regenerated.
      
      	* app/plug-in/plug-in.[ch]: added GimpContext member to the PlugIn
      	struct. Added context parameter to plug_in_new(),
      	plug_in_call_query() and plug_in_call_init().
      
      	* app/plug-in/plug-in-run.[ch]: added context parameters to
      	plug_in_run() and plug_in_repeat().
      
      	* app/gui/plug-in-commands.c
      	* app/gui/vectors-commands.c
      	* app/pdb/procedural_db.c
      	* app/widgets/gimphelp.c: pass a context to plug_in_run() and
      	plug_in_repeat().
      
      	* app/plug-in/plug-in-message.c (plug_in_handle_proc_run): call
      	procedures with the plug-in's context.
      
      	* app/plug-in/plug-ins.c: use a temporary context for running the
      	plug-ins' query() and init() functions. Use the same context for
      	running automatic extensions. This temporarily separates the main
      	Script-Fu extension from the user context (i.e. scripts have no
      	way of setting/getting the global FG, BG, brush etc.).
      837fa429
  22. 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
  23. 13 Apr, 2004 1 commit
    • Michael Natterer's avatar
      GimpItem undo group cleanup in preparation of fixing bug #138356: · 069489fb
      Michael Natterer authored
      2004-04-13  Michael Natterer  <mitch@gimp.org>
      
      	GimpItem undo group cleanup in preparation of fixing bug #138356:
      
      	* app/core/core-enums.[c]: renamed LAYER_SCALE and LAYER_RESIZE
      	undo groups to ITEM_SCALE and ITEM_RESIZE.
      
      	* app/core/gimpitem.[ch]: always push undo groups around
      	GimpItem::translate(), scale(), resize(), flip(), rotate() and
      	transform(). Added the resp. undo_desc strings to GimpItemClass.
      
      	* app/core/gimpchannel.[ch]
      	* app/core/gimpdrawable.[ch]
      	* app/core/gimplayer.c: removed all undo groups from
      	implementations of the above methods. Removed the undo_desc
      	strings which were moved to GimpItemClass.
      
      	* app/core/gimpimage-crop.c
      	* app/core/gimpselection.c
      	* app/gui/layers-commands.c
      	* app/vectors/gimpvectors.c
      	* tools/pdbgen/pdb/layer.pdb: changed accordingly.
      
      	* app/pdb/layer_cmds.c: regenerated.
      069489fb
  24. 16 Mar, 2004 1 commit
    • Michael Natterer's avatar
      ref new tiles before unrefing the old ones. · 49238237
      Michael Natterer authored
      2004-03-16  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpdrawable.c (gimp_drawable_set_tiles): ref new
      	tiles before unrefing the old ones.
      
      	* app/core/gimpimage-undo-push.c: keep undo memsize exact by
      	adjusting undo->size when the stored data changes.
      
      	* app/core/gimpchannel.[ch] (gimp_channel_new_from_alpha)
      	* app/core/gimpchannel-select.[ch] (gimp_channel_select_alpha):
      	replaced "layer" parameter by "drawable".
      
      	* app/gui/layers-commands.c
      	* tools/pdbgen/pdb/selection.pdb: changed accordingly.
      
      	* app/pdb/selection_cmds.c: regenerated.
      
      	* app/core/gimpchannel.c
      	* app/core/gimplayer.c
      	* app/core/gimplayermask.[ch]
      	* app/core/gimpselection.c: remdom cleanup & code review.
      49238237
  25. 15 Mar, 2004 5 commits
    • Michael Natterer's avatar
      replaced GIMP_UNDO_LAYER_MOD and GIMP_UNDO_CHANNEL_MOD by · 5ef7c774
      Michael Natterer authored
      2004-03-15  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/core-enums.[ch] (enum GimpUndoType): replaced
      	GIMP_UNDO_LAYER_MOD and GIMP_UNDO_CHANNEL_MOD by
      	GIMP_UNDO_DRAWABLE_MOD.
      
      	* app/core/gimpimage-undo-push.[ch]: ditto: replaced
      	gimp_image_undo_push_layer_mod() and
      	gimp_image_undo_push_channel_mod() by
      	gimp_image_undo_push_drawable_mod().
      
      	* app/core/gimpdrawable.[ch]: added undo_desc strings for "resize"
      	and "scale" to the GimpDrawableClass struct.
      
      	(gimp_drawable_scale)
      	(gimp_drawable_resize): pass push_undo = TRUE to
      	gimp_drawable_set_tiles_full() and use the undo_desc from the
      	class.
      
      	(gimp_drawable_real_set_tiles): push a GIMP_UNDO_DRAWABLE_MOD here...
      
      	* app/core/gimpchannel.c
      	* app/core/gimplayer.c: ...and don't push undos in
      	GimpItem::scale(), GimpItem::resize(), GimpDrawable::set_tiles().
      
      	* app/core/gimpchannel.c: Removed even more bounds_known = FALSE
      	assignments from functions which already call
      	gimp_drawable_set_tiles().
      5ef7c774
    • Michael Natterer's avatar
      added "offset_x" and "offset_y" parameters to GimpDrawable::set_tiles(). · 1ef5fa93
      Michael Natterer authored
      2004-03-15  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpdrawable.[ch]: added "offset_x" and "offset_y"
      	parameters to GimpDrawable::set_tiles().
      
      	(gimp_drawable_set_tiles): removed the "GimpImageType" parameter.
      
      	(gimp_drawable_set_tiles_full): new function adding type, offset_x
      	and offset_y parameters.
      
      	(gimp_drawable_real_set_tiles): set the drawable's offsets from
      	the offset parameters and its size from the passed TileManager's
      	size. Emit "size_changed" accordingly.
      
      	* app/core/gimpchannel.c
      	* app/core/gimpdrawable-offset.c
      	* app/core/gimpdrawable-transform.c
      	* app/core/gimpimage-convert.c
      	* app/core/gimpimage-undo-push.c
      	* app/core/gimplayer.c
      	* app/text/gimptextlayer.c
      	* app/tools/gimptransformtool.c: changed accordingly: removed
      	calls to gimp_viewable_size_changed() and all sorts of hackish
      	assignments of the drawable's width/height/offset_x/offset_y
      	properties.
      1ef5fa93
    • Michael Natterer's avatar
      don't call gimp_image_flush(). · 79776036
      Michael Natterer authored
      2004-03-15  Michael Natterer  <mitch@gimp.org>
      
      	* app/text/gimptextlayer.c (gimp_text_layer_render): don't call
      	gimp_image_flush().
      
      	* app/tools/gimpxttool.c (gimp_text_tool_apply): call it here
      	instead.
      
      	Now that we have a common place that exchanges drawable->tiles,
      	we can abstract away boundary invalidation for this operation:
      
      	* app/core/gimpdrawable.c (gimp_drawable_real_set_tiles):
      	call gimp_drawable_invalidate_boundary() before setting
      	the new tiles.
      
      	* app/core/gimpchannel.c (gimp_channel_set_tiles)
      	* app/core/gimpdrawable-transform.c (gimp_drawable_transform_paste)
      	* app/core/gimpimage-undo-push.c (undo_pop_layer_mod)
      	* app/core/gimplayer.c (gimp_layer_scale) (gimp_layer_resize)
      	(gimp_layer_flip) (gimp_layer_rotate) (gimp_layer_transform)
      	* app/text/gimptextlayer.c (gimp_text_layer_render): removed
      	calls to gimp_drawable_invalidate_boundary() from all functions
      	which finally call gimp_drawable_real_set_tiles().
      
      	* app/tools/gimptransformtool.c (gimp_transform_tool_doit): no
      	need to set channel->bounds_known to FALSE, because
      	gimp_drawable_set_tiles() already did this.
      79776036
    • Michael Natterer's avatar
      Closer to text layer undo: · 43450002
      Michael Natterer authored
      2004-03-15  Michael Natterer  <mitch@gimp.org>
      
      	Closer to text layer undo:
      
      	* app/core/gimpchannel.c (gimp_channel_set_tiles): invalidate the
      	channel's boundary and bounds.
      
      	* app/text/gimptextlayer.c: implement GimpDrawable::swap_pixels()
      	and set text_layer->modified = TRUE after upchaining.
      
      	(gimp_text_layer_render): use gimp_drawable_set_tiles() and
      	set text_layer->modified = FALSE afterwards.
      
      	* app/core/gimpimage-undo-push.c: cleaned up variable declarations
      	and initializations.
      
      	(undo_pop_layer_mod)
      	(undo_pop_channel_mod): use gimp_channel_set_tiles() instead of
      	touching drawable->tiles manually. Now all pixel manipulation
      	(at least on layers) should be virtualized and can be detected by
      	the text layer.
      43450002
    • Michael Natterer's avatar
      Prepare the undo system for proper text layer undo: · a18a1d12
      Michael Natterer authored
      2004-03-15  Michael Natterer  <mitch@gimp.org>
      
      	Prepare the undo system for proper text layer undo:
      
      	* app/core/core-enums.[ch] (enum GimpUndoType): replaced
      	GIMP_UNDO_IMAGE and GIMP_UNDO_IMAGE_MOD by GIMP_UNDO_DRAWABLE.
      
      	* app/core/gimpimage-undo-push.[ch]: ditto: replaced
      	gimp_image_undo_push_image() and gimp_image_undo_push_image_mod()
      	by gimp_image_undo_push_drawable() which *always* expects to get a
      	TileManager passed. Also added g_return_if_fail()s to check if the
      	passed in tile manager follows the semantics of the "sparse"
      	boolean.
      
      	(undo_pop_drawable): removed all code and call the new
      	gimp_drawable_swap_pixels() instead (see below).
      
      	* app/core/gimpdrawable.[ch] (gimp_drawable_push_undo): if tiles
      	are NULL, create a copy of the area here and always pass tiles to
      	gimp_image_undo_push_drawable(). Added lots of g_return_if_fail()
      	here too.
      
      	Added new vitrual function GimpDrawable::swap_pixels() which
      	does what undo_pop_drawable() did.
      
      	* app/core/gimpchannel.c: implement swap_pixels() and invalidate
      	the channel's bounds and boundary.
      a18a1d12
  26. 13 Mar, 2004 2 commits
    • 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
    • Sven Neumann's avatar
      added new virtual function GimpDrawable::set_tiles(). · c179f9ac
      Sven Neumann authored
      2004-03-13  Sven Neumann  <sven@gimp.org>
      
      	* app/core/gimpdrawable.[ch]: added new virtual function
      	GimpDrawable::set_tiles().
      
      	* app/core/gimpchannel.c
      	* app/core/gimplayer.c: push an undo before chaining up in
      	set_tiles().
      
      	* app/core/gimpdrawable-transform.c
      	* app/core/gimpimage-convert.c
      	* app/tools/gimptransformtool.c: use gimp_drawable_set_tiles()
      	instead of fiddling with the drawable's tile manager directly.
      c179f9ac
  27. 09 Feb, 2004 1 commit
    • Sven Neumann's avatar
      added progress callback pointers to gimp_item_scale() and its variants. · 1359960a
      Sven Neumann authored
      2004-02-09  Sven Neumann  <sven@gimp.org>
      
      	* app/core/gimpitem.[ch]: added progress callback pointers to
      	gimp_item_scale() and its variants.
      
      	* app/core/gimpchannel.c
      	* app/core/gimpdrawable.c
      	* app/core/gimpimage-scale.c
      	* app/core/gimplayer.c
      	* app/core/gimpselection.c
      	* app/gui/layers-commands.c97999
      	* app/paint-funcs/paint-funcs.[ch]
      	* app/vectors/gimpvectors.c
      	* tools/pdbgen/pdb/layer.pdb: changed accordingly. Fixes bug #97999.
      
      	* app/pdb/layer_cmds.c: regenerated.
      1359960a
  28. 04 Feb, 2004 1 commit
  29. 26 Jan, 2004 1 commit
    • Michael Natterer's avatar
      removed gimp_image_owns_item() again. · 748d432f
      Michael Natterer authored
      2004-01-26  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpimage.[ch]: removed gimp_image_owns_item() again.
      
      	* app/core/gimpitem.[ch]: instead, added new virtual function
      	GimpItem::is_attached().
      
      	* app/core/gimpchannel.c
      	* app/core/gimplayer.c
      	* app/core/gimplayermask.c
      	* app/core/gimpselection.c
      	* app/vectors/gimpvectors.c: implement it.
      
      	* app/core/gimp-edit.c
      	* app/core/gimpdrawable-transform.c
      	* app/core/gimplayer-floating-sel.c
      	* app/text/gimptext-compat.c
      	* tools/pdbgen/pdb/edit.pdb
      	* tools/pdbgen/pdb/floating_sel.pdb
      	* tools/pdbgen/pdb/selection.pdb
      	* tools/pdbgen/pdb/text_tool.pdb
      	* tools/pdbgen/pdb/transform_tools.pdb_ changed accordingly.
      
      	* app/pdb/edit_cmds.c
      	* app/pdb/floating_sel_cmds.c
      	* app/pdb/selection_cmds.c
      	* app/pdb/text_tool_cmds.c
      	* app/pdb/transform_tools_cmds.c: regenerated.
      748d432f
  30. 22 Jan, 2004 1 commit
    • Michael Natterer's avatar
      added "gboolean use_default_values" to GimpItem::stroke(). · f3c91918
      Michael Natterer authored
      2004-01-22  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpitem.[ch]: added "gboolean use_default_values"
      	to GimpItem::stroke().
      
      	* app/core/gimpselection.c: changed accordingly.
      
      	* app/core/gimpchannel.c
      	* app/vectors/gimpvectors.c: if use_default_values is TRUE, don't
      	use the GimpPaintOptions passed in the GimpPaintInfo, but create a
      	new one.
      
      	* app/gui/stroke-dialog.c: pass FALSE so the values as set in the
      	tool options are used.
      
      	* tools/pdbgen/pdb/edit.pdb
      	* tools/pdbgen/pdb/paths.pdb: pass TRUE so tool options settings
      	don't affect PDB stroke calls. Fixes part 2 of bug #132145.
      
      	* app/pdb/edit_cmds.c
      	* app/pdb/paths_cmds.c: regenerated.
      f3c91918
  31. 12 Jan, 2004 1 commit
  32. 16 Nov, 2003 1 commit
    • Sven Neumann's avatar
      app/config/gimpbaseconfig.h use gint64 for all memsize properties. · fd30d5c9
      Sven Neumann authored
      2003-11-16  Sven Neumann  <sven@gimp.org>
      
      	* app/config/gimpbaseconfig.h
      	* app/config/gimpcoreconfig.h: use gint64 for all memsize properties.
      
      	* app/base/tile-manager.[ch] (tile_manager_get_memsize): since
      	tiles can be swapped out, a tilemanager can be larger than gsize
      	(on 32bit platforms). Use a gint64 to avoid an overflow.
      
      	* app/core/gimp.c
      	* app/core/gimpbrush.c
      	* app/core/gimpbrushpipe.c
      	* app/core/gimpbuffer.c
      	* app/core/gimpchannel.c
      	* app/core/gimpcontainer.c
      	* app/core/gimpcontext.c
      	* app/core/gimpdata.c
      	* app/core/gimpdatafactory.c
      	* app/core/gimpdrawable.c
      	* app/core/gimpgradient.c
      	* app/core/gimpimage-undo-push.c
      	* app/core/gimpimage-undo.[ch]
      	* app/core/gimpimage.c
      	* app/core/gimpitem.c
      	* app/core/gimpitemundo.[ch]
      	* app/core/gimplayer.c
      	* app/core/gimplist.c
      	* app/core/gimpobject.[ch]
      	* app/core/gimppalette.c
      	* app/core/gimpparasitelist.c
      	* app/core/gimppattern.c
      	* app/core/gimpundo.[ch]
      	* app/core/gimpundostack.c
      	* app/core/gimpviewable.c
      	* app/text/gimptext.c
      	* app/text/gimptextlayer.c
      	* app/vectors/gimpstroke.c
      	* app/vectors/gimpvectors.c: use gint64 for gimp_object_get_memsize()
      	and all its implementations.
      
      	* app/display/gimpdisplayshell-title.c
      	* app/gui/info-window.c: changed accordingly.
      fd30d5c9