2003-12-09 Michael Natterer <mitch@gimp.org>
* app/core/gimpimage-scale.c (gimp_image_scale_check): renamed
variable and added comments to make the calculation clear.
2003-12-09 Michael Natterer <mitch@gimp.org>
* app/core/gimpimage-duplicate.c: Removed unused #includes. Copy
the colormap using the provided API. Use gimp_item_convert()
instead of gimp_item_duplicate() and gimp_item_set_image() to
create layers, channels and vectors for the new image. Don't leak
the new image's grid. Cleanup.
2003-12-09 Michael Natterer <mitch@gimp.org>
Fixed memory management of layers and channels which were created
using the PDB:
* app/core/gimpitem.[ch]: added "gboolean floating" flag to
GimpItem. Items are created with floating == TRUE. Added
gimp_item_sink() which resets the floating flag and unrefs the
item if it was TRUE. Added gimp_item_is_floating() accessor.
* app/core/gimpimage.c (gimp_image_add_layer,channel,vectors):
g_object_ref()/gimp_item_sink() added items to take ownership of
them.
* app/core/gimplayer.c (gimp_layer_add_mask):
g_object_ref()/gimp_item_sink() the mask.
* app/gui/layers-commands.c
* app/xcf/xcf-load.c: don't unref layer masks after adding them to
the layer.
* tools/pdbgen/pdb/drawable.pdb (drawable_delete):
gimp_item_sink() the drawable if it's floating and fail if it's
not. Fixes bug #128881.
* tools/pdbgen/pdb/layer.pdb (layer_create_mask): fixed docs.
* app/pdb/drawable_cmds.c
* app/pdb/layer_cmds.c
* libgimp/gimplayer_pdb.c: regenerated.
2003-12-09 Michael Natterer <mitch@gimp.org>
* app/core/core-enums.[ch]: removed enum value
GIMP_UNDO_GROUP_EDIT_COPY (I have no idea why we used to push an
undo group around "Copy"...).
* app/core/gimp-edit.c (gimp_edit_extract): new utility function
which does everything needed for cut and copy and does not push an
undo group for copy.
(gimp_edit_cut,copy): removed lots of duplicated code and call
gimp_edit_extract().
(gimp_edit_paste,paste_as_new): no need to call
gimp_item_set_image() on newly created layers.
2003-12-09 Michael Natterer <mitch@gimp.org>
* app/widgets/gimptoolbox-dnd.c (gimp_toolbox_drop_drawable): use
gimp_item_convert() instead of gimp_item_duplicate() to create
the layer for the new image. Cleanup.
2003-12-09 Michael Natterer <mitch@gimp.org>
* app/base/tile-manager.c (tile_manager_get_memsize): return a
more exact result.
* app/core/gimpimage-scale.[ch] (gimp_image_scale_check): estimate
the new memsize by separating parts of the image that are constant
from parts that will scale. Also take undo logic into account.
Return the estimated new memsize since it's not trivial to
calculate.
* app/gui/image-commands.c (image_scale_callback): use the memsize
returned by gimp_image_scale_check() for the warning message. Free
allocated strings.
2003-12-09 Michael Natterer <mitch@gimp.org>
* app/core/core-enums.h: changed GimpImageScaleCheckType enum
values to GIMP_IMAGE_SCALE_*.
* app/core/gimpimage-scale.c (gimp_image_scale_check): return
GIMP_IMAGE_SCALE_TOO_BIG only if we are scaling up.
* app/gui/image-commands.c: changed accordingly. Whitespace and
indentation cleanup.
2003-12-09 Michael Natterer <mitch@gimp.org>
* tools/pdbgen/pdb/image.pdb (image_list): iterate gimp->images
directly rather than building a (leaked) temp GList using
gimp_container_foreach(). Removed gimlist_cb() utility function.
* app/pdb/image_cmds.c: regenerated.
2003-12-08 Manish Singh <yosh@gimp.org>
* Makefile.am
* configure.in: added --disable-devel-docs, to skip the devel-docs
dir entirely. Also, changed --enable-gimpdir to --with-gimpdir
since that semantic makes more sense.
2003-12-08 Dave Neary <bolsh@gimp.org>
* app/core/core-enums.h:
* app/core/gimpimage-scale.[ch]: Added the GimpImageScaleCheckType
enum and used it in gimp_image_scale_check() which used to be
gimp_image_check_scaling().
* app/gui/image_commands.c: Used the above when checking
scaling parameters to display a message if the image is too big
or too small after scaling. Closes bug #21028.
2003-12-08 Michael Natterer <mitch@gimp.org>
Some PDB fixes/cosmetics before doing real changes again:
* tools/pdbgen/pdb/drawable.pdb
* tools/pdbgen/pdb/layer.pdb: changed order of generated functions
to make more sense.
* tools/pdbgen/pdb/misc_tools.pdb: doc cosmetics, removed unused
subroutines.
* tools/pdbgen/pdb/image.pdb: reordered generated functions as
above, fixed resolution and unit accessors to use functions
instead of setting gimage->foo directly, use &image_accessors()
for the tattoo_state functions, cleanup.
* app/pdb/drawable_cmds.c
* app/pdb/image_cmds.c
* app/pdb/layer_cmds.c
* app/pdb/misc_tools_cmds.c
* libgimp/gimpdrawable_pdb.[ch]
* libgimp/gimpimage_pdb.[ch]
* libgimp/gimplayer_pdb.[ch]
* libgimp/gimpmisctools_pdb.c: regenerated.
2003-12-08 Sven Neumann <sven@gimp.org>
* libgimpthumb/gimpthumbnail.c (gimp_thumbnail_load_thumb): don't
scale the pixbuf, always return the pixbuf as loaded from disk.
* app/core/gimpimagefile.c (gimp_imagefile_get_description):
return NULL when being asked for a description on a thumbnail
without an image_uri.
2003-12-08 Michael Natterer <mitch@gimp.org>
* app/core/gimpdatafactory.c: code review / cleanup.
* app/plug-in/plug-in.c
* app/plug-in/plug-in-message.c: unified messages about plug-in
errors. Changed lots of g_warning()s to g_message()s because
g_warning() is for programming errors and the user should be
informed that the plug-in was killed and did not simply crash.
2003-12-08 Michael Natterer <mitch@gimp.org>
* tools/pdbgen/pdb/channel.pdb
* tools/pdbgen/pdb/display.pdb
* tools/pdbgen/pdb/drawable.pdb
* tools/pdbgen/pdb/image.pdb: don't use "alias"es just to rename
variables, they just clutter the code and there is no reason why
e.g. a GimpDisplay variable must be called "gdisp" instead of
"display". Cleanup.
* app/pdb/channel_cmds.c
* app/pdb/display_cmds.c
* app/pdb/drawable_cmds.c
* app/pdb/image_cmds.c: regenerated.
2003-12-08 Sven Neumann <sven@gimp.org>
* Makefile.am (SUBDIRS): added libgimpthumb.
* libgimpthumb/gimpthumb-utils.c
* libgimpthumb/gimpthumbnail.c: basic functionality is implemented
and seems to be working.
* app/Makefile.am: link the application against libgimpthumb.
* app/core/core-types.h: include libgimpthumb/gimpthumb-types.h.
* app/core/gimpimagefile.[ch]: removed thumbnail handling routines
and use libgimpthumb instead. Fixes bug #127914.
* app/gui/file-open-dialog.c
* app/widgets/gimpdocumentview.c: changed accordingly.
2003-12-06 Michael Natterer <mitch@gimp.org>
* app/xcf/xcf-private.h: added "GimpTattoo tattoo_state" to the
XcfInfo struct.
* app/xcf/xcf.c (xcf_load_invoker): initialize it to 0.
* app/xcf/xcf-load.c (xcf_load_image_props): remember PROP_TATTOO
in info->tattoo_state instead of setting it directly in the
GimpImage struct.
(xcf_load_image): set the remembered tattoo_state after all items
are created.
(Fixes the regression that "open -> don't modify -> save" didn't
result in 100% identical XCF files).
2003-12-05 Michael Natterer <mitch@gimp.org>
* app/pdb/pdb-types.h: added enum GimpPDBCompatMode which can
be one of { OFF, ON, WARN }.
* app/main.c: added --pdb-compat-mode command line option. Renamed
--enable-stack-trace to --stack-trace-mode. Made default values of
stack_trace_mode and pdb_compat_mode depend on GIMP_MINOR_VERSION
(default to compat ON and stack_trace NEVER).
* app/app_procs.[ch]: pass pdb_compat_mode to gimp_new().
* app/core/gimp.[ch]: added pdb_compat_mode to the Gimp struct
and to gimp_new().
* app/pdb/procedural_db.c: leave the compat table empty for
GIMP_PDB_COMPAT_OFF.
* app/plug-in/plug-in-message.c: warn when a deprecated procedure
is called for GIMP_PDB_COMPAT_WARN.
* docs/gimp-1.3.1.in: changed accordingly.
2003-12-05 Michael Natterer <mitch@gimp.org>
Made 3rd party scripts work again after all that PDB function
renaming:
* app/core/gimp.[ch]: added "GHashTable *procedural_compat_ht" to
the Gimp struct which maps old procedure names to new ones.
Call new function procedural_db_init_procs() instead of
internal_procs_init().
* app/pdb/procedural_db.[ch]: create and destroy the new compat
hash table. Added new function procedural_db_init_procs() which
registers the internal procedures and fills the compat hash table.
(procedural_db_execute): minor fixes.
* app/plug-in/plug-in-message.c (plug_in_handle_proc_run): if
the requested procedure was not found, try the compat table.
* tools/pdbgen/pdb/procedural_db.pdb: made all PDB query
procedures compat aware. For compat procedures, return help
strings which declare the procedure as deprecated and tell
the new name of the procedure. Cleanup.
* app/pdb/procedural_db_cmds.c: regenerated.
* plug-ins/common/psd.c: GIMP 1.3/2.0 needs its layer/channel
names to be UTF8 or it fails wackily, so convert the strings from
the PSD file to UTF8 instead of using them raw.