Commit Graph

769 Commits

Author SHA1 Message Date
Sven Neumann c9073a2449 reduced number of calls to tile_manager_get_tile().
2007-03-07  Sven Neumann  <sven@gimp.org>

	* app/base/pixel-surround.c (pixel_surround_lock): reduced number
	of calls to tile_manager_get_tile().


svn path=/trunk/; revision=22064
2007-03-07 17:57:10 +00:00
Sven Neumann 4d76165127 keep an internal buffer filled with the background color and use it for
2007-03-07  Sven Neumann  <sven@gimp.org>

	* app/base/pixel-surround.c: keep an internal buffer filled with
	the background color and use it for out of bounds requests. 
Speed
	up filling the internal buffer by copying data row-by-row.


svn path=/trunk/; revision=22062
2007-03-06 23:32:25 +00:00
Sven Neumann bcbca9b612 documentation.
2007-02-27  Sven Neumann  <sven@gimp.org>

        * app/base/pixel-surround.c: documentation.


svn path=/trunk/; revision=22020
2007-02-27 21:55:52 +00:00
Sven Neumann 6788bffb5c do less tile lock and release operations by reusing the last locked tile
2007-02-23  Sven Neumann  <sven@gimp.org>

	* app/base/pixel-surround.[ch]: do less tile lock and release
	operations by reusing the last locked tile if possible. Allow to
	call pixel_surround_lock() several times without unlocking.

	* app/core/gimp-transform-region.c: don't unlock the PixelSurround
	so that the locked tile can be reused. Yields about 30% speedup
	for transformations.


svn path=/trunk/; revision=21984
2007-02-23 16:19:42 +00:00
Sven Neumann 9a30c767a2 code cleanup.
2007-02-23  Sven Neumann  <sven@gimp.org>

	* app/base/pixel-surround.c (pixel_surround_lock): code cleanup.


svn path=/trunk/; revision=21981
2007-02-23 10:59:02 +00:00
Sven Neumann c0c273f9ce allocate the PixelSurround struct and its buffer in one chunk.
2007-02-22  Sven Neumann  <sven@gimp.org>

	* app/base/pixel-surround.c: allocate the PixelSurround struct and
	its buffer in one chunk.


svn path=/trunk/; revision=21980
2007-02-23 10:10:44 +00:00
Sven Neumann 9d32b72c6f app/base/base-types.h hide PixelSurround struct and cleaned up the
2007-02-22  Sven Neumann  <sven@gimp.org>

	* app/base/base-types.h
	* app/base/pixel-surround.[ch]: hide PixelSurround struct and
	cleaned up the PixelSurround API.

	* app/core/gimp-transform-region.c: changed accordingly. Also
	sprinkled some const qualifiers.

svn path=/trunk/; revision=21978
2007-02-23 09:50:42 +00:00
Sven Neumann 3f7c188f59 made tile_ref_count a static variable and added a function to access it.
2007-02-22  Sven Neumann  <sven@gimp.org>

	* app/base/tile.[ch]: made tile_ref_count a static variable and
	added a function to access it.  Declared other (unused) global
	counters as static variables and moved them into #ifdefs.

	* app/base/tile-swap.c: use the function instead of declaring
	tile_ref_count as extern.

	* app/base/tile-manager.c
	* app/base/pixel-surround.c: cosmetics.


svn path=/trunk/; revision=21975
2007-02-22 22:28:24 +00:00
Tor Lillqvist 32d58bf209 Fix #398311 in GIMP until corresponding abstraction has been added to
2007-01-26  Tor Lillqvist  <tml@novell.com>

	Fix #398311 in GIMP until corresponding abstraction has been added
	to GLib:

	* app/base/tile-private.h: Use gint64 instead of off_t. (I assume
	the configury makes sure GIMP is always compiled as
	large-file-aware on Unix with an off_t of at least 64 bits?)

	Introduce wrapper macros LARGE_SEEK() and LARGE_TRUNCATE(). On
	Win32 LARGE_SEEK() calls _lseeki64() in the Microsoft C library,
	and LARGE_TRUNCATE calls a new internal function
	gimp_win32_large_truncate(). On Unix they call lseek() and
	ftruncate().

	* app/base/tile-swap.c: Use gint64 instead of off_t. Use
	LARGE_SEEK() and LARGE_TRUNCATE() instead of lseek() and
	ftruncate().
	(gimp_win32_large_truncate): New function. Calls LARGE_SEEK() and
	SetEndOfFile().

	* app/xcf/xcf-load.c (xcf_swap_func): Use LARGE_SEEK() instead of
	lseek().


svn path=/trunk/; revision=21785
2007-01-27 01:49:01 +00:00
Michael Natterer 3fb0096e62 add support for non-tiled regions.
2007-01-15  Michael Natterer  <mitch@gimp.org>

	* app/base/pixel-region.c (pixel_region_set,get_row): add support
	for non-tiled regions.

	* app/paint/gimpperspectiveclone.[ch]: replace handmade
	transformation code by a call to gimp_transform_region(). Fix
	getting the original pixels for src_pickable != dest_drawable
	(bug #394610). Various small fixes and cleanups.


svn path=/trunk/; revision=21720
2007-01-15 21:54:51 +00:00
Sven Neumann 930d6149da removed all .cvsignore files from SVN
svn path=/trunk/; revision=21612
2006-12-30 14:31:03 +00:00
Sven Neumann 41237259c9 In all files, changed the standard copyright notice to say "GIMP - The GNU
2006-12-09  Sven Neumann  <sven@gimp.org>

        * In all files, changed the standard copyright notice to say
        "GIMP - The GNU Image Manipulation Program".
2006-12-09 21:33:38 +00:00
Sven Neumann 5e43848a7c applied patch from Saul Goode (bug #379611), then cleaned up further.
2006-11-27  Sven Neumann  <sven@gimp.org>

	* app/base/color-balance.c (color_balance_transfer_init): applied
	patch from Saul Goode (bug #379611), then cleaned up further.
2006-11-27 10:07:50 +00:00
Michael Natterer 85cecec576 app/base/base.c app/core/gimp-user-install.c
2006-11-12  Michael Natterer  <mitch@gimp.org>

	* app/base/base.c
	* app/core/gimp-user-install.c
	* app/core/gimpbrushgenerated-load.c
	* app/core/gimpcontainer.c
	* app/core/gimpgradient-load.c
	* app/core/gimppalette-load.c
	* app/core/gimpparamspecs-desc.c
	* app/dialogs/tips-parser.c
	* app/menus/plug-in-menus.c
	* app/plug-in/gimppluginmanager.c
	* app/plug-in/gimppluginprocedure.c
	* app/text/gimptext-parasite.c
	* app/tools/gimpforegroundselecttool.c
	* app/widgets/gimpselectiondata.c
	* app/xcf/xcf.c: use g_str_has_prefix() instead of strncmp().
2006-11-12 20:30:50 +00:00
Sven Neumann e98c83a523 moved call to gimp_item_get_image() out of the loop.
2006-11-04  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimagemap.c (gimp_image_map_do): moved call to
	gimp_item_get_image() out of the loop.

	* app/base/pixel-region.c
	* app/core/gimpitem.c: formatting.
2006-11-04 18:18:32 +00:00
Michael Natterer c18faa20fe app/actions/brush-editor-actions.c app/base/tile-manager-crop.c
2006-10-30  Michael Natterer  <mitch@gimp.org>

	* app/actions/brush-editor-actions.c
	* app/base/tile-manager-crop.c
	* app/config/gimpconfig-file.c
	* app/core/gimp-gradients.c
	* app/core/gimpdrawable-histogram.c
	* app/core/gimpimage-colorhash.c
	* app/core/gimpimage-undo-push.c
	* app/dialogs/convert-dialog.c
	* app/dialogs/preferences-dialog.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/gui/gui-vtable.c
	* app/paint/gimpheal.c
	* app/paint/gimppaintcore-undo.c
	* app/plug-in/plug-in-enums.h
	* app/vectors/gimpstroke-new.c
	* app/vectors/gimpvectors-warp.c
	* app/widgets/gimpviewablebox.c
	* app/widgets/gimpviewrenderer-frame.c
	* app/widgets/gimpviewrenderer-utils.c
	* app/xcf/xcf-save.c
	* libgimpwidgets/gimpcontroller.c: all .c files should include
	their headers and all private functions should be static.
	(-Wmissing-declarations -Wmissing-prototypes rocks!)
2006-10-30 10:13:06 +00:00
Michael Natterer 78c67eef88 forgot to commit the latest version of this file (only a typo fix).
2006-10-23  Michael Natterer  <mitch@gimp.org>

	* app/base/base-enums.c: forgot to commit the latest version of
	this file (only a typo fix).
2006-10-23 12:09:22 +00:00
Michael Natterer e634d4d718 Added "Edit -> Fade" which allows to modify the paint mode and opacity of
2006-10-21  Michael Natterer  <mitch@gimp.org>

	Added "Edit -> Fade" which allows to modify the paint mode and
	opacity of the last drawable operation (fill, plugins etc.).
	Started from a patch by Bill Skaggs. Fixes bug #170707.

	* app/base/base-enums.[ch] (enum GimpLayerModeEffects): register
	the values REPLACE_MODE, ERASE_MODE and ANTI_ERASE_MODE with
	the type system.

	* app/widgets/gimppropwidgets.[ch]
	* app/widgets/gimpwidgets-constructors.[ch]: added "gboolean
	with_replace_modes" to the paint mode menu constructors.

	* app/tools/gimppaintoptions-gui.c
	* app/widgets/gimpbrushselect.c
	* app/widgets/gimplayertreeview.c: pass with_replace_modes = FALSE.

	* app/core/gimpdrawableundo.[ch]: added members which keep tiles,
	paint mode and opacity of the pasted pixels.

	* app/core/gimpimage-undo.[ch] (gimp_image_undo_get_fadeable):
	returns a GimpUndo suitable for a fade operation, or NULL.

	* app/core/gimp-edit.[ch] (gimp_edit_fade): implements the actual
	fade by undoing the last operation and then re-applying the pixels
	with different paint mode and opacity.

	* app/core/gimpdrawable-combine.c: store the pasted pixels in
	the GimpDrawableUndo.

	* app/actions/edit-actions.c
	* app/actions/edit-commands.[ch]: action and callback for fade.

	* app/dialogs/Makefile.am
	* app/dialogs/fade-dialog.[ch]: the fade dialog.

	* app/widgets/gimphelp-ids.h: the fade help ID.

	* menus/image-menu.xml.in: added a menu entry in "Edit".
2006-10-21 18:46:49 +00:00
Sven Neumann 53ececa514 app/composite/gimp-composite.h app/composite/gimp-composite-generic.c
2006-09-28  Sven Neumann  <sven@gimp.org>

	* app/composite/gimp-composite.h
	* app/composite/gimp-composite-generic.c
	* app/paint-funcs/paint-funcs-generic.h
	* app/paint-funcs/paint-funcs.c: added lots of const qualifiers,
	moved variables to local scopes.

	* app/base/pixel-processor.c: formatting.
2006-09-27 23:29:05 +00:00
Sven Neumann 26ecfe60b7 use the same code on all platforms. The optimization for bytes == 4 was
2006-09-21  Sven Neumann  <neumann@jpk.com>

	* app/base/tile-manager.c (read_pixel_data_1) (write_pixel_data_1):
	use the same code on all platforms. The optimization for bytes == 4
	was pointless anyway.
2006-09-21 09:45:07 +00:00
Michael Natterer a9c03ad6b6 fix build on big endian.
2006-09-21  Michael Natterer  <mitch@gimp.org>

	* app/base/tile-manager.c (read_pixel_data_1): fix build on
	big endian.
2006-09-21 01:16:09 +00:00
Sven Neumann d3904c6d85 fixed endian issues (bug #340965).
2006-09-20  Sven Neumann  <sven@gimp.org>

	* app/base/tile-manager.c (read_pixel_data_1) (write_pixel_data_1):
	fixed endian issues (bug #340965).
2006-09-20 10:38:42 +00:00
Sven Neumann 6d0e04ae6e app/base/pixel-region.[ch] app/base/tile-manager.[ch] removed code that
2006-09-07  Sven Neumann  <sven@gimp.org>

	* app/base/pixel-region.[ch]
	* app/base/tile-manager.[ch]
	* app/base/tile-swap.[ch]: removed code that tried to swap in
	tiles asynchronously (but ended up calling up nothing).
2006-09-07 09:58:17 +00:00
Sven Neumann 79931072c8 app/base/tile-cache.c app/base/tile-manager.c app/base/tile-private.h
2006-09-07  Sven Neumann  <sven@gimp.org>

	* app/base/tile-cache.c
	* app/base/tile-manager.c
	* app/base/tile-private.h
	* app/base/tile.c: removed tile locking macros that were only used
	for the threaded tile swapper.
2006-09-07 09:41:23 +00:00
Sven Neumann c8fb26ee96 removed --enable_threaded_tile_swapper option.
2006-09-07  Sven Neumann  <sven@gimp.org>

	* configure.in: removed --enable_threaded_tile_swapper option.

	* app/base/tile-cache.c
	* app/base/tile-private.h
	* app/base/tile-swap.c
	* app/base/tile.c: removed threaded tile swapper code which has
	been sitting here unused for too long.
2006-09-07 09:31:27 +00:00
Sven Neumann 9a75754282 fixed logic for starting the idle swapper 2006-09-04 08:16:33 +00:00
Sven Neumann d1cc52ecbf only run the idle swapper if needed and use a lower priority for the
2006-09-04  Sven Neumann  <sven@gimp.org>

        * app/base/tile-cache.c: only run the idle swapper if needed and
        use a lower priority for the timeout.
2006-09-04 07:22:10 +00:00
Sven Neumann d34ff5537d libgimpbase/Makefile.am libgimpbase/gimpbase.h added new files that hold
2006-08-29  Sven Neumann  <sven@gimp.org>

	* libgimpbase/Makefile.am
	* libgimpbase/gimpbase.h
	* libgimpbase/gimprectangle.[ch]: added new files that hold
	gimp_rectangle_intersect(), factored out of the core.

	* libgimpbase/gimpbase.def: updated.

	* app/core/gimp-edit.c
	* app/core/gimp-utils.c
	* app/core/gimp-utils.h
	* app/core/gimpchannel-combine.c
	* app/core/gimpdrawable-foreground-extract.c
	* app/core/gimpdrawable-transform.c
	* app/core/gimpdrawable.c
	* app/core/gimpimage-preview.c
	* app/core/gimplayer.c
	* app/core/gimpscanconvert.c
	* app/display/gimpdisplayshell-draw.c: changed includes accordingly.

	* libgimp/gimpdrawablepreview.c: don't duplicate
	gimp_rectangle_intersect() here, use the function in libgimpbase.

	* app/base/siox.c: use gimp_rectangle_intersect() to reduce the
	working area to the region of interest. Fixes bug #340422.
2006-08-29 14:46:32 +00:00
Sven Neumann 232b11c188 print the value of $datarootdir in the summary.
2006-08-25  Sven Neumann  <sven@gimp.org>

	* configure.in: print the value of $datarootdir in the summary.

	* app/base/tile-swap.c (tile_swap_in_attempt): fixed error
	handling in this unused function.
2006-08-25 16:48:09 +00:00
Sven Neumann ea44e43f07 mention that multi-processor support is on by default.
2006-08-24  Sven Neumann  <sven@gimp.org>

	* INSTALL: mention that multi-processor support is on by
default.

	* app/base/tile-cache.c: fixed compilation if multi-processor
	support is disabled (bug #352609).
2006-08-24 06:31:11 +00:00
Sven Neumann 05b8556488 actually enable tile cache locking and added a missing lock in
2006-08-16  Sven Neumann  <sven@gimp.org>

	* app/base/tile-cache.c: actually enable tile cache locking and
	added a missing lock in tile_idle_preswap(). Should fix bug
#346923.
2006-08-16 06:06:13 +00:00
Sven Neumann dbeb1bcbae more code cleanup 2006-07-06 12:27:32 +00:00
Sven Neumann ff6c5bbd9b code cleanup
2006-07-06  Sven Neumann  <sven@gimp.org>

	* app/base/boundary.[ch]: code cleanup
2006-07-06 11:13:26 +00:00
Sven Neumann edcd73e9f0 app/base/pixel-region.[ch] code cleanup.
2006-07-06  Sven Neumann  <sven@gimp.org>

	* app/base/pixel-region.[ch]
	* app/base/tile-manager.h: code cleanup.
2006-07-06 10:58:44 +00:00
Sven Neumann dc4517cd78 code cleanup.
2006-07-06  Sven Neumann  <sven@gimp.org>

	* app/base/temp-buf.[ch]: code cleanup.
2006-07-06 10:50:39 +00:00
Sven Neumann db75625d27 Moved the CPU detection code to libgimpbase (see bug #342860):
2006-06-02  Sven Neumann  <sven@gimp.org>

	Moved the CPU detection code to libgimpbase (see bug #342860):

	* app/base/Makefile.am
	* app/base/cpu-accel.[ch]
	* app/base/test-cpu-accel.c: removed here...

	* libgimpbase/Makefile.am
	* libgimpbase/gimpbase.h
	* libgimpbase/gimpcpuaccel.[ch]

	* libgimpbase/test-cpu-accel.c: ... and added here again with
	some API changes.

	* app/composite/Makefile.am
	* app/composite/make-installer.py: changed accordingly.

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

	* libgimp/gimp.c (gimp_main): call gimp_set_use_cpu_accel().
2006-06-02 09:58:03 +00:00
Manish Singh b9416956f8 Fixes to address -ansi -pedantic compilation (bug #342390). Thanks goes to
2006-05-20  Manish Singh  <yosh@gimp.org>

        Fixes to address -ansi -pedantic compilation (bug #342390).
        Thanks goes to Daniel Richard G. for noticing and suggesting
        fixes.

        * libgimpbase/gimpsignal.c: #include "config.h" and define
        __POSIX_SOURCE for sigaction stuff.

        * app/base/tile-swap.c (tile_swap_test): use more portable
        S_IRUSR and S_IWUSR, instead of S_IREAD and S_IWRITE.

        * plug-ins/common/ripple.c
        * plug-ins/imagemap/imap_main.c: use C89 comments.

        * plug-ins/Lighting/lighting_preview.h: don't define spin widget
        variables here...

        * plug-ins/Lighting/lighting_ui.[ch]: ... and instead take care
        of them here.
2006-05-20 07:18:25 +00:00
Sven Neumann 27161194aa cosmetics (should have gone into the last commit) 2006-04-26 14:19:08 +00:00
Sven Neumann a779b9b302 added newlines.
2006-04-26  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c (depth_first_search): added newlines.

	* app/core/gimpimage-contiguous-region.c: added const qualifiers.
2006-04-26 14:18:10 +00:00
Sven Neumann 6a4981c82a Applied a slightly modified version of a patch from Lode Leroy (bug
2006-04-21  Sven Neumann  <sven@gimp.org>

	Applied a slightly modified version of a patch from Lode Leroy
	(bug #336183):

	* app/base/gimphistogram.[ch]: added new function
	gimp_histogram_get_threshold() that returns an optimal
	binarization threshold.

	* app/tools/gimpthresholdtool.c: use the new function to
	initialize the Threshold tool.
2006-04-21 09:40:27 +00:00
Sven Neumann 48fda15424 changed if/else construct to have a final else statement so that the
compiler won't complain about possible uninitialized variables
2006-04-21 07:22:23 +00:00
Sven Neumann 090974f235 app/base/curves.c minor code cleanup, removed trailing whitespace.
2006-04-21  Sven Neumann  <sven@gimp.org>

	* app/base/curves.c
	* app/widgets/gimpsessioninfo.c: minor code cleanup, removed
	trailing whitespace.
2006-04-21 07:02:42 +00:00
Simon Budig 94431b4087 implemented a new interpolation for the "smooth" curve type. This fixes
2006-04-20  Simon Budig  <simon@gimp.org>

	* app/base/curves.c: implemented a new interpolation for the
	"smooth" curve type. This fixes the artefacts as described in
	bug #169078 although there definitely is room for improvement.

	This has an impact on the API as now the curves used by the
	gimp-curves-spline PDB call change. I do however believe, that
	the change is for good and the old behaviour was simply buggy.
2006-04-20 21:47:16 +00:00
Sven Neumann 6879c368ad sync parameter names with the declaration in the header file.
2006-04-18  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c (siox_drb): sync parameter names with the
	declaration in the header file.
2006-04-18 08:43:36 +00:00
Sven Neumann 049872b361 app/*.[ch] converted tabs to spaces.
2006-04-12  Sven Neumann  <sven@gimp.org>

	* app/*.[ch]
	* app/*/*.[ch]: converted tabs to spaces.
2006-04-12 12:49:29 +00:00
Sven Neumann ace029c120 removed forgotten debug output 2006-04-05 21:04:34 +00:00
Sven Neumann 7679f4adba minor code cleanup, renamed a function, declared some functions as static.
2006-04-05  Sven Neumann  <sven@gimp.org>

	* app/base/lut-funcs.[ch]: minor code cleanup, renamed a function,
	declared some functions as static.

	* app/core/gimpdrawable-equalize.c: changed accordingly.
2006-04-05 21:03:39 +00:00
Sven Neumann 0768628ac9 actually increment the tile counter used to limit the number of progress
2006-03-30  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c (siox_foreground_extract): actually increment
	the tile counter used to limit the number of progress updates.
2006-03-30 09:59:27 +00:00
Michael Natterer 2a227a1aee app/base/base-enums.h app/core/core-enums.h register some more enums.
2006-03-27  Michael Natterer  <mitch@gimp.org>

	* app/base/base-enums.h
	* app/core/core-enums.h
	* app/plug-in/plug-in-enums.h: register some more enums.

	* app/plug-in/Makefile.am: added rules to generate plug-in-enums.c

	* app/base/base-enums.c
	* app/core/core-enums.c
	* app/plug-in/plug-in-enums.c: (re)generated.
2006-03-27 13:49:19 +00:00
Sven Neumann 8ea4417192 applied changes from Kristian Jantz that improve the progress update from
2006-03-27  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c: applied changes from Kristian Jantz that
	improve the progress update from the SIOX routine.
2006-03-27 06:40:14 +00:00
Sven Neumann c4772aebd1 fixed the potential problem that the cache wouldn't have been cleared
2006-03-23  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c (siox_foreground_extract): fixed the potential
	problem that the cache wouldn't have been cleared correctly if
	both background and foreground areas are added at the same time.
2006-03-23 10:58:56 +00:00
Sven Neumann f5ba454874 fixed assertions and progress calculation.
2006-03-22  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c (siox_foreground_extract): fixed assertions and
	progress calculation.
2006-03-22 14:38:11 +00:00
Sven Neumann aab10d11d2 let the caller specify a region of interest. Call the progress function
2006-03-22  Sven Neumann  <sven@gimp.org>

	* app/base/siox.[ch] (siox_foreground_extract): let the caller
	specify a region of interest. Call the progress function more often.

	* app/core/gimpdrawable-foreground-extract.c
	(gimp_drawable_foreground_extract_siox): pass a region of interest
	to siox_foreground_extract() to speed up the SIOX tool.
2006-03-22 13:18:22 +00:00
Sven Neumann 212d9c7152 free the whole list instead of deleting it one element at a time.
2006-03-08  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c (find_max_blob): free the whole list instead of
	deleting it one element at a time.
2006-03-08 11:02:18 +00:00
Manish Singh 85b38140d9 app/base/cpu-accel.c app/composite/gimp-composite-3dnow.h
2006-02-27  Manish Singh  <yosh@gimp.org>

        * app/base/cpu-accel.c
        * app/composite/gimp-composite-3dnow.h
        * app/composite/gimp-composite-mmx.h
        * app/composite/gimp-composite-sse.h
        * app/composite/gimp-composite-sse2.h: check for __PIC__ in addition
        to PIC.
2006-02-28 06:34:16 +00:00
Simon Budig 78c41aa68f change the LUT function for the contrast. Fixes the buggy behaviour as
2006-02-24  Simon Budig  <simon@gimp.org>

	* app/base/lut-funcs.c: change the LUT function for the contrast.
	Fixes the buggy behaviour as described in bug #319872 and
	bug #332068 and makes the behaviour consistent with the standard
	contrast formula. However, I am leaving the bug open to discuss
	further improvements.

	Untabbified.
2006-02-24 01:04:48 +00:00
Raphael Quinet 7d8998a99c automatically removed trailing whitespace from 3460 lines.
2006-01-17  Raphael Quinet  <raphael@gimp.org>

	* (about 130 *.[ch] files): automatically removed trailing
	whitespace from 3460 lines.
2006-01-17 12:43:50 +00:00
jaycox b8752cd251 Fixed my email address in a dozen or so source files:
Fixed my email address in a dozen or so source files:
  modules/cdisplay_highcontrast.c
  libgimpbase/gimpparasite.c
  libgimpbase/gimpparasite.h
  libgimpmath/gimpmatrix.h
  libgimpmath/gimpmatrix.c
  app/core/gimpparasitelist.h
  app/core/gimpparasitelist.c
  app/base/gimphistogram.c
  app/base/gimphistogram.h
  app/base/gimplut.c
  app/base/gimplut.h
  app/base/pixel-processor.c
  app/base/pixel-processor.h
  app/core/gimp-parasites.c
  app/core/gimp-parasites.h
  app/core/gimpdrawable-histogram.c
  app/core/gimpdrawable-histogram.h
  app/core/gimpparasitelist.c
  app/core/gimpparasitelist.h
2006-01-12 00:50:44 +00:00
Sven Neumann c2b2573550 applied patch from Tobias Lenz that plugs a memleak and yields another
2006-01-07  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c: applied patch from Tobias Lenz that plugs a
	memleak and yields another small speedup.
2006-01-07 17:06:05 +00:00
Sven Neumann fa649f749c fixed compilation of experimental threaded tile-swapper. Fixes bug
2005-11-11  Sven Neumann  <sven@gimp.org>

	* app/base/tile-swap.c (tile_swap_default_in): fixed compilation
	of experimental threaded tile-swapper. Fixes bug #320977.
2005-11-11 14:28:30 +00:00
Sven Neumann 79ac6c0279 fixed buglet in siox code and renamed functions
* it.po: corrected translation that broke the gimp.desktop file.
2005-11-04 20:38:35 +00:00
Sven Neumann 2fb4908c40 applied a patch by Gerald Friedland that changes the code to clear the
2005-11-04  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c: applied a patch by Gerald Friedland that
	changes the code to clear the cache selectively instead of dumping
	it completely if the foreground or background area is changed.
2005-11-04 20:00:38 +00:00
Sven Neumann d5d9640f23 applied a patch by Tobias Lenz that makes use of the state that was added
2005-10-28  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c: applied a patch by Tobias Lenz that makes use
	of the state that was added to SIOX in order to speed up the tool.
2005-10-28 16:11:40 +00:00
Manish Singh b055ca66b5 declare mindistbg, mindistfg, and alpha float variables at the start of
2005-10-17  Manish Singh  <yosh@gimp.org>

        * app/base/siox.c (siox_drb): declare mindistbg, mindistfg, and alpha
        float variables at the start of the block.
2005-10-17 23:27:11 +00:00
Sven Neumann 40dbda9e9c app/base/base-enums.h app/base/siox.[ch]
2005-10-17  Sven Neumann  <sven@gimp.org>

	* app/base/base-enums.h
	* app/base/siox.[ch]
	* app/core/gimpdrawable-foreground-extract.[ch]
	* app/tools/gimpforegroundselecttool.[ch]: export stateful SIOX to
	the core API and use it from the foreground selection tool.
2005-10-17 18:23:31 +00:00
Sven Neumann 5a6bd93e5a app/base/base.c (base_init) create temp and swap directories using
2005-10-17  Sven Neumann  <sven@gimp.org>

	* app/base/base.c (base_init)
	* app/base/tile-swap.c (tile_swap_init): create temp and swap
	directories using g_mkdir_with_parents() (bug #308658).
2005-10-17 17:27:48 +00:00
Sven Neumann e98cd43eab app/base/base-types.h applied patch from Gerald Friedland that introduces
2005-10-12  Sven Neumann  <sven@gimp.org>

	* app/base/base-types.h
	* app/base/siox.[ch]: applied patch from Gerald Friedland that
	introduces a state to the SIOX operation.

	* app/core/gimpdrawable-foreground-extract.c: adapted to the new API.
2005-10-12 00:24:26 +00:00
Sven Neumann 4f873415da another optimization by Tobias Lenz.
2005-10-04  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c: another optimization by Tobias Lenz.
2005-10-04 17:54:13 +00:00
Sven Neumann ebe1c9f0f3 small optimization by Tobias Lenz.
2005-10-04  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c: small optimization by Tobias Lenz.
2005-10-04 11:08:28 +00:00
Sven Neumann c995db3ce0 app/base/tile-cache.c app/base/tile-manager.c app/base/tile-private.h
2005-09-29  Sven Neumann  <sven@gimp.org>

	* app/base/tile-cache.c
	* app/base/tile-manager.c
	* app/base/tile-private.h
	* app/base/tile-swap.c
	* app/base/tile.c: keep the data size of a tile in the Tile struct
	instead of recalculating it over and over again. Adds an overhead
	of 4 bytes per tile but speeds up the tile cache significantly.
2005-09-29 22:24:57 +00:00
Sven Neumann b3a7108d07 optimizations by Tobias Lenz.
2005-09-29  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c: optimizations by Tobias Lenz.
2005-09-29 19:29:44 +00:00
Sven Neumann 4664409370 minor code cleanups by Tobias Lenz.
2005-09-27  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c: minor code cleanups by Tobias Lenz.
2005-09-27 21:30:42 +00:00
Sven Neumann d43c5c0774 applied patch from Gerald Friedland and Tobias Lenz. Introduces a hash
2005-09-25  Sven Neumann  <sven@gimp.org>

	* app/base/siox.[ch]: applied patch from Gerald Friedland and
	Tobias Lenz. Introduces a hash table to speed up the algorithm
	and changes the post-processing so that multiple disjunct objects
	can be selected.

	* app/tools/gimpforegroundselecttool.c: changed tooltip, the tool
	doesn't any longer extract single objects only.
2005-09-25 21:29:17 +00:00
Hans Breuer 0b515bec9b updated
2005-09-24  Hans Breuer  <hans@breuer.org>

	* **makefile.msc : updated

	* app/dialogs/user-install-dialog.c : only add the migrate page if
	there is something to migrate from. Avoids on version being NULL.

	* app/dialogs/file-save-dialog.c : the g_print() output was crashing
	on the assumption that ->menu_label != NULL. It is for colorhtml.py.

	* app/widgets/gimpselectiondata.c : use HAVE_UNISTD_H and move
	* process.h definition by G_OS_WIN32 below it being defined
	* app/widgets/gimpwidgets-utils.c(gimp_window_get_native) : cast
	return value to (GdkNativeWindow) it is not necessary an int.

	* libgimpwidgets/gimpwidgets.def : added gimp_zoom_type_get_type

	* plug-ins/help/gimp-help-lookup.c : dynamic lookup of help_root
	instead of hard-coding DATADIR/GIMP_HELP_PREFIX

	* plug-ins/xjt/xjt.c : there is no pid_t with msvc, typedef one.
2005-09-25 19:30:55 +00:00
Michael Natterer 874c832a8c do new_size calculation only when needed.
2005-09-03  Michael Natterer  <mitch@gimp.org>

	* app/base/temp-buf.c (temp_buf_resize): do new_size calculation
	only when needed.
2005-09-03 21:56:07 +00:00
Michael Natterer 34975e19b2 s/row_stride/rowstride/g.
2005-09-03  Michael Natterer  <mitch@gimp.org>

	* app/base/pixel-surround.c: s/row_stride/rowstride/g.
2005-09-03 19:03:53 +00:00
Michael Natterer 09454fb2a4 some general cleanup.
2005-09-03  Michael Natterer  <mitch@gimp.org>

	* app/base/pixel-region.[ch]: some general cleanup.

	(pixel_region_init_temp_buf)
	(pixel_region_init_data): new functions which initialize pixel
	regions on TempBufs and on raw contiguous arrays of pixel data.

	(pixel_region_configure): fixed a bug that has probably been there
	forever: when processing contiguous (non-tiled) data, interpret
	the original x and y coordinates of the region as offsets into
	the data. Before this fix, the initial x and y were simply ignored
	(by using them in a broken way), thus always forcing the upper
	left corner of the region being the beginning of the passed data.

	Lots of code was working around this problem by setting the
	pixel_region's data pointer to the proper starting pixel of the
	region in the middle the buffer.

	* libgimp/gimppixelrgn.c: some general cleanup.

	(gimp_pixel_rgn_configure): same fix as above. Fortunately, nobody
	seems to know that libgimp pixel regions can be used on arrays of
	data, just as core ones. Only two plug-ins were using this
	feature, and they are antique and written by spencer and federico,
	respectively. They both don't use offsets into the buffers and are
	not affected by this change. It's highly unlikely that anybody out
	there knows/uses this feature, so it can IMHO be safely changed.

	* app/base/temp-buf.c
	* app/core/gimpbuffer.c
	* app/core/gimpdrawable-combine.c
	* app/core/gimpdrawable-preview.c
	* app/core/gimpimage-preview.c
	* app/core/gimplayer.c
	* app/paint/gimpbrushcore.c
	* app/paint/gimpclone.c
	* app/paint/gimpconvolve.c
	* app/paint/gimpdodgeburn.c
	* app/paint/gimppaintcore.c
	* app/paint/gimpsmudge.c
	* app/tools/gimpiscissorstool.c
	* app/tools/gimppainttool.c: use the pixel_region_init_foo()
	functions instead of initializing regions of TempBufs and raw data
	manually. Removed lots of workarounds for the broken offset
	handling. The changed places of code are much more readable now.
2005-09-03 17:16:58 +00:00
Sven Neumann dc8bdb4fa1 app/base/siox.[ch] fixed API docs.
2005-08-25  Sven Neumann  <sven@gimp.org>

	* app/base/siox.[ch]
	* app/core/gimpscanconvert.c: fixed API docs.

2005-08-25  Sven Neumann  <sven@gimp.org>

	* app/app-sections.txt
	* app/app.types: minor updates.

	* libgimpbase/tmpl/gimputils.sgml: regenerated.
2005-08-25 16:52:46 +00:00
Sven Neumann 5ea47e3126 minor optimizations.
2005-08-23  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c: minor optimizations.

	* app/actions/gradients-actions.c
	* app/actions/patterns-actions.c
	* plug-ins/metadata/interface.c: applied patch from Stephan Binner
	that fixes wrong use of ellipsis (bug #309657).
2005-08-22 23:30:23 +00:00
Michael Natterer eb69eb49dc even more cleanup, replaced informal comments by API docs.
2005-08-20  Michael Natterer  <mitch@gimp.org>

	* app/base/boundary.[ch]: even more cleanup, replaced informal
	comments by API docs.
2005-08-20 17:25:19 +00:00
Michael Natterer 4fb1743f55 renamed puclic functions, defines and enums to live in a proper "boundary"
2005-08-20  Michael Natterer  <mitch@gimp.org>

	* app/base/boundary.[ch]: renamed puclic functions, defines and
	enums to live in a proper "boundary" namespace. Cleaned up and
	simplified internal code even more.

	* app/core/gimpchannel.c
	* app/core/gimpdrawable-stroke.c
	* app/core/gimplayer-floating-sel.c
	* app/paint/gimppaintcore-stroke.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpfuzzyselecttool.c
	* app/tools/gimppainttool.c: changed accordingly.
2005-08-20 15:46:37 +00:00
Michael Natterer e923e0a595 rename local "ns" variables to "num_segs" now that the global "num_segs"
2005-08-20  Michael Natterer  <mitch@gimp.org>

	* app/base/boundary.c: rename local "ns" variables to "num_segs"
	now that the global "num_segs" is gone.
2005-08-20 12:44:01 +00:00
Michael Natterer d78fa5482d moved the entire internal state of boundary creation and simplification
2005-08-20  Michael Natterer  <mitch@gimp.org>

	* app/base/boundary.c: moved the entire internal state of boundary
	creation and simplification from <eek>global variables</eek> to a
	new "Boundary" struct that needs to be newly allocated for each
	boundary. Yes this allocates and frees memory more often than
	before but the old code was simply one big eek.
2005-08-20 12:35:54 +00:00
Michael Natterer d0309947f8 look at the passed "ns" variable instead of at the global "num_segs" one
2005-08-20  Michael Natterer  <mitch@gimp.org>

	* app/base/boundary.c (sort_boundary): look at the passed "ns"
	variable instead of at the global "num_segs" one to figure if the
	passed array of BoundSegs is empty. Fixes bug #313922 at its root.
2005-08-20 12:22:31 +00:00
Sven Neumann 465aa7a7c5 fixed initialization of row array.
2005-08-17  Sven Neumann  <sven@gimp.org>

	* app/paint-funcs/paint-funcs.c (smooth_region): fixed
	initialization of row array.

	* app/base/siox.c: minor cleanups.
2005-08-17 15:38:43 +00:00
Sven Neumann e91e1ad5d8 applied patch by Kristian Jantz. Reimplements find_max_blob() so that it
2005-08-17  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c: applied patch by Kristian Jantz. Reimplements
	find_max_blob() so that it needs less memory. Slows things down a
	bit, but that can be improved later.
2005-08-17 11:05:34 +00:00
Sven Neumann ce8dcfb497 app/base/siox.[ch] app/core/gimpdrawable-foreground-extract.[ch]
2005-08-09  Sven Neumann  <sven@gimp.org>

	* app/base/siox.[ch]
	* app/core/gimpdrawable-foreground-extract.[ch]
	* app/tools/gimpforegroundselectoptions.[ch]
	* app/tools/gimpforegroundselecttool.c: renamed Granularity to
	Color Sensitivity, both in the GUI and in the APIs.
2005-08-09 20:43:44 +00:00
Sven Neumann 6f386794b7 optimized further.
2005-08-08  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c (find_max_blob): optimized further.
2005-08-08 18:31:28 +00:00
Sven Neumann 651aca218a added another call to gimp_progress_update().
2005-08-08  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c: added another call to gimp_progress_update().

	* app/core/gimp.c (gimp_init): fixed harmless cut-n-paste error.
2005-08-08 17:38:25 +00:00
Sven Neumann 5c6b8e9f79 added the possibility to specify a clip rectangle.
2005-08-08  Sven Neumann  <sven@gimp.org>

	* app/core/gimpscanconvert.[ch]: added the possibility to specify
	a clip rectangle.

	* app/base/siox.c (find_max_blob): use g_try_malloc().
2005-08-08 12:05:54 +00:00
Sven Neumann 64614aa4fd optimizations.
2005-08-08  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c (find_max_blob): optimizations.
2005-08-08 04:49:44 +00:00
Sven Neumann 3f9144e534 fixed for offsetted regions. Do thresholding as part of find_max_blob().
2005-08-08  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c (find_max_blob): fixed for offsetted regions.
	Do thresholding as part of find_max_blob().
2005-08-08 04:17:41 +00:00
Sven Neumann eb6268e53b fixed for offsetted regions.
2005-08-08  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c (find_max_blob): fixed for offsetted regions.
2005-08-08 03:41:02 +00:00
Sven Neumann a72b704ebf check boundary conditions before pushing a pixel to the queue.
2005-08-08  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c (find_max_blob): check boundary conditions
	before pushing a pixel to the queue.
2005-08-08 01:27:11 +00:00
Sven Neumann 822a8a1f14 cosmetics 2005-08-08 00:31:55 +00:00
Sven Neumann e17b69fe43 made variables more local to make the code easier to read and to optimize.
2005-08-07  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c: made variables more local to make the code
	easier to read and to optimize.
2005-08-07 20:20:53 +00:00
Sven Neumann 37307dcb15 more micro optimizations 2005-08-07 16:32:32 +00:00
Sven Neumann f4893406ef micro optimizations.
2005-08-07  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c (siox_foreground_extract): micro optimizations.
2005-08-07 16:07:32 +00:00
Sven Neumann 46bc22c7ff reordered parameters to match the order of parameters in
2005-08-06  Sven Neumann  <sven@gimp.org>

	* app/base/siox.[ch]: reordered parameters to match the order of
	parameters in gimp_drawable_foreground_extract_siox().

	* app/core/gimpdrawable-foreground-extract.c: changed accordingly.

	* app/tools/gimpforegroundselectoptions.[ch]: draw slider value to
	the right.

	* app/tools/gimpfreeselecttool.[ch]: added
	gimp_free_select_tool_select() to calls the virtual select() method.

	* app/tools/gimpforegroundselecttool.[ch]: queue an idle select if
	the smoothness or granularity values change in the tool options.
2005-08-06 20:01:22 +00:00
Sven Neumann d670b0e11e app/base/siox.[ch] expose all parameters of the SIOX algorithm. Provide
2005-08-06  Sven Neumann  <sven@gimp.org>

	* app/base/siox.[ch]
	* app/core/gimpdrawable-foreground-extract.[ch]: expose all
	parameters of the SIOX algorithm. Provide default values.

	* app/tools/gimpforegroundselectoptions.[ch]: added properties and
	user interface for all SIOX parameters.

	* app/tools/gimpforegroundselecttool.c: changed accordingly.

2005-08-06  Sven Neumann  <sven@gimp.org>

	* plug-ins/benchmark-foreground-extract.py: pass run-mode to PDB
	calls.
2005-08-06 19:08:43 +00:00
Sven Neumann 3c8a10e925 app/base/siox.c moved rectangle intersection into
2005-08-06  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c
	* app/core/gimpdrawable-foreground-extract.c: moved rectangle
	intersection into gimp_drawable_foreground_extract().
2005-08-06 15:09:31 +00:00
Sven Neumann 71785ac8cd canonicalize hardcoded procedure names.
2005-08-06  Sven Neumann  <sven@gimp.org>

	* app/batch.c: canonicalize hardcoded procedure names.

	* app/base/siox.[ch]
	* app/core/gimpdrawable-foreground-extract.[ch]
	* app/tools/gimpforegroundselecttool.c: restrict the working area
	to the double of the bounding box of the initial selection.
2005-08-06 00:51:22 +00:00
Sven Neumann 4f870bc132 deprecated RGB intensity functions and definitions. These coefficients do
2005-08-03  Sven Neumann  <sven@gimp.org>

	* libgimpcolor/gimprgb.[ch]: deprecated RGB intensity functions
	and definitions. These coefficients do not accurately compute
	luminance for contemporary monitors. Instead the coefficients from
	the sRGB spec should be used which have now been added.

	* libgimpcolor/gimpcolor.def: updated.

	* libgimp/gimpdrawable.c
	* libgimp/gimppixelfetcher.c
	* app/base/colorize.c
	* app/base/levels.c
	* app/base/temp-buf.c
	* app/core/gimpdrawable-blend.c
	* app/core/gimpdrawable-convert.c
	* app/core/gimpdrawable-desaturate.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimage.c
	* app/gui/splash.c
	* app/widgets/gimpgradienteditor.c
	* modules/colorsel_triangle.c
	* plug-ins/common/aa.c
	* plug-ins/common/bumpmap.c
	* plug-ins/common/colorify.c
	* plug-ins/common/despeckle.c
	* plug-ins/common/displace.c
	* plug-ins/common/engrave.c
	* plug-ins/common/gradmap.c
	* plug-ins/common/grid.c
	* plug-ins/common/mng.c
	* plug-ins/common/newsprint.c
	* plug-ins/common/png.c
	* plug-ins/common/whirlpinch.c
	* plug-ins/gflare/gflare.c
	* plug-ins/gfli/gfli.c
	* plug-ins/maze/handy.c
	* plug-ins/pagecurl/pagecurl.c: use gimp_rgb_luminance() and
	friends instead of the deprecated intensity functions.
2005-08-03 00:36:41 +00:00
Sven Neumann 26eecddbdc loop unrolling.
2005-07-30  Sven Neumann  <sven@gimp.org>

	* app/base/gimphistogram.c (gimp_histogram_calculate_sub_region):
	loop unrolling.

	* app/dialogs/about-dialog.c
	* app/widgets/gimpselectiondata.c
	* plug-ins/bmp/bmpread.c (ReadBMP)
	* plug-ins/gfig/gfig.c (gfig_load)
	* plug-ins/imagemap/imap_preview.c
	* plug-ins/imagemap/imap_selection.c
	* plug-ins/jpeg/jpeg-exif.c
	* plug-ins/common/dicom.c: fixed signedness warnings.
2005-07-30 14:05:57 +00:00
Sven Neumann 2300e2b743 increase the size of the swap file in chunks of 16MB instead of only
2005-07-30  Sven Neumann  <sven@gimp.org>

	* app/base/tile-swap.c: increase the size of the swap file in
	chunks of 16MB instead of only 256KB. Check the return value of
	ftruncate().
2005-07-30 00:33:57 +00:00
Sven Neumann a026524412 app/base/siox.[ch] pass progress_callback and progress_data to
2005-07-29  Sven Neumann  <sven@gimp.org>

	* app/base/siox.[ch]
	* app/core/gimpdrawable-foreground-extract.c: pass progress_callback
	and progress_data to siox_foreground_extract().
2005-07-29 16:09:16 +00:00
Sven Neumann 9dfb56a435 keep a tail pointer. Speeds up the benchmark by about 50%.
2005-07-29  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c (add_to_list): keep a tail pointer. Speeds up
	the benchmark by about 50%.
2005-07-29 15:25:20 +00:00
Sven Neumann fde49937b3 minor cleanup.
2005-07-29  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c (siox_foreground_extract): minor cleanup.
2005-07-28 23:40:00 +00:00
Sven Neumann b82d4c46c7 accept an offset between pixels and mask, work only on the intersection
2005-07-28  Sven Neumann  <sven@gimp.org>

	* app/base/siox.[ch]: accept an offset between pixels and mask,
	work only on the intersection rectangle.

	* app/core/gimpdrawable-foreground-extract.c: pass the drawable
	offsets to siox_foreground_extract().
2005-07-28 20:12:16 +00:00
Sven Neumann 55f7b68c23 allow to enable some debug output.
2005-07-28  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c: allow to enable some debug output.
2005-07-28 00:18:39 +00:00
Sven Neumann d429a944db app/core/Makefile.am moved cpercep from here ...
2005-07-28  Sven Neumann  <sven@gimp.org>

	* app/core/Makefile.am
	* app/core/cpercep.[ch]: moved cpercep from here ...

	* app/base/Makefile.am
	* app/base/cpercep.[ch]: ... to here.

	* app/base/siox.[ch]: use the cpercep routines for RGB->LAB
	conversion, gives a 20% speedup. Removed normalization which seems
	redundant. Make it work for grayscale and indexed, not only RGB.

	* app/core/gimpdrawable-foreground-extract.c
	* app/core/gimpimage-convert.c: changed accordingly.
2005-07-27 22:52:34 +00:00
Sven Neumann b8725f4878 added comments about possible improvements.
2005-07-16  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c: added comments about possible improvements.
2005-07-16 00:00:11 +00:00
Sven Neumann 395c6dbf70 fixed implementations.
2005-07-15  Sven Neumann  <sven@gimp.org>

	* app/paint-funcs/paint-funcs.c (erode_region) (dilate_region):
	fixed implementations.
2005-07-15 19:07:38 +00:00
Sven Neumann 74bb5d998b formatting 2005-07-14 16:26:26 +00:00
Sven Neumann 2566531777 added erode_region() and dilate_region() 2005-07-14 15:40:19 +00:00
Sven Neumann c6ea42505b changed some more places from segmentator to siox 2005-07-13 19:37:27 +00:00
Sven Neumann 70aa10cef7 app/base/Makefile.am renamed to siox.[ch].
2005-07-13  Sven Neumann  <sven@gimp.org>

	* app/base/Makefile.am
	* app/base/segmentator.[ch]: renamed to siox.[ch].

	* app/base/siox.[ch]: added API docs and a link to the algorithm's
	new homepage. Removed unused code.

	* app/core/gimpdrawable-foreground-extract.c: changed accordingly.
2005-07-13 19:30:25 +00:00
Sven Neumann fbd53c511b added smooth_region(), a simple convolution filter to smooth a mask.
2005-07-13  Sven Neumann  <sven@gimp.org>

	* app/paint-funcs/paint-funcs.[ch]: added smooth_region(), a
	simple convolution filter to smooth a mask.

	* app/base/segmentator.c (smooth_mask): use the new function.
2005-07-13 17:27:37 +00:00
Sven Neumann 1aae154af7 for now, implement smooth_mask() by means of gaussian_blur_region().
2005-07-11  Sven Neumann  <sven@gimp.org>

	* app/base/segmentator.c: for now, implement smooth_mask() by
	means of gaussian_blur_region().
2005-07-11 21:03:10 +00:00
Hans Breuer d9ac028c50 updated dont include "gimpmessagedialog.c" to avoid redefinitions. Instead
2005-07-10  Hans Breuer  <hans@breuer.org>

	* **/makefile.msc app/gimpcore.def : updated
	* app/widgets/gimpcontrollerlist.c : dont include
	"gimpmessagedialog.c" to avoid redefinitions.
	Instead include gimpmessagebox.h and gimpmessagedialog.h

	* plug-ins/common/raw.c : include <io.h>
	* plug-ins/common/screenshot.c : make it compile. It
	still has no code to actually work on win32.
2005-07-10 16:24:57 +00:00
Sven Neumann f2382a6ef6 ported to GIMP data structures. There are still some TODOs, smooth_mask()
2005-07-10  Sven Neumann  <sven@gimp.org>

	* app/base/segmentator.[ch]: ported to GIMP data structures. There
	are still some TODOs, smooth_mask() isn't implemented yet.

	* app/core/Makefile.am
	* app/core/gimpdrawable-foreground-extract.[ch]: thin wrapper around
	the new segmentation algorithm.

	* tools/pdbgen/pdb/drawable.pdb: added a first draft of a PDB API
	for foreground extraction.

	* app/pdb/drawable_cmds.c
	* app/pdb/internal_procs.c
	* libgimp/gimpdrawable_pdb.[ch]: regenerated.
2005-07-09 22:44:26 +00:00
Sven Neumann 841144efbd formatting.
2005-07-09  Sven Neumann  <sven@gimp.org>

	* app/base/pixel-surround.[ch]: formatting.
2005-07-09 12:04:23 +00:00
Sven Neumann d34180d5a0 temporarily added uint->RGB conversion for Java byteorder 2005-07-08 23:58:45 +00:00
Sven Neumann 6248b954db plugged memory leaks.
2005-07-09  Sven Neumann  <sven@gimp.org>

	* app/base/segmentator.c: plugged memory leaks.
2005-07-08 22:33:18 +00:00
Sven Neumann edc6dc95e6 minor cleanup, use a GQueue instead of a custom queue implementation.
2005-07-08  Sven Neumann  <sven@gimp.org>

	* app/base/segmentator.c: minor cleanup, use a GQueue instead of a
	custom queue implementation.
2005-07-08 21:24:55 +00:00
Sven Neumann 447ee79608 minor cleanup.
2005-07-08  Sven Neumann  <sven@gimp.org>

	* app/base/segmentator.c: minor cleanup.
2005-07-08 19:42:29 +00:00
Sven Neumann bc170c2e2c applied GIMP coding style, switch to glib functions for memory allocation.
2005-07-08  Sven Neumann  <sven@gimp.org>

	* app/base/segmentator.[ch]: applied GIMP coding style, switch to
	glib functions for memory allocation.
2005-07-07 23:48:58 +00:00
Sven Neumann 3b8751e5c9 app/base/Makefile.am added foreground extraction algorithm. This code is
2005-07-08  Sven Neumann  <sven@gimp.org>

	* app/base/Makefile.am
	* app/base/segmentator.[ch]: added foreground extraction
	algorithm.  This code is contributed by Gerald Friedland. Please
	see the comments in the code for links to further information.
	This is work in progress. Don't expect it to do anything yet.
2005-07-07 23:45:38 +00:00
Sven Neumann fb88e8676b it's too early for this yet 2005-07-06 01:30:29 +00:00
Sven Neumann c5dd18497d reverted previous change, it was bogus.
2005-07-06  Sven Neumann  <sven@gimp.org>

	* app/plug-in/plug-ins-query.c (match_strings): reverted previous
	change, it was bogus.

	* app/pdb/procedural-db-query.c: case-insensitive search for
	procedures.
2005-07-06 01:29:14 +00:00
Sven Neumann 9e8ee610d4 renamed cpercep_init_conversions() to cpercep_init(); only initialize the
2005-07-05  Sven Neumann  <sven@gimp.org>

	* app/core/cpercep.[ch]: renamed cpercep_init_conversions() to
	cpercep_init(); only initialize the tables on the first call.

	* app/core/gimpimage-convert.c: changed accordingly.
2005-07-05 10:52:31 +00:00
Sven Neumann c1363db8c0 Removed "stingy-memory-use" all over the place. This feature was really
2005-06-08  Sven Neumann  <sven@gimp.org>

	Removed "stingy-memory-use" all over the place. This feature was
	really not that useful anymore. The GUI for the preference option
	was already removed for GIMP 2.2.  Fixes bug #306617.

	* app/config/gimpbaseconfig.[ch]: set IGNORE flag on
	"stingy-memory-use".

	* app/config/gimpcoreconfig.h: added a comment that the
	font_path_writable variable is unused.

	* app/base/temp-buf.[ch]: removed code that used to deal with
	swapping temp-bufs to disk.

	* app/base/base.c: made base_config a static variable.

	* app/core/gimpdata.[ch]
	* app/core/gimpdatafactory.[ch]: removed stingy_memory_use
	parameter from data construction methods.

	* app/core/gimp-gradients.c
	* app/core/gimpbrush-load.[ch]
	* app/core/gimpbrush.[ch]
	* app/core/gimpbrushgenerated.[ch]
	* app/core/gimpbrushpipe.[ch]
	* app/core/gimpcontext.c
	* app/core/gimpgradient-load.[ch]
	* app/core/gimpgradient.[ch]
	* app/core/gimppalette-import.c
	* app/core/gimppalette.[ch]
	* app/core/gimppattern.[ch]: changed accordingly.
2005-06-08 11:27:31 +00:00
Manish Singh 3e7aaa368c detect SSE3.
2005-06-07  Manish Singh  <yosh@gimp.org>

        * app/base/cpu-accel.[ch]: detect SSE3.
2005-06-07 07:10:22 +00:00
Sven Neumann 3bb2f79984 inline tile_manager_get_tile_num().
2005-05-09  Sven Neumann  <sven@gimp.org>

	* app/base/tile-manager.c: inline tile_manager_get_tile_num().

	* app/display/gimpdisplayshell-render.c (render_image_tile_fault):
	reverted one of the changes I did here earlier.
2005-05-08 23:30:54 +00:00
Sven Neumann 001bd33231 some code cleanup.
2005-05-08  Sven Neumann  <sven@gimp.org>

	* app/base/tile-manager.[ch]: some code cleanup.
2005-05-08 20:24:54 +00:00
Sven Neumann 928b4f23a6 removed redundant check.
2005-04-27  Sven Neumann  <sven@gimp.org>

	* app/base/tile-manager.c (tile_manager_get_tile): removed
	redundant check.

	* app/display/gimpdisplayshell-render.c: don't access the next
	tile if we are at the end of the render loop anyway.
2005-04-27 17:53:10 +00:00
Sven Neumann 2556233e5a removed the local pid_t variable and the msvc definition for it.
2005-04-24  Sven Neumann  <sven@gimp.org>

	* app/base/temp-buf.c (generate_unique_tmp_filename): removed the
	local pid_t variable and the msvc definition for it.
2005-04-24 16:09:25 +00:00
Hans Breuer 28a2b13581 build menus with nmake, too menus/Makefile.am : added to EXTRA_DIST
2005-04-24  Hans Breuer  <hans@breuer.org>

	* menus/makefile.msc : build menus with nmake, too
	  menus/Makefile.am : added to EXTRA_DIST

	* **/makefile.msc app/gimpcore.def : updated

	* app/base/tmp-buf.c : there is no pid_t with msvc so typedef one
2005-04-24 15:39:15 +00:00
Sven Neumann eb236f7c78 gimpwin32-io.h already includes io.h 2005-04-07 22:19:58 +00:00
Sven Neumann c24c79d05a include libgimpbase/gimpwin32-io.h.
2005-04-08  Sven Neumann  <sven@gimp.org>

	* app/base/base.c: include libgimpbase/gimpwin32-io.h.
2005-04-07 22:18:13 +00:00
Sven Neumann 333593daf4 changed GimpConfig utility functions to take GObject variables instead of
2005-04-07  Sven Neumann  <sven@gimp.org>

	* libgimpconfig/gimpconfig-utils.[ch]: changed GimpConfig utility
	functions to take GObject variables instead of GimpConfig. There's
	nothing GimpConfig specific about these utilities.

	* app/actions/templates-commands.c
	* app/actions/tool-options-commands.c
	* app/base/base.c
	* app/config/gimpcoreconfig.c
	* app/config/gimpdisplayconfig.c
	* app/config/gimprc.c
	* app/core/gimpimage-grid.c
	* app/core/gimpimage-new.c
	* app/core/gimpstrokedesc.c
	* app/dialogs/grid-dialog.c
	* app/dialogs/image-new-dialog.c
	* app/dialogs/stroke-dialog.c
	* app/display/gimpdisplayshell.c
	* app/text/gimptextlayer.c
	* app/text/gimptextundo.c
	* app/tools/gimptextoptions.c
	* libgimpconfig/gimpconfig-iface.c: changed accordingly.
2005-04-07 10:05:54 +00:00
Sven Neumann 7647db537b added new function to reset a single property to its default value.
2005-04-06  Sven Neumann  <sven@gimp.org>

	* libgimpconfig/gimpconfig-utils.[ch]: added new function to reset
	a single property to its default value.

	* libgimpconfig/gimpconfig.def: updated.

	* app/config/gimpbaseconfig.[ch]: reverted last change.

	* app/base/base.c: use gimp_config_reset_property() instead.
2005-04-06 21:37:40 +00:00
Sven Neumann e79099db0d declare default_value as const and allocate a copy.
2005-04-06  Sven Neumann  <sven@gimp.org>

	* libgimpconfig/gimpconfig-path.[ch] (gimp_param_spec_config_path):
	declare default_value as const and allocate a copy.

	* app/config/gimpbaseconfig.[ch]: gives access to the default values
	for temp and swap path.

	* app/base/base.c (base_init): create the temp directory if it
	doesn't exist (bug #172682).

	* plug-ins/uri/uri-backend-gnomevfs.c: fixed path in error message.
2005-04-06 15:14:57 +00:00
Sven Neumann 0ad939a46f create the swap directory if it doesn't exist. Will still fail if the
2005-03-23  Sven Neumann  <sven@gimp.org>

	* app/base/tile-swap.c (tile_swap_init): create the swap directory
	if it doesn't exist. Will still fail if the parent directory is not
	available. Still good enough to close bug #167506.

	* app/app_procs.c: tweaked error message.
2005-03-22 23:20:56 +00:00
Sven Neumann 2c9a2505e5 fixed checks for uncalculated histogram. Fixes bug #170570.
2005-03-16  Sven Neumann  <sven@gimp.org>

	* app/base/gimphistogram.c: fixed checks for uncalculated histogram.
	Fixes bug #170570.
2005-03-16 15:52:13 +00:00
Sven Neumann 0be6452917 app/base/hue-saturation.[ch] applied a patch from Joao S. O. Bueno
2005-03-12  Sven Neumann  <sven@gimp.org>

	* app/base/hue-saturation.[ch]
	* app/tools/gimphuesaturationtool.[ch]: applied a patch from Joao
	S. O. Bueno Calligaris and modified it a little. This adds a way
	to control the overlap between hue ranges in the Hue Saturation
	tool (bug #166628).
2005-03-12 12:25:57 +00:00
Manish Singh 9a263bb917 revised tests for AltiVec. Define ALTIVEC_EXTRA_CFLAGS for the extra
2003-03-06  Manish Singh  <yosh@gimp.org>

        * configure.in: revised tests for AltiVec. Define ALTIVEC_EXTRA_CFLAGS
        for the extra compiler options needed. Also, support runtime checking
        for AltiVec through the sysctl on Mac OS X, instead of SIGILL assembly
        instruction checking, which needs GNU as.

        * app/base/cpu_accel.c: use the sysctl if available.

        * app/composite/Makefile.am: use ALTIVEC_EXTRA_CFLAGS.

        * app/composite/gimp-composite-altivec.c: conditionally #include
        altivec.h
2005-03-06 08:43:25 +00:00
Sven Neumann 8491401fa6 minor code cleanup.
2005-03-03  Sven Neumann  <sven@gimp.org>

	* app/base/curves.c: minor code cleanup.
2005-03-03 11:40:37 +00:00
Daniel Egger 0add60298a app/base/Makefile.am app/composite/*akefile.am app/config/*akefile.am
2005-02-27  Daniel Egger  <de@axiros.com>

	* app/base/Makefile.am
	* app/composite/*akefile.am
	* app/config/*akefile.am
	* app/core/*akefile.am
	* app/display/*akefile.am
	* app/file/*akefile.am
	* app/paint-funcs/*akefile.am
	* app/pdb/*akefile.am
	* app/plug-in/*akefile.am
	* app/text/*akefile.am
	* app/tools/*akefile.am
	* app/vectors/*akefile.am
	* app/xcf/*akefile.am: Commonized include paths to always look
	in the builddir also to cater for srcdir != builddir builds.
2005-02-27 13:22:01 +00:00
Sven Neumann 79788b7dad obtain a lock on the pool mutex while signalling the termination
2005-02-26  Sven Neumann  <sven@gimp.org>

	* app/base/pixel-processor.c (do_parallel_regions): obtain a lock
	on the pool mutex while signalling the termination condition.
2005-02-26 11:55:52 +00:00
Sven Neumann 3992f138ec fixed indentation.
2005-02-25  Sven Neumann  <sven@gimp.org>

	* app/base/pixel-processor.c: fixed indentation.
2005-02-25 11:54:18 +00:00
Jay Cox 3f532376e8 > > * app/base/pixel-processor.c: fixed potential race condition on >
2005-02-24  Jay Cox  <jaycox@gimp.org>
>
>       * app/base/pixel-processor.c: fixed potential race condition on
>       processor->threads.  Changed mutex to a GMutex from a GStaticMutex
>       because it needs to me initialized anyway.  Placed g_cond_wait
>       calls inside while loops to handle g_cond_wait returning prematurely.
2005-02-24 22:58:02 +00:00
Sven Neumann 7827c1dd88 better error reporting.
2005-02-20  Sven Neumann  <sven@gimp.org>

	* app/base/pixel-processor.c: better error reporting.
2005-02-20 21:14:06 +00:00
Hans Breuer c6f63ea4e1 TILE_WIDTH is used unconditionally so always include "tile.h" WIN32 needs
2005-02-19  Hans Breuer  <hans@breuer.org>

	* app/base/pixel-processor.c : TILE_WIDTH is used unconditionally
	so always include "tile.h"
	* app/base/tile-swap.c : WIN32 needs <process.h> for _getpid()

	* app/dialogs/user-install-dialog.c : include gimpwin32-io.h
	* libgimpbase/gimpwin32-io.h : there are no group or other
	flags in msvcrt, define S_IGRP etc in terms of _S_IREAD etc

	* plug-ins/script-fu/script-fu.c plug-ins/script-fu/siod-wrapper.c :
	no script-fu server on win32, make respective function calls conditional

	* libgimpconfig/makefile.msc : new file
	* **/makefile.msc app/gimpcore.def : updated, gimp builds
	and runs once more with ms toolchain
2005-02-19 00:50:36 +00:00
Sven Neumann 386731d6d4 switched to using a thread pool. Enables the progress callback for the
2005-02-16  Sven Neumann  <sven@gimp.org>

	* app/base/pixel-processor.c: switched to using a thread pool.
	Enables the progress callback for the threaded case.
2005-02-16 21:24:13 +00:00
Sven Neumann 82a5329fbf added a variant of pixel_regions_process_parallel() that takes a progress
2005-02-16  Sven Neumann  <sven@gimp.org>

	* app/base/pixel-processor.[ch]: added a variant of
	pixel_regions_process_parallel() that takes a progress callback and
	progress data. Does only work for the single-threaded case yet.

	* app/core/gimpdrawable-blend.c (gradient_fill_region): parallelized.
2005-02-16 14:54:56 +00:00
Sven Neumann 51710aa378 changed GimpImageMapApplyFunc to be compatible with PixelProcessorFunc.
2005-02-15  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimagemap.[ch]: changed GimpImageMapApplyFunc to
	be compatible with PixelProcessorFunc.

	* app/base/color-balance.[ch]
	* app/base/colorize.[ch]
	* app/base/gimplut.[ch]
	* app/base/hue-saturation.[ch]
	* app/base/threshold.[ch]: removed wrappers that used to
	shift parameters around to match GimpImageMapApplyFunc and
	PixelProcessorFunc signatures.

	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpposterizetool.c
	* app/tools/gimpthresholdtool.c: changed accordingly.

	* tools/pdbgen/pdb/color.pdb: use pixel_region_process_parallel()
	for all color operations.

	* app/pdb/color_cmds.c: regenerated.
2005-02-15 15:39:27 +00:00
Sven Neumann 8c245456f2 allocate histogram slots in one large block instead of multiple smaller
2005-02-14  Sven Neumann  <sven@gimp.org>

	* app/base/gimphistogram.c: allocate histogram slots in one large
	block instead of multiple smaller chunks. Hide pointer arithmetic
	in macros.
2005-02-14 17:45:35 +00:00
Sven Neumann 569dc824cc simplified the code and avoid excessive memory allocations for the
2005-02-14  Sven Neumann  <sven@gimp.org>

	* app/base/gimphistogram.c: simplified the code and avoid
	excessive memory allocations for the threaded case.
2005-02-14 01:33:14 +00:00
Sven Neumann 1cb9714f02 allocate temporary histogram slots on demand and provide an array with
2005-02-14  Sven Neumann  <sven@gimp.org>

	* app/base/gimphistogram.[ch]: allocate temporary histogram slots
	on demand and provide an array with enough slots for the maximum
	number of threads. gimp_histogram_new() doesn't need a
	GimpBaseConfig parameter any longer.

	* app/core/gimpdrawable-equalize.c
	* app/core/gimpdrawable-levels.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpthresholdtool.c
	* app/widgets/gimphistogrameditor.c
	* tools/pdbgen/pdb/color.pdb: changed accordingly.

	* app/pdb/color_cmds.c: regenerated.
2005-02-14 01:05:34 +00:00
Sven Neumann 9e6fd61f59 define the maximum number of threads in the header file.
2005-02-14  Sven Neumann  <sven@gimp.org>

	* app/base/pixel-processor.[ch]: define the maximum number of
	threads in the header file.

	* app/config/gimpbaseconfig.c: use the #define.
2005-02-14 00:34:38 +00:00
Sven Neumann 0e1077d61d app/base/gimphistogram.c use static mutexes.
2005-02-14  Sven Neumann  <sven@gimp.org>

	* app/base/gimphistogram.c
	* app/base/pixel-processor.c: use static mutexes.
2005-02-13 23:50:18 +00:00
Sven Neumann d154b39899 configure.in app/base/tile-cache.c app/base/tile-private.h
2005-02-13  Sven Neumann  <sven@gimp.org>

	* configure.in
	* app/base/tile-cache.c
	* app/base/tile-private.h
	* app/base/tile-swap.c
	* app/base/tile.c: in an attempt to safe this code from bit-rot,
	ported the experimental threaded tile-swapper to gthread.
2005-02-13 22:49:50 +00:00
Sven Neumann 50f9c145b2 port this code to gthread as well.
2005-02-13  Sven Neumann  <sven@gimp.org>

	* app/base/gimphistogram.c: port this code to gthread as well.
2005-02-13 22:31:31 +00:00
Sven Neumann 22e13e84d3 some more cleanup; introduced a #define to control the number of tiles per
2005-02-13  Sven Neumann  <sven@gimp.org>

	* app/base/pixel-processor.c: some more cleanup; introduced a
	#define to control the number of tiles per thread.
2005-02-13 20:58:30 +00:00
Sven Neumann 8c76151e7b fixed typo.
2005-02-13  Sven Neumann  <sven@gimp.org>

	* app/base/base.c: fixed typo.

	* app/config/gimpbaseconfig.c: reverted last change,
	"num-processor" doesn't need a confirmation.
2005-02-13 20:05:35 +00:00
Sven Neumann 366629ff0d app/base/base.c moved some code from base_init() into tile_swap_init().
2005-02-13  Sven Neumann  <sven@gimp.org>

	* app/base/base.c
	* app/base/tile-swap.[ch]: moved some code from base_init() into
	tile_swap_init().

	* app/base/pixel-processor.[ch]: prepared for porting to GThreadPool.

	* app/config/gimpbaseconfig.c: changed "num-processors" option to
	require a confirmation before being changed.
2005-02-13 15:47:36 +00:00
Sven Neumann 9511753a02 check for gthread-2.0 unless the --disable-mp option is given.
2005-02-13  Sven Neumann  <sven@gimp.org>

	* configure.in: check for gthread-2.0 unless the --disable-mp
	option is given.

	* app/app_procs.c (app_libs_init): call g_thread_init().

	* app/base/pixel-processor.c: ported to GThread.

	* app/Makefile.am
	* app/*/Makefile.am: use @GTHREAD_CFLAGS@.
2005-02-13 15:08:08 +00:00
Sven Neumann bfbaba2b70 fixed a bug I introduced with my latest changes and cleaned up the code
2005-02-12  Sven Neumann  <sven@gimp.org>

	* app/base/pixel-processor.c: fixed a bug I introduced with my
	latest changes and cleaned up the code further.
2005-02-12 16:07:00 +00:00
Sven Neumann adff5aeb09 code cleanup. Removed unsued code, renamed variables and types.
2005-02-11  Sven Neumann  <sven@gimp.org>

	* app/base/pixel-processor.[ch]: code cleanup. Removed unsued code,
	renamed variables and types.

	* app/base/gimphistogram.c
	* app/core/gimpchannel-combine.c
	* app/core/gimpchannel.c
	* app/core/gimpdrawable-equalize.c
	* app/core/gimpdrawable-invert.c
	* app/core/gimpdrawable-levels.c
	* app/paint-funcs/paint-funcs.c
	* tools/pdbgen/pdb/color.pdb: changed accordingly.

	* app/pdb/color_cmds.c: regenerated.
2005-02-11 17:03:56 +00:00
Sven Neumann 9c01b4dc7b include <string.h>.
2005-02-11  Sven Neumann  <sven@gimp.org>

	* app/base/pixel-processor.c: include <string.h>.
2005-02-11 15:24:02 +00:00
Sven Neumann 648cccde5e app/base/base.c app/base/temp-buf.c app/base/tile-swap.c
2005-02-07  Sven Neumann  <sven@gimp.org>

	* app/base/base.c
	* app/base/temp-buf.c
	* app/base/tile-swap.c
	* app/config/gimpconfig-file.c
	* app/core/gimpbrush.c
	* app/core/gimpbrushgenerated.c
	* app/core/gimpbrushpipe.c
	* app/core/gimpdata.c
	* app/core/gimpenvirontable.c
	* app/core/gimpgradient-load.c
	* app/core/gimpgradient-save.c
	* app/core/gimppalette-import.c
	* app/core/gimppalette.c
	* app/core/gimppattern.c
	* app/dialogs/user-install-dialog.c
	* app/gui/session.c
	* app/menus/menus.c
	* app/widgets/gimpdevices.c: use gstdio wrappers.
2005-02-07 01:24:22 +00:00
William Skaggs 1cee9b7298 continuing commit after broken pipe 2005-01-25 19:11:26 +00:00
Sven Neumann 7b0ca8aebe forgot this one in my last commit 2005-01-22 23:26:44 +00:00
Sven Neumann bff64411fa app/base/base-enums.h moved GimpInterpolationType and GimpTransferMode to
2005-01-23  Sven Neumann  <sven@gimp.org>

	* app/base/base-enums.h
	* libgimpbase/gimpbaseenums.h: moved GimpInterpolationType and
	GimpTransferMode to libgimpbase (from core and libgimp). The
	remaining enums in app/base/base-enums.h need special treatment.

	* app/base/base-enums.c
	* libgimp/gimpenums.h
	* libgimpbase/gimpbaseenums.[ch]
	* tools/pdbgen/enums.pl: regenerated.

	* libgimpbase/gimpbase.def
	* libgimp/gimp.def: updated.
2005-01-22 23:06:37 +00:00
Sven Neumann f3166ba9f9 app/base/base-enums.[ch] app/core/gimpdrawable-transform.c
2005-01-11  Sven Neumann  <neumann@jpk.com>

	* app/base/base-enums.[ch]
	* app/core/gimpdrawable-transform.c
	* app/core/gimpdrawable.c
	* app/paint-funcs/Makefile.am
	* app/paint-funcs/paint-funcs.[ch]
	* app/paint-funcs/scale-funcs.[ch]: applied patch by Geert Jordaens
	(after a good deal of reformatting for coding style compliance).
	This factors the scale routines into their own file and adds a
	sinc-based (Lanczos) interpolation routine (bug #162250).
2005-01-11 18:31:07 +00:00
Michael Natterer ab79fa6059 added translatable strings to the GimpLayerModeEffects enum because they
2004-12-28  Michael Natterer  <mitch@gimp.org>

	* app/base/base-enums.[ch]: added translatable strings to the
	GimpLayerModeEffects enum because they will soon disappear from
	widgets/gimpwidgets-constructors.c
2004-12-28 22:07:29 +00:00
William Skaggs 15fb7b6f18 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/core/gimpbrush.c: don't ask for preview with
	zero width or height, fixes bug #162232.

	* app/base/brush-scale.c: remove tabs and trailing
	whitespace.
2004-12-26 18:18:17 +00:00
Sven Neumann 5b45188c57 removed trailing whitespace.
2004-12-12  Sven Neumann  <sven@gimp.org>

	* app/base/tile-manager-crop.c: removed trailing whitespace.

	* plug-ins/imagemap/imap_selection.c: need to define
	GTK_DISABLE_DEPRECATED for gtk_toolbar_append_space().
2004-12-12 14:25:48 +00:00
Michael Natterer 53c3ff1821 added new function copy_region_nocow() as a workaround for the fact that
2004-12-12  Michael Natterer  <mitch@gimp.org>

	* app/paint-funcs/paint-funcs.[ch]: added new function
	copy_region_nocow() as a workaround for the fact that sharing
	tiles with the projection is heavily broken.

	* app/base/tile-manager.c (tile_invalidate): added a warning when
	entering the code path that breaks badly.

	* app/core/gimp-edit.[ch]: added gimp_edit_copy_visible(), using
	the non-COW copying function above.

	* app/widgets/gimphelp-ids.h: added GIMP_HELP_COPY_VISIBLE.

	* app/actions/edit-actions.c
	* app/actions/edit-commands.[ch]: added action & callback for
	"edit-copy-visible".

	* menus/image-menu.xml.in: added "edit-copy-visible" to the image
	menu.

	* tools/pdbgen/pdb/edit.pdb: added gimp_edit_copy_visible()
	PDB wrapper.

	* app/pdb/edit_cmds.c
	* app/pdb/internal_procs.c
	* libgimp/gimpedit_pdb.[ch]: regenerated.

	* plug-ins/script-fu/scripts/copy-visible.scm: removed all code
	and made it a backward compat wrapper around gimp-edit-copy-visible.
	Fixes bug #138662.
2004-12-12 14:01:08 +00:00
Sven Neumann 6f4d9df019 call base_exit() before quitting the application using exit(). Fixes bug
2004-11-22  Sven Neumann  <sven@gimp.org>

	* app/app_procs.c (app_exit_after_callback): call base_exit()
	before quitting the application using exit(). Fixes bug #159019.

	* app/base/tile-swap.c: moved the warning about a non-empty swap
	file into #ifdef GIMP_UNSTABLE ... #endif.
2004-11-22 21:29:41 +00:00
Manish Singh 5d01581069 Fix a bunch of warnings from Sparse:
2004-11-13  Manish Singh  <yosh@gimp.org>

        Fix a bunch of warnings from Sparse:

        * app/actions/dockable-commands.c
        * app/actions/layers-actions.c
        * app/actions/view-commands.c
        * app/base/pixel-surround.c
        * app/config/gimpconfig-utils.c
        * app/config/gimpscanner.c
        * app/core/gimpbrushgenerated.c
        * app/core/gimpcontainer.c
        * app/core/gimpimage.c
        * app/dialogs/palette-import-dialog.c
        * app/file/gimprecentlist.c
        * app/plug-in/plug-in-params.c
        * app/text/gimptext-compat.c
        * app/text/gimptext-parasite.c
        * app/vectors/gimpbezierstroke.c
        * app/vectors/gimpstroke.c
        * app/widgets/gimpcellrendereraccel.c
        * app/widgets/gimpselectiondata.c
        * app/xcf/xcf.c
        * libgimp/gimp.c
        * libgimpthumb/gimpthumb-utils.c
        * libgimpthumb/gimpthumbnail.c
        * modules/cdisplay_proof.c
        * plug-ins/Lighting/lighting_ui.c
        * plug-ins/common/csource.c
        * plug-ins/common/glasstile.c
        * plug-ins/common/nova.c
        * plug-ins/common/pcx.c
        * plug-ins/common/pnm.c
        * plug-ins/common/randomize.c
        * plug-ins/common/screenshot.c
        * plug-ins/common/sel_gauss.c
        * plug-ins/common/spheredesigner.c
        * plug-ins/common/wind.c
        * plug-ins/gfig/gfig-dialog.c
        * plug-ins/gfig/gfig-dobject.c
        * plug-ins/gimpressionist/gimpressionist.c
        * plug-ins/ifscompose/ifscompose.c
        * plug-ins/print/gimp_main_window.c
        * plug-ins/print/print.c: Cleanup integer vs. pointer confusion.

        * app/base/temp-buf.c
        * app/dialogs/about-dialog.c
        * plug-ins/common/bumpmap.c
        * plug-ins/common/jigsaw.c
        * plug-ins/gfig/gfig-dobject.c: Cosmetic cleanups.

        * app/config/gimpconfig-deserialize.c
        * app/config/gimpconfig-path.c
        * app/config/gimpconfigwriter.c
        * app/core/gimpgradient.c
        * app/tools/gimpdrawtool.c
        * plug-ins/common/nlfilt.c
        * plug-ins/common/unsharp.c
        * plug-ins/common/zealouscrop.c: Define inline functions before they
        are used.

        * app/core/gimpdrawable-blend.c: PixelRegion definition was changed
        some time ago, but the initialization here didn't change. Fix it.

        * app/plug-in/plug-in-rc.c (plug_in_extra_deserialize): No need to
        assign token twice in a row.

        * libgimpbase/gimpdatafiles.c (gimp_datafiles_read_directories): No
        need to initialize file_data, since the code fills out all the fields.

        * plug-ins/common/CML_explorer.c
        * plug-ins/common/vpropagate.c: Declare function pointers fully.

        * plug-ins/common/grid.c (pix_composite): G_INLINE_FUNC isn't needed,
        we assume we can use the "inline" keyword always.

        * plug-ins/common/psd_save.c
        * plug-ins/common/vinvert.c
        * plug-ins/gfig/gfig-arc.c
        * plug-ins/gfig/gfig-bezier.c
        * plug-ins/gfig/gfig-circle.c
        * plug-ins/gfig/gfig-dialog.c
        * plug-ins/gfig/gfig-dobject.c
        * plug-ins/gfig/gfig-ellipse.c
        * plug-ins/gfig/gfig-line.c
        * plug-ins/gfig/gfig-poly.c
        * plug-ins/gfig/gfig-spiral.c
        * plug-ins/gfig/gfig-star.c
        * plug-ins/gfig/gfig.c
        * plug-ins/gimpressionist/orientmap.c
        * plug-ins/gimpressionist/placement.c
        * plug-ins/gimpressionist/sizemap.c
        * plug-ins/imagemap/imap_grid.c
        * plug-ins/imagemap/imap_main.c
        * plug-ins/imagemap/imap_preferences.c
        * plug-ins/imagemap/imap_settings.c
        * plug-ins/maze/maze.c
        * plug-ins/sel2path/curve.c
        * plug-ins/sel2path/fit.c
        * plug-ins/sel2path/pxl-outline.c
        * plug-ins/sel2path/spline.c
        * plug-ins/xjt/xjt.c: Functions with no args should be declared
        with (void).

        * plug-ins/common/retinex.c (MSRCR): Initialize max_preview to quiet
        the compiler.
2004-11-14 02:50:33 +00:00
Jay Cox e1a47b5232 Keep computed brush values from overflowing with large reduction factors.
2004-11-11  Jay Cox  <jaycox@gimp.org>

	* app/base/brush-scale.c: Keep computed brush values from
	overflowing with large reduction factors.  Fixes bug #76228.
2004-11-11 09:10:48 +00:00
Øyvind Kolås 88ed5c4b03 fixed misspelled parametername 2004-11-03 16:47:28 +00:00
Øyvind Kolås c5c0a219d9 renamed *levels-auto to *levels-stretch 2004-11-01 16:05:19 +00:00
Sven Neumann 57eec590ae Added new drawable transform API to the PDB. Largely based on patches from
2004-10-26  Sven Neumann  <sven@gimp.org>

	Added new drawable transform API to the PDB. Largely based on
	patches from Joao S. O. Bueno. Fixes bug #137053.

	* app/core/gimpdrawable-transform.[ch]: added missing parameters
	to gimp_drawable_transform_flip().

	* tools/pdbgen/pdb/transform_tools.pdb: changed accordinly.

	* app/base/base-enums.h
	* app/core/core-enums.h: removed pdp-skip for GimpInterpolationType
	and GimpTransformDirection enums.

	* libgimp/gimpenums.h
	* plug-ins/pygimp/gimpenums.py
	* tools/pdbgen/enums.pl
	* tools/pdbgen/groups.pl: regenerated.

	* tools/pdbgen/Makefile.am
	* tools/pdbgen/pdb/drawable_transform.pdb: added new file defining
	the new PDB calls.

	* app/pdb/Makefile.am
	* app/pdb/drawable_transform_cmds.c
	* app/pdb/internal_procs.c
	* app/pdb/transform_tools_cmds.c
	* libgimp/gimp_pdb.h
	* libgimp/gimpdrawabletransform_pdb.[ch]: regenerated.
2004-10-26 17:50:52 +00:00
Michael Natterer 6711646648 Don't store human readable and translatable enum/flag strings in
2004-10-25  Michael Natterer  <mitch@gimp.org>

	Don't store human readable and translatable enum/flag strings in
	GEnumValue's and GTypeValue's fields but attach them to their
	GType using separate structs and utility functions:

	* tools/gimp-mkenums: added params and perl voodoo to support
	generating a second array of values, which is used by the
	Makefiles below to create and register arrays of value
	descriptions.

	* libgimpbase/gimpbasetypes.[ch]: added API to attach/retreive
	arrays of translatable strings to/from enum and flags types. Added
	structs GimpEnumDesc and GimpFlagsDesc for that purpose.

	* libgimpbase/gimputils.[ch]: changed existing enum utility
	functions, added new ones and added a symmetric API for flags.

	* app/base/Makefile.am
	* app/core/Makefile.am
	* app/display/Makefile.am
	* app/paint/Makefile.am
	* app/text/Makefile.am
	* app/tools/Makefile.am
	* app/widgets/Makefile.am
	* libgimp/Makefile.am
	* libgimpbase/Makefile.am: changed *-enums.c generation rules
	accordingly.

	* app/base/base-enums.c
	* app/core/core-enums.c
	* app/display/display-enums.c
	* app/paint/paint-enums.c
	* app/text/text-enums.c
	* app/tools/tools-enums.c
	* app/widgets/widgets-enums.c
	* libgimpbase/gimpbaseenums.c: regenerated.

	* app/widgets/gimpenumstore.c
	* app/widgets/gimpenumwidgets.c
	* app/widgets/gimptemplateeditor.c
	* libgimpwidgets/gimppreviewarea.c: follow the enum utility
	function API changes.
2004-10-25 17:55:25 +00:00
Sven Neumann 53ff497a93 app/base/curves.[ch] defined CURVES_NUM_POINTS and use it.
2004-09-24  Sven Neumann  <sven@gimp.org>

	* app/base/curves.[ch]
	* app/tools/gimpcurvestool.c: defined CURVES_NUM_POINTS and use it.

	* tools/pdbgen/pdb/color.pdb (curves_spline_invoker): unset the
	last control point which got initialized to (255,255) by
	curves_init(). Fixes bug #153635.

	* app/pdb/color_cmds.c: regenerated.
2004-09-24 13:39:57 +00:00
Sven Neumann 811ca2dc1e count valid tiles, not dirty ones.
2004-09-19  Sven Neumann  <sven@gimp.org>

	* app/base/tile-manager.c (tile_manager_get_memsize): count valid
	tiles, not dirty ones.
2004-09-19 21:54:26 +00:00
Sven Neumann 23690346af Improved undo memory calculation for paint operations (bug #153035):
2004-09-19  Sven Neumann  <sven@gimp.org>

	Improved undo memory calculation for paint operations (bug #153035):

	* app/base/tile-manager.[ch] (tile_manager_get_memsize): added a
	"gboolean sparse" parameter to get more accurate results for
	sparse tile-managers.

	* app/core/gimpbuffer.c
	* app/core/gimpdrawable.c
	* app/core/gimpimage-undo-push.c
	* app/core/gimpimage.c
	* app/core/gimplayer.c
	* app/core/gimpprojection.c: changed accordingly.
2004-09-19 19:47:26 +00:00
Sven Neumann 4fbc8764b4 libgimpbase/Makefile.am libgimpbase/gimpchecks.[ch] added
2004-09-03  Sven Neumann  <sven@gimp.org>

	* libgimpbase/Makefile.am
	* libgimpbase/gimpchecks.[ch] added gimp_checks_get_shades().

	* app/base/temp-buf.c
	* app/display/gimpdisplayshell-render.c
	* libgimpwidgets/gimppreviewarea.c: use the new function instead
	of replicating these numbers in three different places.
2004-09-03 00:06:21 +00:00
Sven Neumann b9bd1bfa06 app/base/base-enums.[ch] moved GimpCheckSize and GimpCheckType enums to
2004-09-02  Sven Neumann  <sven@gimp.org>

	* app/base/base-enums.[ch]
	* libgimpbase/gimpbaseenums.[ch]: moved GimpCheckSize and
	GimpCheckType enums to libgimpbase. Correctly prefix the enum
	values.

	* app/base/temp-buf.c
	* app/config/gimpdisplayconfig.c
	* app/display/gimpdisplayshell-render.c
	* app/pdb/fileops_cmds.c
	* tools/pdbgen/pdb/fileops.pdb: changed accordingly.
2004-09-02 14:28:37 +00:00
Michael Natterer ee42d8f506 added still unused flags type GimpDirtyMask.
2004-07-28  Michael Natterer  <mitch@gimp.org>

	* app/core/core-enums.h: added still unused flags type
	GimpDirtyMask.

	* app/base/Makefile.am
	* app/core/Makefile.am
	* app/display/Makefile.am
	* app/paint/Makefile.am
	* app/text/Makefile.am
	* app/tools/Makefile.am
	* app/widgets/Makefile.am
	* libgimpthumb/Makefile.am: changed calls to gimp-mkenums to
	support GTypeFlags and to make the value arrays private to the
	get_type() functions.

	* app/base/base-enums.c
	* app/core/core-enums.c
	* app/display/display-enums.c
	* app/paint/paint-enums.c
	* app/text/text-enums.c
	* app/tools/tools-enums.c
	* app/widgets/widgets-enums.c: regenerated.
2004-07-28 11:50:20 +00:00
Sven Neumann 03b3f8c90f app/app_procs.c app/base/base.[ch] pass "be_verbose" to the base and
2004-07-20  Sven Neumann  <sven@gimp.org>

	* app/app_procs.c
	* app/base/base.[ch]
	* app/composite/gimp-composite.[ch]: pass "be_verbose" to the base
	and composite subsystems.
2004-07-20 14:33:22 +00:00
Michael Natterer c5e78fe18a added copyright header, added #defines for access(), F_OK, R_OK and X_OK.
2004-07-19  Michael Natterer  <mitch@gimp.org>

	* libgimpbase/gimpwin32-io.h: added copyright header, added
	#defines for access(), F_OK, R_OK and X_OK.

	* app/core/gimpdata.c: include the above instead of defining
	the workarounds here.

	* app/base/tile-swap.c
	* app/config/gimpconfig-dump.c
	* libgimpthumb/gimpthumb-utils.c
	* libgimpthumb/gimpthumbnail.c: for consistency, #include
	gimpwin32-io.h with "" instead of <>.
2004-07-19 13:22:44 +00:00
Sven Neumann ef885f7691 Added an RGB histogram based on a patch by Tor Lillqvist. Fixes bug
2004-07-06  Sven Neumann  <sven@gimp.org>

	Added an RGB histogram based on a patch by Tor Lillqvist. Fixes
	bug #145401.

	* app/base/base-enums.[ch]: added GIMP_HISTOGRAM_RGB, don't export
	it to the PDB.

	* app/base/gimphistogram.c: implemented histogram functions for
	the RGB mode.

	* app/base/levels.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimplevelstool.c
	* app/widgets/gimpcolorbar.c
	* app/widgets/gimphistogrameditor.c: handle the new enum value.

	* app/widgets/gimphistogramview.c: for GIMP_HISTOGRAM_RGB mode,
	draw a histogram that shows the RGB channels simultaneously
2004-07-06 16:33:30 +00:00
Michael Natterer a2850f6df2 Fixed bug #141930 while keeping bug #132322 fixed:
2004-06-28  Michael Natterer  <mitch@gimp.org>

	Fixed bug #141930 while keeping bug #132322 fixed:

	* app/base/curves.c (curves_lut_func)
	* app/base/levels.c (levels_lut_func): changed meaning of channel
	slots for GRAYA images: just as for GRAY images, expect the value
	channel in slot 0 and the alpha channel in slot 1, so it matches
	the meaning of slots of GimpHistogram (before this change, only
	GRAY images had their value in slot 0 and GRAYA images had it in
	slot 1, whereas the histogram had the value channel in slot 0,
	which was breaking auto levels for GRAYA images).

	* app/tools/gimpcurvestool.c
	* app/tools/gimplevelstool.c
	* tools/pdbgen/pdb/color.pdb: adjusted channel fiddling for GRAY
	and GRAYA images accordingly.

	* app/tools/gimpcurvestool.c (curves_update)
	* app/tools/gimplevelstool.c (levels_update): call
	gimp_color_bar_set_buffers() with the right buffers.

	* app/pdb/color_cmds.c: regenerated.
2004-06-28 14:24:56 +00:00
Manish Singh 0829a3b65e Reorged, to address bug #142907 and bug #143069. Accel implementations
2004-06-13  Manish Singh  <yosh@gimp.org>

        * app/base/cpu-accel.c: Reorged, to address bug #142907 and
        bug #143069. Accel implementations #define HAVE_ACCEL, and cpu_accel()
        keys on that. Both PPC and X86 implementations check for __GNUC__.
        X86 stuff is only used with USE_MMX is defined. The SSE OS check
        is now checked in arch_accel(), not cpu_accel(). Finally, the
        arch x86_64 checks now are EM64T aware (which didn't matter in
        practice).
2004-06-14 00:52:38 +00:00
Sven Neumann 847e41fa24 don't call tile_ewidth() three times from the inner loop.
2004-06-13  Sven Neumann  <sven@gimp.org>

	* app/paint-funcs/paint-funcs.c (shapeburst_region): don't call
	tile_ewidth() three times from the inner loop.

	* app/base/tile-manager.c (tile_manager_get): don't call
	tile_size() twice on the same tile.

	* app/base/tile-private.h: added tile_size_inline(), an inline
	version of the tile_size() function.

	* app/base/tile-cache.c
	* app/base/tile-manager.c
	* app/base/tile-swap.c
	* app/base/tile.c: use tile_size_inline() from inside the tile
	subsystem.
2004-06-13 13:19:19 +00:00
Michael Natterer d23e1ffe3b g_return_if_fail() on width, height or bpp <= 0. Doesn't fix anything but
2004-03-25  Michael Natterer  <mitch@gimp.org>

	* app/base/tile-manager.c (tile_manager_new): g_return_if_fail()
	on width, height or bpp <= 0. Doesn't fix anything but badly
	warns (and helps debugging) on bug #138117.
2004-03-25 17:58:26 +00:00