gimp/plug-ins/gimpressionist
Michael Natterer ef751a454d gimprc.in replaced "color-cube" by "min-colors".
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-30 18:17:55 +00:00
..
Brushes Added gimpressionist plugin 1999-08-26 22:29:37 +00:00
Paper Added gimpressionist plugin 1999-08-26 22:29:37 +00:00
Presets Added gimpressionist plugin 1999-08-26 22:29:37 +00:00
.cvsignore Added gimpressionist plugin 1999-08-26 22:29:37 +00:00
ChangeLog Various fixes/enhancements 1999-09-09 20:28:34 +00:00
Makefile.am version number bump 1999-09-26 05:16:19 +00:00
README Added gimpressionist plugin 1999-08-26 22:29:37 +00:00
about.c Added gimpressionist plugin 1999-08-26 22:29:37 +00:00
brush.c The way is now free for a new millenium without sprintf being used together with 1999-12-30 18:54:17 +00:00
color.c The way is now free for a new millenium without sprintf being used together with 1999-12-30 18:54:17 +00:00
general.c The way is now free for a new millenium without sprintf being used together with 1999-12-30 18:54:17 +00:00
gimp.c various minor i18n fixes and a patch from Wolfgang Hofer 2000-03-08 13:53:54 +00:00
gimpressionist.c gimprc.in replaced "color-cube" by "min-colors". 2000-04-30 18:17:55 +00:00
gimpressionist.h switched to G_PI and RAND_FUNC() 1999-09-09 22:29:41 +00:00
orientation.c The way is now free for a new millenium without sprintf being used together with 1999-12-30 18:54:17 +00:00
orientmap.c version number bump 1999-09-26 05:16:19 +00:00
paper.c The way is now free for a new millenium without sprintf being used together with 1999-12-30 18:54:17 +00:00
placement.c The way is now free for a new millenium without sprintf being used together with 1999-12-30 18:54:17 +00:00
plasma.c switched to G_PI and RAND_FUNC() 1999-09-09 22:29:41 +00:00
ppmtool.c The way is now free for a new millenium without sprintf being used together with 1999-12-30 18:54:17 +00:00
ppmtool.h The way is now free for a new millenium without sprintf being used together with 1999-12-30 18:54:17 +00:00
presets.c The way is now free for a new millenium without sprintf being used together with 1999-12-30 18:54:17 +00:00
preview.c plug-ins/common/compose.c plug-ins/gimpressionist/gimpressionist.c 1999-10-17 21:07:28 +00:00
repaint.c removed BOUNDS, MINIMUM and MAXIMUM. No need to include both <glib.h> and 2000-01-25 23:06:12 +00:00
size.c The way is now free for a new millenium without sprintf being used together with 1999-12-30 18:54:17 +00:00
sizemap.c version number bump 1999-09-26 05:16:19 +00:00

README

	This is the README for The GIMPressionist
	(c) 1998, 1999 Vidar Madsen - vidar@prosalg.no

	The GIMPressionist is free software, and may be distributed
	freely, provided this file is included!

	This program comes with no warranty, whatsoever. The author
	can not be held liable for any damage caused by proper or
	improper use of this program.


--- Introduction

The GIMPressionist is a plug-in for the GNU Image Manipulation Program,
a.k.a. the GIMP. It can be used to create natural looking painting effects
and similar. It can also be run in a primitive "standalone" mode. 

The current version is still a bit shaky, and is to be considered beta
software. I'll do some serious testing, hopefully across a few more
platforms, as soon as I can.

The official Web-page is http://www.prosalg.no/~vidar/gimpressionist/ and
will always contain a link to the latest released version. 


--- Compiling / Installing

To compile (hopefully):
	make

If you want to compile for GTK-1.1 and GIMP-1.1 instead, you will have
to change the two variable at the top of Makefile. Possibly you would
want to edit DEFAULTPATH as well, but that's not critical.

To install plug-in and accompanying files:
	make install

The plug-in installs itself under $HOME/.gimp/plug-ins/ and copies a
couple of files into the directory $HOME/.gimp/gimpressionist/.  The
subdirectories 'Brushes', 'Paper' and 'Presets' will be created during
"make install", and a few files will be added; As a minimum,
'defaultbrush.pgm' and 'defaultpaper.pgm' under their respective
directories. These are vanilla .PGM files, which could be edited (and
created) with any decent program - like the GIMP! :-) 


--- Standalone

As of version 0.99 and later, the GIMPressionist can also be run
separately from the GIMP. This is primarily intended for debugging
purposes, though, as it still needs GIMP libraries to compile. In your
shell, type: 
	gimpressionist somefile.ppm

The image specified must be a valid PPM file. No other formats are
supported, and probably never will.

If you click "OK", the PPM will be replaced with the "repainted" version.
If you "Cancel", nothing will be done to the file. 


--- File Formats

The "normal" brushes are simply grayscale PGM files, which can be created
with almost any program, including xv and of course The GIMP. A number of
brushes is included, so I guess a more in-depth explaination is not
necessary. And, for those who might want to try it, GIMPressionist can
also read GBR files, which is the GIMP's native brush format. (You still
need to copy them to the GIMPressionist's brush-directory, though. This
will probably be fixed sometimes.)

Version 0.99.4 introduced the concept of using "colored" brushes (although
"pre-rendered" usually is more correct). The brushes' file format is a
plain PPM file, but the layout is somewhat special (and kinda hard to
explain);

- The Red channel contains a shading map of the brush in question. Often
  it resembles the overall image more or less completely.

- The Green channel contains a high-light map. This is a pre-defined
  image of the shiny parts of the brush. (Ordinary grayscale brushes
  have this calculated automatically with a rough emboss-ish algorithm.)

- The Blue channel functions as a brush mask. When applying a brush
  stroke to the image, all areas colored blue in the file are first
  "blacked out" of the image.


--- Feedback

If you have any comments, criticism, ideas for improvement or new
features, or if you run into problems of any sort, let me know, so that I
can (try to) fix it for the next release! (And, if you find platform-
dependant bugs, please try to fix them and send me a patch!) 

I'm also welcoming contributions in the form of brushes or textures! For
this program to be valuable, it needs them... Bad! All contributions will
be properly credited, of course. 

Good luck and happy painting!

Vidar Madsen <vidar@prosalg.no>