1. 03 Nov, 2008 2 commits
    • Michael Natterer's avatar
      add "GimpImageType type" parameter because there are only a few calls to · 56b5909c
      Michael Natterer authored
      2008-11-03  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpdrawable.[ch] (gimp_drawable_set_tiles): add
      	"GimpImageType type" parameter because there are only a few calls
      	to this function which (can easily pass the current type); however
      	most calls to gimp_drawable_set_tiles_full() were just using the
      	function because of the type argument and passed in the item's
      	current offsets (which means peeking into the item struct or using
      	temp variables).
      
      	* app/core/gimpdrawable-offset.c (gimp_drawable_offset)
      	* app/text/gimptextlayer.c (gimp_text_layer_render)
      	* app/tools/gimptransformtool.c (gimp_transform_tool_doit): pass
      	the type to set_tiles().
      
      	* app/core/gimpchannel.c (gimp_channel_convert)
      	* app/core/gimpimage-convert.c (gimp_image_convert)
      	* app/core/gimplayer.c (gimp_layer_convert,add_alpha,flatten):
      	change calls to set_tiles_full() into set_tiles() because the
      	offset doesn't change.
      
      
      svn path=/trunk/; revision=27535
      56b5909c
    • Michael Natterer's avatar
      renamed gimp_item_width() to gimp_item_get_width() and gimp_item_height() · 740ab5e6
      Michael Natterer authored
      2008-11-03  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpitem.[ch]: renamed
      	gimp_item_width() to gimp_item_get_width() and
      	gimp_item_height() to gimp_item_get_height().
      
      	* app/actions/channels-commands.c
      	* app/actions/drawable-commands.c
      	* app/actions/layers-commands.c
      	* app/core/<many>.c
      	* app/dialogs/offset-dialog.c
      	* app/dialogs/resize-dialog.c
      	* app/dialogs/scale-dialog.c
      	* app/display/gimpdisplayshell-dnd.c
      	* app/display/gimpdisplayshell.c
      	* app/paint/gimpbrushcore.c
      	* app/paint/gimpdodgeburn.c
      	* app/paint/gimpink.c
      	* app/paint/gimppaintcore.c
      	* app/paint/gimpsmudge.c
      	* app/text/gimptextlayer-xcf.c
      	* app/text/gimptextlayer.c
      	* app/tools/gimpaligntool.c
      	* app/tools/gimpeditselectiontool.c
      	* app/tools/gimpforegroundselecttool.c
      	* app/tools/gimpimagemaptool.c
      	* app/tools/gimprectangletool.c
      	* app/tools/gimpregionselecttool.c
      	* app/tools/gimptexttool.c
      	* app/vectors/gimpvectors.c
      	* app/vectors/gimpvectorsmodundo.c
      	* app/widgets/gimptoolbox-dnd.c
      	* app/widgets/gimpviewrendererdrawable.c
      	* app/widgets/gimpviewrenderervectors.c
      	* app/xcf/xcf-load.c
      	* app/xcf/xcf-save.c
      	* tools/pdbgen/pdb/drawable.pdb: changed accordingly.
      
      	* app/pdb/drawable-cmds.c: regenerated.
      
      
      svn path=/trunk/; revision=27531
      740ab5e6
  2. 02 Nov, 2008 9 commits
    • Martin Nordholts's avatar
      Instantiate offset_node on-demand. · c3b7be24
      Martin Nordholts authored
      * app/core/gimpitem.c: Instantiate offset_node on-demand.
      
      * app/core/gimpdrawable.c: Use gimp_item_set_offset().
      
      svn path=/trunk/; revision=27530
      c3b7be24
    • 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
      5b68a1d0
    • Martin Nordholts's avatar
      New function that sets the offset of the item and also keeps the · 594bc84a
      Martin Nordholts authored
      * app/core/gimpitem.c (gimp_item_set_offsets): New function that
      sets the offset of the item and also keeps the offset_node in
      sync.
      
      * app/core/gimpdrawable.c (gimp_drawable_real_set_tiles): Use the
      function instead of setting the offsets directly. Fixes corrupted
      display when cropping images with GEGL enabled for the projection.
      
      svn path=/trunk/; revision=27528
      594bc84a
    • Martin Nordholts's avatar
      Moved the shift_node from GimpLayer to GimpItem, and call it offset_node. · 93577a2e
      Martin Nordholts authored
      * app/core/gimpitem.[ch]: Moved the shift_node from GimpLayer to
      GimpItem, and call it offset_node. Also added
      gimp_item_get_offset_node() meant to be used in the same way as
      gimp_item_offsets().
      
      (gimp_item_real_translate): Keep the offset_node up to date.
      
      * app/core/gimplayer.[ch]: Don't manage the offset_node, get it
      from GimpItem instead.
      
      svn path=/trunk/; revision=27527
      93577a2e
    • Michael Natterer's avatar
      add new functions gimp_get_image_iter(), display_iter() and · a748e3f5
      Michael Natterer authored
      2008-11-02  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimp.[ch]: add new functions gimp_get_image_iter(),
      	display_iter() and tool_info_iter().
      
      	* app/tools/gimp-tools.c
      	* app/tools/gimptexttool.c
      	* app/tools/gimpvectortool.c
      	* app/dialogs/quit-dialog.c
      	* app/gui/gui.c
      	* app/menus/windows-menu.c
      	* app/actions/images-commands.c
      	* app/actions/tools-actions.c
      	* app/actions/windows-actions.c
      	* app/actions/tool-options-commands.c
      	* app/display/gimpdisplay.c
      	* app/display/gimpdisplay-foreach.c
      	* app/widgets/gimptoolbox.c
      	* tools/pdbgen/pdb/image.pdb: use them here.
      
      	* app/pdb/image-cmds.c: regenerated.
      
      
      svn path=/trunk/; revision=27526
      a748e3f5
    • Michael Natterer's avatar
      add new functions gimp_image_get_layer_iter(), channel_iter() and · d1ca165b
      Michael Natterer authored
      2008-11-02  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpimage.[ch]: add new functions
      	gimp_image_get_layer_iter(), channel_iter() and vectors_iter()
      	which return the GList inside the resp. GimpList.
      
      	* app/actions/channels-actions.c
      	* app/actions/layers-actions.c
      	* app/actions/vectors-actions.c
      	* app/core/gimpimage-convert.c
      	* app/core/gimpimage-crop.c
      	* app/core/gimpimage-duplicate.c
      	* app/core/gimpimage-flip.c
      	* app/core/gimpimage-item-list.c
      	* app/core/gimpimage-merge.c
      	* app/core/gimpimage-resize.c
      	* app/core/gimpimage-rotate.c
      	* app/core/gimpimage-scale.c
      	* app/core/gimpimage.c
      	* app/core/gimpimage.h
      	* app/core/gimpprojection-construct.c
      	* app/display/gimpdisplayshell-draw.c
      	* app/file/file-open.c
      	* app/tools/gimpaligntool.c
      	* app/tools/gimpdrawtool.c
      	* app/vectors/gimpvectors-compat.c
      	* app/vectors/gimpvectors-export.c
      	* app/widgets/gimplayertreeview.c
      	* app/xcf/xcf-save.c
      	* tools/pdbgen/pdb/image.pdb: use the new functions instead of
      	peeking both into the image and the list. Remove inclusions of
      	"gimplist.h" or change them into "gimpcontainer.h" if needed.
      
      	* app/pdb/image-cmds.c: regenerated.
      
      
      svn path=/trunk/; revision=27524
      d1ca165b
    • Michael Natterer's avatar
      add "update" signal with the same signature as GimpImage::update(). · c14c84ba
      Michael Natterer authored
      2008-11-02  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpdrawablestack.[ch]: add "update" signal with the
      	same signature as GimpImage::update(). Install handlers for the
      	drawables' "update" and "visibility-changed" signals and emit
      	"update" accordingly, item offsets taken into account. Also emit
      	"update" when drawables are added, removed and reordered.
      
      	* app/core/gimpimage.[ch]: remove handlers and tons of code that
      	makes sure the image emits "update" on any of the above handled
      	events and simply connect the layer and channel stacks' "update"
      	signal to gimp_image_update().
      
      
      svn path=/trunk/; revision=27523
      c14c84ba
    • Michael Natterer's avatar
      remove the mask_node and simply set both opacity and the layer mask's · 50ac74be
      Michael Natterer authored
      2008-11-02  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimplayer.[ch]: remove the mask_node and simply set
      	both opacity and the layer mask's source node on the opacity_node.
      	Needs latest SVN GEGL.
      
      
      svn path=/trunk/; revision=27522
      50ac74be
    • 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
      GimpLayer.
      
      * 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
      glib-object.h
      
      svn path=/trunk/; revision=27521
      24fac1de
  3. 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
  4. 31 Oct, 2008 1 commit
    • Sven Neumann's avatar
      bumped minimum required version of Cairo to 1.6.4. · 94dd20da
      Sven Neumann authored
      2008-10-31  Sven Neumann  <sven@gimp.org>
      
      	* configure.in: bumped minimum required version of Cairo to 
      1.6.4.
      
      	* app/core/gimpscanconvert.c: use 
      cairo_format_stride_for_width().
      
      
      svn path=/trunk/; revision=27488
      94dd20da
  5. 29 Oct, 2008 2 commits
    • Michael Natterer's avatar
      change member "gboolean stroking" into "gint stroking_count". Add push/pop · 82ca2233
      Michael Natterer authored
      2008-10-29  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpselection.[ch]: change member "gboolean stroking"
      	into "gint stroking_count". Add push/pop API to increase/decrease
      	the counter. Pretend the selection is empty if the counter is > 0.
      	Enables correctly rendering vector layers even if there is a
      	selection.
      
      
      svn path=/trunk/; revision=27464
      82ca2233
    • Sven Neumann's avatar
      Bug 558420 – projection incorrect with alpha-less layers · 75562157
      Sven Neumann authored
      2008-10-29  Sven Neumann  <sven@gimp.org>
      
      	Bug 558420 – projection incorrect with alpha-less layers
      
      	* app/core/gimpprojection-construct.c 
      (gimp_projection_initialize):
      	need to initialize the projection if the covering layer is not
      	opaque.
      
      
      svn path=/trunk/; revision=27460
      75562157
  6. 25 Oct, 2008 6 commits
    • Martin Nordholts's avatar
      Completed the rename with gimp:layer-mode -> gimp:point-layer-mode and · 1f7b2c25
      Martin Nordholts authored
      * app/gegl/gimpoperationpointlayermode.c: Completed the rename
      with gimp:layer-mode -> gimp:point-layer-mode and also did some
      formating.
      
      * app/core/gimplayer.c: Changed accordingly.
      
      svn path=/trunk/; revision=27408
      1f7b2c25
    • Martin Nordholts's avatar
      Instead of having one GEGL operation per layer mode, make · 1a19f731
      Martin Nordholts authored
      GimpOperationLayerMode instantiable and add a GimpLayerModeEffects
      property to it that we check in ::process() to blend pixels
      together.
      
      * app/gegl/gimpoperationlayermode.[ch]: Do the change described
      above. Currently only Normal and Addition are implemented. Normal
      so that we don't need a special case for the gegl:normal op. Also,
      the Dissolve layer mode is not a point op and needs to be
      implemented elsewhere.
      
      * app/gegl/gimpoperation*mode.c: Removed.
      
      * app/gegl/gimp-gegl-utils.[ch]: Removed
      gimp_layer_mode_to_gegl_operation().
      
      * app/core/gimplayer.c
      
      * app/gegl/Makefile.am
      * app/gegl/gimp-gegl.c: Adapt.
      
      svn path=/trunk/; revision=27400
      1a19f731
    • Michael Natterer's avatar
      Merge a modified and enhanced patch from the vector layer branch: · f0c79b81
      Michael Natterer authored
      2008-10-25  Michael Natterer  <mitch@gimp.org>
      
      	Merge a modified and enhanced patch from the vector layer branch:
      
      	* app/core/gimpdrawable-stroke.[ch]: add new public API
      	gimp_drawable_fill_boundary() and gimp_drawable_fill_vectors().
      
      	Split the internal code up so that there are functions which turn
      	the BoundSegs and GimpVectors into a GimpScanConvert and changed
      	gimp_drawable_stroke_scan_convert() so it can either fill the
      	shape or stroke it.
      
      
      svn path=/trunk/; revision=27399
      f0c79b81
    • Michael Natterer's avatar
      More merging from SOC 2006's vector layer branch: · 39af762f
      Michael Natterer authored
      2008-10-25  Michael Natterer  <mitch@gimp.org>
      
      	More merging from SOC 2006's vector layer branch:
      
      	* app/core/gimpitem.[ch]: add "gboolean push_undo" to
      	GimpItem::stroke().
      
      	* app/core/gimpdrawable-stroke.[ch]
      	* app/paint/gimppaintcore-stroke.[ch]
      	* app/paint/gimppaintcore.[ch] (gimp_paint_core_finish): add
      	"push_undo" parameters here too.
      
      	* app/actions/select-commands.c
      	* app/actions/vectors-commands.c
      	* app/core/gimpchannel.c
      	* app/core/gimpselection.c
      	* app/dialogs/stroke-dialog.c
      	* app/tools/gimppainttool.c
      	* app/vectors/gimpvectors.c
      	* tools/pdbgen/pdb/edit.pdb
      	* tools/pdbgen/pdb/paint_tools.pdb
      	* tools/pdbgen/pdb/paths.pdb: pass TRUE all over the place.
      
      	* app/pdb/edit-cmds.c
      	* app/pdb/paint-tools-cmds.c
      	* app/pdb/paths-cmds.c: regenerated.
      
      
      svn path=/trunk/; revision=27398
      39af762f
    • Michael Natterer's avatar
      bail out if the notification is not about one of our own properties (but · a9292536
      Michael Natterer authored
      2008-10-25  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpcontext.c (gimp_context_parent_notify): bail out if
      	the notification is not about one of our own properties
      	(but from a subclass).
      
      
      svn path=/trunk/; revision=27394
      a9292536
    • Michael Natterer's avatar
      add "gboolean use_context_color" parameter to gimp_stroke_options_new() · efb6d15a
      Michael Natterer authored
      2008-10-25  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpstrokeoptions.[ch]: add "gboolean use_context_color"
      	parameter to gimp_stroke_options_new() and set the passed context
      	as parent of the new options only if it's TRUE. Also fixed the
      	GimpConfig::duplicate() implementation to really duplicate the
      	object and not just return an object containing default values.
      
      	* app/core/gimpfilloptions.[ch]: add gimp_fill_options_new().
      
      	* app/actions/select-commands.c
      	* app/dialogs/stroke-dialog.c
      	* app/actions/vectors-commands.c
      	* tools/pdbgen/pdb/edit.pdb
      	* tools/pdbgen/pdb/paths.pdb: pass TRUE to gimp_stroke_options_new().
      
      	* app/pdb/edit-cmds.c
      	* app/pdb/paths-cmds.c: regenerated.
      
      
      svn path=/trunk/; revision=27393
      efb6d15a
  7. 24 Oct, 2008 2 commits
    • Michael Natterer's avatar
      add non-serializable properties pattern-view-type and pattern-view-size · 90c26cf1
      Michael Natterer authored
      2008-10-25  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpfilloptions.[ch]: add non-serializable properties
      	pattern-view-type and pattern-view-size which are used only by the
      	new UI below.
      
      	* app/widgets/gimpfilleditor.[ch]: added boolean edit-context
      	property. If TRUE, add widgets to edit the context's foreground and
      	pattern. Add "edit_context" parameter to gimp_fill_editor_new().
      
      	* app/widgets/gimpstrokeeditor.[ch]: add the same parameter here.
      
      	* app/widgets/gimpwidgets-utils.[ch]: add gimp_enum_radio_box_add()
      	which does the same as the existing gimp_enum_radio_frame_add().
      
      	* app/dialogs/stroke-dialog.c: pass FALSE for "edit_context"
      	because this dialog takes its foreground and pattern from the user
      	context and doesn't need it's own GUI for them.
      
      
      svn path=/trunk/; revision=27392
      90c26cf1
    • Michael Natterer's avatar
      app/core/Makefile.am app/core/core-types.h remove this mis-engineered · 1a453c37
      Michael Natterer authored
      2008-10-24  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/Makefile.am
      	* app/core/core-types.h
      	* app/core/gimpstrokedesc.[ch]: remove this mis-engineered
      	abstraction...
      
      	* app/core/gimpstrokeoptions.[ch]: ...and add its properties and
      	API here.
      
      	* app/core/gimpitem.[ch]: GimpItem::stroke() take a
      	GimpStrokeOptions instead of a GimpStrokeDesc.
      
      	* app/core/gimpchannel.c
      	* app/core/gimpselection.c
      	* app/vectors/gimpvectors.c
      	* 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: changed accordingly.
      
      	* app/pdb/edit-cmds.c
      	* app/pdb/paths-cmds.c: regenerated.
      
      
      svn path=/trunk/; revision=27388
      1a453c37
  8. 23 Oct, 2008 3 commits
    • Michael Natterer's avatar
      Another merge from the vector layer branch: · 50ad791f
      Michael Natterer authored
      2008-10-24  Michael Natterer  <mitch@gimp.org>
      
      	Another merge from the vector layer branch:
      
      	* app/core/gimpstrokedesc.c (gimp_stroke_desc_new): make sure
      	each stroke desc always has GimpPaintInfo.
      
      
      svn path=/trunk/; revision=27383
      50ad791f
    • 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
    • Michael Natterer's avatar
      Merge a part of SOC 2006's vector layer branch: · 67a5eaea
      Michael Natterer authored
      2008-10-23  Michael Natterer  <mitch@gimp.org>
      
      	Merge a part of SOC 2006's vector layer branch:
      
      	* app/core/Makefile.am
      	* app/core/core-types.h
      	* app/core/gimpfilloptions.[ch]: new GimpContext subclass factored
      	out of GimpStrokeOptions. Has "style" and "antialias" properties.
      
      	* app/core/gimpstrokeoptions.[ch]: derive from GimpFillOptions
      	and remove said properties.
      
      	* app/core/gimpdrawable-stroke.c
      	(gimp_drawable_stroke_scan_convert): changed accordingly.
      
      
      svn path=/trunk/; revision=27378
      67a5eaea
  9. 22 Oct, 2008 1 commit
    • Sven Neumann's avatar
      app/core/gimpimagefile.c formatting. · b6ae85b7
      Sven Neumann authored
      2008-10-22  Sven Neumann  <sven@gimp.org>
      
      	* app/core/gimpimagefile.c
      	* app/plug-in/gimpplugin-progress.c: formatting.
      
      
      svn path=/trunk/; revision=27357
      b6ae85b7
  10. 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
  11. 18 Oct, 2008 1 commit
    • Sven Neumann's avatar
      Applied patch from Alexia Death as attached to bug #471344: · e25c82e2
      Sven Neumann authored
      2008-10-18  Sven Neumann  <sven@gimp.org>
      
      	Applied patch from Alexia Death as attached to bug #471344:
      	
      	* app/core/Makefile.am
      	* app/core/gimpcoords-interpolate.[ch]: new files with
      	interpolation code taken from ...
      
      	* app/vectors/gimpbezierstroke.c: ... here.
      
      	* app/Makefile.am (AM_LDFLAGS): make it link.
      
      
      svn path=/trunk/; revision=27314
      e25c82e2
  12. 17 Oct, 2008 1 commit
    • Sven Neumann's avatar
      added signal Gimp::image-opened to announce that an image has been loaded · 8f425553
      Sven Neumann authored
      2008-10-17  Sven Neumann  <sven@sven>
      
      	* app/core/gimp.[ch]: added signal Gimp::image-opened to 
      announce
      	that an image has been loaded and a display was created for it.
      
      	* app/file/file-open.c (file_open_with_proc_and_display): call
      	gimp_opened() to emit the new signal.
      
      	* app/gui/dbus-service.xml
      	* app/gui/gimpdbusservice.[ch]: propagate the 'opened' signal to
      	listeners of the "org.gimp.GIMP.UI" DBus service.
      
      	* app/gui/gui-unique.c: formatting.
      
      
      svn path=/trunk/; revision=27297
      8f425553
  13. 14 Oct, 2008 2 commits
    • Michael Natterer's avatar
      configure.in require GEGL >= 0.0.21. · 880a699c
      Michael Natterer authored
      2008-10-14  Michael Natterer  <mitch@gimp.org>
      
      	* configure.in
      	* app/sanity.c: require GEGL >= 0.0.21.
      
      	* app/core/gimpchannel.c
      	* app/core/gimpdrawable-brightness-contrast.c
      	* app/core/gimpdrawable-invert.c
      	* app/core/gimpimage.c
      	* app/core/gimpimagemap.c
      	* app/core/gimplayer.c
      	* app/gegl/gimp-gegl-utils.c
      	* app/tools/gimpbrightnesscontrasttool.c: GEGL operation names
      	are now "gegl:"-prefixed.
      
      	* app/core/gimpimagemap.c: set the node's "dont-cache" property
      	unconditionally.
      
      
      svn path=/trunk/; revision=27284
      880a699c
    • Michael Natterer's avatar
      add a default implementation of GimpDrawable::get_node() which contains a · 5fa6af0e
      Michael Natterer authored
      2008-10-14  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpdrawable.[ch]: add a default implementation of
      	GimpDrawable::get_node() which contains a layer mode node.
      	Implement GimpItem::visibility_changed() and turn the node into a
      	nop when the drawable is invisible. Added public function
      	gimp_drawable_get_mode_node() so subclasses can plug stuff
      	into its "aux" pad.
      
      	* app/core/gimplayer.[ch]
      	* app/core/gimpchannel.[ch]: changed accordingly (remove
      	duplicated member and code that is now in GimpDrawable).
      
      
      svn path=/trunk/; revision=27277
      5fa6af0e
  14. 11 Oct, 2008 5 commits
    • Michael Natterer's avatar
      add a "use_gegl" boolean member. · ef1df223
      Michael Natterer authored
      2008-10-11  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpprojection.h: add a "use_gegl" boolean member.
      
      	* app/core/gimpprojection-construct.c (gimp_projection_construct):
      	use the boolean instead of hardcoding FALSE.
      
      	* app/actions/view-actions.c
      	* app/actions/view-commands.[ch]: add a "Use GEGL" action and
      	callback which sets the boolean and exposes the display.
      
      	* menus/image-menu.xml.in: add it to the "View" menu.
      
      
      svn path=/trunk/; revision=27242
      ef1df223
    • Michael Natterer's avatar
      add a projection node and implement GimpDrawable::get_node(). Reconfigure · 0e882395
      Michael Natterer authored
      2008-10-11  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpchannel.[ch]: add a projection node and
      	implement GimpDrawable::get_node(). Reconfigure the node in
      	visibility_changed(), set_color(), set_opacity() and
      	set_show_masked().
      
      	* app/core/gimpimage.c (gimp_image_get_graph): enable code that
      	projects the channels stack on top of the layer stack.
      
      	* app/core/gimpprojection-construct.c: remove the call to
      	gimp_projection_construct_channels() from the GEGL code path. Also
      	don't touch proj->construct_flag.
      
      
      svn path=/trunk/; revision=27230
      0e882395
    • Michael Natterer's avatar
      remove obsolete assertion and redundant cast. · e28e864a
      Michael Natterer authored
      2008-10-11  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimplayer.c (gimp_layer_get_node): remove obsolete
      	assertion and redundant cast.
      
      
      svn path=/trunk/; revision=27229
      e28e864a
    • Michael Natterer's avatar
      add GimpContainer::add() implementation, it's needed after all even though · 302bda6c
      Michael Natterer authored
      2008-10-11  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpdrawablestack.c: add GimpContainer::add()
      	implementation, it's needed after all even though everybody uses
      	gimp_container_insert() on drawable stacks.
      
      	(gimp_drawable_stack_remove_node): no need to have a special check
      	for newly added nodes, this can't happen any more now that we have
      	an add() impl.
      
      	(gimp_drawable_stack_get_graph): free the reverse list.
      
      
      svn path=/trunk/; revision=27228
      302bda6c
    • Michael Natterer's avatar
      Fix old bug in the GimpContainer implementation that wasn't visible before · 26de288d
      Michael Natterer authored
      2008-10-11  Michael Natterer  <mitch@gimp.org>
      
      	Fix old bug in the GimpContainer implementation that wasn't
      	visible before the drawable stack completly b0rked when removing
      	the second-last item:
      
      	* app/core/gimpcontainer.c: add default implementations of ::add()
      	and ::remove() and update container->num_children there instead of
      	in the gimp_container_add() and _remove() wrapper functions.
      	This way not only external callbacks connected to the "add" and
      	"remove" signals are called with the correct num_children, also
      	implemtations of ::add() and ::remove() in subclass have the right
      	number available before/after upchaining. Add paranoia code to the
      	wrapper functions which check if the subclass reall chains up.
      
      	* app/core/gimplist.c: chain up in add() and remove().
      
      
      svn path=/trunk/; revision=27227
      26de288d
  15. 10 Oct, 2008 3 commits
    • Michael Natterer's avatar
      simplify by getting rid of code duplication. · 012581b1
      Michael Natterer authored
      2008-10-10  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpdrawablestack.c
      	(gimp_drawable_stack_add_node)
      	(gimp_drawable_stack_remove_node): simplify by getting rid of code
      	duplication.
      
      
      svn path=/trunk/; revision=27217
      012581b1
    • Michael Natterer's avatar
      move all the code that creates a graph of drawables and all · a037de0f
      Michael Natterer authored
      2008-10-10  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/gimpdrawablestack.[ch]: move all the code that creates
      	a graph of drawables and all adding/removing/reordering code from
      	GimpImage to this file.
      
      	* app/core/gimpimage.c: remove the code here and use the layer
      	stack's subgraph instead. Add #if 0'ed code that blends the
      	channels on top of that but that doesn't work because channels
      	don't provide nodes yet.
      
      
      svn path=/trunk/; revision=27216
      a037de0f
    • Michael Natterer's avatar
      app/core/core-types.h app/core/Makefile.am new GimpList subclass stub · 513c1b80
      Michael Natterer authored
      2008-10-10  Michael Natterer  <mitch@gimp.org>
      
      	* app/core/core-types.h
      	* app/core/Makefile.am
      	* app/core/gimpdrawablestack.[ch]: new GimpList subclass stub
      	which will manage the subgraphs of layers and channels and is also
      	the first step towards layer tree.
      
      	* app/core/gimpimage.c (gimp_image_init): keep the layers and
      	channels in GimpDrawableStacks instead of plain GimpLists.
      
      
      svn path=/trunk/; revision=27212
      513c1b80