2008-11-11 Sven Neumann <sven@gimp.org>
Bug 560300 – Document History did not clear when "Keep record of
used files" was unchecked
* app/actions/documents-commands.c
(documents_clear_cmd_callback):
don't purge the entire GtkRecentManager, but only clear items
added by GIMP. Do this regardless of the "save-document-history"
gimprc option.
svn path=/trunk/; revision=27622
2008-11-11 Sven Neumann <sven@gimp.org>
Bug 560375 – Clearing an already empty document history crashes
GIMP
* app/actions/documents-commands.c
(documents_clear_cmd_callback):
gtk_recent_manager_purge_items() may return 0 but not set an
error.
svn path=/trunk/; revision=27620
2008-11-11 Michael Natterer <mitch@gimp.org>
Bug 559580 – Image windows need better default locations
* app/display/gimpdisplayshell.c (gimp_display_shell_style_set):
Only set GDK_HINT_USER_POS on the empty display because it gets a
position set by gimp. All other displays should be placed by the
window manager. Fixes all displays appearing at 0,0.
svn path=/trunk/; revision=27615
2008-11-11 Sven Neumann <sven@gimp.org>
Bug 558797 – "Export Path" doesn't remember last used folder
* app/actions/vectors-commands.c: remember last-used folders in
the Path Import and Export dialogs.
svn path=/trunk/; revision=27614
2008-11-11 Sven Neumann <sven@gimp.org>
* plug-ins/common/file-pdf.c: also return image type and number
of
pages. Followup to bug #559725.
svn path=/trunk/; revision=27610
* app/display/gimpcursorview.c ()
(gimp_cursor_view_update_cursor): Show selection info from the
image under the cursor.
(gimp_cursor_view_clear_cursor): Start showing selection info from
the active image again.
svn path=/trunk/; revision=27608
2008-11-10 Michael Natterer <mitch@gimp.org>
* app/core/gimpprojection.[ch]
* app/core/gimpprojection-construct.c: add code that keeps the
gegl processor around across calls, but destroy it anyway until
gegl_processor_set_rectangle() is fixed.
svn path=/trunk/; revision=27607
unresponsive
* app/tools/gimprectangletool.c: Accept a broader range of x, y,
width and height values from the tool options so we don't end up
in an infinite signal emission loop.
svn path=/trunk/; revision=27605
bounds
* app/display/gimpcursorview.c: Show the position and size of the
bounding box of the selection in the active image using the unit
of the active image window.
(gimp_cursor_view_format_as_unit): Don't add the unit abbreviation
if the unit is px.
svn path=/trunk/; revision=27603
2008-11-10 Michael Natterer <mitch@gimp.org>
* app/core/gimpdrawable-curves.c (gimp_drawable_curves_explicit):
use GIMP_CURVE_FREE, not _SMOOTH. Fixes the resp. PDB call.
svn path=/trunk/; revision=27601
2008-11-10 Sven Neumann <sven@gimp.org>
* plug-ins/common/unsharp-mask.c (unsharp_region): update the
progress less often.
svn path=/trunk/; revision=27599
2008-11-10 Sven Neumann <sven@gimp.org>
Bug 559725 – Allow to set image-type and image-num-layers for
thumbnail
* app/file/file-open.[ch] (file_open_thumbnail): added
parameters
for image-type and number of layers. Try to get these from the
procedure return values. Changes based on a patch from "tks".
* app/core/gimpimagefile.c (gimp_imagefile_create_thumbnail)
(gimp_thumbnail_set_info): set image-type and number of layers
if
specified.
svn path=/trunk/; revision=27595
crashes GIMP
* app/paint/gimppaintcore-stroke.c
(gimp_paint_core_stroke_vectors): Return an error message if there
were not enough points to stroke.
* app/dialogs/stroke-dialog.c (stroke_dialog_response): Guard
against crashes if an implementator forgets to set an error.
svn path=/trunk/; revision=27589
* app/display/gimpdisplayshell-scale.c
(gimp_display_shell_scale_update_rulers): Avoid critical warnings
when converting an image window with a unit other than pixels into
a the empty image window. Probably fixes some of the crashes
reported by Windows users.
svn path=/trunk/; revision=27586
2008-11-09 Michael Natterer <mitch@gimp.org>
* app/core/gimplayer-floating-sel.[ch]: remove
floating_sel_remove() and reorder one function.
* app/core/gimpimage.c (gimp_image_remove_layer): add the single
line of special code that needs to be done when removing a
floating selection.
* app/core/gimpselection.c
* app/actions/layers-commands.c
* tools/pdbgen/pdb/floating_sel.pdb: changed accordingly.
* app/pdb/floating-sel-cmds.c: regenerated.
* app/core/core-enums.[ch]
* app/core/gimpimage-undo.c: remove enum value
GIMP_UNDO_GROUP_FS_REMOVE.
svn path=/trunk/; revision=27583
2008-11-09 Michael Natterer <mitch@gimp.org>
* app/core/gimplayer-floating-sel.[ch]: made
floating_sel_composite() private and simplify it a lot by using
gimp_rectangle_intersect().
svn path=/trunk/; revision=27580
2008-11-09 Michael Natterer <mitch@gimp.org>
Bye bye floating_sel_rigor() and floating_sel_relax():
* app/core/gimpdrawable.[ch] (gimp_drawable_init_src_region):
implement compositing the floating selection on the fly. Add
return parameter "TileManager **temp_tiles" which returns the temp
buffer used for compositing; the caller has to unref the tiles.
* app/core/gimpchannel-project.c
* app/core/gimplayer-project.c: unref the temp_tiles.
* app/core/gimplayer.[ch]: remove members fs.backing_store and
fs.initial.
* app/core/gimplayer-floating-sel.[ch]: remove functions rigor(),
relax(), store() and restore(), they are not needed any longer.
Some minor cleanup, more to come.
* app/core/gimpprojection-construct.c: don't composite the
floating selection before projecting because that happens on the
fly now.
* app/core/core-enums.[ch]
* app/core/gimpfloatingselundo.c
* app/core/gimpimage-undo-push.[ch]: remove the rigor and relax
undos.
* app/core/gimpdrawable.c
* app/core/gimpimage-convert.c
* app/core/gimpimage-duplicate.c
* app/core/gimpimage.c
* app/core/gimplayer.c
* app/xcf/xcf-save.c: remove all calls to rigor and relax and all
implementations of virtual functions that were just there to
rigor/releax around chaining up.
* tools/pdbgen/pdb/floating_sel.pdb: remove all code from the
rigor and relax wrappers and deprecate the API.
* app/pdb/floating-sel-cmds.c
* libgimp/gimpfloatingsel_pdb.[ch]: regenerated.
* plug-ins/file-xjt/xjt.c: don't call rigor and relax.
svn path=/trunk/; revision=27579
* app/widgets/gimpcursorview.[ch]: Don't expose implementation
details, introduce internal helper functions, and make coordinates
outside the image be represented with an italic font instead of
enclosed in parenthesis.
svn path=/trunk/; revision=27578
2008-11-08 Michael Natterer <mitch@gimp.org>
* app/core/gimpdrawable.[ch]: add optional parameter "PixelRegion
*destPR" to GimpDrawable::apply_region().
* app/core/gimpdrawable-combine.[ch]: if the passed destPR is !=
NULL, write the result of the combination into that region instead
of the drawable's tiles. The region must have the exact size of
the result.
* app/core/gimp-edit.c
* app/core/gimpchannel.c
* app/core/gimpdrawable-blend.c
* app/core/gimpdrawable-bucket-fill.c
* app/core/gimpdrawable-shadow.c
* app/core/gimpdrawable-stroke.c
* app/core/gimpimagemap.c
* app/core/gimplayer-floating-sel.c
* app/paint/gimppaintcore.c: pass NULL as destPR. Code actually
using this feature follows.
svn path=/trunk/; revision=27574
2008-11-08 Michael Natterer <mitch@gimp.org>
* app/core/gimpdrawable.[ch]: add new function
gimp_drawable_init_src_region() which will initialize a
PixelRegion on this drawable's "projection" (with the floating
selection combined), but for now just uses drawable->tiles.
* app/core/gimpchannel-project.c
* app/core/gimplayer-project.c: use it instead of
pixel_region_init() on the drawable's tiles.
svn path=/trunk/; revision=27573
2008-11-08 Michael Natterer <mitch@gimp.org>
Abstract the legacy projection code away into a virtual function
of GimpDrawable:
* app/core/gimpdrawable.[ch]: add new virtual function
GimpDrawable::project_region() which projects an area of a
drawable onto a passed in PixelRegion.
* app/core/Makefile.am
* app/core/gimpchannel-project.[ch]
* app/core/gimplayer-project.[ch]: new files which implement it.
* app/core/gimpchannel.c
* app/core/gimplayer.c: hook it in.
* app/core/gimpprojection-construct.c: get rid all the projection
code moved to above new files and project all drawables in one
loop.
* app/core/gimpprojectable.[ch]: remove the legacy methods
get_colormap() and get_components(), they are not needed any
longer.
* app/core/gimpimage.c: changed accordingly.
svn path=/trunk/; revision=27571
2008-11-07 Sven Neumann <sven@gimp.org>
* app/core/gimppalette-load.c (gimp_palette_load_aco): improved
error handling. Fixes compiler warnings about ignoring the
return
value of read().
svn path=/trunk/; revision=27570
* app/core/Makefile.am
* app/core/core-types.h
* app/core/gimpitemstack.[ch]: new GimpList subclass which (for
now) does nothing but taking ownership of its children by the
means of g_object_ref_sink().
* app/core/gimpdrawablestack.[ch]: derive from GimpItemStack.
* app/core/gimpimage.c: use a GimpItemStack instead of a plain
GimpList for the list of vectors. Remove code which takes
ownerships of added items from gimp_image_add_layer(),
add_channel() and add_vectors().
svn path=/trunk/; revision=27568
2008-11-06 Sven Neumann <sven@sven>
* libgimpconfig/gimpconfigwriter.c
(gimp_config_writer_linefeed):
use g_set_error_literal() here as well.
svn path=/trunk/; revision=27564
2008-11-06 Sven Neumann <sven@gimp.org>
* tools/gimp-mkenums: use NC_() to mark enum values for
translation.
Use a lower-case short form of the type name as translation
context.
* libgimp/libgimp-intl.h: define the NC_() macro as noop.
* libgimpbase/gimpbasetypes.[ch]
* libgimpbase/gimpbase.def: added new functions to set and
get a translation context on an enum type.
* app/base/Makefile.am
* app/core/Makefile.am
* app/display/Makefile.am
* app/paint/Makefile.am
* app/plug-in/Makefile.am
* app/text/Makefile.am
* app/tools/Makefile.am
* app/widgets/Makefile.am
* libgimp/Makefile.am
* libgimpbase/Makefile.am:
* libgimpconfig/Makefile.am
* libgimpthumb/Makefile.am
* libgimpwidgets/Makefile.am: register the translation context
with the enum types.
* app/display/display-enums.h
* libgimpbase/gimpbaseenums.h
* libgimpconfig/gimpcolorconfig-enums.h: removed old-style
explicit
translation context.
* app/base/base-enums.c
* app/core/core-enums.c
* app/display/display-enums.c
* app/paint/paint-enums.c
* app/plug-in/plug-in-enums.c
* app/text/text-enums.c
* app/tools/tools-enums.c
* app/widgets/widgets-enums.c
* libgimpbase/gimpbaseenums.c
* libgimpconfig/gimpcolorconfig-enums.c
* libgimpwidgets/gimpwidgetsenums.c: regenerated.
svn path=/trunk/; revision=27562