1999-09-02 Tor Lillqvist <tml@iki.fi>
* libgimp/parasiteio.[ch]: New files. Types and functions related
to "standard" parasite types. Used for the
gimp-brush-pipe-parameters parasite that the gpb and psp plug-ins
handle, and the value of which is stored in gih files, from
which gimpbrushpipe.c parses it.
* libgimp/{Makefile.am,makefile.{cygwin,msc}}: Add new files.
* libgimp/gimp.def: Add its entry points.
* libgimp/gimp.h: Fix cosmetic argument name error.
* app/gimpbrushpipe.c: Remove code that previously
was copied here, use functions from parasiteio.c.
* plug-ins/common/gpb.c: Ditto. Add brush cell width and height
fields to the gih save dialog. Add cleverness to update rows and
columns as cell size is changes. (Still too easy for the user to
get confused, though.) Display corresponding guide grid on the
image. Unfortunately updating the guidelines doesn't seem to work.
* plug-ins/common/psp.c: Use functions from parasiteio.c.
brush tool any longer. The paintbrush, airbrush and pencil
tools, which already knew how to handle the single-pixmap
brushes now also handle the pipes as well.
* app/pixmapbrush.{h,c}
* app/gimpbrushpixmap.{h,c}: Removed these files.
* app/Makefile.am
* app/makefile.{cygwin,msc}: Remove from here, too.
* app/gimpbrushpipe.{h,c}: Total overhaul.
* app/paint_core.h
* app/apptypes.h: Some more types moved to apptypes.h
* app/context_manager.c
* app/tool_options.c
* app/tools.c
* app/toolsF.h: Remove PIXMAPBRUSH tool.
* app/gimpbrush.h: New method: select_brush. Used to change the
brush in paint_core, for pipe brushes.
* app/gimpbrush.c: Add gimp_brush_select_brush, which is dummy for
the normal brushes (returns the same brush).
* app/paint_core.c: Call the brush's select_brush method to get a
potential new brush before calling the paint_func.
* app/gimpbrushlist.c: Various changes related to the pixmap and
pipe overhaul.
* app/airbrush.c
* app/pencil.c: Reorder code a bit in the tool motion function to
avoid executing unnecessary code in the case of a pixmap brush.
Other changes in the same commit:
* app/install.c: Make quote_spaces extern.
* app/appenv.h: Declare it.
* libgimp/gimpui.def: Add missing entry points.
* libgimp/makefile.{cygwin,msc}: Add missing objects to gimpui.
* app/appenv.h: Add G_SQRT2.
* app/iscissors.c: Use it.
* app/makefile.{cygwin,msc}: Add new files.
* */makefile.{cygwin,msc}: Use libintl extracted from glibc from a
separate directory, not from gettext, because of licensing issues
(we want to use the LGPL version in GTk+, so use it here, too).
* README.win32: Update gcc instructions. Remove warning about
gettext being GPL, as the GIMP is GPL, too, of course, and it
thus doesn't matter.
* user_install.bat: Rename the template user gtkrc to gtkrc_user,
to reduce user confusion.
* app/main.c: Small change for gcc on Win32 compilation.
* */makefile.cygwin
* app/module_db.c: With newest gcc-2.95 -fnative-struct on Win32,
no need to have differently named DLLs (including modules) for
(built by) gcc and MSVC.
* app/module_db.c: Use g_strdup_printf() instead of
strlen(), g_malloc() and g_snprintf()
* libgimp/Makefile.am: No need to distribute gimpfeatures.h.win32,
the suitable gimpfeatures.h is built when making the dist.
* libgimp/gimpfeatures.h.win32: Removed.
* libgimp/makefile.cygwin
* libgimp/makefile.msc: Remove gimpfeatures.h.win32.
* libgimp/gimp.h: Win32 startup code changed a bit.
* plug-ins/makefile.cygwin
* plug-ins/makefile.msc: Add the winsnap unofficial plug-in.
* plug-ins/common/animationplay.c
* plug-ins/common/gz.c: (Win32) Hack aroung WinMain getting
clashing declarations because these guys include gdkx.h (which
includes windows.h), and gimp.h also declares WinMain on its own.
* README.win32: Advice about gcc.
* libgimp/gimp.{c,h,def}: New way to get address of PLUG_IN_INFO
to the gimp dll, similar as used by the EMX port. Much cleaner.
Works well with gcc also now.
* app/gimprc.c: Remove gratuituous printf.
* app/makefile.msc: Update with new files.
* plug-ins/makefile.msc: Small updates.
* plug-ins/makefile.cygwin: New file.
* plug-ins/gfig/gfig.c
* plug-ins/script-fu/script-fu-scripts.c: Include <glib.h> early.
* */makefile.msc: Use the DEBUG nmake variable to determine
whether to build for debugging or not.
* libgimp/gimp.def: Add some missing entry points.
* plug-ins/makefile.msc: Redo as to Yosh's reorg of the
sources. Add some plug-ins missing earlier. (For instance print,
which only prints to files on Win32. We still need a real Win32
print plug-in. Much code probably could be lifted from the bmp
plug-in.)
* plug-ins/MapObject/arcball.c: Change Qt_ToMatrix() to void,
instead of returning the address of its parameter (dubious
practise), as its value is never used anyway.
For the following changes, thanks to Hans Breuer:
* plug-ins/FractalExplorer/Dialogs.h: Check for feof, not to get
into an endless loop on malformed files.
* plug-ins/common/header.c: Support indexed images.
* plug-ins/common/sunras.c
* plug-ins/common/xwd.c
* plug-ins/print/print.h
* plug-ins/sgi/sgi.h: Include config.h, guard inclusion of
unistd.h.
* plug-ins/print/print.c: Guard for SIGBUS being undefined. Open
output file in binary mode.
* po/makefile.msc: Add no.
* libgimp/gimpfeatures.h.win32: Update version.
* app/file_new_dialog.c: Include gimpcontext.h.
* app/gdisplay.c: Don't pass a pointer as an int parameter,
pass the result of an inequality comparison to zero.
* app/makefile.msc: Add new files.
* plug-ins/makefile.msc: Build the ps plug-in, too.
* plug-ins/ps/ps.c: Add code to use a "real" output file, not a
pipe (needed with Win32 port of ghostscript).
Use g_strdup_printf() instead of separate g_malloc() and sprintf()
calls. No need to check failure of g_malloc(), it aborts on
failure. Open files in binary mode.
(Win32:) Use indirect command line file to guard for too long
command line. (Not sure if this is really needed.) Use the
gswin32c program.
* README.win32: Mention using GNU gettext.
* config.h.win32: Enable NLS stuff. Remove the X11 & Unix vs. Win32
feature test macros, we use those from glibconfig.h and gdkconfig.h.
* app/makefile.msc: Use gettext. New object files.
* app/batch.c: No need to include <io.h> on Win32.
* app/errorconsole.c
* app/plug_in.c
* app/tile_swap.c: Include <glib.h> early to get Win32 feature
test macros from <glibconfig.h>.
* app/gimpset.c: Remove unnecessary (?) warning.
* app/main.c
* libgimp/stdplugins-intl.h: If no LOCALEDIR defined
(as on Win32), use the "locale" subdir in gimp_data_directory().
* app/palette.c: Open palette file in text mode.
* app/session.c
* app/text_tool.c: Use GDK's GDK_WINDOWING feature test macro
if available, not WINDOWS_DISPLAY.
* libgimp/gimpfeatures.h.win32: Correct GIMP_VERSION.
* libgimp/makefile.msc: Use gettext.
* plug-ins/makefile.msc: Use gettext. Add some missing
plug-ins. Advice how to build "unofficial" plug-ins.
* plug-ins/FractalExplorer/FractalExplorer.c
* plug-ins/faxg3/faxg3.c
* plug-ins/gbr/gbr.c
* plug-ins/gz/gz.c: Include <glib.h> early.
* plug-ins/tga/tga.c: Include config.h, use HAVE_UNISTD_H.
* libgimp/gimp.c: No need for <io.h> on Win32.
* libgimp/{gimp,gimpui}.def: Add two entry points.
* libgimp/gimp.h: Can't use __declspec(dllexport) for PLUG_IN_INFO
when compiling with gcc on Win32. Also handle __argc, __argv and
_stdcall differently with gcc on Win32
* libgimp/gimpenv.c: Include <string.h>.
* libgimp/gimpfeatures.h.in: Remove lots of extraneous trailing blanks.
* libgimp/gimpfileselection.c: Include <glib.h> early, see above.
* libgimp/{gimpwire,parasite}.c: Test for NATIVE_WIN32, not
_MSC_VER.
* libgimp/makefile.msc: Miscellaneous updates. The gimpi library
is now built as a static library.
* config.h.win32, README.win32: Small changes.
* tools/pdbgen/pdb/*.pdb: Include <string.h>.
* app/*_cmds.c: Autogenerated files reflect above changes.
* libgimp/makefile.msc app/makefile.msc: Various updates,
including new object files. Gtk+ directory now should be called
gtk+ (not gtk-plus). Use win32-specific gdk subdir. Glib directory
now should be called just glib.
* libgimp/gimp.def: Updates.
* libgimp/gimpfeatures.h.win32: Made current with
gimpfeatures.h.in.
* libgimp/gimpfileselection.c: Define S_ISDIR and S_ISREG if
necessary.
* tools/pdbgen/pdb/fileops.pdb: Must have a
statement (even an empty one) after a label.
* app/fileops_cmds.c: Autogenerated file reflects above changes.
* app/crop.c: Include <string.h>.
* app/{app_procs,batch,fileops,datafiles,errorconsole,general,
plug_in,temp_buf,tile_swap}.c: Test NATIVE_WIN32, not
_MSC_VER. (NATIVE_WIN32 means we are using the Microsoft C
runtime, even if we might be compiling with gcc.)
* app/fileops.c: Don't include <process.h> here.
* app/fileops.h: Do include <process.h> here.
* app/gimpparasite.c: Include config.h, guard inclusion of
<unistd.h>. (Is the inclusion of unistd.h in source files all over
the place really necessary?)
* app/ink.c: MSC doesn't handle conversion from unsigned __int64
to double, so cast to signed.
* app/lut_funcs.c: Include config.h, and define rint() if necessary.
* app/pixel_processor.c: Include config.h without "..", like in
all the other places. Include <string.h>
* app/text_tool.c: Guard the "POINTS" identifier that clashes with
<windows.h>, sigh.