2000-03-02 Michael Natterer <mitch@gimp.org>
* app/rect_select.[ch]: added a modifier_key_func which gives
immediate cursor_update feedback on modifier key events.
* app/ellipse_select.c
* app/free_select.c
* app/fuzzy_select.c
* app/rect_selectP.h: call the new function.
Added current_[x|y] fields to the tools' structures which get
updated from the "motion" functions. They have to appear in the
same order in all structures because the modifier_key_func treats
them all as rectangular selection tools.
This is ugly and cries for a object hierarchy of tools.
2000-03-01 Michael Natterer <mitch@gimp.org>
* app/gimpdrawable.c: gimp_drawable_get_color_at(): put the check
below back but only require a non-indexed drawable if the drawable
doesn't have an image.
(The function may call gimp_image_get_color() with gimage == NULL
for RGB and GRAY colors because we don't need a colormap to
transform them to RGB space).
This was the obscure special case (TM).
2000-03-01 Michael Natterer <mitch@gimp.org>
* app/gimpdrawable.c: gimp_drawable_get_color_at(): don't
g_return_val_if_fail(!indexed, NULL) because the function seems to
work fine for all kinds of drawables. Fixes#6756. Or is this
check needed for some obscure special case?
2000-03-01 Michael Natterer <mitch@gimp.org>
* cursors/selection.xbm
* cursors/selection_subtract.xbm: made the selection rectangles
look the same (avoids flickering on Ctrl/Shift).
* cursors/selection_intersect.xbm
* cursors/selection_intersect_mask.xbm: the symbol for
intersection is "n", not "u".
2000-03-01 Michael Natterer <mitch@gimp.org>
* Makefile.am
* cursors/*: a proper naming scheme for all cursor files. Added
zoom_in and zoom_out cursors.
* app/bezier_select.c
* app/by_color_select.c
* app/cursorutil.[ch]
* app/rect_select.c
* app/scale.[ch]: changed according to the new cursor names. Some
minor fixes.
* app/magnify.[ch]: made the zoom_in/zoom_out toggle a proper
tool_toggle and show cursors for the two modes.
* plug-ins/print/print-util.c: patch from Robert Kravitz which
fixes printing layers with alpha.
2000-03-01 Michael Natterer <mitch@gimp.org>
* app/gdisplay.c: set <Image>/File/Revert... insensitive if the
image has no filename.
* plug-ins/common/uniteditor.c: minor fix.
2000-03-01 Michael Natterer <mitch@gimp.org>
* C/dialogs/layers/Makefile.am
* C/dialogs/layers/index.html
* C/dialogs/layers/apply_mask.html: removed.
* C/layers/Makefile.am
* C/layers/index.html
* C/layers/apply_mask.html
* C/layers/delete_mask.html: new files.
* app/gimpcontextpreview.c: return without warning if popup_timeout
is already set. Suppresses warning that occured on double-click.
* app/layers_dialog.[ch]
* app/menus.c: added "Delete Mask" menu entry and removed dialog
asking if mask is to applied or discarded on "Apply Mask".
* app/tools.c: Magnify is not a transform tool
--Sven
2000-02-29 Michael Natterer <mitch@gimp.org>
* plug-ins/common/.cvsignore
* plug-ins/common/Makefile.am
* plug-ins/common/plugin-defs.pl
* po-plug-ins/POTFILES.in
* help/C/filters/Makefile.am
* help/C/filters/index.html
* plug-ins/common/uniteditor.c
* help/C/filters/uniteditor.html: new plugin.
After one year of announcing it, I finally hacked the GIMP unit
editor. Have fun with lightyears, parsec, ... :-)
Mon Feb 28 19:11:39 GMT 2000 Adam D. Moss <adam@gimp.org>
* app/cursorutil.c app/cursorutil.h:
added gtkutil_compress_motion() utility function to seek and
destroy outstanding pointer motion events from the gdk event queue
for a given widget.
* app/edit_selection.c:305: Use gtkutil_compress_motion() to
do a more thorough job of tracking motion (something recently
started interleaving our motion events with others, largely
nullifying the effectiveness of GDK_POINTER_MOTION_HINT_MASK).
* app/edit_selection.c:704: Yikes, the key-press snooping code
was turning part of the event queue back-to-front with each
compressed key-press. (Still looks a bit bogus overall; looks
as though it could transplant a whole chunk of the start of
the event queue right onto the end. I'll probably disable it
unless someone points out that I'm a doofus.)
2000-02-27 Garry R. Osgood <gosgood@idt.net>
* gimp/app/by_color_select.c
* gimp/app/color_picker.c
* gimp/app/gimpdrawable.c
* gimp/app/image_map.c
* gimp/app/paint_core.c
Inadvertent logic error in g_return_val_if_fail()
style sanity checks implemented in
gimp_drawable_get_color_at() gave rise to
segment violation reported in #6624;
error admitted out-of-bounds x&y that
do not map to tiles. Closes#6624.
GTK-critical warnings which result from
this new sanity check require that
gimp_drawable_get_color_at() clients
perform initial culling of out-of-bounds
x & y coordinates.
2000-02-28 Michael Natterer <mitch@gimp.org>
* libgimp/gimpfileselection.c
* libgimp/gimpunitmenu.c: behave like other dialogs (close) when
pressing "OK" or "Cancel".
* libgimp/stdplugins-intl.h
* plug-ins/script-fu/script-fu-intl.h: bind the "gimp-libgimp"
textdomain also if HAVE_LC_MESSAGES is undefined.
* plug-ins/print/print-ps.c
* plug-ins/print/print.c: applied a patch from Robert L Kravitz
<rlk@alum.mit.edu> which adds a "Center" button, activates all
text entries and corrects the rounding behaviour. And a minor fix
for the PS driver.
* plug-ins/dbbrowser/Makefile.am
* plug-ins/dbbrowser/dbbrowser.h: removed.
* plug-ins/dbbrowser/dbbrowser.c
* plug-ins/dbbrowser/dbbrowser_utils.c
* plug-ins/dbbrowser/dbbrowser_utils.h
* plug-ins/common/plugindetails.c: ui and code cleanup.
libgimp ui stuff and a proper include structure for the dbbrowser.
* plug-ins/script-fu/script-fu-console.c: include
"plug-ins/dbbrowser/dbbrowser_utils.h".
Sat Feb 26 23:58:27 GMT 2000 Andy Thomas <alt@gimp.org>
* gimp/app/nav_window.c
Now takes note of the users set preview size when close to the
edge of the screen.
If the user selected < MAX size of preview the popup would appear
in the incorrect location of the screen. This is a slight change
to the checkin of Sat Feb 19 13:53:34 CET 2000 by
Sven Neumann <sven@gimp.org>
2000-02-26 Garry R. Osgood <gosgood@idt.net>
* app/commands.c
* app/gimpimage.c
* app/layer.c
* app/layer.h
* app/resize.c
* app/resize.h
Aliasing artifacts that changed relative positions
of layers under scaling, giving rise to #5271, are
minimized by a new layer.c function,
layer_scale_by_factors(). Closes#5271. See
http://idt.net/~gosgood/gimp-patch/patch07.html for
further detail. See also usage documentation for
layer_scale() and layer_scale_by_factors() in
layer.c.
Provided logic for the Scale Image dialog box to
pre-check an image's layers for the possibility that
a particular scaling, s: 0 < s < 1, reduces a layer
dimension to zero. Should this case prevail, a
boolean dialog box warns the user of the
possibility. The user may (1) Cancel, returning
focus to Scale Image and the possibility of
corrective adjustment, or (2) OK the scaling. The
layers that will vanish upon the new scaling are
culled from the GimpImage::layers list first.
2000-02-24 Michael Natterer <mitch@gimp.org>
* plug-ins/print/print.c: use the ui constructors from libgimp,
put the widgets into frames, removed callbacks wich are not used
any more. Makes the dialog smaller but is not perfect yet.
Re-applied Sven's patch which initializes the "File" printer.
* app/fileops_cmds.c
* tools/pdbgen/pdb/fileops.pdb: don't add an already registered
load|save handler twice to the list. This fixes the problem
that extension were listed twice if a load|save plugin changed.
* app/plug_in.[ch]: code cleanup, indentation
* app/xcf.[ch]: same here, include copyright headers
* plug-ins/common/wmf.c: properly cancel the load if the user
pressed Cancel in the dialog (fixes bug #6500)
--Sven
2000-02-24 Michael Natterer <mitch@gimp.org>
* app/paths_dialog.c: we were also leaking all path preview
pixmaps ever created. Always remember that GdkPixmaps are not
created "floating" but with a real refcount of 1. Minor cleanups.
2000-02-24 Michael Natterer <mitch@gimp.org>
* app/gimpbrush.[ch]
* app/gimpbrushgenerated.[ch]
* app/gimpbrushlist.[ch]
* app/gimpbrushlistP.h
* app/gimpbrushpipe.[ch]
* app/gimpbrushpipeP.h: did a brushes code-review: indentation,
removed some includes, didn't find a bug :-)
* app/gradient.c
* app/palette.c: we were leaking all gradient and palette preview
pixmaps as well as all lists of palette colors on each refresh.
* libgimp/gimpenv.c: updated documentation.
2000-02-24 Michael Natterer <mitch@gimp.org>
* app/datafiles.c: fixed a memleak.
* app/gimpbrushlist.c
* app/gradient.c
* app/palette.c: use the gimp_path_* functions, cleanups.
* app/gimpbrushpipe.c: call the "destroy" function of the parent
class, not of the object class. Fixes a huge memleak on each
"Refresh".
* app/gimpbrushpipeP.h
* app/gimplist.c
* app/gimpbrush.c: did some cleanups while searching the brush
memleak.
* libgimp/gimpenv.c: gimp_path_get_user_writable_dir(): return a
copy of the string.
* plug-ins/FractalExplorer/Dialogs.c
* plug-ins/gfig/gfig.c
* plug-ins/gflare/gflare.c: g_free() the string returned by
gimp_path_get_user_writable_dir().