2000-12-28 Sven Neumann <sven@gimp.org>
* app/channel_cmds.c
* app/layer_cmds.c
* libgimp/gimpchannel_pdb.c
* libgimp/gimplayer_pdb.c
* plug-ins/common/warp.c
* plug-ins/gap/gap_exchange_image.c
* plug-ins/gap/gap_range_ops.c
* plug-ins/perl/examples/bricks
* plug-ins/perl/examples/glowing_steel
* tools/pdbgen/pdb/channel.pdb
* tools/pdbgen/pdb/layer.pdb:
Two of the gimp-perl scripts used to call gimp_layer_delete() after
gimp_image_remove_layer(). This will fail since the layer is already
scheduled for destruction by removing it from the associated image or
by deleting that image. It is thus dangerous and superfluous to export
this feature through the PDB. The gimp_layer_delete() is hereby
obsolete and does nothing any longer. I have removed the code calling
it from all over the place (it was commented out in almost all places).
The PDB help for gimp_channel_delete() now explicetly tells the user
about the proper usage of the procedure.
2000-12-27 Michael Natterer <mitch@gimp.org>
* app/gimpimage.c: gimp_image_merge_layers(): apply the layer mask
only if layer->apply_mask is TRUE, cleanup.
2000-12-27 Michael Natterer <mitch@gimp.org>
* app/gimage.h
* app/gimpimage.[ch]: implemented gimp_image_get_layer_by_index(),
small cleanups.
* app/commands.c
* app/layers_dialog.c: use the new function instead of accessing
the layer list directly.
2000-12-27 Michael Natterer <mitch@gimp.org>
* app/layers_dialog.c: layers_dialog_scroll_index(): don't fiddle
around with magic numbers when calculating the layer widget's
height but simply ask one of them for it's allocation. Fixes
positioning when the preview is smaller than the layer widget list
item.
2000-12-24 Michael Natterer <mitch@gimp.org>
* app/color_cmds.c
* tools/pdbgen/pdb/color.pdb: my last s/rangechanged/range_changed/
somehow was not really "g" ;)
2000-12-21 Sven Neumann <sven@gimp.org>
* app/gradient.c
* app/gradient_select.[ch]: reviewed the gradient code. The old code
used to use list indices which led to bug #35612 and other problems.
We now attach a pointer to the gradient to each row in the GtkClists
and retrieve the matching row for a gradient using
gtk_clist_find_row_from_data(). Additionally I have added similar code
as we use for brushes to assure that no two gradients have the same
name.
2000-12-19 Michael Natterer <mitch@gimp.org>
* app/gradient.c: couldn't resist to heavily indent all function
prototypes before starting to fix the rename-bug. Nothing changed.
2000-12-19 Sven Neumann <sven@gimp.org>
* app/curves.c: applied a patch from David Hodson that reverts
the curves tool back to its old behaviour (start with the identical
transform), but keeps the fix for bug #33403.
2000-12-19 Michael Natterer <mitch@gimp.org>
* app/patterns.c: uniquefy pattern names before inserting them
into the list. This way DND (which passes only the pattern's
name) works as expected. Fixes#35258.
2000-12-19 Michael Natterer <mitch@gimp.org>
* app/Makefile.am
* app/gimphistogramP.h: removed.
* app/gimphistogram.[ch]
* app/histogramwidget.[ch]: Histogram cleanup: replaced the
channel #define's by a properly named enum and use this enum
type as parameter in functions instead of "int".
* app/curves.c
* app/histogram_tool.c
* app/levels.c: changed accordingly.
2000-12-19 Sven Neumann <sven@gimp.org>
* app/gimpbrushpipe.c (gimp_brush_pipe_load): set the spacing and
other info from the first brush just as the old code used to do.
2000-12-18 Sven Neumann <sven@gimp.org>
Jens Lautenbacher <jtl@gimp.org>
* app/Makefile.am
* app/gimpbrushlistP.h
* app/gimpbrushpipeP.h
* app/gimpobjectP.h: removed these three files
* app/parasitelistP.h
* app/channels_dialog.c
* app/docindex.c
* app/gimpdrawable.c
* app/gimpdrawableP.h
* app/gimpimage.c
* app/gimpimageP.h
* app/gimplist.[ch]
* app/gimpobject.c
* app/gimpobject.h
* app/gimpsetP.h: changed according to header removal
* app/airbrush.c
* app/brush_select.[ch]
* app/brushes_cmds.c
* app/gimpbrush.[ch]
* app/gimpbrushgenerated.[ch]
* app/gimpbrushlist.[ch]
* app/gimpbrushpipe.[ch]
* app/gimpcontextpreview.c
* app/paint_core.c
* app/paintbrush.c
* app/pencil.c
* tools/pdbgen/pdb/brushes.pdb: Big Brushes Cleanup.
The GimpBrush* object hierarchy and the file formats were broken by
"design". This made it overly difficult to read and write pixmap
brushes and brush pipes, leading to the situation that The GIMP was
not able to read it's very own file formats. Since the GimpBrush
format did support arbitrary color depths, the introduction of a
file format for pixmap brushes was unnecessary.
The GimpBrushPixmap object is dead. GimpBrush has an additional
pixmap temp_buf and handles pixmap brushes transparently. The file
format of pixmap brushes is not any longer a grayscale brush plus
a pattern, but a simple brush with RGBA data. The old brushes can
still be loaded, but the .gpb format is deprecated.
GimpBrushPipe derives from GimpBrush. The fileformat is still a text
header, followed by a number of brushes, but those brushes are stored
in the new GimpBrush format (no pattern anymore). The pipe does not
care about the depth of the contained GimpBrushes, so we get
grayscale BrushPipes for free. Since the brush loader still loads the
old format, old .gih files can also still be loaded.
Since the brushes in the GimpBrushPipe do not any longer contain a
pointer to the pipe object, we do only temporarily switch brushes
in the paint_core routines. This is not very elegant, but the best
we can do without a major redesign.
* app/patterns.[ch]: changed the loader to work with a filedescriptor
instead of a filehandle to make it work with the new brush loading
code.
* plug-ins/common/.cvsignore
* plug-ins/common/Makefile.am
* plug-ins/common/plugin-defs.pl
* plug-ins/common/gih.c: new plug-in that saves GIH files in the
new format (loader will follow soon)
* plug-ins/common/gpb.c: removed since Pixmap Brushes are no longer
supported as a special file format.
* plug-ins/common/gbr.c: load and save brushes in the new brush format
which allows RGBA brushes too.
* plug-ins/common/pat.c: load and save grayscale patterns too
2000-12-17 Michael Natterer <mitch@gimp.org>
* app/menus.c: don't warn about a non-existant "Script-Fu" menu.
(the user should have the choice of just removing the script-fu
plug-in without any side-effects).
2000-12-17 Sven Neumann <sven@gimp.org>
* app/curves.c: preview the curve settings in the image window when
initializing the tool. This way the new curves behaviour (init with
last settings) is visible.
* app/user_install.c: check that strings are non-NULL before passing
them to strcmp.
* libgimp/gimpfileselection: do not try to pass a NULL text to
gtk_entry_set_text, use an empty string instead.
2000-12-16 Sven Neumann <sven@gimp.org>
* app/gimppreviewcache.h
* app/channel.c
* app/layer.c: put the preview cache priming code back into place,
but disabled it for small images to avoid unnecessary upscaling.
2000-12-16 Sven Neumann <sven@gimp.org>
* app/fileops.c: fixed a warning
* app/menus.c: since gee is no longer hidden, I put the old code
back in that keeps its entry at the bottom of the menu.
2000-12-15 Sven Neumann <sven@gimp.org>
* app/gimppreviewcache.[ch]: added new function gimp_preview_scale().
* app/channel.c
* app/channels_dialog.c
* app/gimpimage.c
* app/layer.c
* app/layers_dialog.c
* app/lc_dialog.c
* app/nav_window.c: unified preview drawing code. Previews are never
generated larger than the canvas size. Image and channel previews are
scaled up to the desired size, so does the navigation window. The
layer previews are not yet scaled up again since we can not use
gimp_preview_scale here. I have removed the preview_cache priming
code since we don't need it any longer and it caused bad results.
2000-12-15 Michael Natterer <mitch@gimp.org>
* configure.in
* help/*: Updated Gimp-Help. See help/ChangeLog for details.
* app/channels_dialog.c
* app/gdisplay.c
* app/gradient.c
* app/layers_dialog.c
* app/menus.c
* app/paths_dialog.c
* app/preferences_dialog.c
* app/resize.c: fixed menu paths.
* plug-ins/helpbrowser/helpbrowser.c: load a special
"undocumented_filter.html" page if a filter was not found.
Adapted to the new help structure.
2000-12-15 Michael Natterer <mitch@gimp.org>
* makedummyhelpfile.sh
* makeindex.sh: removed.
* images/*: added some images.
* help/*: Updated to the latest version of the gimp-help CVS module.
This Version instoduces a bunch of new toplevel HTML files for
general topics, an autogenerated index, TOC, glossary,
an "image" directory on the "C" level, peace, love, and stuff...
Thanks to all help writers: Prof, Bex, Piers, ...
2000-12-14 Sven Neumann <sven@gimp.org>
* app/commands.c (image_resize_callback):
call lc_dialog_update_image_list() when resizing the image so the
image preview is updated in the l&c dialog.
2000-12-14 Sven Neumann <sven@gimp.org>
* app/layers_dialog.c
* app/lc_dialog.c
* app/nav_window.c: another try on bug #31098. This time limited the
preview scale ratio in the calling functions. Please test!
* app/gimpimage.c: small cleanup
2000-12-14 Sven Neumann <sven@gimp.org>
* app/gimpimage.c
* app/layer.c
* app/layers_dialog.c
* app/nav_window.c: cleaned up these files while trying to find a
fix for #31098. No real changes, the bug is still present :-(
Mon Dec 11 22:52:43 GMT 2000 Andy Thomas <alt@gimp.org>
* app/gimpimage.c
* app/layers_dialog.c
Backed out some changes that caused problems with the Nav preview
and small sized images.
2000-12-11 Sven Neumann <sven@gimp.org>
* app/channel.c (channel_invalidate_previews): check for NULL pointer
* app/fileops.c: if saving and loading images at the same time, the
PDB obviously manages to mangle return values. By checking the
validity of the returned image id we avoid to crash as described in
bug #26788.
* app/module_db.c: unload modules from the idle_loop as suggested
by Austin in #5745.
2000-12-11 Sven Neumann <sven@gimp.org>
* app/paint_core.c: clamp scale factor between 0.0 and 1.0 to avoid
problems with broken XInput drivers. Should fix bug #18913.
2000-12-11 Sven Neumann <sven@gimp.org>
* app/gradient.c: use the correct pointer when dumping gradients to
stderr in case of problems. Sort of fixes bug #31510.
2000-12-11 Sven Neumann <sven@gimp.org>
* app/edit_selection.c
* app/gimpimage.c
* app/layer_select.c
* app/layers_dialog.c: when computing a preview, limit the scale ratio
to a maximum of 1.0. By doing so we avoid to scale drawables up if the
image (canvas) size becomes larger than the drawable. Fixes bug #31098.
* app/gimppreviewcache.[ch]: indented
2000-12-03 Sven Neumann <sven@gimp.org>
* app/gimpimage.c: do not set the layer mode of the bottom layer to
NORMAL_MODE if it is DISSOLVE_MODE since the latter does not work
on the projection with the lower layer but on the layers alpha
channel. Fixes bug #7829.
2000-12-03 Michael Natterer <mitch@gimp.org>
* app/layers_dialog.c: when applying or deleting the layer mask,
we have to call layers_dialog_set_menu_sensitivity() ourselves
whenever calling layer_widget_layer_flush() instead of
gdisplays_flush().
2000-12-03 Michael Natterer <mitch@gimp.org>
* plug-ins/gflare/gflare.c
* libgimp/gimpunitmenu.c
* libgimp/gimpwidgets.c: set separators of option menus insensitive.
(see Sven's fix below below).
* app/layers_dialog.c: set "Merge Down" insensitive for
the bottom layer.
2000-12-03 Sven Neumann <sven@gimp.org>
* app/layer.c
* app/layers_dialog.c
* plug-ins/common/jpeg.c: reviewed code in an attempt to fix the
crash-on-jpeg-save. The only thing that I have changed (despite
lots of indentation) is that we now connect the preview rewdraw
using gtk_signal_connect_while_alive() which should keep gimp from
trying to create previews of nonexistant drawables.
Updated german translation.
Thu Nov 30 23:26:07 GMT 2000 Andy Thomas <alt@gimp.org>
* app/curves.c
* app/levels.c
Fix for gimp bug #33403. The curves and levels dialogs should now
work in GRAYA images.
2000-11-29 Austin Donnelly <austin@gimp.org>
* app/curves.c: Applied patch from David Hodson
<hodsond@ozemail.com.au> to fix Bug#33399: GIMP crashes when
applying curve to Grayscaled image when preview is off.
Previously the curves tool attempted a reset when changing
image, but didn't correctly do this. Now it has the
(more useful) behaviour of doing a partial reset, where the
curve remains the same across multiple invocations, allowing
you to apply the same tweak to multiple images. The internal
state relevant to image type/depth is correctly reset,
stopping the segfault behaviour seen before.
Still no fix for Bug#33403: Curves/Levels Tool does not work
on GRAYA-Images.
2000-11-26 Sven Neumann <sven@gimp.org>
* PLUG_IN_MAINTAINERS
* plug-ins/common/unsharp.c: changed email address of Winston Chang
* app/gdisplay_color_ui.c: applied a modified version of another
patch sent by David Odin <David.Odin@bigfoot.com> which sets the
sensitivity of the buttons in the dialog according to the possible
actions.
2000-11-21 Sven Neumann <sven@gimp.org>
* app/gdisplay_color.c
* app/gdisplay_color_ui.c: applied patches proposed by
David Odin <David.Odin@bigfoot.com>. Fixes segfault when removing
a display filter twice.
2000-11-20 Sven Neumann <sven@gimp.org>
* app/convert.c (build_palette_button): changed the logic that sets
the default for "Custom Palette" so it goes through the whole list
instead of stopping at the "Web" palette. The Indexed-Conversion
dialog now also remembers palettes appearing after the "Web" palette.
2000-11-18 Michael Natterer <mitch@gimp.org>
* app/fileops.c
* libgimp/gimpquerybox.[ch]: Make sure that we don't try to destroy
query_boxes twice or try to disconnect not-any-more connected
handlers.
* app/color_notebook.c
* app/gimpcontext.[ch]
* app/gimphelp.[ch]
* app/lc_dialog.[ch]
* app/menus.h
* app/preferences_dialog.c
* app/tools.[ch]
* libgimp/gimpcolorbutton.[ch]
* libgimp/gimpdialog.[ch]
* libgimp/gimpexport.[ch]
* libgimp/gimpfileselection.[ch]
* libgimp/gimphelpui.[ch]
* libgimp/gimppatheditor.[ch]
* libgimp/gimppixmap.[ch]
* libgimp/gimpsizeentry.[ch]
* libgimp/gimpui.[ch]
* libgimp/gimpunitmenu.[ch]
* libgimp/gimpwidgets.[ch]: in a coding attack, changed help_data
and many other strings passed to UI functions to (const gchar *).
As a consequence, I had to fix lots of warnings ;)
* plug-ins/common/tga.c
* plug-ins/imagemap/imap_main.c: fixed warnings.
Code cleanup and indentation all over the place.
2000-11-15 Sven Neumann <sven@gimp.org>
* app/fileops.c: we used to g_free memory returned by strdup() here!
Also we used to append DIR_SEPARATORs to the filename shown in the
file_selector even if it already ended in one. Fixed all this, closed
a memleak and cleaned up the code.