2004-01-27 Manish Singh <yosh@gimp.org>
* app/paint-funcs/paint-funcs.c: inlined rotate_pointers, changed
prototypes and casts around so that we're compliant with C99 aliasing
rules.
2004-01-27 Manish Singh <yosh@gimp.org>
* app/composite/gimp-composite-generic.c
(gimp_composite_overlay_any_any_any_generic)
* app/paint-funcs/paint-funcs-generic.h (overlay_pixels): use more
than one temporary when stacking INT_MULTs, to avoid undefined
values.
2004-01-27 Manish Singh <yosh@gimp.org>
* app/paint/gimppaintcore.c (gimp_paint_core_interpolate): Use a real
GimpVector2 for vector operations, instead of stuffing everything
into a GimpCoords. C99 aliasing fix.
2004-01-27 Manish Singh <yosh@gimp.org>
* plug-ins/common/plugindetails.c: removed unused variable.
* plug-ins/common/nlfilt.c: declare nlfiltRow as inline in the
function definition as well.
2004-01-27 Manish Singh <yosh@gimp.org>
* configure.in: use AM_PATH_GIMPPRINT to get some additional
sanity checks.
* acinclude.m4: define AM_PATH_GIMPPRINT here, so we don't have
add a new autogen dependency.
* plug-ins/print/Makefile.am: Use GIMPPRINT_{CFLAGS,LIBS}
2004-01-28 Simon Budig <simon@gimp.org>
Argh, this is getting silly.
* app/core/gimpscanconvert.c: Fix dumb bug I introduced
while fixing bug #132036. Instead of always closing a
polyline to the first point of the vpath close to the
first point of the current polyline
I'll close#132036 for the third time now, feel free to
reopen it when bugs appear...
2004-01-27 Dave Neary <bolsh@gimp.org>
* plug-ins/common/tiff.c: Apply patch from Andrey Kiselev to
improve defaults when there is no photometric specified for
CCITT encoded tiffs. Closes bug #131902.
2004-01-27 Michael Natterer <mitch@gimp.org>
* app/gui/layers-commands.c (layers_add_mask_query): use the
new GIMP_STOCK_LAYER_MASK icon for "Add Layer Mask" dialog.
2004-01-27 Michael Natterer <mitch@gimp.org>
Re-enabled filling the whole selection using the bucket fill
tool. Fixes bug #132649.
* app/tools/gimpbucketfilloptions.[ch]: added boolean property
"fill-selection" and a GUI for it.
* app/tools/gimpbucketfilltool.c: changed accordingly.
2004-01-27 Michael Natterer <mitch@gimp.org>
* app/gui/image-menu.c (image_menu_entries)
* app/gui/layers-menu.c (layers_menu_entries): use the new
GIMP_STOCK_LAYER_MASK icons for "Add Layer Mask".
2004-01-27 Michael Natterer <mitch@gimp.org>
* themes/Default/images/Makefile.am
* themes/Default/images/stock-channel-indexed-16.png
* themes/Default/images/stock-channel-indexed-24.png
* themes/Default/images/stock-channel-indexed-32.png
* themes/Default/images/stock-channel-indexed-48.png
* libgimpwidgets/gimpstock.[ch]: added placeholders for an INDEXED
channel icon (copied from the GRAY channel icon). To be replaced...
* app/widgets/gimppreviewrendererimage.c: use
GIMP_STOCK_CHANNEL_INDEXED instead of GIMP_STOCK_QUESTION for the
indexed channel.
2004-01-27 Sven Neumann <sven@gimp.org>
* plug-ins/script-fu/scripts/comic-logo.scm: applied a patch from
Pedro Gimeno to make the logo behave more like it used to in 1.2
(bug #132493).
2004-01-27 Michael Natterer <mitch@gimp.org>
* app/display/gimpdisplayshell-title.c
(gimp_display_shell_format_title): added '%P' which expands to the
PDB id of the active drawable. Moved local variables to local
scopes where they are needed.
* app/config/gimpconfig-dump.c: document it.
2004-01-27 Michael Natterer <mitch@gimp.org>
* app/display/gimpdisplayshell-dnd.c: some cleanup.
(gimp_display_shell_bucket_fill): don't use the bucket fill
options but behave like "Edit -> Fill" and fill with NORMAL/100%.
Fixes bug #132596.
2004-01-26 Manish Singh <yosh@gimp.org>
* configure.in: add m4_defines for gimp_unstable and gimp_full_name,
and define a GIMP_VISIBLE_NAME based on that.
* data/misc/Makefile.am
* data/misc/gimp.applications.in
* data/misc/gimp.keys.in: made these configured files, so they can
use GIMP_APP_VERSION and GIMP_VISIBLE_NAME.
* data/misc/gimp.desktop.in.in: use GIMP_APP_VERSION and
GIMP_VISIBLE_NAME.
2004-01-27 Michael Natterer <mitch@gimp.org>
* themes/Default/images/Makefile.am
* themes/Default/images/stock-layer-mask-16.png
* themes/Default/images/stock-layer-mask-24.png
* themes/Default/images/stock-layer-mask-32.png
* themes/Default/images/stock-layer-mask-48.png
* themes/Default/images/stock-selection-border-16.png
* libgimpwidgets/gimpstock.[ch]: added forgotten layer mask and
new "border selection" icons from Jimmac (-32 and -48 ones to be
updated, they are currently copies of the channel icons).
* app/core/gimplayermask.c (gimp_layer_mask_class_init)
* app/gui/image-menu.c (image_menu_entries): use them.
2004-01-27 Sven Neumann <sven@gimp.org>
* plug-ins/gimpressionist/brush.c
* plug-ins/gimpressionist/gimp.c
* plug-ins/gimpressionist/gimpressionist.[ch]
* plug-ins/gimpressionist/paper.c
* plug-ins/gimpressionist/presets.c: fixed a crash (bug #132027),
got rid of some possible buffer overflows and fixed platform issues
like hardcoding '/' as the path separator.
2004-01-26 Michael Natterer <mitch@gimp.org>
* app/gui/image-menu.c (image_menu_entries): use
GIMP_STOCK_FLOATING_SELECTION for "Select->Float".
(image_menu_update): set "Layer->Merge Down" insensitive for the
bottom layer.
2004-01-26 Simon Budig <simon@gimp.org>
* app/core/gimpscanconvert.c: use the modern libart way
to uncross/rewind a libart SVP. This time really fixes
bug #132036 (please test it though...).
2004-01-26 Sven Neumann <sven@gimp.org>
* app/display/gimpdisplayshell-selection.c: don't draw the
outbounds selection when the selection is hidden (bug #132595).
2004-01-26 Sven Neumann <sven@gimp.org>
* app/text/gimptext-xlfd.c (gimp_text_font_size_from_xlfd):
account for the fact that XLFD stores point sizes in decipoints.
* app/text/gimptext-vectors.c: s/TEXT_DEBUG/GIMP_TEXT_DEBUG/
2004-01-26 Sven Neumann <sven@gimp.org>
* app/tools/gimpcurvestool.c
* app/widgets/gimphistogramview.c: use dark_gc instead of
text_aa_gc to draw the histogram and curves grid lines. dark_gc is
slightly lighter, looks better and fixes bug #132565.
2004-01-26 Michael Natterer <mitch@gimp.org>
* plug-ins/script-fu/scripts/unsharp-mask.scm: add the layer to
the image before pasting to it. Fixes bug #132504.
Fixed the underlying problem: make it impossible to attach
floating selections to drawables which are not currently part of
the image's layer or channel stacks.
Also cleaned up image <-> floating_sel interaction:
* app/core/gimplayer-floating-sel.[ch] (floating_sel_attach):
added assertion that the drawable is part of the image (see below).
Don't call gimp_image_floating_selection_changed(), it's emitted
by gimp_image_add_layer() now.
(floating_sel_remove)
(floating_sel_anchor): don't emit "floating_selection_changed",
it's emitted by gimp_image_remove_layer() now.
(floating_sel_anchor): removed the fix for bug #132162 because
gimp_image_remove_layer() behaves correctly now (see below).
Renamed floating_sel_reset() to floating_sel_activate_drawable().
Added g_return_if_fail() all over the place.
* app/core/gimpimage.[ch]: added new function gimp_image_owns_item()
which return TRUE if the passed item is part of the image.
(gimp_image_add_layer): emit "floating_selection_changed" here if
needed.
(gimp_image_remove_layer): emit "floating_selection_changed" if
needed, don't try to activate a layer if we called
floating_sel_activate_drawable().
This is the real fix for bug #132162.
* app/core/gimpimage-undo-push.c (undo_pop_layer): apply the same
fixes as to gimp_image_add,remove_layer(). Don't call
gimp_drawable_invalidate_preview() on the previously active layer
because that's done by gimp_image_set_active_layer() now.
* app/xcf/xcf-load.c: remember the "floating_sel_drawable" in the
XcfInfo struct and attach it *after* all layers and channels are
loaded to avoid attaching the floating selection to an
out-of-image drawable.
* app/core/gimp-edit.c (gimp_edit_paste)
* app/core/gimpdrawable-transform.c (gimp_drawable_transform_affine,
gimp_drawable_transform_flip, gimp_drawable_transform_rotate)
* app/core/gimpselection.c (gimp_selection_float)
* app/text/gimptext-compat.c (text_render): added checks for
gimp_image_owns_item() in all functions which can produce
floating selections.
* 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: added checks for
gimp_item_owns_image() and return an execution error if invoked
with a drawable which is not part of the image.
* 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.
2004-01-26 Michael Natterer <mitch@gimp.org>
* app/xcf/xcf-save.c (xcf_save_channel): store the correct offset
of the floating selection's drawable. This bug has been around
since 1.2 (!!!) and made it impossible to save images correctly
where the floating selection's drawable was a channel or layer
mask.
2004-01-26 Manish Singh <yosh@gimp.org>
* app/core/gimpdrawable-blend.c (gradient_fill_region): use memcpy
instead of casted assignment for storing HSV values in rbd.fg/bg,
for C99 aliasing compliance.
* app/xcf/xcf-load.c (xcf_load_layer_mask): use a GimpChannel *
explictly for xcf_load_channel_props, for the above reason.
* app/xcf/xcf-save.c (xcf_save_prop): use a temporary guint32 for
saving property types, for the above reason.
* app/core/gimpparasitelist.c (gimp_parasite_list_deserialize): plug
a memory leak, since data is copied on parasite creation.
2004-01-26 Simon Budig <simon@gimp.org>
* app/tools/gimpvectortool.c: do nothing in _button_press when
the tool is in the VECTORS_FINISHED state.
Fixes bug #132508.
2004-01-25 Manish Singh <yosh@gimp.org>
* plug-ins/common/postscript.c: use GSpawn instead of popen, -dBATCH,
fixes#108659 for this plugin. Thanks to Peter Kirchgessner for the
patch.
2004-01-25 Sven Neumann <sven@gimp.org>
* app/text/gimptextlayout.c (gimp_text_layout_position): fixed
text positioning for fonts where glyphs extend the logical
rectangle (bug #132495).
2004-01-24 Michael Natterer <mitch@gimp.org>
* tools/pdbgen/pdb/color.pdb (levels, curves): fiddle with the
passed channel index only for GRAYA drawables, not for all GRAY
drawables. Fixes bug #132322.
* tools/pdbgen/pdb/color.pdb: regenerated.
* app/tools/gimpcurvestool.[ch]
* app/tools/gimplevelstool.[ch]: fixed the same bug here. It never
occured because the "channel" field was accidentially initialized
with the correct value and never changed after.
2004-01-23 Simon Budig <simon@gimp.org>
* plug-ins/common/mosaic.c: properly use src_rgn.rowstride when
initializing the target region. Fixes bug #132271.
2004-01-23 Michael Natterer <mitch@gimp.org>
* app/app_procs.c
* app/errors.c
* app/main.c
* app/config/gimpconfigwriter.c
* app/core/gimpdata.c
* app/core/gimpdatafactory.c
* app/gui/user-install-dialog.c
* app/plug-in/plug-ins.c
* app/vectors/gimpvectors-import.c: some more gimp_filename_to_utf8().
* libgimp/gimp.c
* libgimpmodule/gimpmodule.c
* libgimpmodule/gimpmoduledb.c: use it here, too, now that is in
libgimpbase.
2004-01-22 Sven Neumann <sven@gimp.org>
* configure.in: libgimpmodule depends on gmodule-2.0 and gobject-2.0.
Incorporate both into GMODULE_CFLAGS and GMODULE_LIBS.
2004-01-22 Sven Neumann <sven@gimp.org>
* debian/*: removed outdated and unmaintained debian package
description. The debian package is well maintained without keeping
these files in our CVS tree.
2004-01-22 Michael Natterer <mitch@gimp.org>
* plug-ins/common/gbr.c
* plug-ins/common/pat.c: store the brush/pattern's name in a
parasite attached to the image. The parasite overrides the
RUN_WITH_LAST_VALS logic if it exists. Consistently set the
description as the layer's name, but ignore the layer's name
when saving because it may have been modified by exporting.
Fixes bug #131450.
Misc. cleanup/fixes: Don't assume that strncpy() nul-terminates
the buffer, use sizeof() instead of magic numbers, sanitize
descriptions using gimp_any_to_utf8(), always use strncpy()
instead of strcpy().
* devel-docs/parasites.txt: document the "gimp-brush-name" and
"gimp-pattern-name" parasites.
2004-01-21 Manish Singh <yosh@gimp.org>
* configure.in: modernized, made a lot of things m4 macros, and made
versioning a lot more finegrained, in anticipation for post-2.0.
* autogen.sh: bumped up libtool and glib minimum requirements to match
reality.
* gimp-2.0.pc.in
* gimpthumb-2.0.pc.in
* gimpui-2.0.pc.in: adapted to new versioning variables, and bring
in RT_LIBS when needed.
* */*/Makefile.am: adapted to new versioning variables.
2004-01-22 Michael Natterer <mitch@gimp.org>
* app/core/gimplayer-floating-sel.c (floating_sel_anchor):
explicitly activate the drawable the floating selection was
attached to (function was relying on implicit voodoo that
happened 1.2). Fixes bug #132162.
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.
2004-01-22 Simon Budig <simon@gimp.org>
* app/gui/dialogs-commands.c: replaced the indexed palette in
the default "Layers, Channels, Paths"-Dock (as created by the
menu in the toolbox) with the Undo History, since the indexed
palette is pretty useless most of the time and the new setup
at least matches the upper half of the dockable that comes up
after a new user starts the Gimp the first time.
2004-01-21 Michael Natterer <mitch@gimp.org>
* app/tools/gimptool.[ch]: added boolean return value to
GimpTool::initialize(). Returning FALSE means the tool could not
be initialized and doesn't want to receive button events.
Return TRUE from the default implementation.
* app/tools/tool_manager.[ch]: added boolean return value to
tool_manager_initialize_active(). Don't set the tool's display or
drawable if initialize() returns FALSE.
* app/display/gimpdisplayshell-callbacks.c: don't send button
events to the tool if initialize() returns FALSE.
* app/tools/gimpbrightnesscontrasttool.c
* app/tools/gimpcolorbalancetool.c
* app/tools/gimpcolorizetool.c
* app/tools/gimpcurvestool.c
* app/tools/gimphuesaturationtool.c
* app/tools/gimplevelstool.c
* app/tools/gimpposterizetool.c
* app/tools/gimpthresholdtool.c: return FALSE for NULL and indexed
drawables.
* app/tools/gimpimagemaptool.c: always return TRUE because our
subclasses already checked if the active drawable is OK.
* app/tools/gimptransformtool.c: return FALSE for layers with
masks. Fixes bug #132089. Some random cleanups.
2004-01-21 Michael Natterer <mitch@gimp.org>
* app/core/gimpdrawable-transform.c: use RINT() instead of ROUND()
to calculate the coordinates of the transformed tiles to avoid
off-by-one errors when affine-transforming, flipping and rotating
drawables with negative offsets.
Fixes the off-by-one part of bug #132089.
2004-01-21 Tor Lillqvist <tml@iki.fi>
* app/gui/themes.c (themes_list_themes_foreach): Fix undefined
behaviour. Fixes crash in bringing up the Preferences dialog when
compiled with Sun's compiler.
2004-01-21 Michael Natterer <mitch@gimp.org>
* app/core/gimpdrawable-transform.c (gimp_drawable_transform_paste):
call gimp_drawable_invalidate_boundary() because the drawable's
size may have changed. Fixes bug #132077. Removed call to
floating_sel_invalidate() which is now redundant.
2004-01-21 Michael Natterer <mitch@gimp.org>
* app/gui/info-dialog.[ch]: renamed info_dialog_popdown() to
info_dialog_hide() and info_dialog_popup() to info_dialog_present().
Added info_dialog_show() which just shows the dialog without
calling gtk_window_present().
* app/gui/info-window.c
* app/gui/view-commands.c
* app/tools/gimptransformtool.c: changed accordingly.
* app/tools/gimpcroptool.c
* app/tools/gimpperspectivetool.c
* app/tools/gimprotatetool.c
* app/tools/gimpscaletool.c
* app/tools/gimpsheartool.c: use info_dialog_show() so the dialog
doesn't grab the focus away from the canvas. Fixes bug #132041.
2004-01-21 Simon Budig <simon@gimp.org>
* app/core/gimpscanconvert.c: removed the call to
art_vpath_perturb, since it apparently is responsible for the
artefacts described in bug #132036. I don't really understand
why these artefacts were happening in the first place, because
in theory art_vpath_perturb should not do any harm.
Also properly close closed polygons.
Hopefully fixes#132036, please test this.
2004-01-20 Sven Neumann <sven@gimp.org>
* tools/gimp-remote.c: added new command-line options --existing
and --query. The former allows to get the old behaviour back and
the latter might be useful one day.
* docs/gimp-remote-1.3.1.in: document the new options.
2004-01-20 Michael Natterer <mitch@gimp.org>
* app/widgets/gimphelp-ids.h: added help IDs for the libgimp
export and unit dialogs.
* libgimp/gimpexport.c
* libgimpwidgets/gimpunitmenu.c: replaced html links by the new
help IDs.
* plug-ins/*/*.c: replaced all html help links by help IDs. A
plug-in's help ID is its procedure name with '_' relaced by '-'.
(e.g. file_tiff_save's help ID is file-tiff-save)
Did some random indentation and whitespace cleanup.
2004-01-20 Sven Neumann <sven@gimp.org>
* tools/gimp-remote.c: always open a new GIMP instance when being
called without any filenames/URLs. This makes it behave better when
being used from application launchers such as the GNOME panel.
* docs/gimp-remote-1.3.1.in: document the new behaviour.
2004-01-20 Michael Natterer <mitch@gimp.org>
* tools/pdbgen/pdb/help.pdb: changed "prog_name" parameter of
gimp_help() to "help_domain". It's useless to pass the plug-in's
executable name to the core because the core already knows it.
Instead, enabled accessing arbitrary help domains via the
PDB. Passing NULL as help_domain will use the domain the plug-in
registered, or the GIMP main help domain if it didn't register a
domain.
* app/pdb/help_cmds.c
* libgimp/gimphelp_pdb.[ch]: regenerated.
* libgimp/gimpui.c (gimp_ui_help_func): pass NULL as help_domain.
2004-01-20 Sven Neumann <sven@gimp.org>
* tools/gimp-remote.c: made --new the default behaviour and allow
gimp-remote to be called without any image filenames.
* docs/gimp-remote-1.3.1.in: changed accordingly.
* data/misc/gimp.applications
* data/misc/gimp.desktop.in.in: removed --new option from
gimp-remote calls.
2004-01-20 Michael Natterer <mitch@gimp.org>
* plug-ins/common/mail.c
* plug-ins/common/mng.c: use more already translated standard file
error messages. Some cleanup.
2004-01-20 Michael Natterer <mitch@gimp.org>
* app/gui/file-open-menu.c
* app/gui/file-save-menu.c
* app/gui/image-menu.c
* app/gui/menus.c
* app/gui/plug-in-menus.c: when dynamically creating menu entries,
pass static_entry == FALSE to gimp_item_factory_create_item() so a
*copy* of the the help_id is attached to the menu item.
Fixes help for plug-in menu entries.
2004-01-20 Michael Natterer <mitch@gimp.org>
* app/plug-in/plug-in.[ch]: changed member
"ProcRec *current_temp_proc" to "GList *temp_proc_recs", a stack
of temporary procedures, just as the "temp_main_loops" member is
supposed to be the stack of main loops for waiting for the
temp_procs' return values.
* app/plug-in/plug-in-run.c (plug_in_temp_run): changed accordingly.
* app/plug-in/plug-in-message.c
* app/plug-in/plug-in-run.c
* libgimp/gimp.c: added #define ENABLE_TEMP_RETURN 1.
Enables return values for temporary procedures. On the libgimp
side, this just enables the code which returns the values, on the
app side it enables per-plug-in stacks of proc_recs and main_loops
and a message handler for the GP_TEMP_PROC_RETURN message.
A temp_proc's caller now blocks until the proc is finished.
Fixes bug #50649.
Left the #ifdefs there so it can be easily disabled if things
break. Please play with Script-Fu and test this.
2004-01-19 Pedro Gimeno <pggimeno@wanadoo.es>
* plug-ins/common/ccanalyze.c (analyze): Call gimp_drawable_detach()
after gimp_drawable_get() to plug a leak.
2004-01-19 Sven Neumann <sven@gimp.org>
* configure.in: bumped version number to 2.0pre3 (1.3.26),
binary age 2, interface age 0.
* libgimpbase/gimpsignal.h: removed unused definition of
gimp_signal_syscallrestart().
2004-01-19 Michael Natterer <mitch@gimp.org>
* app/tools/gimptexttool.c (gimp_text_tool_create_layer): if there
is a floating selection, anchor it before adding the text layer.
Fixes bug #127451.
Also fixed some issues with undo. Addresses, but does not fix
bug #124969 and bug #130985.
2004-01-19 Michael Natterer <mitch@gimp.org>
* plug-ins/common/bz2.c
* plug-ins/common/gz.c
* plug-ins/common/hrz.c
* plug-ins/common/pnm.c
* plug-ins/sgi/sgi.c: marked some forgotten strings for
translation and use translated standard file error messages (no
new strings introduced), some indentation and cleanup.
2004-01-19 Sven Neumann <sven@gimp.org>
* app/*/*.c: include "libgimpbase/gimpbase.h" where needed; removed
now unnecessary inclusions of "file/file-utils.h".
2004-01-19 Sven Neumann <sven@gimp.org>
* app/file/file-utils.[ch]: removed file_utils_filename_to_utf8() ...
* libgimpbase/gimputils.[ch]: ... and added it here as
gimp_filename_to_utf8(). Added some docs that promise less than
the current implementation holds so that we can change the
implementation later.
* app/*/*.c: use gimp_filename_to_utf8() where
file_utils_filenames_to_utf8() has been used before.
* libgimpbase/gimpbase.def: changed accordingly.
* configure.in: reset GIMP_INTERFACE_AGE.
2004-01-19 Pedro Gimeno <pggimeno@wanadoo.es>
* plug-ins/common/compose.c (compose)
* plug-ins/common/decompose.c (decompose): fixed a lack of refresh
in the layer previews by adding calls to gimp_drawable_update()
where appropriate. Removed redundant gimp_drawable_flush() calls.
2004-01-19 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpgradienteditor.[ch]: moved the first hint label
to a line of its own. fixes bug #127673.
2004-01-18 Michael Natterer <mitch@gimp.org>
* app/gui/resize-dialog.c: when scaling an indexed image/layer,
add a label telling the user that indexed layers are always scaled
without interpolation. Can't simply make the option menu
insensitive because channels and layer masks are still scaled with
the chosen interpolation type. Fixes bug #131779.
2004-01-18 Michael Natterer <mitch@gimp.org>
* app/vectors/gimpstroke.c
* app/xcf/xcf-load.c: use the GIMP_TYPE_FOO macros instead of
gimp_foo_get_type(). Minor cleanups.
2004-01-18 Michael Natterer <mitch@gimp.org>
* app/core/gimpimage.c (gimp_image_add_layer,remove_layer): in the
spirit of the fix for bug #131721 below, don't try to figure
manually if "alpha_changed" needs to be emitted but simply compare
the old and new values of gimp_image_has_alpha().
* app/gui/preferences-dialog.c (prefs_dialog_new): follow
"foo-window-type" -> "foo-window-hint" change.
2004-01-18 Michael Natterer <mitch@gimp.org>
* app/core/gimpimage.[ch] (gimp_image_get_color): also return the
color's alpha byte if it has alpha, not only the converted RGB
values. Return OPAQUE_OPACITY for drawables without alpha.
Fixes bug #131706.
* app/core/gimpdrawable.c (gimp_drawable_get_color_at)
* app/core/gimpimage-contiguous-region.c
(gimp_image_contiguous_region_by_color)
* app/core/gimpimage-projection.c (gimp_image_projection_get_color_at)
* app/core/gimpimagemap.c (gimp_image_map_get_color_at)
* app/paint/gimpclone.c (gimp_clone_line_image): removed separate
handling of the alpha byte from all users of gimp_image_get_color().
2004-01-18 Michael Natterer <mitch@gimp.org>
* app/core/gimpimage.c (gimp_image_set_active_layer): don't allow
to select anything but the floating selection. Fixes bug #128025.
(gimp_image_set_active_layer,channel,vectors): allow to pass NULL
to unselect the active item. Removed the silly feature that
passing some random item of another image would select the first
item in the list (was unused anyway).
(gimp_image_unset_active_channel): use gimp_image_set_active_channel()
now that it accepts NULL.
(gimp_image_add_layer,channel,vectors): cleaned up / simplified.
(gimp_image_remove_layer,channel,vectors): cleanup,
simplification, use gimp_image_set_active_layer,channel,vectors()
now that they accept NULL, make sure the item next to the removed
item becomes the active one (and not the first in the list, which
was a severe usability problem in the dialogs).
* app/core/gimpimage-undo-push.c (undo_pop_layer,channel): pass
NULL to the set_active functions, cleanup.
* app/core/gimpimage-duplicate.c: attach the floating selection
before setting the active layer. Code relied on broken
gimp_image_set_active_layer() behaviour before.
* app/core/gimplayer-floating-sel.c: no need to set
gimage->floating_sel before calling gimp_image_add_layer(). The
weird GUI mentioned in the comment existed in 1.2 only.
* app/display/gimpdisplayshell-layer-select.c (layer_select_advance):
don't assume that setting the active_layer always succeeds.
* tools/pdbgen/pdb/image.pdb: behave as the documentation says
and return an execution error if setting the active layer or
channel failed.
Unrelated:
* tools/pdbgen/pdb/image.pdb
* tools/pdbgen/pdb/layer.pdb: removed leftover cruft from the old
guchar based color API.
* tools/pdbgen/pdb/channel.pdb: simplified code which handles the
channel's color.
* app/pdb/channel_cmds.c
* app/pdb/image_cmds.c: regenerated.
2004-01-18 Simon Budig <simon@gimp.org>
* app/gui/about-dialog.c: make sure we always properly use
the size of the logo image. Place the text at the bottom
of the image when the size changes (position of the version
string needs to be adjusted manually still...).
* data/images/gimp_logo.png: slightly tweaked.
* data/images/gimp1_0_logo.png: added for historical reasons.
2004-01-18 Sven Neumann <sven@gimp.org>
* app/gui/file-open-dialog.c (file_open_create_thumbnail): redone
to make it work again.
* libgimpthumb/gimpthumbnail.c (gimp_thumbnail_load_thumb): fixed
stupid mistake that caused thumbnails not to load under certain
circumstances.
2004-01-18 Michael Natterer <mitch@gimp.org>
* app/core/gimpimage-undo-push.c (undo_pop_layer): removed broken
code which tried to figure manually whether "alpha_changed" should
be emitted. Instead, simply compare the return values of
gimp_image_has_alpha() before and after adding/removing the
layer. Fixes bug #131721.
2004-01-17 Henrik Brix Andersen <brix@gimp.org>
Finally fixed bug #125864:
* app/core/gimpimage-guides.c (gimp_image_find_guide): iterate
over the entire list of guides to determine the closest one.
* app/core/gimpimage-snap.c: use gdoubles instead of gints for
dist and mindist variables to make sure grid and guides with 1px
spacings work as expected.
* plug-ins/pygimp/gimpfu.py: Show the description of params in dialog
boxes, rather than the internal variable name. This is more
consistent with script-fu. (reported by Florian Traverse)
2004-01-17 Sven Neumann <sven@gimp.org>
* app/config/gimpguiconfig.[ch]
* app/config/gimprc-blurbs.h
* app/widgets/gimpdock.c
* app/widgets/gimptoolbox.c
* app/widgets/gimpwidgets-utils.[ch]
* app/widgets/gimpwidgets-utils.[ch]
* app/widgets/widgets-enums.[ch]: GTK+-2.4 will allow to request
windows to be kept above. This change prepares the code so that we
can optionally do this for docks and the toolbox as soon as we
depend on GTK+-2.4 (see bug #131672).
2004-01-16 Dave Neary <bolsh@gimp.org>
* plug-ins/common/tiff.c: Apply a (modified) patch from Pablo
d'Angelo to enable saving of a non-premultiplied alpha channel
and provide an UI to use it (a checkbox and extra PDB
procedure). Fixes bug #131030.
2004-01-16 Michael Natterer <mitch@gimp.org>
* app/gui/edit-commands.[ch]: converted tabs to spaces.
(cut,copy_named_buffer_callback): unref the buffer after adding it
to gimp->named_buffers. Seems we leaked all named buffers...
Removed code duplication I have just introduced:
* app/gui/edit-commands.[ch] removed
edit_paste_into_cmd_callback(). Instead, pass the "paste_into"
boolean as "guint action" to gimp_edit_paste_cmd_callback().
* app/gui/image-menu.c: changed accordingly.
* app/widgets/gimpbufferview.c: added utility function
gimp_buffer_view_paste() and call it from the paste and paste_into
callbacks.
2004-01-15 Manish Singh <yosh@gimp.org>
* app/text/gimpfontlist.c: Minor cleanup, add note about using
pango_fc_font_description_from_pattern from pango 1.4 when we
can.
2004-01-15 Pedro Gimeno <pggimeno@wanadoo.es>
* app/gui/file-save-menu.c (file_save_menu_update): Removed the
code that disables save formats conditionally, making all of
them available. Fixes bug #110610.
2004-01-15 Manish Singh <yosh@gimp.org>
* app/text/gimpfontlist.c: Set PangoStretch from FC_WIDTH. This
partially addresses #131561 (namely, the gimp side).
2004-01-15 Michael Natterer <mitch@gimp.org>
* plug-ins/helpbrowser/helpbrowser.c: removed
GIMP_HELP_DEFAULT_DOMAIN #define...
* plug-ins/helpbrowser/domain.h: ...and added it here.
* plug-ins/helpbrowser/domain.c: fixed the fix for bug #128112:
don't compare the help domain's base uri (which is variable) but
the help domain's name (which is constant). Re-added removed
information to the error message while keeping its user
readability. Marked g_message() strings for translation.
2004-01-15 Michael Natterer <mitch@gimp.org>
Fixed bug #78732 (don't paste off screen):
* app/display/gimpdisplayshell-transform.[ch]: added new function
gimp_display_shell_untransform_viewport() which returns the
visible rectangle of the image in image coordinates.
* app/core/gimp-edit.[ch] (gimp_edit_paste): added viewport
parameters and changed positioning of the pasted layer as follows:
- if there is a selection, center on the selection (just as before).
- if there is no viewport, center on the active drawable.
- if the viewport intersects with the active drawable, center
on the intersection.
- if the viewport does *not* intersect with the active drawable,
center on the active drawable (off-screen, but better than pasting
something that will be invisible due to floating selection clipping).
- if there is no active drawable, center on the viewport.
- if there is no active drawable and no viewport, center on the image.
* app/widgets/gimpbufferview.c (gimp_buffer_view_paste_clicked)
(gimp_buffer_view_paste_into_clicked)
* app/display/gimpdisplayshell-dnd.c (gimp_display_shell_drop_buffer)
* app/gui/edit-commands.c (edit_paste_cmd_callback)
(edit_paste_into_cmd_callback): ask the shell for the viewport
and pass it to gimp_edit_paste().
* app/display/gimpdisplayshell-dnd.c
(gimp_display_shell_drop_drawable): center the created layer on
the viewport.
* app/tools/gimpmovetool.c (gimp_move_tool_button_release): use
gimp_display_shell_untransform_viewport() (its code was taken from
here).
* tools/pdbgen/pdb/edit.pdb: pass "no viewport" to gimp_edit_paste().
* app/pdb/edit_cmds.c: regenerated.
2004-01-15 Dave Neary <bolsh@gimp.org>
* NEWS: Now that we're in pre-release mode, list all the bugs fixed
in this release, rather than features added. Commits which don't fix
bugs are listed in the "Other contributions" section. Bugs were added
in chronological order according to when the fix was committed (so
the first bug in the list was the one committed soonest after the
2.0pre1 release).
2004-01-15 Michael Natterer <mitch@gimp.org>
* app/core/gimpimage.c: moved initialization of the
gimage->visible[] and gimage->active[] arrays from
gimp_image_new() to gimp_image_init(). Use gimp_rgba_set()
to initialize gimage->qmask_color.
2004-01-15 Dave Neary <bolsh@gimp.org>
* plug-ins/helpbrowser/domain.c: Modify error messages shown when
help files cannot be opened. For the main GIMP help domain, the
error message is now "Failed to open help files:\nTheGIMP help files
are not installed." and in the general case "Failed to open help
files:\nThe requested help file %s could not be opened.\nPlease check
your installation." This fixes bug #128112.
2004-01-15 Sven Neumann <sven@gimp.org>
* data/misc/Makefile.am: added a "validate" rule that attempts to
validate the generated gimp.desktop file using desktop-file-validate
(from desktop-file-utils). Run it on 'make dist'.
* tips/Makefile.am: for consistency, moved the existing validation
code to a rule called "validate".
* plug-ins/common/plugindetails.c: clean up the code (use
gimp_table_attach_aligned() where needed).
* plug-ins/dbbrowser/dbbrowser.c:
* plug-ins/dbbrowser/dbbrowser_utils.c: changed tabs to spaces.
2004-01-14 Dave Neary <bolsh@gimp.org>
* app/core/gimpimage.c: get the type of the drawable, not the
image, when transforming a TempBuf, making dragging & dropping
patterns on layer masks work correctly. Fixes bug #131146.
2004-01-14 Michael Natterer <mitch@gimp.org>
Some code review:
* app/core/gimpimage.c: named the gint paramater in all
colormap_changed related functions to "color_index", fixed typo in
parasite undo description, moved some variables to local scopes,
changed the layer raise/lower functions to look like the channel
and vector ones, cosmetics.
* app/core/gimpimage-colorhash.c: removed trailing whitespace,
initialize / reset more stuff to 0, cosmetics.
2004-01-14 Tor Lillqvist <tml@iki.fi>
* app/file/file-utils.[ch]: Add new function
file_utils_filename_to_utf8(), which is to be used when converting
file names (which are kept in the on-disk encoding) to UTF-8 for
passing to GTK, or to g_print() etc.
* app/*/*.c: Call file_utils_filename_to_utf8(). Should fix most
of the warnings generated by non-UTF8 pathnames. See #130118.
* libgimpbase/gimpenv.b: Document that gimp_directory() etc return
strings in the on-disk encoding.
* libgimpmodule/gimpmodule.c: Convert filenames to UTF-8 (using
g_filename_to_utf8()) before passing to g_print().
2004-01-13 Simon Budig <simon@gimp.org>
* data/images/gimp_logo.png: New image for the about dialog by
Jakub Steiner.
* app/gui/about-dialog.c: Adjusted to new image. Also could not
resist to add a fancy effect...
* data/images/gimp1_2_logo.png: Saved the image from 1.2.
2004-01-13 Michael Natterer <mitch@gimp.org>
Allow invoking the text tool by double clicking a text layer in
the layers dialog, just like the path tool is invoked when double
clicking a path.
* app/tools/gimptexttool.[ch]: added empty
gimp_text_tool_set_layer() stub. Sven, your turn...
* app/gui/layers-commands.[ch]: added layers_text_tool() which
invokes the text tool on text layers and falls back to
layers_edit_layer_query() otherwise.
Added layers_text_tool_cmd_callback() for the layers menu.
* app/gui/layers-menu.c: added "Text Tool" menu item and hide
it for layers which are no text layers.
* app/gui/dialogs-constructors.c (dialogs_layer_list_view_new):
use layers_text_tool() as "activate" function.
2004-01-13 Michael Natterer <mitch@gimp.org>
* app/composite/Makefile.am (AM_CPPFLAGS): G_LOG_DOMAIN should be
"Gimp-Composite", not "Gimp-Composition".
* app/app_procs.c (app_run): register a log handler for the
"Gimp-Composite" domain.
2004-01-13 Michael Natterer <mitch@gimp.org>
* app/base/gimphistogram.c: added GimpHistogramChannel index
fiddling hacks for GRAYA images to all gimp_histogram_get_*()
functions. The public API now does what their enum values pretend
to do.
(gimp_histogram_calculate): restructured to reduce indentation depth.
* app/widgets/gimphistogrameditor.c
* app/widgets/gimphistogramview.c
* tools/pdbgen/pdb/color.pdb: removed hacks here and always use
the unchanged enum values.
* app/pdb/color_cmds.c: regenerated.
2004-01-13 Michael Natterer <mitch@gimp.org>
* app/base/gimphistogram.[ch]: renamed gimp_histogram_nchannels()
to gimp_histogram_n_channels().
* app/core/gimpdrawable-histogram.c: removed silly double negation
logic. Cleanup.
* app/widgets/gimphistogrameditor.c
* app/widgets/gimphistogramview.c: adjust the GimpHistogramChannel
for GRAYA images to make sure we pick alpha from the right slot.
* app/tools/gimpcurvestool.c
* app/tools/gimplevelstool.c: removed the same hack here and call
gimp_histogram_view_set_channel() with the correct enum value.
* tools/pdbgen/pdb/color.pdb (levels, curves, histogram): fiddle
with enum values here too so GRAY* drawables produce the correct
results.
Fixed precondition checks and set "success" in a uniform way all
over the place.
Use gimp_drawable_calculate_histogram() instead of duplicating its
code here.
(started with a patch from Pedro Gimeno. Fixes bug #109078)
* app/pdb/color_cmds.c: regenerated.
2004-01-12 Michael Natterer <mitch@gimp.org>
* app/base/gimphistogram.c (gimp_histogram_calculate_sub_region):
advance the source pointer by 4, not 3 bytes for regions with
4 bytes (ouch). Cosmetics.
2004-01-12 Sven Neumann <sven@gimp.org>
* data/misc/gimp.desktop.in.in (Exec): use 'gimp-remote-1.3 --new'
here so that drops on the application icon don't necessarily spawn
a new instance.
2004-01-12 Michael Natterer <mitch@gimp.org>
Enabled/fixed moving of channels and layer masks (was something
between disabled and broken before).
* app/tools/gimpeditselectiontool.h (enum EditType): added new
values EDIT_CHANNEL_TRANSLATE and EDIT_LAYER_MASK_TRANSLATE.
* app/tools/gimpmovetool.c (gimp_move_tool_button_press): look at
the type of the active drawable and invoke GimpEditSelectionTool
accordingly.
(gimp_move_tool_cursor_update): don't show the "bad" cursor when
the active drawable is a channel or layer mask.
* app/tools/gimpeditselectiontool.c: changed/enabled moving of
channels and layer masks to work similar to selection mask moving:
- Show only the item's outline while moving and do the actual move
on button_release.
- Fixed/generalized some code to cope with the fact that we move
the linked layers/vectors *while* moving but the moved channel
itself *after* moving.
- Draw the channel's/mask's bounding box instead of its boundary
if the boundary is empty (if all its values are either below or
above HALF_WAY).
2004-01-12 Sven Neumann <sven@gimp.org>
* app/gui/plug-in-menus.c (plug_in_menus_init): only call
bind_textdomain_codeset() when it is available. Spotted by
Reinhard Geissler (bug #131215).
2004-01-12 Michael Natterer <mitch@gimp.org>
* app/core/gimpimage-projection.c (gimp_image_invalidate): applied
patch from Pedro Gimeno that makes sure we always invalidate
complete tiles, not parts of it. Fixes bug #116765.
* app/display/gimpdisplay.c (gimp_display_paint_area): calculate
the image area to invalidate using sub-pixel precision and
ceil()/floor() the resulting area to make sure we always
invalidate a superset of the dirty area, not a subset. A rounding
error here has never been reported but would cause effects similar
to #116765.
2004-01-12 Sven Neumann <sven@gimp.org>
* libgimp/gimpmenu.c (gimp_image_menu_new): call the callback with
the selected image which is not necessarily the requested one
(fixes bug #92586).
Also changed all menu constructors to always call the registered
callback even when the value is -1 because the menu is empty.
* app/gui/plug-in-commands.c (plug_in_run_cmd_callback): run the
procedure even if there's no active GIMP display. The display and
screen is then taken from the current cursor position.
* app/gui/gui-vtable.c (gui_get_display_name): don't call
gimp_display_get_by_ID() unless gdisp_ID is > 0.
2004-01-12 Sven Neumann <sven@gimp.org>
* plug-ins/common/CML_explorer.c (parse_line_to_gdouble): use
g_ascii_strtod() instead of the locale-dependant atof().
2004-01-12 Sven Neumann <sven@gimp.org>
* plug-ins/common/CML_explorer.c: render a grayscale preview when
the plug-in is run on a grayscale drawable (fixes bug #82465).
Fixed some memory leaks while I was at it.
Please note that this is a work in progress.
This plug-in was very broken, and still needs some work to be useful and less ugly.
2004-01-11 Pedro Gimeno <pggimeno@wanadoo.es>
* app/core/gimpdrawable-preview.c (gimp_drawable_preview_scale):
Apply threshold to alpha in the same way as it is applied to the
image in indexed mode. Fixes bug #115793, at least until the
alpha thresholds in indexed images are removed.
* plug-ins/FractalExplorer/Display.c: Fix zoom undo handling
issues. Closes bug #82478.
2004-01-11 Simon Budig <simon@gimp.org>
* app/display/gimpdisplayshell-scale.c: ensure that
"fit image to window" really always fits, despite the
resulting fractions are not as nice compared to the
fractions from zoom in/out.
2004-01-11 Simon Budig <simon@gimp.org>
* app/display/gimpdisplayshell-scale.c: further tweaks.
now excluding fractions where numerator*denominator > 200
(only when both are > 1).
This is a simple heuristic to exclude some absurd looking
fractions.
Also ensure that 1/ratio results in b:a, when ratio results
in a:b.
IMHO fixes bug #124073.
2004-01-10 Sven Neumann <sven@gimp.org>
* app/core/gimpimagefile.[ch] (gimp_imagefile_update): removed the
size parameter and do nothing but invalidating the preview.
* app/gui/file-open-dialog.c
* app/widgets/gimpdocumentview.c: changed accordingly.
* app/core/gimpdocumentlist.c (gimp_document_list_deserialize):
no need for calling gimp_imagefile_update() from here.
* tools/pdbgen/pdb/fileops.pdb
* app/pdb/fileops_cmds.c (file_load_thumbnail): rewritten using the
GimpThumbnail API.
* app/core/gimp.c: cosmetics.
2004-01-11 Simon Budig <simon@gimp.org>
* app/display/gimpdisplayshell-scale.c: calculate the
fraction from the zoom ratio using continued fractions.
This prefers smaller numbers in numerator/denominator.
Adresses bug #124073, but does not completely fix it,
since scaling up/down does not always result in the same
ratios.
2004-01-10 Sven Neumann <sven@gimp.org>
* app/display/gimpdisplayshell-scale.c
(gimp_display_shell_scale_zoom_fraction): use G_SQRT2 instead of
the golden ratio (see bug #124073).
2004-01-10 Michael Natterer <mitch@gimp.org>
* app/gui/layers-commands.c (layers_alpha_to_selection_cmd_callback):
no need to check if the layer has an alpha channel because
gimp_channel_select_alpha() handles layers without alpha fine: it
selects everything that is opaque, which is the entire layer.
* app/gui/image-menu.c (image_menu_update)
* app/gui/layers-menu.c (layers_menu_update): don't make the
"Alpha to Selection" items insensitive for layers without alpha.
2004-01-10 Michael Natterer <mitch@gimp.org>
* plug-ins/script-fu/scripts/select-to-pattern.scm: changed
(mostly rewritten) to correctly create patterns from drawables
with or without alpha. Also work correctly with or without a
currently active selection. Fixes bug #131088.
2004-01-09 Dave Neary <bolsh@gimp.org>
* app/display/gimpdisplayshell-scale.c: Modify behaviour of
the magnify tool to always change the zoom factor by the
golden ratio, rather than modify the numerator and denominator
directly. Fixes bug #124073.
2004-01-09 Sven Neumann <sven@gimp.org>
* plug-ins/common/tiff.c (load_image): applied a patch from
Pablo d'Angelo that fixes layer offsets for multipage TIFF files
(bug #131016).
2004-01-09 Tor Lillqvist <tml@iki.fi>
* plug-ins/winsnap/Makefile.am (winsnap-win32res.o): Don't try to
use the no longer included build/win32/compile-resource
script. Instead, run windres directly.
2004-01-08 Raphaël Quinet <quinet@gamers.org>
* plug-ins/common/jpeg.c: applied a (slightly modified) patch from
keith@goatman.me.uk, fixing a problem with the save dialog for
grayscale images and a small rounding error in the JPEG quality
level. Fixes bug #130912.
2004-01-08 Henrik Brix Andersen <brix@gimp.org>
* app/config/gimpdisplayconfig.c: added %D* to
DEFAULT_IMAGE_TITLE_FORMAT.
Fixes part of bug #120424 - the patch for including a long dirty
indicator (%B) should be applied for gimp-2.2.
2004-01-08 Michael Natterer <mitch@gimp.org>
* app/gui/user-install-dialog.c: removed explicit newlines from
all multi-line texts except where neccessary to do paragraph
breaks. Instead, configure the resp. GtkLabels to do automatic
line wrapping. Tweaked layout slightly to look better with long
one-line strings. Fixes bug #130916 and prevents similar bugs to
occur in the future.
2004-01-08 Michael Natterer <mitch@gimp.org>
* app/gui/layers-menu.c
* app/gui/patterns-menu.c
* app/gui/tool-options-menu.c
* plug-ins/script-fu/scripts/asc2img.scm: added the last missing
menu mnemonics. Sorry for the string change but it's IMHO better
to un-fuzzy these 14 strings now than to carry them around during
the whole 2.0.x cycle. Finally fixes bug #106991.
* plug-ins/script-fu/scripts/asc2img.scm: changed "ASCII to Image
Layer" to "ASCII to Layer". We never use the term "Image Layer".
2004-01-08 Henrik Brix Andersen <brix@gimp.org>
* app/gui/preferences-dialog.c (prefs_dialog_new): moved Default
Image Grid to top level since it also applies to newly loaded
images without a grid.
2004-01-07 Simon Budig <simon@gimp.org>
* app/base/curves.c: copy the positions of the control points
for a smooth curve into the lookup table, after the points
inbetween have been interpolated. This ensures that the
positions of the control points always get respected.
Fixes bug #35335.
2004-01-07 Henrik Brix Andersen <brix@gimp.org>
* app/core/gimpimage-contiguous-region.c
(find_contiguous_segment): applied a patch from Adrian Bunk
<bunk@fs.tum.de> which fixes a double ;; typo (bug #130828).
2004-01-07 Sven Neumann <sven@gimp.org>
* gimp-1.3.pc.in
* gimpui-1.3.pc.in: don't use $VERSION because pkg-config and the
like don't like the 2.0pre version numbers. Instead create a
parseable version number from major, minor and micro version.
* m4macros/gimp-2.0.m4: check for 1.3.24 or newer.
2004-01-07 Michael Natterer <mitch@gimp.org>
* tools/pdbgen/pdb/gimprc.pdb: removed redundant "success = TRUE"
assignments which simplifies the generated code quite a bit.
(most of the changed functions always succeed and don't need a
"success" variable at all)
* app/pdb/gimprc_cmds.c: regenerated.
2004-01-07 Simon Budig <simon@gimp.org>
* app/gui/about-dialog.c: Changed the string that is intended
to be translated to the translators names, to be the same as
in Gnome. Sorry for the string change.
2004-01-06 Henrik Brix Andersen <brix@gimp.org>
* plug-ins/pygimp/plug-ins/sphere.py (python_sphere): use
gimp_edit_bucket_fill() and gimp_edit_blend() instead of
deprecated functions.
2004-01-06 Sven Neumann <sven@gimp.org>
* libgimpthumb/gimpthumbnail.[ch]: added new function
gimp_thumbnail_set_from_thumb() which will be useful when writing
a thumbnail manager based on libgimpthumb.
2004-01-06 Sven Neumann <sven@gimp.org>
* app/core/gimpimagefile.c: invalidate the description string
before emitting "info_changed".
(gimp_imagefile_save_thumb): use the enum value's name. not it's
nick.
2004-01-06 Michael Natterer <mitch@gimp.org>
Enabled skipping enum values for either the PDB or GType
registration (don't always skip both targets):
* tools/gimp-mkenums: skip enum values only if there is a literal
"skip" (don't match "pdb-skip").
* tools/pdbgen/enumgen.pl: skip only "pdb-skip" values, not "skip"
ones.
* app/base/base-enums.h
* app/core/core-enums.h
* app/paint/paint-enums.h
* libgimpbase/gimpbaseenums.h: use the right "pdb-skip"/"skip"
combination to skip enum values. Changed comments accordingly.
Cleaned up the fill functions:
* app/core/core-enums.[ch]: added GIMP_PATTERN_FILL enum value to
the GimpFillType enum. Don't export GIMP_NO_FILL to the PDB
because it's completely useless to export a NOP.
* app/core/gimp-edit.c (gimp_edit_fill, gimp_edit_fill_internal):
handle pattern fill requests.
* app/core/gimpdrawable.[ch] (gimp_drawable_fill): added GimpPattern
parameter and fill with it if it's non-NULL.
(gimp_drawable_fill_by_type): handle pattern fill and pass the
current pattern to gimp_drawable_fill().
* app/text/gimptextlayer.c: changed accordingly.
* app/gui/edit-commands.c
* app/gui/image-menu.c: use gimp_edit_fill() instead of
gimp_drawable_bucket_fill() for FG, BG and pattern filling.
* libgimp/gimpcompat.h
* plug-ins/script-fu/siod-wrapper.c: removed NO_IMAGE_FILL compat
enum value. It should have never been exported to the PDB.
* app/pdb/drawable_cmds.c
* app/pdb/edit_cmds.c
* libgimp/gimpenums.h
* plug-ins/pygimp/gimpenums.py
* plug-ins/script-fu/script-fu-constants.c
* tools/pdbgen/enums.pl: regenerated.
2004-01-06 Sven Neumann <sven@gimp.org>
* tools/pdbgen/pdb/gimprc.pdb: use gimp->config; edit_config is
just for the prefs dialog. This should fix gimp_gimprc_set().
* app/pdb/gimprc_cmds.c: regenerated.
2004-01-06 Sven Neumann <sven@gimp.org>
* plug-ins/common/png.c: use a global parasite to store the default
values. Such uglyness doesn't belong into gimprc.
* devel-docs/parasites.txt: document the parasite used by the PNG
plug-in.
2004-01-06 Sven Neumann <sven@gimp.org>
* libgimpthumb/gimpthumbnail.[ch]: added thumb_size variable to
the GimpThumbnail struct. Fixed handling of failed thumbnails.
2004-01-06 Manish Singh <yosh@gimp.org>
* plug-ins/common/png.c: Implemented default settings, for both
the UI and the PDB. Settings are stored in gimprc, but right now
saving is broken since gimp_gimprc_set is broken right now.
There are 3 new PDB entry points: file_png_save_defaults, which is
a save function that only takes drawable and filename info, and
uses the stored gimprc settings for the rest of the parameters.
This is hooked up to the save magic, so using gimp_file_save to
save as png now won't make big files anymore. The other two are
file_png_get_defaults and file_png_set_defaults, which query
and set the gimprc setting respectively.
I also did some cleanup, and added a comment boolean to the
file_png_save2 interface. The string serialization to the gimprc
is sort of dumb, but it works.
Next step is to do similar for jpeg and gif.
2004-01-06 Sven Neumann <sven@gimp.org>
Fixes to the new thumbnail code. Will need more changes...
* app/core/gimpimagefile.c: set image information before calling
gimp_thumbnail_save_thumb(). Emit the "info_changed" signal when
the thumbnail states change.
* libgimpthumb/gimpthumbnail.c: redone gimp_thumbnail_load_thumb().
Added some debugging code that is by default disabled.
2004-01-05 Manish Singh <yosh@gimp.org>
* app/paint-funcs/paint-funcs.c (expand_line): on second thought, just
make everything signed. There is no reason for any of it to be
unsigned.
2004-01-05 Manish Singh <yosh@gimp.org>
* app/paint-funcs/paint-funcs.c (expand_line): cast usage of unsigned
bytes variable in array subscripting to signed, so we really do get
a negative value when we need it. Fixes#130398.
2004-01-05 Sven Neumann <sven@gimp.org>
* plug-ins/common/png.c: applied a modified patch provided by
Joao S. O. Bueno and Dave Neary. The user can now specify whether
color values for transparent pixels should be saved or nullified
(bug #129472).
2004-01-05 Sven Neumann <sven@gimp.org>
* app/core/core-enums.[ch]: added GIMP_UNDO_TEXT_LAYER to
GimpUndoType enum.
* app/core/gimpimage-undo-push.[ch]: added new undo function
gimp_image_undo_push_text_layer().
* app/text/gimptextlayer.[ch]: renamed gimp_text_layer_render() to
gimp_layer_text_layer_flush().
Added new function gimp_text_layer_discard().
* app/text/gimptextlayer-transform.c: changed accordingly.
* app/gui/image-menu.c
* app/gui/layers-commands.[ch]
* app/gui/layers-menu.c: added menu entries that allow to discard
the text information of a text layer (bug #118547).
* app/widgets/gimppreviewrendererlayer.c
(gimp_preview_renderer_layer_render): treat text layers without a
text object like ordinary layers.
* app/widgets/gimppreviewrenderer-utils.c: include gimplayer.h
instead of gimptextlayer.h.
2004-01-04 Michael Natterer <mitch@gimp.org>
* app/core/gimpimage-contiguous-region.c
(gimp_image_contiguous_region_by_seed)
(find_contiguous_region_helper)
(find_contiguous_segment): pass around GimpImage and GimpImageType
parameters. For indexed images, convert the tile data to RGB using
gimp_image_get_color(). Still use the raw tile data for RGB and
GRAY images so the slowdown for these image types should be
minimal. Fixes bug #128991.
2004-01-03 Manish Singh <yosh@gimp.org>
* plug-ins/twain/Makefile.am
* plug-ins/winsnap/Makefile.am: minor tweaks, to match changes that
were made in the other Makefiles long ago.
2004-01-02 Michael Natterer <mitch@gimp.org>
* plug-ins/common/animationplay.c (build_dialog): NULL-terminate
the list of strings passed to g_strconcat().
2004-01-02 Michael Natterer <mitch@gimp.org>
* app/tools/gimppainttool.c: removed GimpTool::cursor_update()
implementation (which was there only to stop drawing the brush
preview when the mouse leaves the canvas). Instead, look at
shell->proximity in GimpTool::oper_update() and just don't start
drawing the preview if proximity is FALSE.
* app/display/gimpdisplay.c (gimp_display_delete): set
gdisp->shell to NULL *before* gtk_widget_destroy()ing the shell so
our tool callbacks don't dispatch stuff while the shell is in the
middle of being destroyed.
Both changes fix bug #129374, though the latter is the fix for the
real problem.
2003-12-31 Simon Budig <simon@gimp.org>
* app/core/gimpdrawable-stroke.c
* app/paint/gimppaintcore-stroke.c: Don't simplify the border
of the selection. Quite some people were confused by the
polygonal look of a stroked ellipse. The old behaviour doesn't
look good, but the new one isn't really better. Since the
old behaviour is more predictable, I am reverting this for now
(Please note that the function to simplify the boundary still
is available, it just is unused).
Hopefully at some point it will be possible to have non-integer
boundary coordinates or even a more sophisticated set of
"vector-selection" tools.
2003-12-31 Simon Budig <simon@gimp.org>
* app/tools/gimpvectortool.[ch]: Fixed missing undo step when
moving (components of) the path. Don't add an undo step when
nothing changes.
Also rephrased the help strings in the statusbar to be shorter
and encourage the user to try shift. Fixes bug #124025.
2003-12-30 Simon Budig <simon@gimp.org>
* app/gui/about-dialog.c: Made it possible to have multiple
lines of translators in the about dialog. Simply translate
"<Translators: insert your names here, separated by newline>".
Fixes bug #58507.
2003-12-30 Simon Budig <simon@gimp.org>
* app/vectors/gimpvectors-compat.c: When there is a visible
path, it cannot be stored in the XCF in a portable manner.
* app/xcf/xcf-save.c: Removed Debug output
2003-12-30 Simon Budig <simon@gimp.org>
* app/gui/stroke-dialog.c: Save the stroking type (libart /
paint-tool) so that it can be remembered when the dialog
gets opened a second time. Fixes Bug #128156.
2003-12-29 Simon Budig <simon@gimp.org>
* app/gui/about-dialog.c: reshuffle the authors array and
restart the animation when the dialog gets shown a second
time. Also render the current version number to the image
permanently.
2003-12-29 Raphaël Quinet <quinet@gamers.org>
* app/gui/palette-editor-menu.c: Applied patch by David Gowers
(neota@softhome.net) improving the mnemonics of the palette editor
commands 'New from FG/BG'. Fixes bug #130121.
2003-12-28 Simon Budig <simon@gimp.org>
* app/core/core-enums.h: Some default dash pattern enum.
* app/core/core-enums.c: regenerated.
* app/core/gimpstrokeoptions.[ch]: Implement default dash
patterns, add a signal when the dash pattern changes.
* app/widgets/gimpstrokeeditor.c: Add an option menu for
the dash pattern and connect it to the signal mentioned above.
2003-12-28 Simon Budig <simon@gimp.org>
* app/widgets/gimpdasheditor.[ch]: Added functions to shift the
dash pattern to the left or right.
* app/widgets/gimpstrokeeditor.c: Improve the appearance of the
widget and add left/right buttons.
2003-12-27 Simon Budig <simon@gimp.org>
Dashed stroking is here... :-)
* app/core/gimpdrawable-stroke.c: actually use the dash pattern
from the options
* app/core/gimpscanconvert.c: Normalize the dash pattern, so
that libart does the right thing.
* app/core/gimpstrokeoptions.c: Fix default value for dash
offset, handle the property_get for PROP_DASH_INFO correct.
* app/widgets/gimpdasheditor.[ch]
* app/widgets/Makefile.am
* app/widgets/widgets-types.h: New widget to edit a dash
pattern.
* app/widgets/gimpstrokeeditor.c: Use it.
2003-12-27 Manish Singh <yosh@gimp.org>
* app/main.c
* app/plug-in/plug-in-shm.c
* libgimp/gimp.c: POSIX shared memory tile transport implementation,
and a little code cleanup of the SysV and Win32 implementations.
* configure.in: checks for shm_open, default to POSIX shared memory
transport on OS X.
2003-12-27 Pedro Gimeno <pggimeno@wanadoo.es>
* plug-ins/common/jigsaw.c (jigsaw): actually don't crash when
layer previews are disabled. Fixes the crash reported in bug
#112012, but not the bug itself.
2003-12-26 Dave Neary <bolsh@gimp.org>
* app/base/levels.c: Modify behaviour of levels tool to
conserve lightness when using the grey-point color-picker.
2003-12-26 Sven Neumann <sven@gimp.org>
* plug-ins/common/edge.c: forgot to change
gimp_pixel_fetcher_set_edgemode to gimp_pixel_fetcher_set_edge_mode
here.
2003-12-26 Sven Neumann <sven@gimp.org>
* plug-ins/imagemap/imap_cern.y
* plug-ins/imagemap/imap_cern_lex.c
* plug-ins/imagemap/imap_cern_parse.[ch]
* plug-ins/imagemap/imap_csim.[ly]
* plug-ins/imagemap/imap_csim_lex.c
* plug-ins/imagemap/imap_csim_parse.[ch]
* plug-ins/imagemap/imap_ncsa.[ly]
* plug-ins/imagemap/imap_ncsa_lex.c
* plug-ins/imagemap/imap_ncsa_parse.[ch]: Yosh informed me that
regenerating the files using recent versions of flex/bison is a
bad idea. Reverted my changes and redid the most important parts
manually.
2003-12-26 Sven Neumann <sven@gimp.org>
* app/config/gimpdisplayconfig.c: set the default value for
"activate-on-focus" to TRUE. The discussion on this has been
controversial and I am doing this change now in order to get more
feedback.