Commit Graph

22 Commits

Author SHA1 Message Date
Tor Lillqvist 5e0093547e Accept what g_strescape throws at us (specifically, octal sequences that
1999-09-02  Tor Lillqvist  <tml@iki.fi>

* plug-ins/script-fu/interp_sliba.c (lreadstring): Accept what
g_strescape throws at us (specifically, octal sequences that start
with any octal digit, and are at most three octal digits long).

* app/makefile.{cygwin,msc}: Update.
1999-09-02 20:54:07 +00:00
Tor Lillqvist 6a71208875 Use _O_TEMPORARY. Removed #ifdef, instead define the Win32-only _O_BINARY
1999-09-01  Tor Lillqvist  <tml@iki.fi>

* app/tile_swap.c (tile_swap_open): Use _O_TEMPORARY. Removed
#ifdef, instead define the Win32-only _O_BINARY and _O_TEMPORARY
as zero if not defined.

* plug-ins/common/spheredesigner.c: Include config.h (#if
HAVE_CONFIG_H). RAND_FUNC and SRAND_FUNC are defined in that.
1999-09-01 04:27:30 +00:00
Tor Lillqvist c056ca170a Add gdisplay_color_ui.[ch].
* app/makefile.{cygwin,msc}: Add gdisplay_color_ui.[ch].
1999-08-31 17:03:34 +00:00
Tor Lillqvist 387002c04b Add a flags field and corresponding type ToolFlags to PaintCore. The only
1999-08-27  Tor Lillqvist  <tml@iki.fi>

* app/paint_core.h: Add a flags field and corresponding type
ToolFlags to PaintCore. The only flag bit defined so far is
TOOL_CAN_HANDLE_CHANGING_BRUSH, which those tools who don't mind
if the brush changes while painting (as in the case of pixmap pipe
brushes).

* app/paint_core.c: Test above flag before calling the brush's
select_brush method.

* app/airbrush.c
* app/paintbrush.c
* app/pencil.c: Set above flag.

* app/makefile.{cygwin,msc}: Add latest additions.
1999-08-26 21:33:58 +00:00
Tor Lillqvist 868bdfff44 Overhaul of pixmap brushes and pipes: No separate pixmap pipe
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.
1999-08-26 00:54:30 +00:00
Tor Lillqvist 416aa56f19 Added saving of .gih files.
1999-08-24  Tor Lillqvist  <tml@iki.fi>

* plug-ins/common/gpb.c: Added saving of .gih files.

* plug-ins/common/psp.c: Small changes, renamed the parasite.

* docs/parasites.txt: Suggesta a parasite for pixmap brush pipes.

* docs/gih.txt: Add the above parasite on the second line after
the number of brushes. Suggest how to edit brush pipes.

* docs/gpb.txt: Mention the gpb plug-in.

* app/pixmapbrush.c: Small clarification.

Fixes by Hans Breuer:

* libgimp/gimp.def: Add missing entries.

* app/gimpimage.h: Added declaration of	gimp_image_{freeze,thaw}_undo.

* modules/makefile.msc: Drop the .msvc from dll names.

* plug-ins/common/jpeg.c: Guard inclusion of
unistd.h. (save_dialog): Restrict text box height to help people
with small displays.
1999-08-24 05:30:14 +00:00
Tor Lillqvist 7a56ef950d Use g_message, not gimp_message. g_message calls gimp_message eventually.
1999-08-22  Tor Lillqvist  <tml@iki.fi>

* plug-ins/common/psp.c: Use g_message, not gimp_message.
g_message calls gimp_message eventually.

* plug-ins/common/gpb.c: New plug-in for saving Adrian's gpb files
(pixmap brushes) from an RGBA image. Probably just of temporary
value.

* plug-ins/makefile.{cygwin,msc}: Add it.

* plug-ins/common/gbr.c: Use g_message instead of printf.

* app/makefile.{cygwin,msc}: Comment out the gcg stuff here,
too. Remove frac.o.
1999-08-22 19:02:52 +00:00
Tor Lillqvist 1c19f04c46 Also provide a Clear button.
1999-08-21  Tor Lillqvist  <tml@iki.fi>

* app/errorconsole.c: Also provide a Clear button.

* app/gimprc.c: Add a missing static function declaration.

* app/makefile.{cygwin,msc}: Add new files.

* libgimp/gimp.def: Add new entry points.

* plug-ins/common/jpeg.c: Must include glib.h first. You don't
want to know why.

* plug-ins/common/psp.c: New file. This plug-in Loads Paint Shop
Pro files (.psp and .tub). Doesn't yet save them. Handles only 24-
bit images (with or without alpha) correctly so far.

* plug-ins/makefile.{cygwin,msc}: Build psp. Somebody please add
it to the auto* build system, too. I guess a test for zlib (which it
needs) is needed in configure.in.
1999-08-21 19:00:41 +00:00
Tor Lillqvist f6858e21d1 Actually use the enum types GimpImageType, GimpImageBaseType,
* app/*.[ch]: Actually use the enum types GimpImageType,
	GimpImageBaseType, LayerModeEffects, PaintApplicationMode,
	BrushApplicationMode, GimpFillType and ConvertPaletteType, instead
	of just int or gint. Hopefully I catched most of the places
	where these should be used.

	Add an enum ConvolutionType, suffix the too general constants
	NORMAL, ABSOLUTE and NEGATIVE with _CONVOL. Use NORMAL_MODE
	instead of NORMAL in some places (this was what was intended). Fix
	some minor gccisms.

	* app/apptypes.h: New file. This file contains the above
	enumeration types, and some opaque struct typedefs. It was
	necessary to collect these in one header that doesn't include
	other headers, because when we started using the above mentioned
	types in the headers, all hell broke loose because of the
	spaghetti-like cross-inclusion mess between headers.

	(An example: Header A includes header B, which includes header C
	which includes A. B uses a type defined in A. This is not defined,
	because A hasn't defined it yet at the point where it includes B,
	and A included from B of course is skipped as we already are
	reading A.)
1999-08-18 23:41:39 +00:00
Tor Lillqvist 4b22d03f10 Fix it. Now the hose itself, interpreted as a pixmap brush (which the hose
* app/gimpbrushhose.c (gimp_brush_hose_load): Fix it. Now the hose
	itself, interpreted as a pixmap brush (which the hose is a
	subclass of), is the first brush in its list. The rest of the
	pixmap brushes in the list are separately allocated ones. Don't
	read the pattern names into dummy buffers, just seek past.

	* app/pixmapbrush.c (pixmapbrush_motion): Now works better, and
	actually steps through the pixmaps in the hose's list. The
	paint_core->brush (which points to a brush hose in the cases we're
	interested in) is temporarily replaced with the current pixmap
	brush to use, and restored after applying the pixmap brush.

	* app/makefile.{cygwin,msc}: Add new files.
1999-08-17 23:32:48 +00:00
Tor Lillqvist 97346fb110 Use RINT instead of rint.
* app/transform_core.c: Use RINT instead of rint.

	* plug-ins/common/curve_bend.c
	* plug-ins/sel2path/spline.c: Workarounds for gccisms, thanks to
	Hans Breuer.

	* app/makefile.msc
	* plug-ins/makefile.msc: Misc fixes.
1999-08-16 19:33:35 +00:00
Tor Lillqvist b5d790e67e Add G_SQRT2.
* 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).
1999-08-16 04:59:48 +00:00
Tor Lillqvist cac72d12f8 Add newest files.
* app/makefile.{cygwin,msc} (gimp_OBJECTS): Add newest files.

	* plug-ins/common/winclipboard.c: Speed up by using
	gimp_tile_cache_size().

	* app/gimprc.c
	* plug-ins/script-fu/script-fu-scripts.c: Guard
	use of GLIB_CHECK_VERSION from old GLibs that don't have it.
1999-08-12 22:08:19 +00:00
Tor Lillqvist 21aae5c7ad Add gdiplay_color. Create gimp.def from gimp.sym.
* app/makefile.{cygwin,msc}: Add gdiplay_color. Create gimp.def
 	from gimp.sym.

	* app/gimp.def: Removed.

	* libgimp/gimpenv.c (gimp_data_directory) (Win32): Also check for
	the executable being in the plug-ins subdirectory.

	* plug-ins/makefile.{cygwin,msc}: Install also GIMPressionist
 	brushes, papers and presets.
1999-07-29 22:07:17 +00:00
Tor Lillqvist fe1cc678c1 app/makefile.cygwin app/makefile.msc plug-ins/makefile.cygwin
* app/makefile.cygwin
	* app/makefile.msc
	* plug-ins/makefile.cygwin
	* plug-ins/makefile.msc
	* modules/makefile.cygwin
	* modules/makefile.msc
	* tools/gcg/makefile.cygwin: Various updates. GCC-compiled DLL
	name change.

	* app/context_manager.c: Include paint_options.h for prototype.

	* app/gimpimage.c (gimp_image_initialize_projection): Break out of
 	loop as soon as possible.

	* app/menus.c (menus_last_opened_cmd_callback): Check if referring
 	to entry not in list.

	* app/module_db.c (valid_module_name): (Win32) Require module DLL
 	names to include name of compiler built with.

	* app/paths_dialog.c (paths_draw_segment_points): No use to draw
 	lines if we have less that two points.

	* app/qmask.c: Include stdio.h and floating_sel.h.

	* libgimp/makefile.cygwin: New file.

	* libgimp/Makefile.am:  Distribute above file.

	* libgimp/gimp.def: Update.

	* libgimp/gimpenv.c (gimp_directory): Don't warn about missing
 	home directory on Win32, it is perfectly natural.

	* plug-ins/sel2path/global.h: Bypass unused declarations, some
	of which clash with functions in MSVCRT.

	* plug-ins/sel2path/math.c
	* modules/colorsel_water.c: Define M_PI if necessary.

	* plug-ins/sel2path/sel2path.c: Include config.h and
 	glib.h. Define rint() if needed.

	* plug-ins/sel2path/vector.c: Include glib.h (for hypot() renaming
 	on Win32; In the MS C runtime, as hypot() is non-ANSI, it's called
 	_hypot(), sigh).

	* plug-ins/sinus/sinus_logo.h: Use indexed format, it is easier on
 	some compilers than the huge string.
1999-07-14 16:02:32 +00:00
Tor Lillqvist 2815f523e9 Advice about gcc.
* 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.
1999-07-03 02:27:32 +00:00
Tor Lillqvist ef9bef7d25 Use the DEBUG nmake variable to determine whether to build for debugging
* */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.
1999-06-28 17:54:19 +00:00
Tor Lillqvist 12938f1b6f Update version.
* 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.
1999-06-21 00:23:55 +00:00
Tor Lillqvist 776cd54ca9 Mention using GNU gettext.
* 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.
1999-06-14 22:18:02 +00:00
Tor Lillqvist 4e886ad428 Check for mmap.
* configure.in: Check for mmap.

	* app/makefile.msc: Depend on gimpi.lib.

	* app/app_procs.c (app_init): Fix gccism: Allocate filenames (an
 	array with non-constant size) dynamically.

	* app/{datafiles,fileops,general,install,module_db,temp_buf}.c:
 	Include glib.h before standard headers, because of certain obscure
 	details related to compiling with gcc on Win32.

	(If you really want to know: glib.h defines he names of POSIXish
	(but non-ANSI) functions as prefixed with underscore, because
 	that's how they are named in the msvcrt runtime C library we want
 	to use. However, defining stat as _stat causes some problems if
 	done after including the mingw32 <sys/stat.h>. So, it's easiest to
 	include <glib.h> early.)

	* app/main.c: Use _stdcall and __argc, __argv with MSC, but
 	__attribute__((stdcall)) and _argc, _argv with gcc. Don't print
 	the "Passed serialization test" message on Win32. (It would open
 	up an otherwise unnecessary console window.)

	* app/paint_funcs.c (gaussian_blur_region): Don't use variable sum
 	until initialized.

	* app/{bezier_select,paths_dialog}.c: Include config.h and define
 	rint() if necessary.

	* app/plug_in.c: Use _spawnv, not spawnv, on Win32 and OS/2.
1999-05-28 17:47:17 +00:00
Tor Lillqvist 1dea4958bb Win32 portability changes:
* 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.
1999-05-04 21:32:17 +00:00
Tor Lillqvist 951c92a602 Second batch of Win32 merge. 1999-03-07 12:56:03 +00:00