2000-07-30 Tor Lillqvist <tml@iki.fi>
* libgimp/gimp.c
* libgimp/gimp.h
* libgimp/gimpmenu.c
* libgimp/gimpprotocol.c
* libgimp/gimpprotocol.h
* libgimp/gimp.def
* app/plug_in.c
* plug-ins/helpbrowser/helpbrowser.c
* plug-ins/script-fu/script-fu.c: As the GLib main loop and IO
channel implementation on Win32 now provides the same interface as
that on Unix, much of the Win32-only crap could be
removed. Especially, no need for "wakeup" out-of-band messages to
wake up pipe readers. No need for plug-ins to tell GIMP their
thread id.
* libgimp/gimp.c (gimp_extension_process): On Win32, use the new
g_io_channel_win32_wait_for_condition() function.
* plug-ins/makefile.cygwin: Add the homogenizer plug-in to the
unofficial part.
2000-07-16 Michael Natterer <mitch@gimp.org>
Sven Neumann <sven@gimp.org>
* AUTHORS
* gimp.1.in
* app/about_dialog.c: removed two accidentially added non-authors.
* app/errors.[ch]
* app/main.c: added a new command line option
"--enable-stack-trace" which can be one of {never|query|always}.
* app/plug_in.c
* libgimp/gimp.c: pass the stack trace mode as an argv[] element to
plug-ins. Cleaned up the plug-ins' argv[] (removed unused TILE_WIDTH
and TILE_HEIGHT arguments, always pass 6 arguments to make the code
simpler).
* libgimp/gimpenums.h
* plug-ins/script-fu/script-fu-constants.c
* tools/pdbgen/Makefile.am
* tools/pdbgen/enums.pl: export the app's STACK_TRACE_MODE enum.
* plug-ins/common/plugindetails.c: made the titles of the tree view
unclickable, cleanups.
2000-07-08 Sven Neumann <sven@gimp.org>
* plug-ins/gap/gap_range_ops.c: applied a patch provided by
Wolfgang Hofer <hof@hotbot.com> that fixes a problem when
flattening a singlelayer image.
2000-06-27 Sven Neumann <sven@gimp.org>
* app/about_dialog.c: we used an array with a hardcoded size here
which was too small to hold all the authors recently added. Made
it a dynamic one. This fixes the "Can't quit The GIMP" bug #15483.
* app/about_dialog.h
* app/commands.c: removed the timeout parameter from
about_dialog_create() since it wasn't used at all.
2000-06-25 Sven Neumann <sven@gimp.org>
* app/resize.c (offset_update): Adding 0.5 isn't always the
right thing to do when converting to integer. Especially
not if dealing with negative values. This change should
fix the off-by-one error reported lately.
2000-06-19 Simon Budig <simon@gimp.org>
* app/layers_dialog.c: Layers can be renamed by pressing
return in the entry-widget now.
First CVS-commit with my own account :-)
2000-06-18 Sven Neumann <sven@gimp.org>
* AUTHORS: applied gimp-cornwell-000613-0 which brings the
list of authors upto date including all translators and
plug-in authors. Please check that you are listed if you have
contributed!
* gimp.1.in
* app/about_dialog.c: synced the authors lists
* INSTALL: we need gtk+-1.2.8 or newer
2000-06-14 Michael Natterer <mitch@gimp.org>
* Makefile.am
* app/cursorutil.[ch]
* app/tools.c
* cursors/*: added lots of new cursors and removed old ones.
* app/gdisplay.[ch]: enabled the cursor setting parameters in
gdisplay_install_tool_cursor().
* app/bezier_select.c
* app/blend.c
* app/bucket_fill.c
* app/by_color_select.c
* app/clone.c
* app/color_picker.c
* app/crop.c
* app/disp_callbacks.c
* app/edit_selection.c
* app/eraser.c
* app/flip_tool.c
* app/ink.c
* app/iscissors.c
* app/magnify.c
* app/measure.c
* app/move.c
* app/paint_core.c
* app/rect_select.c
* app/text_tool.c
* app/transform_core.c: use the new cursors. Only the transform
tools are still using old cursors.
* app/layers_dialog.c: a tooltip for "Keep Trans."
* app/user_install.c: set the ctree's selection mode to BROWSE.
2000-06-08 Sven Neumann <sven@gimp.org>
* app/qmask.c: call undo_push_qmask() before removing the
channel since the callback will set the qmask_state
incorrectly otherwise. Fixes bug #13472.
* app/undo.[ch]: code cleanup
* plug-ins/common/gif.c: put save_comment into the values
that are stored between calls to the GIF plug-in, so it
remembers if the user wants to save the comment. Fixes
bug #12755.
* app/layers_dialog.c: Disable the "Add Layermask" menuentry
for indexed images.
* app/gimpimage.c: Leave gimp_image_add_layer_mask(...) after
spitting out messages when trying to add a layermask to an
indexed image.
-Yosh
2000-06-07 Sven Neumann <sven@gimp.org>
* Makefile.am: sorry, there's no build directory
* app/plug_in.c (plug_in_temp_run): uncommented the call to
plug_in_pop(). This seems to solve the longstanding problem
that made temporary procedures like Script-Fu fail when
called from plug-ins.
2000-06-07 Tor Lillqvist <tml@iki.fi>
* app/gimphelp.c (gimp_help_netscape): Test for help_path being
non-NULL was wrong way.
* app/preferences_dialog.c (file_pref_cmd_callback): Change
"From X Server" to "From windowing system".
* app/makefile.cygwin: Update according to file name changes.
* libgimp/gimp.def
* libgimp/gimpui.def
* libgimp/makefile.{cygwin,msc}: Update for Mitch's and Sven's
changes.
* plug-ins/libgck/gck/gckcolor.c: Include <glib.h> before
gimpmath.h, so G_PI don't get redefined when glib.h is included
later.
From Hans Breuer, portability fixes for MSVC compilation:
* app/dialog_handler.h: Bypass decalration of exported functions
which are marked with G_MODULE_EXPORT in dialog_handler.c when
compiling that file. Otherwise some compilers will get confused.
* app/dialog_handler.c: Define a test macro for above bypass.
* plug-ins/MapObject/mapobject_apply.c
* plug-ins/MapObject/mapobject_image.c
* plug-ins/MapObject/mapobject_shade.c: Include <string.h>.
* plug-ins/flame/flame.c: Define S_ISREG if needed.
* plug-ins/makefile.{cygwin,msc}: Updates.
* plug-ins/sel2path/global.h: Include <stdlib.h>.
* plug-ins/winsnap/winsnap.c: Include libgimp/gimpui.h.
2000-06-06 Michael Natterer <mitch@gimp.org>
* Makefile.am
* cursors/crosshair.xbm
* cursors/crosshair_mask.xbm: new files.
* app/cursorutil.[ch]
* app/gdisplay.[ch]
* app/gimprc.[ch]
* app/preferences_dialog.c: Started to add the new set of
consistent tool cursors. The crosshair one is the easy part
but I wanted to see a result :) The other two options in
the pref's cursor menu are still dummys.
Sun Jun 4 20:17:25 2000 CET Austin Donnelly <austin@gimp.org>
* app/paths_dialog.c: run the sel2path plugin with a proper
display ID - previously we were using a _drawable_ ID as the
display ID: a blatant type mismatch.
* plug-ins/sel2path/pxl-outline.c: progress bar on
selection-to-path. Also, small optimization to inner loop:
cache the max values of the loops rather than needing a
function call per loop iteration (ouch!).
2000-05-28 Michael Natterer <mitch@gimp.org>
* libgimp/gimp.h
* libgimp/gimpcolordisplay.h
* libgimp/gimpcolorselector.h
* libgimp/gimpmatrix.h
* libgimp/gimpmodule.h
* libgimp/gimpunit_pdb.c: purely cosmetic stuff and added some
typedefs to make the html documentation nicer. Moved the module
documentation from the headers to the sgml files.
* app/module_db.[ch]: The type of the "init" and "unload" functions
has changed. Code cleanup.
2000-05-28 Michael Natterer <mitch@gimp.org>
* libgimp/libgimp-decl.txt
* libgimp/libgimp-docs.sgml
* libgimp/libgimp-sections.txt
* libgimp/tmpl/gimp.sgml
* libgimp/tmpl/gimpcolorbutton.sgml
* libgimp/tmpl/gimpcolordisplay.sgml
* libgimp/tmpl/gimpcolorselector.sgml
* libgimp/tmpl/gimpcolorspace.sgml
* libgimp/tmpl/gimpcompat.sgml
* libgimp/tmpl/gimpenums.sgml
* libgimp/tmpl/gimpfeatures.sgml
* libgimp/tmpl/gimplimits.sgml
* libgimp/tmpl/gimpmath.sgml
* libgimp/tmpl/gimpmodule.sgml
* libgimp/tmpl/gimpparasite.sgml
* libgimp/tmpl/gimpparasiteio.sgml
* libgimp/tmpl/gimppixmap.sgml
* libgimp/tmpl/gimpprotocol.sgml
* libgimp/tmpl/gimpsignal.sgml
* libgimp/tmpl/gimpui.sgml
* libgimp/tmpl/gimpunit.sgml
* libgimp/tmpl/gimputils.sgml
* libgimp/tmpl/gimpvector.sgml
* libgimp/tmpl/gimpwire.sgml
* libgimp/tmpl/libgimp-unused.sgml: Moved the module documentation
from the libgimp headers here, updates, cleanups.
2000-05-21 Michael Natterer <mitch@gimp.org>
These changes enable help support for 3rd party plug-ins which
install their help files outside GIMP's main help dir.
Instead of calling gimp_help(), gimp_plugin_help_func() etc.,
all help callbacks now have to call gimp_standard_help_func()
which has different implementations in the app and in libgimp.
There is a new function gimp_plugin_help_register() which can
be called during plug-in query. plug_in.c keeps a list of
executable_name/help_path pairs. Plug-ins have to pass their
exec. name to gimp_help() which uses the list to find the plug-in's
help directory.
* app/gimphelp.[ch]: gimp_help() now takes a help_path parameter.
help_path == NULL means the standard help directory. Various
changes to pass the help_path to the help browser.
* app/gimprc.c: save the plug-in's help_path in the pluginrc file.
* app/menus.c: ugly hack to enable help_paths in the "F1" callback.
* app/plug_in.[ch]: many help_path related changes. Use g_basename()
instead of strrchr(str,G_DIR_SEPARATOR), cosmetic cleanups.
* app/internal_procs.c
* app/gimphelp_cmds.c
* tools/pdbgen/pdb/gimphelp.pdb: new procedure
gimp_plugin_help_register(). gimp_help() takes a second parameter
which is the executable name (not the help_path).
* app/color_notebook.c
* app/commands.c
* app/lc_dialog.c
* app/preferences_dialog.c
* app/tools.c: call gimp_standard_help_func() instead of gimp_help().
* libgimp/gimp.c: new function gimp_get_progname() which returns
the full path of the plug-in's executable.
* libgimp/gimp.h: export the new function,
removed gimp_plugin_help_func(), gimp_help() takes the executable
name as second parameter.
* libgimp/gimpcompat.h: added gimp_plugin_help_func().
* libgimp/gimphelp.c: a wrapper for gimp_plugin_help_register(),
changed the calls to gimp_help.
* libgimp/gimphelpui.[ch]: call gimp_standard_help_func() instead
of gimp_help().
* plug-ins/helpbrowser/helpbrowser.c: now called with an additional
help_path parameter. Various changes to enable
help_path != gimp_standard_help_path.
Unrelated stuff:
* app/batch.h: added missing GPL header.
* app/gimpunit.c: had a LGPL header, merged some fprintf's into
one call.
* app/procedural_db.[ch]: cosmetic: g* types, s/g_malloc/g_new/,
prototypes, indentation.
* app/resize.c: use less packing widgets. didn't find the "offset"
redraw bug :(
2000-05-20 Sven Neumann <sven@gimp.org>
* plug-ins/webbrowser/web-browser.scm: added links to
Carey Bunks's "Gimp-Savvy" and "Grokking the GIMP" resources.
* libgimp/gimpwidgets.[ch]: use unsigned integers for the
memsize_entry. Added gimp_uint_adjustment_update().
* gimprc.[ch]
* preferences_dialog.c: use unsigned integers for memsizes
(tile_cache_size and max_new_image_size). Allows to set those
values up to 4GB. Fixes bug #11053.
2000-05-17 Michael Natterer <mitch@gimp.org>
* app/plug_in.c: be a bit more verbose in the "Plug-In crashed"
message: Warn the user that Gimp's internal state may be messed
up and that the safe way is to restart Gimp.
Unified all plug-in error messages.
* libgimp/gimp.c: also changed to messages that the Gimp is using
a newer/older wire protocol than the plug-in.
2000-05-16 Michael Natterer <mitch@gimp.org>
* app/commands.c
* app/layers_dialog.c
* app/resize.c: set the scale/resize dialog insensitive before
scaling/resizing to keep users from pressing "OK" again.
Fixes#10656.
2000-05-12 Sven Neumann <sven@gimp.org>
* gimpdrawable.c: enabled the (commented out) signal
"invalidate_preview".
* app/layers_dialog.c: connect to the "invalidate_preview"
signal to catch changes that need to be shown in the layer
previews. Synthetize an expose event when a layer changes.
Expose events are optimzed away by GTK+ if the widget is not
visible. Therefore, previews not visible in the layers_dialog
are not redrawn when they invalidate. Later the preview gets
validated by the image_preview in lc_dialog but is never
propagated to the layer_pixmap. We work around this by using an
additional flag "layer_pixmap_valid" so that the pixmap gets
updated once the preview scrolls into sight.
Fixes bugs #10549, #10300 and #8787.
* app/channel.[ch]
* app/layer.[ch]: code review and indentation
--Sven
2000-05-10 Michael Natterer <mitch@gimp.org>
Another try to get the signal/dead child recovery stuff right.
Could the brave signal crew (TM) (Austin, Garry, Raphael, Tim)
please do bad tests to the new code? I removed all strange
constants (SA_NODEFER etc.) and used only glib and POSIX stuff.
* app/main.c
* libgimp/gimp.c:
- Call gimp_signal_private() with no flags to enforce a proper
sigaction() behaviour (block signals while handler is active).
- Removed the reentrancy guards from the handlers.
- Renamed the handlers.
- Ignore SIGPIPE in the app and in plugins.
- Re-introduced the SIGCHLD handler because it should work
now. Also added a SIGCHLD handler to libgimp/gimp.c.
* app/errors.c
* libgimp/gimp.c: in the signal handler, unblock all signals
with sigprocmask() before calling g_on_error_query() because
gdb otherwise inherits the blocked signals and does nothing.
Wrapped the statements with "if (TRUE) { }" blocks so it's
easy to make the stack trace a command line option.
* app/plug_in.c
* libgimp/gimp.c: listen for G_IO_ERR and G_IO_HUP on the read
channels. In the app, pop up an error message and clean up the
plugin. In plugins, clean up and exit.
* libgimp/gimpwire.c: removed the "plug-in chrashed?" message
and print the program's name with all error messages.
* plug-ins/helpbrowser/helpbrowser.c: typo.
* app/menus.c: in Image/Filters move all entries that are not
submenus to the top of the menu.
* app/plug_in.c: order all plugin menu-entries alphabetically
(in the current locale) before sending them to menus.c.
* plug-ins/script-fu/script-fu-scripts.c: order all script-fu
menu-entries alphabetically (in the current locale) before
registering them.
* plug-ins/script-fu/script-fu.c: minor cleanups
* plug-ins/bmp/bmpread.c
* plug-ins/bmp/bmpwrite.c
* plug-ins/xjt/xjt.c: strings used with g_message do not need
a trailing newline
--Sven
* gimprc.in
* gimprc.win32
* app/gimprc.c: set default image size back to 256x256, default
to local paint options and info-window-follows-mouse.
* app/brightness_contrast.c
* app/docindex.c
* app/hue_saturation.c: picky changes on some labels.
* app/tips_dialog.c: applied (sort of) gimp-quinet-20000504-0,
which replaces the message "Show tip next time" in the
Tip Of The Day dialog with "Show tip next time GIMP starts".
--Sven
2000-05-06 Michael Natterer <mitch@gimp.org>
* app/menus.c (menus_reorder_plugins): no need to reorder
<Image>/Script-Fu twice.
* app/docindex.c: replaced the toolbar by an ops_buttons box.
Also default to opening the file instead of rising an already
open display.
2000-05-05 Michael Natterer <mitch@gimp.org>
Made the document index a bit more like the rest of the dialogs:
* app/commands.[ch]
* app/menus.c: added a cmd_callback instead of calling a function
in docindex.c directly.
* app/gimprc.c
* app/session.[ch]: added proper session management.
* app/app_procs.c
* app/docindex.[ch]
* app/docindexif.[ch]: removed another bunch of useless variables
and functions. Removed the status bar because it was not telling
very useful stuff. Removed the window position/size from the
"ideas" file.
Note: you have to either remove your ~/.gimp-1.1/ideas file or
remove it's first line or experience a nice endless loop :)
2000-05-03 Michael Natterer <mitch@gimp.org>
* app/layers_dialog.c: removed layers_dialog_idle_set_layer_focus()
because Wolfgang pointed out that it caused bad segfaults. This
fixes#10139 and #9844. OTOH this brings back the bug that the
active layers is sometimes not the selected one in the layers
dialog, grmpf.
* plug-ins/script-fu/script-fu-scripts.c: small cleanups.
* plug-ins/gap/README
* plug-ins/gap/gap_exchange_image.c
* plug-ins/gap/gap_lib.[ch]
* plug-ins/gap/gap_main.c
* plug-ins/gap/gap_mov_dialog.[ch]
* plug-ins/gap/gap_mov_exec.[ch]
* plug-ins/gap/gap_navigator_dialog.c: applied a patch from
Wolfgang Hofer <hof@hotbot.com>.
2000-04-30 Michael Natterer <mitch@gimp.org>
* gimprc.in
* app/gimprc.[ch]: replaced "color-cube" by "min-colors".
* app/app_procs.c: read unitrc/gimprc before displaying the splash.
* app/colormaps.c: set min_colors and install_cmap before
initializing GdkRGB.
* app/gimprc.[ch]
* app/gimpunit.c: don't call the splash's progress_update function.
* app/plug_in.c: pass min_colors instead of color_cube to plugins.
* app/preferences_dialog.c: widget for min_colors.
* libgimp/gimp.[ch]: s/color_cube/min_colors/ but left
gimp_color_cube() there for source level compatibility.
* libgimp/gimpprotocol.[ch]: changed the GPConfig message
accordinly and increased the gimp protocol version number because
the change breaks binary compatibility. Also actually pass the
use_xshm variable over the wire (was only in the GPConfig struct
before).
Was it the right thing to do to increase the version number??
* libgimp/gimpui.c (gimp_ui_init): use the same code as the app
for initializing GdkRGB. Never explicitly activate Gdk's SHM
usage (only switch it off).
* app/main.c
* libgimp/gimp.c: reverted the handling of all signals except
SIGCHLD back to plain old signal() because those signals are
fatal anyway and sigaction() as used by gimp_signal_*() made
debugging (stacktrace) impossible.
* plug-ins/AlienMap/AlienMap.c
* plug-ins/AlienMap2/AlienMap2.c
* plug-ins/FractalExplorer/Dialogs.c
* plug-ins/bmp/bmp.c
* plug-ins/borderaverage/borderaverage.c
* plug-ins/dbbrowser/dbbrowser.c
* plug-ins/faxg3/faxg3.c
* plug-ins/fits/fits.c
* plug-ins/flame/flame.c
* plug-ins/fp/fp.c
* plug-ins/fp/fp_gtk.c
* plug-ins/gdyntext/Makefile.am
* plug-ins/gdyntext/gdyntext_ui.c
* plug-ins/gfig/gfig.c
* plug-ins/gflare/gflare.c
* plug-ins/gfli/gfli.c
* plug-ins/gimpressionist/gimpressionist.c
* plug-ins/helpbrowser/helpbrowser.c
* plug-ins/ifscompose/ifscompose.c
* plug-ins/imagemap/Makefile.am
* plug-ins/imagemap/imap_main.c
* plug-ins/maze/maze_face.c
* plug-ins/mosaic/mosaic.c
* plug-ins/pagecurl/pagecurl.c
* plug-ins/print/print.c
* plug-ins/rcm/rcm_dialog.c
* plug-ins/script-fu/script-fu-console.c
* plug-ins/script-fu/script-fu-scripts.c
* plug-ins/script-fu/script-fu-server.c
* plug-ins/sel2path/Makefile.am
* plug-ins/sel2path/sel2path.c
* plug-ins/sgi/sgi.c
* plug-ins/sinus/sinus.c
* plug-ins/struc/struc.c
* plug-ins/webbrowser/webbrowser.c
* plug-ins/winsnap/winsnap.c
* plug-ins/xjt/xjt.c: use gimp_ui_init().
* plug-ins/Lighting/lighting_ui.c
* plug-ins/MapObject/mapobject_ui.c: only switch Gdk SHM usage off,
never on. Don't use gimp_ui_init() here because of libgck.
2000-04-26 Michael Natterer <mitch@gimp.org>
* app/color_select.c
* app/colormaps.[ch]
* app/context_manager.c: removed unused global variables
[foreground|background]_pixel and [old|new]_color_pixel.
Initialize the colormap and visual stuff with GdkRGB instead of
GtkPreview functions (which are deprecated).
* app/[62 files]: removed #include's (started with colormaps.h and
couldn't stop). Also ordered them consistently and did some small
unrelated cleanups.
Removed variuos <stdlib.h> et.al. but checked the files carefully
before doing so. If I was too radical and you get warnings on your
platform, please flame me or just put them back :)
2000-04-20 Michael Natterer <mitch@gimp.org>
* gimprc.in
* app/gimprc.c: default to restore_session == TRUE so first time
users really see the automatically opened dialogs.
* app/session.[ch]: also open "Tool Options" if no sessionrc
exists. Moved the harcoded initial positions away from the top and
left edges of the screen to avoid dialogs which appear underneath
panels. Also arranged the four default dialogs non-overlapping.
2000-04-19 Michael Natterer <mitch@gimp.org>
* app/bucket_fill.c
* app/by_color_select.c
* app/fuzzy_select.c
* app/preferences_dialog.c: made the "default_threshold" gimprc
variable work as advertized:
- initialize the thresholds with it.
- use it for "Reset".
- added a widget to the "Tool Options" preferences page.
- noticed that the "Reset" button of "By Color Select" doesn't
behave like all the other "Reset" buttons and changed it to
reset the ui, not the selection.
(There is now a "None" button and because it was so trivial, I
couldn't resist to add "All" and "Invert" buttons, too)
* libgimp/Makefile.am
* libgimp/gimpui.c: new file.
* libgimp/gimpui.h: new function gimp_ui_init() which will be
called by all plugins which have a ui (not only by those with a
preview because plugins should always follow gimp's colormap
installation policy).
Could someone please check if the FIXME stuff in the function
is the right thing to do (TM). Does GdkRGB allocate the correct
colors for the widgets in all cases or do we have to find another
way to ensure this across processes (gtk instances)?
2000-04-18 Michael Natterer <mitch@gimp.org>
* app/user_install.c: Creating the user's gimp directory may take
some time on NFS, so users may be tempted to press the "Continue"
button again.
Inform the user that this step may take some time and set the
"Continue" and "Cancel" buttons insensitive until finished.
2000-04-11 Michael Natterer <mitch@gimp.org>
* app/plug_in.c: if attaching to the newly created shared memory
segment fails, destroy it before forgetting it's ID. Closes#6299.
* libgimp/gimpexport.c: implemented the changes Nick Lamb
suggested: If the background layer has no alpha channel,
suggest "Flatten" instead of "Merge Visible Layers".
* app/fileops.c: In the MRU list and the doc_index always store
the absolute path to images, so you can open files from the
command-line and gimp will find them later if started from another
dir. Added tooltips that show the full path.
* app/menus.c: fixed a memleak (list entries were not freed on
removal from the MRU list).
* app/main.c
* app/user_install.[ch]: renamed functions and variables to match
the new filename.
--Sven