Commit Graph

180 Commits

Author SHA1 Message Date
Pedro Gimeno 68ad180d22 Use gint instead of guint. Fixes Debian bug report #205889.
2003-10-05  Pedro Gimeno  <pggimeno@wanadoo.es>

        * app/paint-funcs/paint-funcs.c (shrink_line): Use gint instead
        of guint. Fixes Debian bug report #205889.
2003-10-05 17:00:59 +00:00
Michael Natterer ab34b3ee94 added new functions color_region_mask() which works like color_region()
2003-09-27  Michael Natterer  <mitch@gimp.org>

	* app/paint-funcs/paint-funcs.[ch]: added new functions
	color_region_mask() which works like color_region() but takes an
	additional maskPR parameters and pattern_region() which fills
	destPR with a TempBuf of *matching color depth*.

	* app/paint-funcs/paint-funcs-generic.h: added corresponding
	color_pixels_mask() and pattern_pixels().

	* app/core/gimpimage.[ch] (gimp_image_transform_temp_buf): new
	function which transforms a TempBuf to a specified drawable's
	color space.

	* app/core/gimpdrawable-bucket-fill.c: the functions were factored
	out here. Removed them and use the new stuff.

	* app/core/core-enums.[ch]: added enum GimpStrokeStyle which can
	be one of { SOLID, PATTERN }.

	* app/core/gimpstrokeoptions.[ch]: added "GimpStrokeStyle style"
	property, cleanup.

	* app/core/gimpdrawable-stroke.c: honor the new "style" property
	and call the new color_region_mask() and pattern_region()
	functions accordingly, cleanup.

	* app/widgets/gimpstrokeeditor.c: added a GUI for the stroke
	style. Ugly but works.

	* app/gui/stroke-dialog.c: undefine "foreground" and "pattern" and
	set the user context as parent context so we get these properties
	from the global settings.
2003-09-27 20:04:07 +00:00
Sven Neumann 555038debf app/composite/gimp-composite-generic.c app/composite/gimp-composite-mmx.c
2003-09-16  Sven Neumann  <sven@gimp.org>

	* app/composite/gimp-composite-generic.c
	* app/composite/gimp-composite-mmx.c
	* app/composite/gimp-composite-sse.c
	* app/composite/gimp-composite-sse2.c
	* app/config/gimpconfig-deserialize.c
	* app/config/gimpconfig-path.c
	* app/config/gimpconfig-serialize.c
	* app/core/cpercep.c
	* app/core/gimpunit.c
	* app/gui/palette-import-dialog.c
	* app/gui/plug-in-menus.c
	* app/paint-funcs/paint-funcs-generic.h
	* app/paint-funcs/paint-funcs.c
	* app/pdb/procedural_db.c
	* app/text/gimptextlayout-render.c
	* app/tools/gimpfuzzyselecttool.c
	* app/widgets/gimpcursor.c: some trivial code cleanups: avoid
	casts that discard const qualifiers and avoid useless comparisons
	on unsigned variables. Also reordered qualifiers in function
	declarations (static comes before const).
2003-09-16 13:12:50 +00:00
Michael Natterer aaf84a73d2 removed function map_to_color() since it does not belong here and the two
2003-09-05  Michael Natterer  <mitch@gimp.org>

	* app/paint-funcs/paint-funcs.[ch]: removed function map_to_color()
	since it does not belong here and the two places using it look much
	cleaner when doing that stuff themselves.

	* app/core/gimpdrawable-preview.c: cleanup.
	(gimp_drawable_preview_scale): do the indexed palette lookup here
	instead of calling map_to_color().

	* app/core/gimpimage.c (gimp_image_get_color): transform the
	colors here instead of calling map_to_color().

	* app/core/gimpimage.[ch] (gimp_image_get_color): reordered
	parameters src parameters are before dest parameters.
	Made the src color const.

	(gimp_image_transform_color): reordered so src parameters are
	*after* dest parameters (since this function operates on the dest
	image and it makes sense to have the dest parameters
	together). Made the src color const here, too.

	* app/core/gimpdrawable-bucket-fill.c
	* app/core/gimpdrawable.c
	* app/core/gimpimage-contiguous-region.c
	* app/core/gimpimage-projection.c
	* app/core/gimpimagemap.c
	* app/core/gimplayer.c
	* app/core/gimppalette-import.c
	* app/paint/gimpclone.c
	* app/paint/gimppaintcore.c: changed accordingly.

	* app/core/gimpedit.c (gimp_edit_cut,copy): simplified by
	moving the "cropped" variable to a local scope.

	* app/core/gimpimage-mask.c: calling gimp_image_update() followed
	by gimp_viewable_imvalidate_preview(drawable) is equal to calling
	gimp_drawable_update() directly.
2003-09-05 17:44:39 +00:00
Helvetix Victorinox d16097c2fb Fixed another bug in initialising the compositing context for the special
* app/paint-funcs/paint-funcs.c (initial_sub_region): Fixed
  another bug in initialising the compositing context for the
  special case of dissolve mode.  A further attempt to fix bug
  #121438.

* app/composite/gimp-composite-generic.c
  (gimp_composite_dissolve_any_any_any_generic): Fixed bug in
  calculating whether the destination has an alpha channel (or
  not).
2003-09-05 14:49:14 +00:00
Sven Neumann b2c141e822 fix for bug #121305 2003-09-03 16:29:18 +00:00
Helvetix Victorinox 66dc32259a Turn on SSE, SSE2, and 3dnow instruction sets.
* app/composite/gimp-composite.c (gimp_composite_init): Turn on
  SSE, SSE2, and 3dnow instruction sets.

* app/paint-funcs/paint-funcs.c (initial_sub_region): Fixed
  uninitialised data in the special case for dissolve.
  This is the cause of Bug #121213.
2003-09-03 03:49:12 +00:00
Sven Neumann 1cc7de69e9 coding style and indentation.
2003-09-02  Sven Neumann  <sven@gimp.org>

	* app/paint-funcs/paint-funcs.c: coding style and indentation.
2003-09-02 09:10:59 +00:00
Helvetix Victorinox a2b9b16968 app/composite/gimp-composite-mmx.c Dereference all pointers from *outside*
* app/composite/gimp-composite-mmx.c
* app/composite/gimp-composite-sse.c: Dereference all pointers
  from *outside* of asm() construct.

* app/paint-funcs/paint-funcs.c: Fixed bug where dissolve opacity
  was incorrectly set, and dissolve mask was garbage. This should
  fix Bug #121213
2003-09-02 01:12:09 +00:00
Sven Neumann 28d130a533 removed some debugging output that I accidentally committed a while ago.
2003-08-24  Sven Neumann  <sven@gimp.org>

	* app/paint-funcs/paint-funcs-generic.h (blend_pixels): removed
	some debugging output that I accidentally committed a while ago.
	Fixes bug #120576 (slowness of smudge on alpha layers).
2003-08-24 10:57:44 +00:00
Helvetix Victorinox 33e22c8fbc composite/ modularisation of the automatic compositing function "wiring"
* composite/ modularisation of the automatic compositing function
  "wiring" to construct the table of compositing functions at
  run-time instead of compile time.

  The environment variable GIMP_COMPOSITE is a hexadecimal number
  representing a bit-field used to set/reset options in the
  gimp-composite code.

* gimp-composite-altivec.[ch]: added
* gimp-composite-altivec-installer.[ch]: added
* gimp-composite-vis.[ch]: added
* gimp-composite-vis-installer.[ch]: added
* gimp-composite-mmx-installer.[ch]: added
* gimp-composite-sse-installer.[ch]: added
* gimp-composite-altivec-test.[ch]: added
* gimp-composite-vis-test.[ch]: added
* gimp-composite-mmx-test.[ch]: added
* gimp-composite-sse-test.[ch]: added
* make-installer.py: Added meta programme for generating code to
  1) construct a table of compositing functions indexed by
  operation, and the pixel formats of the sources and destination,
  and 2) generating code for regression testing of these compositing
  functions against the same functions in gimp-composite-generic.c

* gimp-composite-mmx.c (xxxgimp_composite_overlay_rgba8_rgba8_rgba8_mmx):
  removing from the current set of optimisations because it appears
  to be broken.

* Makefile.am: modified regression testing targets to now build
  gimp-composite-*-test where * is any of generic, mmx, sse,
  altivec, and vis.

* gimp-composite.c: moved in initialisation code
  gimp_composite_init() from gimp-composite-dispatch.c

* gimp-composite.c: removed gimp_composite_unsupported().

* gimp-composite.c: use cpu_accel() to determine at run-time which
  set of optimisations are to be used.

* gimp-composite.c: conditionally compile code for ARCH_X86.

* make-gimp-composite-dispatch.c: retired.  See make-installer.py

* gimp-composite-mmx.c (op_overlay): namespace cleanup, op_overlay()
  and all of the constant values are now static

* gimp-composite-mmx.c, gimp-composite-sse.c: fixed bug with the
  alpha mask being the address of the alpha mask, not the mask
  itself.

* app/paint-funcs/paint-funcs.c: Check gimp_composite_options.use
  to see if we should use the new code or the old code.
2003-08-14 07:43:34 +00:00
Sven Neumann c217e77cb1 use g_alloca() instead of alloca().
2003-07-28  Sven Neumann  <sven@gimp.org>

	* app/paint-funcs/paint-funcs.c (initial_sub_region)
	(combine_sub_region): use g_alloca() instead of alloca().
2003-07-28 20:49:22 +00:00
Hans Breuer b70d6c3317 renamed GimpOrientationType with Compat postfix to avoid name clashing
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-26 17:37:32 +00:00
Sven Neumann 7c32d439fb fix for Solaris /bin/sh (bug #118002).
2003-07-21  Sven Neumann  <sven@gimp.org>

	* autogen.sh: fix for Solaris /bin/sh (bug #118002).

	* app/paint-funcs/paint-funcs-generic.h
	* app/paint-funcs/paint-funcs.[ch]: the Forte compiler doesn't
	like the use of global variables in inline functions. Applied a
	patch from Damien Carbery that fixes this (bug #118002).
2003-07-21 16:47:52 +00:00
Michael Natterer 73af860ff4 made generated output compile again and cleaned it up a bit.
2003-07-18  Michael Natterer  <mitch@gimp.org>

	* app/composite/make-gimp-composite-dispatch.py: made generated
	output compile again and cleaned it up a bit.

	* app/composite/gimp-composite-dispatch.c: regenerated.

	* app/paint-funcs/paint-funcs.c (combine_sub_region): don't use
	tabs please.
2003-07-18 10:29:56 +00:00
Helvetix Victorinox 9e3bd94760 app/composite/gimp-composite.[ch],
* app/composite/gimp-composite.[ch],
* app/composite/make-gimp-composite-dispatch.py
stubbed out the 32bit-per-channel pixel formats.

* app/composite/gimp-composite-sse.[ch],
* app/composite/Makefile.am
Broke-out and added the SSE versions of the MMX code.

* app/composite/gimp-composite.[ch],
* app/paint-funcs/paint-funcs.c,
* app/composite/make-gimp-composite-dispatch.py
Use of the new gimp_composite code is now turned on via the
environment variable GIMP_COMPOSITE with a non-zero value.  For
example:
% GIMP_COMPOSITE=1 gimp-1.3
2003-07-18 07:36:55 +00:00
Sven Neumann fc385a8672 use AM_PROG_AS instead of defining CCAS and CCASFLAGS manually. Changed
2003-07-14  Sven Neumann  <sven@gimp.org>

	* configure.in: use AM_PROG_AS instead of defining CCAS and
	CCASFLAGS manually. Changed the assembler checks to use inline
	assembly as we do in app/composite/gimp-composite-mmx.c.

	* app/composite/Makefile.am: build the MMX code again; we need it
	to be tested. If you have any problems, please report them. You can
	quick-fix your build using the --disable-mmx configure option.

	* app/paint-funcs/Makefile.am: reverted Helvetix' change ...
	* app/paint-funcs/paint-funcs.c: ... and include
	"composite/gimp-composite.h" instead of "gimp-composite.h".
2003-07-14 10:33:53 +00:00
Sven Neumann b4ee537837 include composite/gimp-composite.h.
2003-07-14  Sven Neumann  <sven@gimp.org>

	* app/base/base.c (base_init): include composite/gimp-composite.h.

	* app/paint-funcs/paint-funcs.c: enforce GIMP coding style on the
	code that Helvetix added.
2003-07-14 09:23:26 +00:00
Helvetix Victorinox 9d2b63962e app/paint-funcs/Makefile.am include files from app/composite/
app/paint-funcs/paint-funcs.c stubbed out code for using
gimp_composite.  To enable the use of gimp_composite, set the
value of gimp_composite_use_old to 0 (zero).

app/base/base.c calls gimp_composite_init() hook to initialse
all the gimp_composite "stuff."

app/composite/make-gimp-composite-dispatch.py now generates
gimp-composite-dispatch.h

app/composite/gimp-composite-dispatch.[ch] are in CVS although
they are generated files.  This is preparation for building the
table at run-time, instead of compile time.

app/composite/gimp-composite.c doesn't #include the main
dispatch table.  This is preparation for building the table at
run-time, instead of compile time.

app/composite/Makefile.am doesn't compile gimp-composite-mmx.c
(until the various remaining gcc problems and configuration issues
are worked out).
2003-07-13 15:48:41 +00:00
Sven Neumann 54adf6ffac redone target platform detection and MMX assembly checks. Basically copied
2003-07-04  Sven Neumann  <sven@gimp.org>

	* configure.in: redone target platform detection and MMX assembly
	checks. Basically copied from DirectFB.

	* app/Makefile.am
	* app/arch/i386/mmx/detect_mmx.S
	* app/arch/i386/mmx/paint_funcs_mmx.S
	* app/paint-funcs/Makefile.am
	* app/paint-funcs/paint-funcs-mmx.h
	* app/paint-funcs/paint-funcs-simd.S: removed the old MMX routines.
	New ones will come instead.

	* app/base/Makefile.am
	* app/base/detect-mmx.[Sh]: removed these two files...

	* app/base/cpu-accel.[ch]: ... and added new ones that do more
	fine-grained cpu acceleration detection. Again taken from DirectFB
	but the code is originally from mpeg2dec.

	* app/base/base.c: print results from cpu feature tests.
2003-07-04 00:31:05 +00:00
Sven Neumann e78601452c app/gui/edit-commands.c added "Fill with Pattern" menu entry as suggested
2003-07-02  Sven Neumann  <sven@gimp.org>

	* app/gui/edit-commands.c
	* app/gui/image-menu.c: added "Fill with Pattern" menu entry as
	suggested in bug #116365.

	* app/base/temp-buf.c
	* app/base/tile-swap.c
	* app/config/gimpbaseconfig.c
	* app/config/gimpconfig-types.c
	* app/display/gimpdisplayshell-filter-dialog.c
	* app/display/gimpdisplayshell.c
	* app/file/file-utils.c
	* app/paint-funcs/paint-funcs-types.h
	* app/tools/gimpdrawtool.c
	* app/tools/gimpinktool.c
	* app/tools/gimpiscissorstool.h
	* app/tools/gimptextoptions.c
	* app/paint-funcs/paint-funcs-types.h
	* app/vectors/gimpbezierstroke.c
	* app/vectors/gimpstroke.c
	* app/vectors/gimpvectors.c
	* app/vectors/vectors-types.h
	* libgimp/gimpbrushmenu.c
	* libgimp/gimpmisc.h
	* libgimpmodule/gimpmodule.c: fixed some minor issues found
	compiling with -pedantic.

	* app/pdb/misc_tools_cmds.c
	* tools/pdbgen/pdb/misc_tools.pdb: adapt to the changed order of
	arguments for gimp_image_pick_color().
2003-07-02 18:01:19 +00:00
Sven Neumann 3974e5ee8f Attempt to finally fix Smudge tool problems (bug #115057):
2003-06-13  Sven Neumann  <sven@gimp.org>

        Attempt to finally fix Smudge tool problems (bug #115057):

	* app/paint-funcs/paint-funcs-generic.h (blend_pixels): added an
	implementation for the non-alpha case.

	* app/paint/gimpsmudge.c (gimp_smudge_start): added back code that
	used to prefill the buffer if the inital area was clipped.
2003-06-13 11:12:04 +00:00
Sven Neumann f9fec0cda7 fixed my latest fix. Fixes bug #114882.
2003-06-11  Sven Neumann  <sven@gimp.org>

	* app/paint-funcs/paint-funcs-generic.h (blend_pixels): fixed my
	latest fix. Fixes bug #114882.
2003-06-11 00:46:59 +00:00
Sven Neumann 32bab29f18 weight pixels by their alpha value. Fixes the smudge tool (bug #72879).
2003-06-09  Sven Neumann  <sven@gimp.org>

	* app/paint-funcs/paint-funcs-generic.h (blend_pixels): weight
	pixels by their alpha value. Fixes the smudge tool (bug #72879).
2003-06-09 15:05:57 +00:00
Michael Natterer 1871d9ccef Implemented DISSOLVE_MODE the way it should have always been. Fixes bug
2003-06-02  Michael Natterer  <mitch@gimp.org>

	Implemented DISSOLVE_MODE the way it should have always been.
	Fixes bug #107402.

	* app/paint-funcs-generic.h (struct apply_layer_mode_struct): added
	"guchar *mask" so it can be used by the layer mode.

	(dissolve_pixels): take an additional "mask" parameter and
	dissolve the pixels according to the *combined* opacity of the
	pixel's alpha, the opacity and the mask. Removed a wrong comment
	about why we call g_rand_int() x times before we start to use its
	values.

	(layer_dissolve_mode): pass the mask to dissolve_pixels(). No need
	to call add_alpha_pixels() since we overwrite the dest buffer
	entirely in disolve_pixels().

	* app/paint-funcs.c (initial_sub_region, combine_sub_region):
	allocate the buffer large enough for DISSOLVE (which always needs
	an alpha channel). Pass the mask to the layer mode functions.
	Discard opacity and mask after applying DISSOLVE since it
	"consumes" all transparency.
2003-06-02 14:21:01 +00:00
Sven Neumann 254cfb27ad fixed typo: use x1 instead of the uninitialized variable x.
2003-05-15  Sven Neumann  <sven@gimp.org>

	* app/core/gimpdrawable-transform.c
	(gimp_drawable_transform_tiles_affine): fixed typo: use x1 instead
	of the uninitialized variable x.

	* app/paint-funcs/paint-funcs-generic.h
	* app/paint-funcs/paint-funcs.[ch]: removed unused variable
	has_alpha from blend_pixels() function.

	* app/base/temp-buf.c: cosmetics.
2003-05-15 21:01:02 +00:00
Pedro Gimeno 06a65279ae Serialize access to source and destination memory to reduce the chance of
2003-04-29  Pedro Gimeno  <pggimeno@wanadoo.es>

	* app/paint-funcs/paint-funcs.c (shrink_line): Serialize access to
	source and destination memory to reduce the chance of cache misses
	when dealing with large images. Enable some assertions temporarily
	to ensure that the algorithm works properly before backporting it.
2003-04-29 15:50:39 +00:00
Pedro Gimeno c8ecdeec5c Mostly rewritten to improve accuracy. Fixes bug #104693.
2003-04-27  Pedro Gimeno  <pggimeno@wanadoo.es>

	* app/paint-funcs/paint-funcs.c (shrink_line): Mostly rewritten to
	improve accuracy. Fixes bug #104693.
2003-04-27 18:58:56 +00:00
Pedro Gimeno df21fe5276 Some reformattings to improve readability. (shrink_line): Added some
2003-04-25  Pedro Gimeno  <pggimeno@wanadoo.es>

	* app/paint-funcs/paint-funcs.c: Some reformattings to improve
	readability.
	(shrink_line): Added some explanatory comments.
	(border_region): Fixed wrong (though harmless) allocation bug: used
	sizeof(gint16 *) where sizeof(gint16) was needed.
2003-04-25 23:08:09 +00:00
Sven Neumann 3c30a90bdb added gimp_channel_new_from_component() which creates a new GimpChannel
2003-03-12  Sven Neumann  <sven@gimp.org>

	* app/core/gimpchannel.[ch]: added gimp_channel_new_from_component()
	which creates a new GimpChannel from an image's color component.

	* app/gui/channels-commands.[ch]: added
	channels_duplicate_component_cmd_callback().

	* app/paint-funcs/paint-funcs-generic.h
	* app/paint-funcs/paint-funcs.[ch]: added code to extract a color
	component from a PixelRegion (untested!).

	* plug-ins/common/checkerboard.c: cosmetics.
2003-03-11 23:54:49 +00:00
jaycox 5ed3043027 *** empty log message *** 2003-02-18 06:03:18 +00:00
Manish Singh 84c1f981ea app/paint-funcs/paint-funcs.c plug-ins/common/psd_save.c 64-bit cleaniless
2002-02-08  Manish Singh  <yosh@gimp.org>

        * app/paint-funcs/paint-funcs.c
        * plug-ins/common/psd_save.c
        * plug-ins/common/sample_colorize.c: 64-bit cleaniless cleanups.
2003-02-08 00:37:27 +00:00
Michael Natterer 2342bae8bc added "gboolean use_mmx" parameter to paint_funcs_setup(). Don't #include
2002-11-30  Michael Natterer  <mitch@gimp.org>

	* app/paint-funcs/paint-funcs.[ch]: added "gboolean use_mmx"
	parameter to paint_funcs_setup(). Don't #include "appenv.h".

	* app/base/base.c: pass "use_mmx" to paint_funcs_setup().
2002-11-30 22:48:51 +00:00
Dave Neary cd28dee822 configure.in app/core/gimpbrushpipe.c app/gui/about-dialog.c
2002-11-20  Dave Neary  <bolsh@gimp.org>

        * configure.in
        * app/core/gimpbrushpipe.c
        * app/gui/about-dialog.c
        * app/paint-funcs/paint-funcs-generic.h
        * app/paint-funcs/paint-funcs.c
        * libgimpmath/gimpmath.h
        * libgimpwidgets/gimpwidgets.c
        * plug-ins/common/CML_explorer.c
        * plug-ins/common/blur.c
        * plug-ins/common/cubism.c
        * plug-ins/common/gee.c
        * plug-ins/common/gee_zoom.c
        * plug-ins/common/gqbist.c
        * plug-ins/common/jigsaw.c
        * plug-ins/common/lic.c
        * plug-ins/common/noisify.c
        * plug-ins/common/nova.c
        * plug-ins/common/papertile.c
        * plug-ins/common/plasma.c
        * plug-ins/common/randomize.c
        * plug-ins/common/sample_colorize.c
        * plug-ins/common/scatter_hsv.c
        * plug-ins/common/shift.c
        * plug-ins/common/sinus.c
        * plug-ins/common/smooth_palette.c
        * plug-ins/common/snoise.c
        * plug-ins/common/sparkle.c
        * plug-ins/common/spheredesigner.c
        * plug-ins/common/spread.c
        * plug-ins/common/warp.c
        * plug-ins/common/wind.c
        * plug-ins/flame/cmap.c
        * plug-ins/flame/flame.c
        * plug-ins/flame/libifs.c
        * plug-ins/gflare/gflare.c
        * plug-ins/gimpressionist/gimpressionist.c
        * plug-ins/gimpressionist/gimpressionist.h
        * plug-ins/gimpressionist/plasma.c
        * plug-ins/gimpressionist/repaint.c
        * plug-ins/ifscompose/ifscompose_utils.c
        * plug-ins/maze/algorithms.c
        * plug-ins/maze/maze.c
        * plug-ins/maze/maze.h
        * plug-ins/mosaic/mosaic.c: Change all occurrences of RAND_MAX,
        G_MAXRAND, rand(), srand(), lrand48(), srand48(), random(),
        srandom(), RAND_FUNC and SRAND_FUNC to the appropriate g_rand*
        equivalent. Programs which require seed setting for reproducible
        results, and anything in the core, gets a dedicated GRand * for
        the lifetime required. Programs which only ever used random
        numbers for tossing a coin, rolling a dice, etc use g_random
        functions. For the rest, judgement was used. Where it was easy, a
        GRand * object was used and g_rand_* functions were
        preferred. This fixes bug #67386 in HEAD.
2002-11-20 09:27:48 +00:00
Sven Neumann af16c6eeb9 removed mydistcheck hook.
2002-11-07  Sven Neumann  <sven@gimp.org>

	* Makefile.am: removed mydistcheck hook.

	* app/base/Makefile.am
	* app/paint-funcs/Makefile.am: removed automake-1.4 and 1.5 specific
	stuff; made it work correctly for srcdir != builddir.

	* tools/pdbgen/Makefile.am: do not to write into the source tree.

2002-11-07  Sven Neumann  <sven@gimp.org>

	* libgimp/Makefile.am
	* libgimpbase/Makefile.am
	* libgimpcolor/Makefile.am
	* libgimpmath/Makefile.am
	* libgimpmodule/Makefile.am
	* libgimpwidgets/Makefile.am: added uninstall hooks.
2002-11-07 17:12:17 +00:00
Sven Neumann ace7acd3b4 app/base/base-enums.h app/paint-funcs/paint-funcs-generic.h
2002-11-05  Sven Neumann  <sven@gimp.org>

	* app/base/base-enums.h
	* app/paint-funcs/paint-funcs-generic.h
	* app/paint-funcs/paint-funcs.c
	* app/widgets/gimpwidgets-constructors.c: applied a patch from
	Guillermo S. Romero that adds three new layer modes (Softlight,
	Grain Extract and Grain Merge, #97686).

	* app/base/base-enums.c
	* app/pdb/brush_select_cmds.c
	* app/pdb/brushes_cmds.c
	* app/pdb/layer_cmds.c
	* app/pdb/misc_tools_cmds.c
	* app/widgets/gimpwidgets-constructors.c
	* libgimp/gimpenums.h
	* plug-ins/script-fu/script-fu-constants.c
	* tools/pdbgen/enums.pl: regenerated.
2002-11-05 19:33:59 +00:00
Garry R. Osgood 7836563081 Disabled MMX code to address Bug #86290, Bug #90969
* configure.in: GIMP_ENABLE_MMX => 0, disabling symbol
* app/paint-funcs/paint-funcs-mmx.h: disabled *_mmx() functions
*app/paint-funcs/paint-funcs.c: disabled update of layer_mode_funcs table
2002-11-04 02:53:40 +00:00
Hans Breuer e17baf71d6 updated
2002-09-06  Hans Breuer  <hans@breuer.org>

	* */*/makefile.msc : updated

	* libgimptool/makefile.msc : new file, libgimptool
	is currently build as static lib due to references
	into app/core

	* themes/Default/makefile.msc : removed
	* themes/Default/images/makefile.msc : new file

	* libgimpwidgets/makefile.msc libgimpwidgets/gimpwidgets.c
	updated (externals)

	* app/paint-funcs.c : replaced gccism varibale size array on
	stack with portable alloca, removed sizeof(buf) check which
	must fail now.

	* app/config/gimpconfig.c : get write/close protos
	on win32 from io.h
	* app/config/gimprc.c : dito and <string.h>
	* app/config/gimpscanner.c : <string.h> only

	* app/core/gimpcontainer.c : workaround for clumsy
	compilers not supporting vararg macros

	* app/core/gimpdocumentlist.c app/core/gimpparasitelist.c
	include <io.h> on win32

	* app/widgets/gimpdocumentview.c
	  app/widgets/gimpimagedock.c
	  app/widgets/gimppreview.c : add #ifdef __GNUC__
	to avoid breaking on non standard pragma #warning.

	* app/gui/session.c : include <string.h>

	* regexrepl/makefile.msc : build as dll

	* plug-ins/makefile.msc : updated

	* plug-ins/common/pix.c : open file binary

	* plug-ins/common/spheredesigner.c : avoid error
	'incompatible types' while assigning, use memcpy()
2002-09-06 22:25:19 +00:00
Sven Neumann 4667d313af app/base/Makefile.am fixed my fix for automake-1.6 (#84514).
2002-06-11  Sven Neumann  <sven@gimp.org>

	* app/base/Makefile.am
	* app/paint-funcs/Makefile.am: fixed my fix for automake-1.6 (#84514).
2002-06-11 06:47:38 +00:00
Sven Neumann 3aae39405e app/base/Makefile.am automake-1.6 seems to use yet another variable to
2002-06-08  Sven Neumann  <sven@gimp.org>

	* app/base/Makefile.am
	* app/paint-funcs/Makefile.am: automake-1.6 seems to use yet another
	variable to pass flags to the assembler (bug #84514). Define
	AM_CCASFLAGS like AM_ASFLAGS to satisfy all versions of automake.

	* configure.in
	* all Makefiles: removed STRIP_BEGIN and STRIP_END since it's a
	GNU make extension that we don't really need and newer versions of
	automake don't seem to like it.
2002-06-07 23:00:46 +00:00
Michael Natterer ff9b313ebe this is getting silly: this time (maybe) really fix #83418 and #26072: of
2002-05-31  Michael Natterer  <mitch@gimp.org>

	* app/paint-core/paint-core.c (combine_sub_region): this is
	getting silly: this time (maybe) really fix #83418 and #26072: of
	course the local buffer needs to take the sizes of all three
	passed in regions into account, not only two of them *sigh*
2002-05-31 21:42:06 +00:00
Michael Natterer 510fd8361e fixed #83418, which was caused by my bogus "fix" for #34849
2002-05-29  Michael Natterer  <mitch@gimp.org>

	* app/paint-funcs/paint-funcs.c: fixed #83418, which was caused by
	my bogus "fix" for #34849 (initial_sub_region:: error :: src->w *
	(src->bytes + 1) > 512).
	The assertions were there because there were local temporary
	buffers of 512 bytes size. Now the buffers' size is
	MAX (src->width * src->bytes, dest->width * dest->bytes) which
	should be enough this time :) Re-enabled the assertions because
	of paranoia...
2002-05-29 21:19:17 +00:00
Sven Neumann 8215391f22 set include paths in AM_ASFLAGS for automake-1.5.
2002-05-29  Sven Neumann  <sven@gimp.org>

	* app/paint-funcs/Makefile.am: set include paths in AM_ASFLAGS for
	automake-1.5.
2002-05-29 15:44:12 +00:00
Sven Neumann 14066a6e8d app/core/cpercep.[ch] app/core/gimpimage-convert.c removed C++ style
2002-05-24  Sven Neumann  <sven@gimp.org>

	* app/core/cpercep.[ch]
	* app/core/gimpimage-convert.c
	* app/paint-funcs/paint-funcs.c: removed C++ style comments and
	compiler warnings.
2002-05-24 10:48:08 +00:00
Michael Natterer 73057f7689 gimp_display_idlerenderer_callback()). The assertion went off whenever we
2002-05-13  Michael Natterer  <mitch@gimp.org>

	* app/paint-funcs/paint-funcs.c commented out a warning in
	initial_sub_region and a g_error() in combine_sub_region which
	didn't expect to get chunks of pixels with a width of > 128
	passed. I guess it was an assertion to ensure the integrity of
	some higher level code (see gimpdisplay.c:
	gimp_display_idlerenderer_callback()).  The assertion went off
	whenever we wanted to render a preview with a width of > 128,
	which is however handled absolutely correctly by the two
	functions. (fixes #26072)

	* app/core/gimpcontext.c (gimp_context_get_by_type): unref objects
	before returning them. Fixes our biggest memleak (whole images).

	* app/display/gimpdisplay-handlers.c: commented out debugging
	g_print()s which track the image's refcount.
2002-05-13 14:28:49 +00:00
Hans Breuer 8522a8470d add appconfig.lib. Statically link libgimptool/gimptool.lib.
2001-05-11  Hans Breuer  <hans@breuer.org>

	* app/makefile.msc : add appconfig.lib. Statically
	link libgimptool/gimptool.lib.

	* app/main.c : use gimp_locale_directory()

	* app/config/gimpconfig-utils.c : <string.h>

	* app/config/makefile.msc : add gimpscanner

	* app/core/gimpimagefile.c : some G_OS_WIN32 mess to get
	mkdir() and chmod()

	* app/display/gimpdisplayshell.c
	  app/plug-in/plug-in-progrss.c
	  app/tool/gimpcolorpickertool.c
	  app/tool/gimpcroptool.c
	  app/tool/gimpmeasuretool.c
	  app/tool/gimpperspectivetool.c
	  app/tool/gimprotatetool.c
	  app/tool/gimpscaletool.c
	  app/tool/gimpsheartool.c
	  app/tool/gimptransformtool.c
	  app/widgets/gimpcolormapeditor.c
	  app/widgets/gimpcolorpanel.c
	  app/widgets/gimptoolbox-color-area.c
	add #ifdef __GNUC__ to avoid breaking on non standard
	pragma #warning

	* app/tools/makefile.msc : add gimptoolcontrol remove
	tools-enum

	* app/tools/tool_manager.c : need to include
	libgimptool/gimptoolcontrol.h after core includes
	otherwise we would compile without prototypes or
	break miserably

	* app/gui/plug-in-menus.c : replace LOCALEDIR with
	gimp_locale_directory ()

	* app/gui/preferences-dialog.c (prefs_notebook_append_page) :
	only try to gdk_pixbuf_new_from_file() with a valid filename.
	It should simply return NULL otherwise, but fails if the
	filename is an empty string.

	* app/paint-funcs/makefile.msc : add -FImsvc_recommended_pragmas.h

	* app/widgets/gimpcolormapeditor.c : the 'row'
	allocated needs to be 'xn * cellsize * 2' (to avoid
	accessing unowned memory) not only width, which has
	become allocation.width by someone commenting out
	the correct size calculation

	* app/widgets/gimpdialogfactory.c : varargs to macros
	are GCCism or at least non standard. #define DEBUG
	to g_print or nothing - without arguments - does fix
	it somewhat dirty as the compiler needs to tolerate
	the '(blah, foo, bar);' statement than

	* app/widgets/makefile.msc : updated

	* app/xcf/makefile.msc : add -FImsvc_recommended_pragmas.h

	* etc/gimprc.win32 : use ';' to separate theme-path

	* libgimpbase/gimpenv.c : #include <stdio.h>
	for sprintf()

	* app/widgets/gimpdnd.c (gimp_dnd_set_file_data) :
	the passed in vals chunk is not always null-terminated
	(at least not on win32). Use the length parameter too
	to avoid reading junk filenames.

	* libgimp/gimp.def : export gimp_image_get_name()

	* libgimpbase/gimpbase.def : export gimp_locale_directory()
	* libgimpbase/gimpenv.[ch] : added gimp_locale_directory ()

	* libgimpbase/makefile.msc : define DATADIR and SYSCONFDIR
	to empty string to let gimp find its files in the common
	place (win32: relative to the top level gimp dir)

	* plug-ins/common/pixelize.c : <string.h>

	* plug-ins/flame/cmap.c : #include <glib.h> for g_random_int()

	* plug-ins/makefile.msc : -FImsvc_recommended_pragams.h
	and a little hack to give imagemap the prototypes it
	desires without changing the lexed source

	* themes/Default/images/makefile.msc : now added (see below)

	* themes/Default/images/stock-button-reset.png : made it binary
2002-05-10 23:30:09 +00:00
Sven Neumann f0cf8be770 moved use_shm declaration here, added use_mmx.
2002-03-22  Sven Neumann  <sven@gimp.org>

	* app/appenv.h: moved use_shm declaration here, added use_mmx.

	* app/main.c: added --no-mmx commandline option, removed --no-xshm
	from help output.

	* app/base/base-config.[ch]: removed use-mmx declaration.

	* app/core/core-types.h
	* app/base/base-types.h: include libgimpbase/gimpbasetypes.h from base.

	* app/base/base.c: respect user settings for mmx.

	* app/paint-funcs/paint-funcs.c
	* app/plug-in/plug-in.c: changed accordingly.

	* docs/gimp-1.3.1.in: updated.
2002-03-22 13:37:26 +00:00
Sven Neumann bba46560ba app/core/core-enums.h moved some more enums into the right place and
2002-03-18  Sven Neumann  <sven@gimp.org>

	* app/core/core-enums.h
	* app/core/core-types.h: moved some more enums into the right place
	and namespacified them.

	* app/undo.c
	* app/core/gimpdrawable-bucket-fill.[ch]
	* app/core/gimpdrawable.c
	* app/core/gimpedit.c
	* app/core/gimpimage-mask.c
	* app/core/gimpimage-new.c
	* app/core/gimpimage-qmask.c
	* app/core/gimplayer.[ch]
	* app/display/gimpdisplayshell-dnd.c
	* app/gui/channels-commands.c
	* app/gui/file-new-dialog.c
	* app/gui/layers-commands.c
	* app/gui/menus.c
	* app/paint-funcs/paint-funcs.c
	* app/tools/gimpbucketfilltool.c
	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/layer.pdb
	* tools/pdbgen/pdb/misc_tools.pdb: changed accordingly.

	* libgimp/gimpcompat.h
	* plug-ins/script-fu/siod-wrapper.c: added compat defines for changed
	GimpMaskApplyMode enum.

	* tools/pdbgen/enums.pl
	* app/pdb/drawable_cmds.c
	* app/pdb/edit_cmds.c
	* app/pdb/image_cmds.c
	* app/pdb/layer_cmds.c
	* app/pdb/misc_tools_cmds.c
	* libgimp/gimpenums.h
	* plug-ins/script-fu/script-fu-constants.c: regenerated.
2002-03-18 11:07:34 +00:00
Michael Natterer bc7c7f3216 Implemented #7100 (initialize layer mask with a copy of the image)
2002-02-20  Michael Natterer  <mitch@gimp.org>

	Implemented #7100 (initialize layer mask with a copy of the image)

	* app/core/core-types.h: added ADD_COPY_MASK and ADD_INV_COPY_MASK
	enum values.

	* app/pdb/layer_cmds.c
	* libgimp/gimpenums.h
	* plug-ins/script-fu/script-fu-constants.c
	* tools/pdbgen/enums.pl: regenerated.

	* app/core/gimplayer.c (gimp_layer_create_mask): implement
	the new layer mask add modes.

	* app/gui/layers-commands.c (layers_add_mask_query): added radio
	buttons for the new modes.

	* app/paint-funcs/paint-funcs.c (flatten_region): this function
	was never needed so nobody noticed that it never worked. Fixed now.

	* app/undo.c
	* app/core/gimplayermask.h
	* app/core/gimpimage.c: the "mode" field of LayerMaskUndo is
	obsolete since some earlier 1.3 layer mask change. Removed it.
	(Makes mask undos work again)
2002-02-20 16:15:53 +00:00
Hans Breuer 6cb914db84 from now on use make.msc from $(TOP)/glib/build/win32; all occurences of
2001-02-17  Hans Breuer  <hans@breuer.org>

	* */*/makefile.msc */makefile.msc : from now on use
	make.msc from $(TOP)/glib/build/win32; all occurences
	of DIRENT removed and general update

	* app/config/makefile.msc app/paint/makefile.msc
	  app/plug-in/makefile.msc themes/Default/makefile.msc :
	new files

	* app/base/base.c : ported to GDir usage

	* app/config/gimpconfig-serialize.c :
	  app/config/gimpconfig-deserialize.c : HAVE_UNISTD_H
	* app/config/gimpconfig.c :
	  app/config/gimprc.c : HAVE_UNISTD_H, use <io.h> for
	open() prototype and merged pmode parameter
	(_S_IREAD | _S_IWRITE)

	* app/core/cpercep.c : msvc doesn't have cbrt(), provide
	it via pow(). Also include <glib.h> for painless 'inline'
	definition.

	* app/core/gimpdatafiles.c : ported to GDir usage

	* app/core/gimpimage-convert.c : work around a msvc compiler
	limitation (can't convert from uint64 to double)

	* app/file/file-open.c app/file/file-save.c :
	access() -> _access() for G_OS_WIN32

	* app/plug-in/plug-in.c : HAVE_UNISTD_H and <io.h>

	* libgimpbase/gimpbase.def : updated externals

	* libgimpbase/gimpenv.c : define WIN32_LEAN_AND_MEAN to
	avoid clashes with incompatible DATADIR definitions

	* libgimpcolor/gimpcolor.def : updated externals

	* lingimpmath/gimpmath.def : updated externals

	* libgimpwidgets/gimpwidgets.def : updated externals

	* libgimpwidgets/libgimp-glue.c : adapt to const changes
	of some prototypes

	* plug-ins/makefile.msc : disabled gdyntext

	* plug-ins/gap/iter_ALT/*/*.inc : GimpRunModeType -> GimpRunMode

	* plug-ins/FractalExplorer/FractalExplorer.c :
	* plug-ins/gap/gap_lib.c :
	* plug-ins/gfig/gfig.c :
	* plug-ins/gflare/gflare.c :
	* plug-ins/gimpressionist/gimpressionist.c :
	replaced DIRENT usage with GDir

	* plug-ins/script-fu/script-fu-scripts.c : #include <windows.h>
	to get the Sleep() prototype
2002-02-17 15:55:54 +00:00