2003-07-26 Hans Breuer <hans@breuer.org>
* libgimp/gimpcompat.h : renamed GimpOrientationType
with Compat postfix to avoid name clashing when using
this header together with libgimp/gimpenums.h
* app/composite/makefile.msc : (new file)
**/makefile.msc : updated
* libgimp/gimp.c : use static defined _tile<widht|height>
in this file instead of function call
* libgimp/gimp.def libgimp/libgimpui.def : moved from former
to latter : gimp_<brush|font|gradient|pattern>_select_<new|destroy>
added to former gimp_<brushes|gradients|patterns>_popup
* app/paint/gimppaintcore.h : removed double semicolon
which gave msvc error C2059: syntax error : ';'
* libgimpbase/gimpwin32-io.h : (new file) compatibilty defines
which were spread over multiple files to make up mostly for
missing unistd.h
* app/base/tile-swap.c app/core/gimpimagefile.c
libgimpbase/gimpdatafiles.c
plug-ins/FractalExplorer/FractalExplorer.c : use new header
* plug-ins/gflare/gflare.c
plug-ins/flame/flame.c
plug-ins/FractalExplorer/Dialogs.c :
removed #ifdef G_OS_WIN32 special casing, not needed anymore
due to g_file_test() usage
* app/text/*.* : changes required for build with PangoWin32,
but not commited ...
2003-07-20 Tor Lillqvist <tml@iki.fi>
* libgimpcolor/gimpcolor.def
* libgimpmath/gimpmath.def: Updates.
* libgimp/gimp.c (gimp_config): [Win32] Use gimp_tile_width() and
_height() instead of now nonexistent _gimp_tile_width and _height
variables.
2003-07-01 Sven Neumann <sven@gimp.org>
* libgimp/gimp.[ch]
* libgimp/gimpchannel.[ch]
* libgimp/gimpdrawable.[ch]
* libgimp/gimpimage.[ch]
* libgimp/gimplayer.[ch]
* libgimp/gimpmisc.[ch]
* libgimp/gimpmiscui.[ch]
* libgimp/gimppixelrgn.[ch]
* libgimp/gimpproceduraldb.[ch]: added const qualifiers to the
libgimp API. Will cause lots of compiler warnings until the
generated PDB code has been constified as well.
* libgimpbase/gimpparasite.[ch]: use gconstpointer, not const
gpointer.
2003-06-20 Sven Neumann <sven@gimp.org>
* libgimp/gimp.c (gimp_config): fixed error messages.
* app/widgets/gimpwidgets-utils.c (gimp_message_box): use a
selectable label so you can copy from message dialogs.
2003-06-19 Michael Natterer <mitch@gimp.org>
Changed the semantics of GIMP_EXTENSION and (to some extent)
of GIMP_PLUGIN:
The old meaning of EXTENSION was "I live in the toolbox" and
PLUGIN meant "I take RUN-MODE,IMAGE,DRAWABLE args (but only if I
am invoked interactively)". This is completely useless, since
living in the toolbox means having "<Toolbox>" in the menu_path
and taking RUN-MODE,IMAGE,DRAWABLE means just that, regardless of
what type of procedure we are.
The new meaning of GIMP_PLUGIN is just "I am an ordinary procedure,
I am invoked, do my job and finish", while GIMP_EXTENSION means
"I will install temporary procedures and I will keep running to
keep them available".
(A GIMP_EXTENSION *must* call gimp_extension_ack() now to tell the
core that it's ready to run, or the core will block waiting for
the message !!!).
* configure.in: bumped version number to 1.3.16.
* libgimpbase/gimpprotocol.h: increased protocol version number so
old extensions will refuse to load.
* app/gui/plug-in-commands.c (plug_in_run_cmd_callback): don't
blindly pass RUN-MODE,IMAGE,DRAWABLE to GIMP_PLUGIN procedures but
look at their parameters and pass them either RUN-MODE, or
RUN-MODE,IMAGE, or RUN-MODE,IMAGE,DRAWABLE.
* app/pdb/procedural_db.c: cleaned up, better error reporting,
replaced an impossible error message by g_return_if_fail()
* app/plug-in/plug-in-message.c (plug_in_handle_proc_install):
better error messages.
* app/plug-in/plug-in-params.c: allocate parameter arrays using
g_new0() so we don't have to worry about uninitialized stuff
later.
* app/plug-in/plug-in-run.c (plug_in_run): wait for
gimp_extension_ack() installation confirmation for ALL extensions,
not just for automatically started ones.
* app/plug-in/plug-ins.c: cleanup.
* libgimp/gimp.[ch]: cleaned up and API-documented massively. Made
all magic values given in the GPConfig message static and added
accessor functions for them. Added gimp_tile_width()/height().
Added new function gimp_extension_enable() which turns on
asynchronous processing of temp_proc run requests without having
to enter an endless gimp_extension_process() loop. Moved all
private functions to the end of the file. Added tons of
g_return_if_fail() all over the place. Call gimp_run_procedure2()
from gimp_run_procedure() instead of duplicating the
code. Indentation, spacing, stuff...
* libgimp/gimptile.[ch]: removed gimp_tile_width()/height().
* libgimp/gimpdrawable.c
* libgimp/gimppixelrgn.c
* libgimp/gimptile.c: use the gimp_tile_width()/height() accessor
functions.
* libgimp/gimp.def: added gimp_extension_enable.
* libgimp/gimpmenu.c: removed evil code which connected to
_readchannel manually and use gimp_extension_enable() for watching
temp_procs.
* plug-ins/helpbrowser/helpbrowser.c: removed the same evil code
here and call gimp_extension_enable(). Call gimp_extension_ack()
to let the core know that the temp_proc is installed.
* plug-ins/script-fu/script-fu.c: made all procedures except the
permanently running "extension_script_fu" ordinary GIMP_PLUGIN
procedures.
* plug-ins/common/curve_bend.c
* plug-ins/common/plugindetails.c
* plug-ins/common/screenshot.c
* plug-ins/common/uniteditor.c
* plug-ins/common/winclipboard.c
* plug-ins/dbbrowser/dbbrowser.c
* plug-ins/gfli/gfli.c
* plug-ins/twain/twain.c
* plug-ins/webbrowser/webbrowser.c
* plug-ins/winsnap/winsnap.c: made them all ordinary GIMP_PLUGIN
procedures and renamed them from "extension_*" to "plug_in_*".
Random cleanups.
* app/widgets/gimphelp.c
* plug-ins/maze/maze_face.c: call "plug_in_web_browser" now.
2003-05-23 Manish Singh <yosh@gimp.org>
* libgimp/gimp.[ch]: gimp_main now takes a GimpPlugInInfo *,
and PLUG_IN_INFO is now a static variable set from that. This
removes all the special casing for the Win32 and OS/2 ports around
this. Also added a debugging hook for quit procs.
* plug-ins/common/mng.c: moved MAIN() to the end so PLUG_IN_INFO is
declared.
* plug-ins/gimpressionist/gimpressionist.c: pass &PLUG_IN_INFO
to gimp_main.
* plug-ins/pygimp/gimpmodule.c: Here too. Also add a message
function.
2003-03-25 Sven Neumann <sven@gimp.org>
* Makefile.am
* gimpintl.h: removed this header file.
* gimpmiscui.c: include libgimp-intl.h.
* gimp.c (gimp_main): call setlocale() and bind to the libgimp
textdomain so that plug-ins don't need to do that explicitely.
* libgimp/stdplugins-intl.h: added the functionality that used to
live in gimpintl.h and removed the libgimp related stuff. Got rid
of the INIT_I18N_UI() macro.
* plug-ins/*/*.c: removed all occurances of INIT_I18N_UI().
Plug-ins simply call INIT_I18N() once in their run() function.
* plug-ins/script-fu/script-fu-intl.h: added the functionality
that used to live in gimpintl.h and removed the libgimp related
stuff.
* app/Makefile.am
* app/gimp-intl.h: new file that defines the gettext macros for
the GIMP core.
* app/*/*.c: include gimp-intl.h instead of libgimp/gimpintl.h.
* plug-ins/script-fu/scripts/test-sphere.scm: fixed typos.
2003-01-07 Michael Natterer <mitch@gimp.org>
* libgimpwidgets/gimphelpui.[ch]: removed gimp_help_init() and
gimp_help_free(). Added _gimp_help_init() instead.
* libgimpwidgets/gimpwidgets.def: changed accordingly.
* libgimpwidgets/gimpwidgets.c (gimp_widgets_init): call
_gimp_help_init() so it doesn't need to be done in all plug-ins
manually.
* libgimp/gimpcompat.h: added gimp_help_init() and gimp_help_free()
here as COMPAT_CRUFT.
* app/gui/gui.c
* plug-ins/FractalExplorer/Dialogs.c
* plug-ins/Lighting/lighting_ui.c
* plug-ins/MapObject/mapobject_ui.c
* plug-ins/common/AlienMap.c
* plug-ins/common/AlienMap2.c
* plug-ins/common/CML_explorer.c
* plug-ins/common/blur.c
* plug-ins/common/curve_bend.c
* plug-ins/common/gtm.c
* plug-ins/common/illusion.c
* plug-ins/common/jigsaw.c
* plug-ins/common/plasma.c
* plug-ins/common/polar.c
* plug-ins/common/ps.c
* plug-ins/common/randomize.c
* plug-ins/common/sinus.c
* plug-ins/common/snoise.c
* plug-ins/common/sparkle.c
* plug-ins/common/uniteditor.c
* plug-ins/common/warp.c
* plug-ins/common/wind.c
* plug-ins/gap/gap_arr_dialog.c
* plug-ins/gap/gap_mov_dialog.c
* plug-ins/gap/gap_navigator_dialog.c
* plug-ins/gdyntext/gdyntext_ui.c
* plug-ins/gfig/gfig.c
* plug-ins/gflare/gflare.c
* plug-ins/gimpressionist/gimpressionist.c
* plug-ins/maze/maze_face.c
* plug-ins/print/gimp_main_window.c
* plug-ins/sel2path/sel2path.c: removed the calls to
gimp_help_init() and gimp_help_free().
Fixed bug #81017:
* libgimpbase/gimpprotocol.[ch]: added "guint8 show_tool_tips"
to the GPConfig message. Increased the protocol version number.
* app/plug-in/plug-in.c: pass the value of gui_config->show_tool_tips.
* libgimp/gimp.[ch]: added gimp_show_tool_tips() to get the value
which was passed in the GPConfig message.
* libgimp/gimpui.c (gimp_ui_init): disable the tooltips
if show_tool_tips is FALSE.
* plug-ins/MapObject/mapobject_main.[ch]
* plug-ins/MapObject/mapobject_ui.c
* plug-ins/common/jigsaw.c
* plug-ins/gap/gap_navigator_dialog.c
* plug-ins/gfig/gfig.c: removed all plug-in specific GUI for
enabling/disabling tooltips.
2002-12-26 Tor Lillqvist <tml@iki.fi>
* app/Makefile.am (EXTRA_DIST): Drop makefile.mingw{,.in}.
* libgimp/gimp.c: Define LIBGIMP_COMPILATION.
(gimp_main) [Win32] Use g_ascii_strcasecmp().
* libgimp/gimp.def: Add _readchannel (used by libgimpui).
* libgimp/gimp.h: Fix minor typo in comment.
* libgimp/Makefile.am: Similar additions for Win32 as in the other
libgimp*/Makefile.am files: Use -no-undefined. Conditionally link
to ../lib*/*.la as needed. Use the .def file. Produce MS style
import library if possible. Install and uninstall import
libraries. Don't distribute makefile.mingw{,.in}.
2002-05-16 Michael Natterer <mitch@gimp.org>
* libgimpbase/gimpprotocol.[ch]
* libgimpbase/gimpwire.[ch]: pass "gpointer user_data" to all
functions, which in gets turn passed to the registered reader,
writer, and flusher funcs.
* libgimp/gimp.c
* libgimp/gimptile.c: pass NULL as user_data. We have only one
pipe on the plug-in side.
* app/plug-in/plug-in.c: pass the PlugIn as user_data. As a
consequence, got rid of more global variables. The global
"current_plug_in" and the plug_in_push()/pop() madness are still
there. Will reeplace them by some less ugly hack later...
2002-05-16 Michael Natterer <mitch@gimp.org>
* libgimpbase/tmpl/gimpprotocol.sgml
* libgimpbase/tmpl/gimpwire.sgml: regenerated after API change.
* app/plug-in/plug-in-rc.c: implement a new pluginrc flag,
"has-init", so that only plug-ins with init functions are
initialized.
* app/plug-in/plug-in.ch
* libgimp/gimp.c
* libgimpbase/gimpprotocol.ch: send a new gimpwire message,
GP_HAS_INIT during the query stage if the plug-in needs to be
initialized. Only invoke the plug-in in init mode if the plug-in
has an init function.
2001-09-19 Sven Neumann <sven@gimp.org>
* configure.in: require GTK+-1.3.8 and PangoFT2-0.19.
* app/devices.c:
* app/tools/gimppainttool.c: removed intermediate hacks that are no
longer needed with the new GTK+ release.
* app/plug_in.c
* libgimp/gimp.[ch]
* libgimp/gimpui.c
* libgimpbase/gimpprotocol.[ch]: removed use_xshm and color_cube
variables and accessor functions.
* app/errors.c: use gtk_exit() instead of gdk_exit().
* app/gdisplay.c: use Pango API to determine cursor label width. This
does not work correctly, but at least it compiles...
* app/gui/splash.c: follow Pango API changes.
* app/tools/gimpcurvestool.[ch]: use PangoLayouts to draw text.
* app/tools/gimptexttool.c: follow Pango API changes.
* app/widgets/gimpfontselection-dialog.c
* app/widgets/gimpfontselection.c: mostly rewritten following the
changes in GtkFontSelection. This is unusable at the moment and
crashes, but at least it compiles again...
* plug-ins/Makefile.am: temporarily disabled build of ifscompose since
it does not compile any longer after the latest GDK cleanups.
* plug-ins/common/nlfilt.c: gimp_color_cube() is obsolete.
2001-08-30 Michael Natterer <mitch@gimp.org>
* app/plug_in.c
* libgimpbase/gimpwire.c
* libgimp/gimp.c: removed GIOChannel "channel->funcs->io_foo()"
hacks and use plain g_io_channel_[read|write]_chars(). An
additional g_io_channel_set_buffered (channel, FALSE); is needed
to make the channels work in binary mode. Fixed misc other stuff
in the GIOChannel code.
* app/tools/gimpdrawtool.c
* app/tools/gimpmovetool.c
* app/tools/gimptransformtool.c
* app/widgets/gimpdialogfactory.c
* libgimpwidgets/gimpcolorarea.c
* libgimp/gimpui.c: replaced some deprecated GDK functions.
* app/gui/palette-editor.c: block the color_name entry's "changed"
signal while setting it. Fixes invalid UTF-8 warnings.
2001-07-15 Michael Natterer <mitch@gimp.org>
* libgimpbase/gimpwire.c: remove the usage of printf()/scanf()
when sending doubles over the wire. Instead, rely on the memory
layout of gdouble being IEEE compliant and transmit 8 bytes in
network byte order.
* libgimpbase/gimpprotocol.h: increase GP_VERSION because this
makes the wire protocol binary incompatible.
* app/main.c
* libgimp/gimp.c: removed the setlocate(LC_NUMERIC,"C") workaround.
2001-05-21 Michael Natterer <mitch@gimp.org>
* Makefile.am
* configure.in
* gimptool-1.4.in: added new directory libgimpbase/
* app/Makefile.am: link against the new lib.
* app/appenums.h: removed the PDB enums which are in
libgimpbase/gimpbasetypes.h now. They are all "Gimp" prefixed.
* app/apptypes.h: #include "libgimpbase/gimpbasetypes.h"
* app/[lots]
* app/core/[of]
* app/gui/[files]
* app/tools/: changed includes and all PDB types.
* app/pdb/*: regenerated.
* libgimp/Makefile.am: don't build libgimpi.a uglyness any more.
* libgimp/gimpenv.[ch]
* libgimp/gimplimits.[hh]
* libgimp/gimpparasite.[ch]
* libgimp/gimpparasiteio.[ch]
* libgimp/gimpprotocol.[ch]
* libgimp/gimpsignal.[ch]
* libgimp/gimpunit.h
* libgimp/gimputils.[ch]
* libgimp/gimpwire.[ch]: removed...
* libgimpbase/*: ...and added here as new library.
* libgimp/gimp.[ch]
* libgimp/gimpdrawable.[ch]
* libgimp/gimpenums.h
* libgimp/gimpimage.[ch]
* libgimp/gimptile.c
* libgimp/gimptypes.h
* libgimp/gimpunit.c: changed accordingly. Added the
gimp_*_add_new_parasite to gimp.[ch], gimpdrawable.[ch] and
gimpimage.[ch].
* libgimpwidgets/gimppatheditor.c
* libgimpwidgets/gimpquerybox.c
* libgimpwidgets/gimpsizeentry.c
* libgimpwidgets/gimpunitmenu.c
* libgimpwidgets/gimpwidgets.c
* libgimpwidgets/gimpwidgetstypes.h: changed includes accordingly.
* plug-ins/*/Makefile.am
* plug-ins/common/mkgen.pl: link against libgimpbase.
* tools/pdbgen/Makefile.am: scan libgimpbase/gimpbasetypes.h, so
the enums are known to pdbgen...
* tools/pdbgen/enumcode.pl: ...but don't write them out to
libgimp/gimpenums.h
* tools/pdbgen/app.pl: include libgimp/gimpbase.h in all *_cmds.c
files. Added GIMP_ to the type names ganerated in app/.
* tools/pdbgen/enums.pl: regenerated.
* tools/pdbgen/pdb.pl
* tools/pdbgen/pdb/fileops.pdb
* tools/pdbgen/pdb/procedural_db.pdb
* tools/pdbgen/pdb/unit.pdb: changed includes.
* plug-ins/plugin-helper/*: prototype for an extension that allows
gmodules as plugins. Known bug: crashes on gmodules with a static "query" function
* app/tools/tool.c
* app/tools/tool.h: created new GimpTool object. Did away with ToolInfo.
Most tools still need to be ported over to the new api.
* plug-ins/script-fu/script-fu-scripts.c: fixed typo in comment. Pathetic, huh?
2000-11-08 Michael Natterer <mitch@gimp.org>
* plug-ins/common/bz2.c
* plug-ins/common/gz.c
* plug-ins/common/mail.c
* plug-ins/common/screenshot.c
* plug-ins/common/url.c: applied a (modified) version of
gimp-quinet-20001108-1.patch which adds proper checking of the
return value of waitpid(). Removed the lines adding
gimp_signal_private() because of the fix below.
* libgimp/gimp.c: Don't install a SIGCHLD signal handler but simply
call gimp_signal_private(SIGCHLD, SIG_DFL, SA_RESTART) instead.
This is IMHO the right thing to do because the reason for the
introducion of the signal handler was the SA_RESTART feature
and not the handler itself.
2000-10-17 Michael Natterer <mitch@gimp.org>
* libgimp/gimp.c: gimp_uninstall_temp_proc(): free the original
hash key _after_ removing the procedure from the hash table.
I didn't observe any crash from this bug, but as the function
is called *only* from
- plug-ins/perl/Gimp/Lib.c and
- plug-ins/script-fu/script-fu-scripts.c
it may have been the reason for various reported perl<->script-fu
problems. Bug reporters, please check your bugs.
2000-09-07 Tor Lillqvist <tml@iki.fi>
* plug-ins/common/ps.c: Use fopen (xxx, "rb") on all systems. It
is standard C, does no harm on systems where it isn't needed
(Unix).
* libgimp/gimp.c (gimp_extension_process): Use
g_io_channel_win32_poll() instead of
g_io_channel_win32_wait_for_condition().
2000-08-24 Tor Lillqvist <tml@iki.fi>
* README.win32: Update, tell people the MSVC makefiles are not
up-to-date.
* */makefile.msc: Add warning about being outdated.
* */makefile.cygwin: Remove.
* */makefile.mingw.in: New files replacing the makefile.cygwin files.
* */Makefile.am: Change correspondingly.
* configure.in: Generate corresponding makefile.mingw files.
* app/about_dialog.c: Include <gdk/gdkconfig.h> for
GDK_USE_UTF8_MBS. Add UTF-8 version of a string.
* libgimp/gimp.c: Remove horrible Win32 hack, not needed any longer.
* plug-ins/common/jpeg.c: Use g_message, not g_warning.
* plug-ins/common/winclipboard.c
* plug-ins/common/winprint.c: Remove COMPAT_CRUFT.
* plug-ins/Lighting/lighing_apply.c: Fix for non-interactive mode
bug, supplied by Piet van Oostrum.
* tips/makefile.mingw: New file.
* tips/Makefile.am: Add it.
2000-08-01 Tor Lillqvist <tml@iki.fi>
* libgimp/gimp.c (gimp_extension_process): Pass correct timeout
value to g_io_channel_win32_wait_for_condition (actually g_poll)
to indicate infinite wait.
2000-07-30 Michael Natterer <mitch@gimp.org>
* app/errors.[ch]
* app/main.c
* libgimp/gimp.c: my last commit redirected all messages to the
console. Use g_log_set_handler() instead of g_set_message_handler()
(which is deprecated anyway).
2000-07-30 Michael Natterer <mitch@gimp.org>
* app/Makefile.am
* libgimp/Makefile.am: set G_LOG_DOMAINs for the app and for
libgimp so we can distinguish their warnings from plug-in ones.
* libgimp/gimp.c: set the stack_trace_mode before installing
signal handlers.
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-18 Tor Lillqvist <tml@iki.fi>
* libgimp/gimp.c (gimp_flush): Add horrible hack that seems to
help script-fu startup on NT 4.0, by avoiding some bug in GLib.
Yes, it would be better to fix GLib's main loop and GIOChannel
code for Win32. Unfortunately, it's kinda hairy...
* libgimp/gimp.h: Add extern "C" to the Win32 part for compiling
C++ plug-ins.
* plug-ins/makefile.cygwin: Add a couple of new unofficial
plug-ins. Use macros from build/win32/make.mingw.
* plug-ins/common/warp.c: Use G_PI.
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-06-01 Michael Natterer <mitch@gimp.org>
Sven Neumann <sven@gimp.org>
Completed the new file structure. Yet only few of the _pdb.[ch]
files are based upon generated code and nothing is really
autogenerated...
* app/Makefile.am
* app/gdisplay_cmds.c -> app/display_cmds.c
* app/gimage_cmds.c -> app/image_cmds.c
* app/gimage_mask_cmds.c -> app/selection_cmds.c
* app/internal_procs.c: related change
* libgimp/Makefile.am
* libgimp/gimp.h
* libgimp/gimp_pdb.h
* libgimp/gimpdisplay_pdb.[ch]
* libgimp/gimpimage_pdb.[ch]
* libgimp/gimpselection_pdb.[ch]: replaced with code based on files
generated using pdbgen
* libgimp/gimpchannelops_pdb.[ch]
* libgimp/gimpcolor_pdb.[ch]
* libgimp/gimpedit_pdb.[ch]
* libgimp/gimpfloatingsel_pdb.[ch]
* libgimp/gimpgimprc_pdb.[ch]
* libgimp/gimptexttool_pdb.[ch]
* libgimp/gimptools_pdb.[ch]
* libgimp/gimpundo_pdb.[ch]: new files based on generated code
* libgimp/gimpgradientselect.[ch]
* libgimp/gimpimage.[ch]
* libgimp/gimpselection.[ch]: new files wrapping around the
autogenerated PDB wrappers as found in *_pdb.[ch]. This is necessary
since the number of parameters or their order is different from the
PDP calls.
* plug-ins/common/CEL.c: plugged memleak
* plug-ins/common/aa.c: removed compiler warning
* tools/pdbgen/Makefile.am
* tools/pdbgen/groups.pl
* tools/pdbgen/pdb/gdisplay.pdb -> display.pdb
* tools/pdbgen/pdb/gimage.pdb -> image.pdb
* tools/pdbgen/pdb/gimage_mask.pdb -> selection.pdb
* tools/pdbgen/pdb/channel_ops.pdb
* tools/pdbgen/pdb/color.pdb
* tools/pdbgen/pdb/edit.pdb
* tools/pdbgen/pdb/floating_sel.pdb
* tools/pdbgen/pdb/gimprc.pdb
* tools/pdbgen/pdb/text_tool.pdb
* tools/pdbgen/pdb/tools.pdb
* tools/pdbgen/pdb/undo.pdb: made them create libgimp code
2000-05-31 Michael Natterer <mitch@gimp.org>
* app/gimpunit.c
* libgimp/*: all libgimp headers are included via gimp.h or
gimpui.h, so include <gtk/gtk.h> there and in the *.c files.
Various 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-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-12 Michael Natterer <mitch@gimp.org>
* libgimp/gimp.c (gimp_plugin_io_error_handler): fixed a
compiler warning about a missing return.
Slightly changed the messages that gimp<->plugin use different
protocol versions and a s/sprintf/g_snprintf/.
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.
2000-05-02 Michael Natterer <mitch@gimp.org>
* app/main.c
* libgimp/gimp.c: as noticed by Garry, Tim, Raphael and probably
many others, my latest signal change introduced a Linuxism
which doesn't compile on any other UNIX system, eek.
s/SA_NOMASK/SA_NODEFER/ makes it compile and is hopefully
the last chapter in this saga.