Commit graph

9562 commits

Author SHA1 Message Date
Øyvind Kolås 8f8c98d1cc s/compute_sample/box_filter/.
* app/display/gimpdisplayshell-render.c: s/compute_sample/box_filter/.

svn path=/trunk/; revision=23365
2007-08-24 16:13:27 +00:00
Michael Natterer 29759cd892 allocate shell->highlight with GSlice.
2007-08-24  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell.c: allocate shell->highlight with
	GSlice.


svn path=/trunk/; revision=23364
2007-08-24 16:07:44 +00:00
Øyvind Kolås 8f5819a5f6 swapped center and middle terms around (now center means horizontal
* app/display/gimpdisplayshell-render.c: swapped center and middle
terms around (now center means horizontal (betwen left and right )and
middle means vertical (between top and bottom)).

svn path=/trunk/; revision=23363
2007-08-24 16:00:48 +00:00
Øyvind Kolås a3a6253291 removed a temporary variable, simplified logic slightly.
* app/display/gimpdisplayshell-render.c: (compute_sample): removed
a temporary variable, simplified logic slightly.
(render_image_tile_fault, render_image_tile_fault_one_row): moved
sum computation out of loop.

svn path=/trunk/; revision=23362
2007-08-24 15:58:49 +00:00
Øyvind Kolås d51e3c42f7 Replaced signed integres with unsigned ones for weights etc to gain some
* app/display/gimpdisplayshell-render.c: Replaced signed integres with
unsigned ones for weights etc to gain some additional bits of
precision. Enabled anti-aliasing for zoomlevels between 100% and 200%
to improve the smoothness of the display at the levels where the size
differences between pixels yields the most distracting artifacts.

svn path=/trunk/; revision=23361
2007-08-24 15:39:23 +00:00
Øyvind Kolås 42433749d6 Reshuffled shifting code in fixed point code of display to improve
quality.
* app/display/gimpdisplayshell-render.c:
(compute_sample): reshuffle a bit of the fixed point induced
shifting to allow higher precision.
(render_image_tile_fault): remove need to disable box-filter
for some non square zoom ratios that was needed before
compute_sample cleanup.
, (render_image_tile_fault_one_row): fetch source sample #1
from the correct tile.

svn path=/trunk/; revision=23360
2007-08-24 14:33:44 +00:00
Øyvind Kolås 306e21b354 fixed a division by zero issue.
* app/display/gimpdisplayshell-render.c: (compute_sample)
fixed a division by zero issue.

svn path=/trunk/; revision=23357
2007-08-24 02:34:06 +00:00
Øyvind Kolås 94f2404a43 added a static global variable with configuration. (compute_sample): moved
* app/display/gimpdisplayshell-render.c: added a static global
variable with configuration.
(compute_sample): moved common computation of alpha*weight factors 
for channel out of loop.

svn path=/trunk/; revision=23355
2007-08-23 20:12:49 +00:00
Øyvind Kolås 408f51ca59 refactored to use arrays of tiles/source pixels instead of individual
* app/display/gimpdisplayshell-render.c: (compute_sample),
(render_image_tile_fault), (render_image_tile_fault_one_row):
refactored to use arrays of tiles/source pixels instead of individual
variables, also modified the order of the 0..8 numbers to sorted
in increasing row-major order.

svn path=/trunk/; revision=23354
2007-08-23 13:37:13 +00:00
Øyvind Kolås 6a0935d235 refactored to use arrays of tiles/source pixels instead of individual
* app/display/gimpdisplayshell-render.c: (compute_sample),
(render_image_tile_fault), (render_image_tile_fault_one_row):
refactored to use arrays of tiles/source pixels instead of individual
variables, also modified the order of the 0..8 numbers to sorted
in increasing row-major order.

svn path=/trunk/; revision=23353
2007-08-23 13:25:30 +00:00
Øyvind Kolås 17ac225558 modified some constants and shifts to avoid checkerboard artifacts
svn path=/trunk/; revision=23350
2007-08-22 15:25:16 +00:00
Øyvind Kolås 91c63e4956 replaced bilinear interpolation from next larger pyramid level with a
* app/display/gimpdisplayshell-render.c: replaced bilinear
interpolation from next larger pyramid level with a boxfilter
of the next larger pyramid level.
This is probably the last update to the quality of the display
in GIMP 2.4.

svn path=/trunk/; revision=23349
2007-08-22 14:31:22 +00:00
Martin Nordholts 6b8026a5fd Don't adjust the rectangle shape if it is is merely being moved.
2007-08-21  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_update_with_coord): Don't adjust the
	rectangle shape if it is is merely being moved.

svn path=/trunk/; revision=23343
2007-08-21 19:52:00 +00:00
Michael Natterer 4e8c0ac280 use _() instead of N_() when setting the label of "Revert Zoom" directly.
2007-08-18  Michael Natterer  <mitch@gimp.org>

	* app/actions/view-actions.c (view_actions_update): use _()
	instead of N_() when setting the label of "Revert Zoom"
	directly. Fixes bug #467933.


svn path=/trunk/; revision=23326
2007-08-18 13:27:24 +00:00
Martin Nordholts af13bcb9fc Don't make GIMP_RECTANGLE_CONSTRAIN_NONE into
2007-08-18  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c: Don't make
	GIMP_RECTANGLE_CONSTRAIN_NONE into GIMP_RECTANGLE_CONSTRAIN_IMAGE,
	and restructure the code a bit in the rectagle adjusting functions
	so that they can handle the _NONE constraint. The effect of this
	change is that rectangle tools no longer are constrained when
	using fixed-rules.

svn path=/trunk/; revision=23319
2007-08-18 09:44:18 +00:00
Martin Nordholts 264d44588b Clear highlight in previously active shell when changing active shell.
2007-08-18  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_button_press): Clear highlight in previously
	active shell when changing active shell.

svn path=/trunk/; revision=23318
2007-08-18 06:59:02 +00:00
Martin Nordholts e4baf09863 Call gimp_crop_tool_update_default_fixed_ratio_options after
2007-08-18  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimpcroptool.c (gimp_crop_tool_button_release): Call
	gimp_crop_tool_update_default_fixed_ratio_options after
	gimp_rectangle_tool_button_release, so that the state of the
	rectangle tool is reflected when updating the default aspect.

svn path=/trunk/; revision=23317
2007-08-18 06:39:18 +00:00
Martin Nordholts bf4858c52c Added a 'ignore_pending' boolean parameter so that the pending rectangle
2007-08-18  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimpcroptool.c
	(gimp_crop_tool_update_default_fixed_ratio_options): Added a
	'ignore_pending' boolean parameter so that the pending rectangle
	can be ignored in gimp_crop_tool_execute, as it should be.

svn path=/trunk/; revision=23316
2007-08-18 06:31:15 +00:00
Martin Nordholts eb06a11ea9 Connect to the "image-changed" signal of GimpContext and update default
2007-08-17  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimpcroptool.c
	(gimp_crop_tool_constructor): Connect to the "image-changed"
	signal of GimpContext and update default aspect when image
	changes (fixes bug #417166), by using
	(gimp_crop_tool_update_default_fixed_ratio_options): which is a
	new function that does this. This function is called whenever it
	is time to update defualts.

	* app/tools/gimprectangletool.[ch]: Made
	gimp_rectangle_tool_get_constraint part of the rectangle tool API.

svn path=/trunk/; revision=23312
2007-08-17 18:29:09 +00:00
Michael Natterer bf500e16d0 app/tools/gimpperspectiveclonetool.c (motion) don't allow to ctrl-switch
2007-08-17  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpperspectiveclonetool.c (motion)
	* app/tools/gimpsourcetool.c (motion): don't allow to ctrl-switch
	between clone and set-source mode while painting. It's totally
	unclear to me why we used to allow this since it doesn't make much
	sense and isn't very intuitive either. Fixes bug #467605.


svn path=/trunk/; revision=23302
2007-08-17 15:20:25 +00:00
Sven Neumann 65dafbd9e9 bumped the version to 2.4.0-rc1.
2007-08-15  Sven Neumann  <sven@gimp.org>

	* configure.in: bumped the version to 2.4.0-rc1.

	* README
	* INSTALL: updated for the GIMP 2.4 release candidate(s).

	* data/images/gimp-splash.png: added splash screen for the 2.4
	release candidate(s).

	* app/Makefile.am
	* tools/Makefile.am: adjust targets for 2.4.


svn path=/trunk/; revision=23281
2007-08-15 22:05:51 +00:00
Øyvind Kolås cfd90e3851 added a bilinear filtering like weighting of neighbourhood pixels for
* app/display/gimpdisplayshell-render.c: added a bilinear filtering
like weighting of neighbourhood pixels for approximating the
downsampling from the next larger level in the projection mipmap.
Also some general code cleanup.

svn path=/trunk/; revision=23278
2007-08-15 21:29:43 +00:00
Michael Natterer da32f5a002 remove GimpPlugInDebug typedef.
2007-08-15  Michael Natterer  <mitch@gimp.org>

	* app/core/core-types.h: remove GimpPlugInDebug typedef.

	* app/plug-in/plug-in-types.h: added it here instead.

	* app/core/gimpchannel-combine.h
	* app/widgets/gimppropwidgets.[ch]: match parameter names
	in .c, .h and API docs to make gtk-doc happy.


svn path=/trunk/; revision=23275
2007-08-15 16:40:39 +00:00
Sven Neumann c32371a591 add tooltips to the profile combo boxes.
2007-08-15  Sven Neumann  <sven@gimp.org>

	* app/dialogs/preferences-dialog.c: add tooltips to the profile
	combo boxes.


svn path=/trunk/; revision=23261
2007-08-14 22:29:00 +00:00
Sven Neumann 7cdc24d69e libgimpwidgets/gimpcolorprofilecombobox.[ch]
2007-08-14  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpcolorprofilecombobox.[ch]
	* libgimpwidgets/gimpcolorprofilestore.[ch]
	* libgimpwidgets/gimpcolorprofilestore-private.h: changed API to
	deal with filenames instead of URIs.

	* app/widgets/gimpprofilechooserdialog.[ch]: same here.

	* app/dialogs/preferences-dialog.c
	* plug-ins/common/lcms.c: changed accordingly.


svn path=/trunk/; revision=23260
2007-08-14 22:12:37 +00:00
Sven Neumann e825b7ccb1 app/dialogs/preferences-dialog.c don't unref the file-chooser dialog.
2007-08-14  Sven Neumann  <sven@gimp.org>

	* app/dialogs/preferences-dialog.c
	* plug-ins/common/lcms.c: don't unref the file-chooser dialog.

svn path=/trunk/; revision=23254
2007-08-14 16:10:08 +00:00
Sven Neumann f3675a45ad libgimpwidgets/Makefile.am libgimpwidgets/gimpwidgets.h
2007-08-14  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/Makefile.am
	* libgimpwidgets/gimpwidgets.h
	* libgimpwidgets/gimpwidgetstypes.h
	* libgimpwidgets/gimpcolorprofilecombobox.[ch]
	* libgimpwidgets/gimpcolorprofilestore.[ch]
	* libgimpwidgets/gimpcolorprofilestore-private.h: new widget to
	select color profiles.

	* libgimpwidgets/gimpwidgets.def: updated.

	* app/widgets/gimpprofilechooserdialog.[ch]: remember the name of
	the last previewed profile.

	* app/dialogs/preferences-dialog.c: use the new color profile
	combo-box.

	* plug-ins/common/lcms.c: use the new color profile combo-box.

svn path=/trunk/; revision=23253
2007-08-14 16:01:04 +00:00
Michael Natterer 1e790b12fd fixed API docs.
2007-08-14  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage-item-list.c: fixed API docs.


svn path=/trunk/; revision=23252
2007-08-14 15:44:02 +00:00
Øyvind Kolås 38dacc4571 Fixed regression at zoom levels > 100%, and moved some floating point code
* app/display/gimpdisplayshell-render.c: Fixed regression at zoom
levels > 100%, and moved some floating point code out of the worker
function.

svn path=/trunk/; revision=23251
2007-08-14 15:17:30 +00:00
Øyvind Kolås 2b11d50cfb replaced a computed lookup table acceleration with fixed point logic.
* app/display/gimpdisplayshell-render.c: replaced a computed lookup
table acceleration with fixed point logic.

svn path=/trunk/; revision=23249
2007-08-14 13:52:42 +00:00
Sven Neumann 0c64210b15 app/display/gimpdisplay.c formatting.
2007-08-13  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplay.c
	* app/display/gimpdisplay-render.c: formatting.


svn path=/trunk/; revision=23241
2007-08-13 19:36:18 +00:00
Sven Neumann 2d1c0dddc5 corrected caluclation for the histogram in RGB mode (bug #466189).
2007-08-13  Sven Neumann  <sven@gimp.org>

	* app/base/gimphistogram.c (gimp_histogram_get_std_dev): corrected
	caluclation for the histogram in RGB mode (bug #466189).

svn path=/trunk/; revision=23232
2007-08-13 10:34:35 +00:00
Sven Neumann 5df43c2cbb use italic font if not in user-override mode.
2007-08-13  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpnumberpairentry.c: use italic font if not in
	user-override mode.

	* app/tools/gimprectangleoptions.c: removed auto-mode icon.

	* themes/Default/images/Makefile.am
	* themes/Default/images/stock-auto-mode-16.png
	* libgimpwidgets/gimpnumberpairentry.[ch]: removed
	GIMP_STOCK_AUTO_MODE.


svn path=/trunk/; revision=23231
2007-08-13 09:25:27 +00:00
Sven Neumann b4a5338865 added missing cast.
2007-08-13  Sven Neumann  <sven@gimp.org>

	* app/gui/gui-vtable.c (gui_pdb_dialog_new): added missing cast.


svn path=/trunk/; revision=23230
2007-08-13 07:08:50 +00:00
Martin Nordholts 296c2de807 Put the auto-mode GtkImage to the right of the Aspect ratio/Size entry
2007-08-13  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangleoptions.c (gimp_rectangle_options_gui):
	Put the auto-mode GtkImage to the right of the Aspect ratio/Size
	entry instead of to the left.

svn path=/trunk/; revision=23228
2007-08-13 06:41:52 +00:00
Martin Nordholts 3c7474582a Set a 16x16 size request on the auto-mode images.
2007-08-12  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangleoptions.c (gimp_rectangle_options_gui):
	Set a 16x16 size request on the auto-mode images.

svn path=/trunk/; revision=23227
2007-08-12 12:13:15 +00:00
Martin Nordholts 998748d6f4 Right-align X, Y, Width and Height.
2007-08-12  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangleoptions.c (gimp_rectangle_options_gui):
	Right-align X, Y, Width and Height.

svn path=/trunk/; revision=23225
2007-08-12 09:36:23 +00:00
Martin Nordholts b45b8aa096 Setup a GIMP_STOCK_AUTO_MODE GtkImage to be shown in the options when
2007-08-12  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangleoptions.[ch]: Setup a
	GIMP_STOCK_AUTO_MODE GtkImage to be shown in the options when
	Fixed: Aspect ratio/Size entries are in auto-mode.

	* themes/Default/images/Makefile.am: Added
	stock-auto-mode-16.png (which is a copy of
	preferences/folders-interp-16.png for now).

	* libgimpwidgets/gimpstock.[ch]: Added GIMP_STOCK_AUTO_MODE.

svn path=/trunk/; revision=23224
2007-08-12 08:43:35 +00:00
Sven Neumann 4572e1d3a5 applied patch from Yoshinori Yamakawa that adds code to get the monitor
2007-08-12  Sven Neumann  <sven@gimp.org>

	* modules/cdisplay_lcms.c (cdisplay_lcms_get_display_profile):
	applied patch from Yoshinori Yamakawa that adds code to get the
	monitor profile from Win32.

	* app/dialogs/preferences-dialog.c: enabled the toggle for
	"display-profile-from-gdk" on all systems.


svn path=/trunk/; revision=23222
2007-08-11 23:31:51 +00:00
Michael Natterer 967c110e37 app/actions/tools-actions.c removed unused rectangle tool actions.
2007-08-11  Michael Natterer  <mitch@gimp.org>

	* app/actions/tools-actions.c
	* app/actions/tools-commands.[ch]: removed unused rectangle tool
	actions.


svn path=/trunk/; revision=23220
2007-08-11 21:38:43 +00:00
Michael Natterer 66ce241acf formatting.
2007-08-11  Michael Natterer  <mitch@gimp.org>

	* app/vectors/gimpstroke-new.[ch]: formatting.


svn path=/trunk/; revision=23218
2007-08-11 19:40:22 +00:00
Michael Natterer cd164058b8 renamed files:
2007-08-11  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/Makefile.am: renamed files:

	* app/plug-in/plug-in-error.[ch]: old names
	* app/plug-in/gimppluginerror.[ch]: new names

	* app/plug-in/plug-in-icc-profile.c
	* app/file/file-open.c: changed accordingly.


svn path=/trunk/; revision=23217
2007-08-11 19:36:08 +00:00
Sven Neumann 3b2ed82ef5 plug-ins/common/lcms.c plug-ins/common/png.c plug-ins/common/tiff-load.c
2007-08-11  Sven Neumann  <sven@gimp.org>

	* plug-ins/common/lcms.c
	* plug-ins/common/png.c
	* plug-ins/common/tiff-load.c
	* plug-ins/jpeg/jpeg-load.c: made the icc-profile undoable and
	persistent.
	
	* devel-docs/parasites.txt: document this.

	* plug-ins/common/lcms.c: made colorspace conversion undoable.
	
	* app/file/file-open.c: disable undo while doing the colorspace
	conversion on load.


svn path=/trunk/; revision=23213
2007-08-11 18:27:01 +00:00
Michael Natterer 0d17856e58 libgimpbase/gimpbaseenums.[ch] changed enum GimpUserDirectory and API of
2007-08-11  Michael Natterer  <mitch@gimp.org>

	* libgimpbase/gimpbaseenums.[ch]
	* libgimpbase/gimpenv.[ch]: changed enum GimpUserDirectory and API
	of gimp_user_directory() so that g_get_user_special_dir() can be
	used instead as soon as we depend on GLib 2.14.

	* tools/pdbgen/enums.pl: regenerated.

	* app/widgets/gimpfiledialog.c
	* plug-ins/pygimp/gimpmodule.c: changed accordingly.


svn path=/trunk/; revision=23212
2007-08-11 17:15:52 +00:00
Martin Nordholts 6ea396963b Initialize 'tool' before using it.
2007-08-11  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimpcroptool.c (gimp_crop_tool_execute): Initialize
	'tool' before using it.

svn path=/trunk/; revision=23210
2007-08-11 16:13:14 +00:00
Sven Neumann cd92f46891 pass the maximum value double and draw the histogram one pixel less high.
2007-08-11  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimphistogramview.c 
(gimp_histogram_view_draw_spike):
	pass the maximum value double and draw the histogram one pixel 
less
	high. Fixes bug #465669.


svn path=/trunk/; revision=23208
2007-08-11 15:27:11 +00:00
Martin Nordholts 4356bb7aeb Update handle sizes based on the shell-visible part of the rectangle.
2007-08-11  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_update_handle_sizes): Update handle sizes
	based on the shell-visible part of the rectangle.
	(gimp_rectangle_tool_start, gimp_rectangle_tool_halt):
	Connect/disconnect to the "scrolled" signal of the shell and
	update handle sizes.

svn path=/trunk/; revision=23204
2007-08-11 09:42:16 +00:00
Martin Nordholts 8f69046e11 Halt the tool on cancel if a rectangle has not previously been created.
2007-08-11  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_button_release): Halt the tool on cancel if a
	rectangle has not previously been created.

svn path=/trunk/; revision=23202
2007-08-11 08:42:59 +00:00
Martin Nordholts 49a9bdc6d1 Renamed from gimp_rectangle_tool_set_highlight
2007-08-11  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_update_highlight): Renamed from
	gimp_rectangle_tool_set_highlight
	(gimp_rectangle_tool_button_release): Add call to
	gimp_rectangle_tool_update_highlight to keep highlight in sync
	when a crop rectangle is cancelled.

svn path=/trunk/; revision=23201
2007-08-11 08:27:00 +00:00
Martin Nordholts 113f932ae0 Only set config user override property when it changed, to avoid deadlock.
2007-08-11  Martin Nordholts  <martinn@svn.gnome.org>

	* app/widgets/gimppropwidgets.c
	(gimp_prop_number_pair_entry_number_pair_user_override_notify):
	Only set config user override property when it changed, to avoid
	deadlock.

svn path=/trunk/; revision=23200
2007-08-11 07:56:18 +00:00
Martin Nordholts fd5363cd87 Set default 'Fixed: Aspect ratio' values to the size of the pending crop
2007-08-10  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimpcroptool.c (gimp_crop_tool_button_release): Set
	default 'Fixed: Aspect ratio' values to the size of the pending
	crop rectangle. Fixes bug #355545.

	* app/tools/gimprectangletool.[ch]
	(gimp_rectangle_tool_get_rectangle_size): New helper function.

svn path=/trunk/; revision=23194
2007-08-10 16:41:30 +00:00
Martin Nordholts 0f0a52a301 Fixed bug where property notifications were checked againts hardcoded
2007-08-10  Martin Nordholts  <martinn@svn.gnome.org>

	* app/widgets/gimppropwidgets.c
	(gimp_prop_number_pair_entry_config_notify): Fixed bug where
	property notifications were checked againts hardcoded property
	names instead of the ones configured to the
	GimpPropNumberPairEntryData object.

svn path=/trunk/; revision=23191
2007-08-10 15:59:26 +00:00
Martin Nordholts 49df5ada5b Added "default-aspect-numerator", "default-aspect-denominator",
2007-08-10  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangleoptions.c: Added
	"default-aspect-numerator", "default-aspect-denominator",
	"default-fixed-size-width" and "default-fixed-size-height" as
	non-serialized tool options, and "overridden-fixed-aspect" and
	"overridden-fixed-size" as serialized ones.

	* app/widgets/gimppropwidgets.c (gimp_prop_number_pair_entry_*):
	Added support for the new GimpRectangleOptions.

svn path=/trunk/; revision=23187
2007-08-10 14:57:27 +00:00
Martin Nordholts a8907b94be Merged gimp_prop_size_2d_* and gimp_prop_aspect_ratio_* to
2007-08-10  Martin Nordholts  <martinn@svn.gnome.org>

	* app/widgets/gimppropwidgets.[ch]: Merged gimp_prop_size_2d_* and
	gimp_prop_aspect_ratio_* to gimp_prop_number_pair_*.

	* app/tools/gimprectangleoptions.c (gimp_rectangle_options_gui):
	Use the merged gimp_prop_number_pair_entry_new.

svn path=/trunk/; revision=23184
2007-08-10 10:52:35 +00:00
Sven Neumann 4c10b41b37 minor cleanup.
2007-08-10  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpfiledialog.c (gimp_file_dialog_set_image): minor
	cleanup.

svn path=/trunk/; revision=23180
2007-08-10 08:27:11 +00:00
Sven Neumann 38f854e70a tweaked label positons.
2007-08-09  Sven Neumann  <sven@gimp.org>

	* app/gui/splash.c: tweaked label positons.

svn path=/trunk/; revision=23169
2007-08-09 11:17:08 +00:00
Sven Neumann d9f1ceabf6 tweaked spacings on the Color Management page.
2007-08-09  Sven Neumann  <sven@gimp.org>

	* app/dialogs/preferences-dialog.c: tweaked spacings on the Color
	Management page.

svn path=/trunk/; revision=23167
2007-08-09 09:50:27 +00:00
Martin Nordholts 93d4dc68de Renamed GimpRatioEntry to GimpNumberPairEntry, and generalized the code a
2007-08-08  Martin Nordholts  <martinn@svn.gnome.org>

	Renamed GimpRatioEntry to GimpNumberPairEntry, and generalized the
	code a lot, so that it can be used both for 'Fixed: Aspect ratio'
	and 'Fixed: Size'. Support is also added for having default values
	and a 'user overrided' value mode.

	* libgimpwidgets/gimpnumberpairentry.[ch]: Now contains the
	rewrite and generalization of GimpRatioEntry.
	(gimp_number_pair_entry_get_type)
	(gimp_number_pair_entry_new)
        (gimp_number_pair_entry_set_default_values)
	(gimp_number_pair_entry_set_values)
        (gimp_number_pair_entry_get_values): New libgimpwidget API.

	* app/widgets/gimppropwidgets.[ch] (gimp_prop_size_2d_new): Added
	new helper widget for setting up a GimpNumberPairEntry for the
	Fixed: Size entry in the Rectangle Options.

	* app/tools/gimprectangleoptions.c (gimp_rectangle_options_gui):
	Use the new gimp_prop_size_2d_entry for the Fixed: Size entry.

	* libgimpwidgets/gimpwidgets.def: Removed gimp_ratio_entry_* and
	added gimp_number_pair_entry_*.

	* libgimpwidgets/gimpwidgets.h * libgimpwidgets/gimpwidgetstypes.h
	* libgimpwidgets/Makefile.am (libgimpwidgets_2_0_la_sources)
	(libgimpwidgetsinclude_HEADERS): Updated accordingly.

svn path=/trunk/; revision=23154
2007-08-08 18:08:24 +00:00
Sven Neumann 46fc994030 use a text view in a scrolled window for the preview area.
2007-08-08  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpprofilechooserdialog.[ch]: use a text view in a
	scrolled window for the preview area.

svn path=/trunk/; revision=23152
2007-08-08 14:33:03 +00:00
Sven Neumann 86092afbcc further code cleanup
svn path=/trunk/; revision=23151
2007-08-08 13:13:09 +00:00
Martin Nordholts 17020f29b2 Migrate entry completion code and put responsability on clients to set
2007-08-08  Martin Nordholts  <martinn@svn.gnome.org>

	* libgimpwidgets/gimpratioentry.[ch]: Migrate entry completion
	code and put responsability on clients to set that up when needed.

	* app/tools/gimprectangleoptions.[ch]: Setup entry completion code
	manually for the GimpRatioEntry widgets by using
	(gimp_rectangle_options_setup_ratio_completion)
	(gimp_ratio_entry_history_select, gimp_ratio_entry_history_add):
	these new functions.

svn path=/trunk/; revision=23149
2007-08-08 12:52:25 +00:00
Sven Neumann 6213c7ab19 added buttons to unset the color profiles.
2007-08-08  Sven Neumann  <sven@gimp.org>

	* app/dialogs/preferences-dialog.c: added buttons to unset the
	color profiles.

	* app/widgets/gimppropwidgets.c
	* libgimpwidgets/gimppropwidgets.c: minor cleanup.

svn path=/trunk/; revision=23145
2007-08-08 09:56:51 +00:00
Sven Neumann 49bb407674 app/paint-funcs/Makefile.am
2007-08-08  Sven Neumann  <sven@gimp.org>

	* app/paint-funcs/Makefile.am

	* app/paint-funcs/sample-funcs.[ch]: renamed to 
	* app/paint-funcs/subsample-region.[ch]

	* app/paint-funcs/scale-funcs.[ch]: renamed to 
	* app/paint-funcs/scale-region.[ch]

	* app/paint-funcs/reduce-region.[ch]: new files based on a patch
	from Geert Jordaens (bug #464466).

	* app/base/tile-manager-preview.c
	* app/core/gimp-transform-region.c
	* app/core/gimpbrush-scale.c
	* app/core/gimpdrawable-preview.c
	* app/core/gimpdrawable.c: changed accordingly.

svn path=/trunk/; revision=23144
2007-08-08 08:35:45 +00:00
Martin Nordholts 75c759e87a Serialize Fixed: Width/Height/Size to config.
2007-08-08  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangleoptions.c
	(gimp_rectangle_options_iface_base_init): Serialize Fixed:
	Width/Height/Size to config.

svn path=/trunk/; revision=23143
2007-08-08 08:08:03 +00:00
Sven Neumann 5bb8cc59cb fixed reference count of the display filter stack.
2007-08-08  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell.c (gimp_display_shell_new): fixed
	reference count of the display filter stack.

svn path=/trunk/; revision=23142
2007-08-08 07:48:11 +00:00
Martin Nordholts d050042232 Remove fixed_aspect_property.
2007-08-08  Martin Nordholts  <martinn@svn.gnome.org>

	* app/widgets/gimppropwidgets.[ch]
	(gimp_prop_aspect_ratio_new)
	(gimp_prop_aspect_ratio_changed): Remove fixed_aspect_property.

	* app/tools/gimprectangleoptions.c (gimp_rectangle_options_gui):
	Changed accordingly.

svn path=/trunk/; revision=23141
2007-08-08 06:32:45 +00:00
Martin Nordholts e87d0a123a Use separate desired-fixed-size-width/height properties for Fixed: Size
2007-08-08  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangleoptions.[ch]: Use separate
	desired-fixed-size-width/height properties for Fixed: Size instead
	of sharing properties with Fixed: Width/Height.

	* app/tools/gimprectangletool.c: Use the two new properties for
	Fixed: Size.

svn path=/trunk/; revision=23140
2007-08-08 06:10:00 +00:00
Sven Neumann 2b2cc44ad0 app/core/gimppalette-import.c applied slightly modified version of a patch
2007-08-07  Sven Neumann  <sven@gimp.org>

	* app/core/gimppalette-import.c
	* app/core/gimppalette-load.[ch]: applied slightly modified version
	of a patch from Nicola Archibald that adds support for importing
	Adobe Color palette version 1 files (bug #316618).

svn path=/trunk/; revision=23134
2007-08-07 13:42:55 +00:00
Sven Neumann 900f54e69f as a workaround for bug #360106, set a timeout that presents the dialog
2007-08-07  Sven Neumann  <sven@gimp.org>

	* app/gui/gui-vtable.c (gui_pdb_dialog_new): as a workaround for
	bug #360106, set a timeout that presents the dialog window.

	* app/widgets/gimppdbdialog.c (gimp_pdb_dialog_set_property):
	formatting.

svn path=/trunk/; revision=23133
2007-08-07 13:15:47 +00:00
Sven Neumann 852170b6c6 return NULL if the parasite exists but it is empty.
2007-08-07  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimage.c (gimp_image_get_icc_profile): return NULL
	if the parasite exists but it is empty.

svn path=/trunk/; revision=23132
2007-08-07 09:58:39 +00:00
Sven Neumann 35425c7028 app/plug-in/Makefile.am new files defining the GimpPlugIn error domain.
2007-08-07  Sven Neumann  <sven@gimp.org>

	* app/plug-in/Makefile.am
	* app/plug-in/plug-in-error.[ch]: new files defining the
	GimpPlugIn error domain.

	* app/plug-in/plug-in-icc-profile.c (plug_in_icc_profile_apply_rgb):
	set an error code.

	* app/file/file-open.c (file_open_profile_apply_rgb): only do the
	profile conversion if color management is enabled. If the plug-in
	is missing, show a warning and disable color management.
	Fixes bug #434205.

	* modules/cdisplay_lcms.c (cdisplay_lcms_get_rgb_profile): check
	if we actually got a profile before checking its color space.

	* libgimpwidgets/gimpwidgetstypes.h: removed leftover typedef
	for GimpResolutionEntry.


svn path=/trunk/; revision=23130
2007-08-07 09:26:28 +00:00
Sven Neumann a737408eeb added GimpColorConfig and GimpColorManaged as construct-only properties.
2007-08-06  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpcolordisplay.[ch]: added GimpColorConfig 
and
	GimpColorManaged as construct-only properties.
	Deprecated gimp_color_display_new().

	* libgimpwidgets/gimpwidgets.def: updated for new symbols.

	* app/widgets/gimpcolordisplayeditor.c: use g_object_new() 
instead
	of gimp_color_display_new().

	* modules/cdisplay_lcms.c: use the image's embedded color 
profile
	for the display filter. Assume sRGB if no monitor profile is
	configured.

	* app/display/gimpdisplayshell.c: 
	* app/display/gimpdisplayshell-filter.[ch]: pass the display as
	color-managed object to the display filter.


svn path=/trunk/; revision=23127
2007-08-06 22:10:09 +00:00
Sven Neumann 2195c84297 added missing static qualifier.
2007-08-06  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimage.c: added missing static qualifier.

	* app/display/gimpdisplayshell.c
	* app/display/gimpdisplayshell-handlers.c: implement the
	GimpColorManaged interface and delegate it to GimpImage.


svn path=/trunk/; revision=23126
2007-08-06 19:23:22 +00:00
Hans Breuer 024ef60a49 updated msvc build
2007-08-05  Hans Breuer  <hans@breuer.org>

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


svn path=/trunk/; revision=23118
2007-08-05 15:16:02 +00:00
Martin Nordholts 9a350d71e3 When a new rectangle is created and Fixed: Size is used, set rectangle
2007-08-05  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c (gimp_rectangle_tool_motion): When
	a new rectangle is created and Fixed: Size is used, set rectangle
	function to RECT_MOVING.

svn path=/trunk/; revision=23117
2007-08-05 10:52:38 +00:00
Martin Nordholts f33ef1024c Update tool options after shrinking.
2007-08-05  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c (gimp_rectangle_tool_auto_shrink):
	Update tool options after shrinking.

svn path=/trunk/; revision=23116
2007-08-05 10:28:19 +00:00
Martin Nordholts d6915f0fbe Aligned widgets.
2007-08-05  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangleoptions.c (gimp_rectangle_options_gui):
	Aligned widgets.

svn path=/trunk/; revision=23115
2007-08-05 09:14:17 +00:00
Martin Nordholts 6f2171375b Update rectangle tool options to bring it closer to the spec. The major
2007-08-04  Martin Nordholts  <martinn@svn.gnome.org>

	Update rectangle tool options to bring it closer to the spec. The
	major change is the use of a 'Fixed:' check box and a 'Aspect
	ratio/Width/Height/Size' combo box. The check box is togglable
	with Shift while rubber-banding.

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_active_modifier_key): Set other side also
	when Shift is released.
	(gimp_rectangle_tool_update_options): Don't supress updates of
	tool options on fixed width/height/size
	(gimp_rectangle_tool_apply_fixed_height)
	(gimp_rectangle_tool_update_with_coord)
	(gimp_rectangle_tool_handle_general_clamping): Use new tool option
	interface and members.

	* app/tools/gimprectangleoptions.[ch]
	(gimp_rectangle_options_iface_base_init)
	(gimp_rectangle_options_install_properties)
	(gimp_rectangle_options_(get|set)_property): Remove and add
	relevant properties.
	(gimp_rectangle_options_private_finalize): Unref the new widgets
	used in tool options.
	(gimp_rectangle_options_fixed_rule_changed): New, update tool
	options depending on current option state.
	(gimp_rectangle_options_gui): Modified according to change log
	entry summary.
	(gimp_rectangle_options_unparent_fixed_rule_widgets): New helper.
	(gimp_rectangle_options_fixed_rule_active): New, clients should
	use this to find out if a certain fixed-mode is active.

	* app/tools/tools-enums.[ch]: Added GimpRectangleToolFixedRule.

svn path=/trunk/; revision=23114
2007-08-04 20:20:44 +00:00
Martin Nordholts 7debeded1e Don't apply fixed aspect on pending rectangles that are not being
2007-08-04  Martin Nordholts  <martinn@svn.gnome.org>

	Don't apply fixed aspect on pending rectangles that are not being
	rubber-banded, when this is changed in the rectangle tool options.

	* app/tools/gimprectangletool.c (gimp_rectangle_tool_options_notify):
	Don't synthesize motion for fixed aspect ratio options changes

	* app/tools/gimprectangleoptions.c (gimp_rectangle_options_gui): Removed
	callback to
	(gimp_rectangle_options_notify_aspect): which is not needed any more,
	and hence is removed.

svn path=/trunk/; revision=23113
2007-08-04 12:05:04 +00:00
Michael Natterer eb7d32e3b2 Make sure image thumbnails that are saved or given to plugins are
2007-08-02  Michael Natterer  <mitch@gimp.org>

	Make sure image thumbnails that are saved or given to plugins are
	constructed synchronously. Fixes bug #461703.

	* app/core/gimpprojection.c (gimp_projection_pickable_flush):
	invalidate the preview after constructing the projection.

	* app/core/gimpimagefile.c (gimp_imagefile_save_thumb)
	* tools/pdbgen/pdb/image.pdb (image_thumbnail): call
	gimp_pickable_flush() on the projection so is constructed now, not
	later.

	* app/pdb/image_cmds.c: regenerated.


svn path=/trunk/; revision=23105
2007-08-02 14:54:29 +00:00
Michael Natterer 26edfdec1a no need to set the tool cursor here, we already do that in init() and
2007-08-02  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpcroptool.c (gimp_crop_tool_cursor_update): no need
	to set the tool cursor here, we already do that in init() and
	never change it.

	* app/widgets/gimpcursor.c (gimp_cursor_new): don't show the move
	cursor and the move modifier at the same time. Some small
	cleanups.


svn path=/trunk/; revision=23104
2007-08-02 13:33:38 +00:00
Sven Neumann 4110a4b142 formatting, should have gone with the last commit
svn path=/trunk/; revision=23084
2007-07-31 15:41:22 +00:00
Sven Neumann e419ea20c9 app/tools/gimprectangleselecttool.c formatting.
2007-07-31  Sven Neumann  <sven@gimp.org>

	* app/tools/gimprectangleselecttool.c
	* app/tools/gimprectangletool.c: formatting.

svn path=/trunk/; revision=23083
2007-07-31 15:39:26 +00:00
Sven Neumann faed28c054 don't leak the GtkTreePath.
2007-07-31  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimptoolview.c (gimp_tool_view_eye_clicked): don't
	leak the GtkTreePath.

svn path=/trunk/; revision=23082
2007-07-31 12:49:36 +00:00
Sven Neumann 36e8e6989a don't call gp_quit_write() on a plug-in with a broken pipe. Fixes bug
2007-07-30  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimpplugin.[ch]: don't call gp_quit_write() on a
	plug-in with a broken pipe. Fixes bug #460878.

svn path=/trunk/; revision=23076
2007-07-30 16:24:14 +00:00
Sven Neumann c5e8bef567 cosmetics.
2007-07-30  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimage.c (gimp_image_drawable_update): cosmetics.


svn path=/trunk/; revision=23066
2007-07-30 07:04:22 +00:00
Sven Neumann 143c5f9173 app/file/file-open.c minor cleanups.
2007-07-29  Sven Neumann  <sven@gimp.org>

	* app/file/file-open.c
	* app/plug-in/plug-in-icc-profile.c: minor cleanups.


svn path=/trunk/; revision=23063
2007-07-29 17:20:29 +00:00
Michael Natterer 17287617d9 factored out utility function gimp_display_shell_update_focus() which sets
2007-07-27  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c: factored out utility
	function gimp_display_shell_update_focus() which sets the active
	tool into the proper state after the canvas received focus.

	(gimp_display_shell_canvas_tool_events): use it here instead of
	duplicating the code 3 times.

	(gimp_display_shell_ruler_button_press): use it here too so the
	move and color tools don't do weird things in click-to-focus
	mode (when FOCUS_IN is delivered after BUTTON_PRESS).


svn path=/trunk/; revision=23020
2007-07-27 09:39:12 +00:00
Sven Neumann bbdb6da18f moved common code into new utility function
2007-07-26  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-dnd.c: moved common code into new
	utility function gimp_display_shell_dnd_flush(). Also move focus
	to the image window from this function.

svn path=/trunk/; revision=23012
2007-07-26 10:52:39 +00:00
Sven Neumann f29621ae1f added a sanity check.
2007-07-26  Sven Neumann  <sven@gimp.org>

	* app/paint/gimpbrushcore.c (gimp_brush_core_interpolate): added a
	sanity check.

svn path=/trunk/; revision=23011
2007-07-26 10:20:54 +00:00
Sven Neumann 7e4e919152 added new procedure gimp-progress-end.
2007-07-25  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/pdb/progress.pdb: added new procedure gimp-progress-end.

	* app/pdb/progress_cmds.c
	* app/pdb/internal_procs.c
	* libgimp/gimpprogress_pdb.[ch]: regenerated.

	* plug-ins/print/print.[ch]
	* plug-ins/print/print-settings.[ch]: end the progress and save
	the settings from the "end-print" handler. The plug-in then
	appears finished but keeps running in the background until it has
	finished the print operation.

svn path=/trunk/; revision=22994
2007-07-25 10:48:25 +00:00
Michael Natterer c180bc4590 don't have the tool release ALT when the user releases CONTROL. Fixes
2007-07-25  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimptool.c (gimp_tool_set_active_modifier_state):
	don't have the tool release ALT when the user releases CONTROL.
	Fixes another stuck modifier instance and other modifier
	weirdness.


svn path=/trunk/; revision=22992
2007-07-25 00:39:01 +00:00
Sven Neumann f14d05ed52 INSTALL configure.in depend on gtk+ >= 2.10.13. Fixes bug #436242.
2007-07-24  Sven Neumann  <sven@gimp.org>

	* INSTALL
	* configure.in
	* app/gui/gui.c: depend on gtk+ >= 2.10.13. Fixes bug #436242.

	* configure.in: no need to AC_SUBST() GIMP_API_VERSION twice.

svn path=/trunk/; revision=22984
2007-07-24 13:46:47 +00:00
Sven Neumann 9b96fc8e4c minor code cleanup.
2007-07-23  Sven Neumann  <sven@gimp.org>

	* app/core/gimpprojection-construct.c: minor code cleanup.


svn path=/trunk/; revision=22976
2007-07-23 20:14:28 +00:00
Sven Neumann 7963f0fc30 added convenience function gimp_action_group_activate_action().
2007-07-23  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpactiongroup.[ch]: added convenience function
	gimp_action_group_activate_action().

svn path=/trunk/; revision=22973
2007-07-23 13:01:55 +00:00
Sven Neumann 46eb9b2f90 don't call strlen on a NULL font name.
2007-07-20  Sven Neumann  <sven@gimp.org>

	* app/text/gimptext.c (gimp_text_set_property): don't call strlen
	on a NULL font name.

svn path=/trunk/; revision=22968
2007-07-20 15:10:24 +00:00
Sven Neumann e2b9c20b43 fixed a gtk-doc comment.
2007-07-20  Sven Neumann  <sven@gimp.org>

	* app/tools/gimprectangletool.c: fixed a gtk-doc comment.


svn path=/trunk/; revision=22966
2007-07-20 13:18:43 +00:00
Sven Neumann e53f7a2c81 overwrite the menurc with the systemwide default. Only if that fails,
2007-07-20  Sven Neumann  <sven@gimp.org>

	* app/menus/menus.c (menus_clear): overwrite the menurc with the
	systemwide default. Only if that fails, delete the menurc file.

	* app/dialogs/preferences-dialog.c: string change.

	* app/core/gimp-user-install.c: formatting.

svn path=/trunk/; revision=22964
2007-07-20 12:41:08 +00:00
Sven Neumann 6b0e6990d1 remember whether a channel was active before quick mask was activated.
2007-07-20  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimage-quick-mask.[ch]: remember whether a channel
	was active before quick mask was activated. Fixes bug #134371.

svn path=/trunk/; revision=22961
2007-07-20 08:23:29 +00:00
Sven Neumann a5d10b2ff0 renamed gimp_image_active_drawable() to gimp_image_get_active_drawable().
2007-07-19  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimage.[ch]: renamed gimp_image_active_drawable() to
	gimp_image_get_active_drawable().

	* app/[lots of files]
	* tools/pdbgen/pdb/paths.pdb
	* tools/pdbgen/pdb/image.pdb: changed accordingly.

svn path=/trunk/; revision=22958
2007-07-19 14:59:51 +00:00
Sven Neumann f6c626fba3 chain up.
2007-07-19  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcolortool.c (gimp_color_tool_draw): chain up.

svn path=/trunk/; revision=22957
2007-07-19 09:09:26 +00:00
Sven Neumann 17d4af0080 added const qualifiers.
2007-07-18  Sven Neumann  <sven@gimp.org>

	* app/pdb/gimpprocedure.[ch] (gimp_procedure_set_strings): added
	const qualifiers.


svn path=/trunk/; revision=22956
2007-07-18 17:23:51 +00:00
Sven Neumann eb9e9fec7d advance_dest is a boolean
svn path=/trunk/; revision=22955
2007-07-18 15:48:44 +00:00
Sven Neumann b5e8ca6925 unified subsampling code.
2007-07-17  Sven Neumann  <sven@gimp.org>

	* app/paint-funcs/sample-funcs.c: unified subsampling code.


svn path=/trunk/; revision=22954
2007-07-18 15:39:19 +00:00
Sven Neumann 4ed227cf0e app/paint-funcs/Makefile.am app/paint-funcs/scale-funcs.[ch] moved
2007-07-17  Sven Neumann  <sven@gimp.org>

	* app/paint-funcs/Makefile.am
	* app/paint-funcs/scale-funcs.[ch]
	* app/paint-funcs/sample-funcs.[ch]: moved subsample_region() to
	new file and also moved subsample_indexed_region() there.

	* app/base/tile-manager-preview.c
	* app/core/gimpdrawable-preview.c: changed accordingly.


svn path=/trunk/; revision=22953
2007-07-18 12:47:00 +00:00
Sven Neumann 58ee85dfa6 added tile_manager_get_sub_preview().
2007-07-17  Sven Neumann  <sven@gimp.org>

	* app/base/tile-manager-preview.[ch]: added
	tile_manager_get_sub_preview().

	* app/core/gimpdrawable-preview.c: use the new function except 
for
	indexed drawables.


svn path=/trunk/; revision=22950
2007-07-17 20:33:10 +00:00
Sven Neumann b47a3e52e5 app/base/Makefile.am added new file that holds code to create a preview
2007-07-17  Sven Neumann  <sven@gimp.org>

	* app/base/Makefile.am
	* app/base/tile-manager-preview.[ch]: added new file that holds 
code
	to create a preview from a tile manager.

	* app/core/gimpbuffer.c
	* app/core/gimpimage-preview.c: use the new function instead of
	duplicating this code.


svn path=/trunk/; revision=22948
2007-07-17 19:38:10 +00:00
Sven Neumann cd7a6f3e6c use 64 bit integers to avoid an overflow. Fixes bug #457209.
2007-07-17  Sven Neumann  <sven@gimp.org>

	* app/paint-funcs/scale-funcs.c (scale_region_no_resample): use
	64 bit integers to avoid an overflow. Fixes bug #457209.

svn path=/trunk/; revision=22947
2007-07-17 16:52:39 +00:00
Sven Neumann ca8bac4c0c gracefully deal with empty colormaps.
2007-07-17  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpcolormapeditor.c: gracefully deal with empty
	colormaps.

svn path=/trunk/; revision=22946
2007-07-17 16:32:18 +00:00
Sven Neumann 9409179aa6 free the context list.
2007-07-17  Sven Neumann  <sven@gimp.org>

	* app/core/gimp.c (gimp_finalize): free the context list.

	* app/tools/gimprectangleoptions.c (gimp_rectangle_options_gui):
	removed unused vbox.

svn path=/trunk/; revision=22944
2007-07-17 11:15:15 +00:00
Simon Budig 340cd2f8e6 app/text/gimptext-private.h app/text/gimptextlayout.c Fix text rendering
2007-07-17  Simon Budig  <simon@gimp.org>

	* app/text/gimptext-private.h
	* app/text/gimptextlayout.c
	* app/text/gimptextlayout-render.c: Fix text rendering for xres != yres.


svn path=/trunk/; revision=22943
2007-07-17 11:00:56 +00:00
Sven Neumann 83898a0cf8 unref the context.
2007-07-17  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpmenudock.c (gimp_menu_dock_new): unref the context.

svn path=/trunk/; revision=22942
2007-07-17 10:55:21 +00:00
Sven Neumann f3c451becd use the tool-info identifier as the name of the tool-options object.
2007-07-17  Sven Neumann  <sven@gimp.org>

	* app/core/gimptoolinfo.c (gimp_tool_info_new): use the tool-info
	identifier as the name of the tool-options object.

	* app/paint/gimppaintoptions.c (gimp_paint_options_new): use the
	paint-info identifier as the name of the paint-options object.

	* app/paint/gimp-paint.c (gimp_paint_register): added parameter check.

	* app/tools/gimp-tools.c (gimp_tools_init): formatting.

svn path=/trunk/; revision=22941
2007-07-17 10:04:06 +00:00
Sven Neumann de7d46d6e2 plugged tiny memory leak.
2007-07-17  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimppluginprocedure.c
	(gimp_plug_in_procedure_set_file_proc): plugged tiny memory 
leak.

	* libgimpcolor/gimprgb.c (gimp_rgb_min) (gimp_rgb_max): 
formatting.


svn path=/trunk/; revision=22940
2007-07-17 07:22:20 +00:00
Sven Neumann b56e206d0b sync with the default template. Fixes bug #457286.
2007-07-16  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimage-new.c (gimp_image_new_get_last_template): sync
	with the default template. Fixes bug #457286.

svn path=/trunk/; revision=22938
2007-07-16 13:49:17 +00:00
Martin Nordholts 6b2187c1bd Added members to keep track of for what shell scale the handle sizes were
2007-07-15  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c (struct
	_GimpRectangleToolPrivate): Added members to keep track of for
	what shell scale the handle sizes were calculated. This is
	necessary so that in
	(gimp_rectangle_tool_control): we only update the handle sizes
	when the zoom level has changed. We must test this, because the
	tool is also paused/resumed when highlightning is on, and we don't
	want to update handle sizes just because highlightning happends to
	be on.
	(gimp_rectangle_tool_scale_has_changed): Added helper function.

svn path=/trunk/; revision=22933
2007-07-15 09:43:49 +00:00
Martin Nordholts 3a5d96d4f9 Check agains tool->display, this check was lost when this function was
2007-07-14  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_set_highlight): Check agains tool->display,
	this check was lost when this function was moved out of
	gimp_rectangle_tool_configure.

svn path=/trunk/; revision=22931
2007-07-14 20:15:08 +00:00
Martin Nordholts a8237b23b3 Also update rectangle handle sizes when canvas zoom is changed. (Forgot
2007-07-14  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c (gimp_rectangle_tool_control):
	Also update rectangle handle sizes when canvas zoom is
	changed. (Forgot that in previous commit.)

svn path=/trunk/; revision=22930
2007-07-14 16:29:04 +00:00
Martin Nordholts 5b3f4ea658 Made the rectangle tool handles not resize during rectangle manipulation,
2007-07-14  Martin Nordholts  <martinn@svn.gnome.org>

	Made the rectangle tool handles not resize during rectangle
	manipulation, as outlined in the spec, by separating highlight
	updating and handle size updating calls.

	* app/tools/gimprectangletool.c (gimp_rectangle_tool_configure):
	Renamed to
	(gimp_rectangle_tool_update_handle_sizes): and moved
	gimp_rectangle_tool_set_highlight out of it. These two are now
	called independantly.

svn path=/trunk/; revision=22929
2007-07-14 16:03:13 +00:00
Martin Nordholts 82430afc70 Fixed crash when creating a rectangle with constraints outside of canvas
2007-07-14  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c (gimp_rectangle_tool_clamp_width)
	(gimp_rectangle_tool_clamp_height): Fixed crash when creating a
	rectangle with constraints outside of canvas bounds.

svn path=/trunk/; revision=22928
2007-07-14 10:01:46 +00:00
Martin Nordholts 72ec24da5f Don't execute selection if a dead area is clicked.
2007-07-13  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_button_release): Don't execute selection if a
	dead area is clicked.

svn path=/trunk/; revision=22927
2007-07-13 20:49:32 +00:00
Martin Nordholts eed8dc9b68 Update handle sizes and highlight area also when Ctrl is released.
2007-07-13  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_active_modifier_key): Update handle sizes and
	highlight area also when Ctrl is released.

svn path=/trunk/; revision=22926
2007-07-13 19:07:02 +00:00
Sven Neumann 816f31318e Work around Pango appending " Not-Rotated" to font names:
2007-07-12  Sven Neumann  <sven@gimp.org>

	Work around Pango appending " Not-Rotated" to font names:

	* app/text/gimptext.c (gimp_text_set_property)
	* app/text/gimpfontlist.c (gimp_font_list_add_font): strip
	" Not-Rotated" from the font name.

svn path=/trunk/; revision=22918
2007-07-12 09:11:03 +00:00
Martin Nordholts 838d61670e Removed bitfieldized values from the SideToResize enum, they are
2007-07-11  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c: Removed bitfieldized values from
	the SideToResize enum, they are irrelevant. Also renamed
	HANDLE_SIZE to MAX_HANDLE_SIZE.

svn path=/trunk/; revision=22909
2007-07-11 05:09:50 +00:00
Martin Nordholts b62c673dcf Removed declaration of gimp_rectangle_tool_update_and_redraw;
forgot that in previous patch.

svn path=/trunk/; revision=22904
2007-07-08 22:03:52 +00:00
Martin Nordholts 3ae75615d9 Completely rewrote logic in gimp_rectangle_tool_motion, in effect also
2007-07-08  Martin Nordholts  <martinn@svn.gnome.org>

	Completely rewrote logic in gimp_rectangle_tool_motion, in effect
	also fixing bug #353936 and bug #398188. The general strategy now
	is to have specialized functions doing one thing, and one thing
	only.

	The patch also makes adjusting the rectangle through the keyboard
	and through the rectangle tool options follow tool options.

	* app/tools/gimprectangletool.c (gimp_rectangle_tool_motion):
	Completely refactored.

	(gimp_rectangle_tool_active_modifier_key):
	(gimp_rectangle_tool_update_options): Submit to tool options.

	(gimp_rectangle_tool_apply_coord)
	(gimp_rectangle_tool_clamp)
	(gimp_rectangle_tool_clamp_width)
	(gimp_rectangle_tool_clamp_height)
	(gimp_rectangle_tool_keep_inside)
	(gimp_rectangle_tool_keep_inside_horizontally)
	(gimp_rectangle_tool_keep_inside_vertically)
	(gimp_rectangle_tool_apply_fixed_width)
	(gimp_rectangle_tool_apply_fixed_height)
	(gimp_rectangle_tool_apply_aspect)
	(gimp_rectangle_tool_update_with_coord)
	(gimp_rectangle_tool_get_constraints)
	(gimp_rectangle_tool_handle_general_clamping): The new specialized
	functions.

svn path=/trunk/; revision=22903
2007-07-08 21:57:22 +00:00
Martin Nordholts d8803f29b6 Block gimp_rectangle_tool_options_notify when changing fixed-aspect
2007-07-08  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_active_modifier_key): Block
	gimp_rectangle_tool_options_notify when changing fixed-aspect
	through the shift key. Fixes bug #417168.


svn path=/trunk/; revision=22896
2007-07-08 13:38:58 +00:00
Michael Natterer 78be6549f1 renamed action "selection-editor-popup" to "selection-popup". Fixes bug
2007-07-08  Michael Natterer  <mitch@gimp.org>

	* app/actions/select-actions.c (select_actions): renamed action
	"selection-editor-popup" to "selection-popup". Fixes bug #454364.

	* app/widgets/gimpdockable.c (gimp_dockable_show_menu): warn when
	above bug happens instead of failing silently.


svn path=/trunk/; revision=22894
2007-07-08 12:23:44 +00:00
Sven Neumann b7c967a9de removed debug output. (gimp_container_tree_view_clear_items)
2007-07-06  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpcontainertreeview.c
	(gimp_container_tree_view_name_canceled): removed debug output.
	(gimp_container_tree_view_clear_items)
	(gimp_container_tree_view_remove_item): removed warning; the bug
	this warning referred to has been closed as WONTFIX.

svn path=/trunk/; revision=22889
2007-07-06 14:33:52 +00:00
Sven Neumann 9ab1cf582a marked two error messages as translatable strings.
2007-07-06  Sven Neumann  <sven@gimp.org>

	* app/xcf/xcf-load.c (xcf_load_image): marked two error messages
	as translatable strings.

	* libgimpbase/gimputils.c (gimp_any_to_utf8): insert a blank
	before the text that marks the string as invalid.

svn path=/trunk/; revision=22887
2007-07-06 10:02:31 +00:00
Sven Neumann 5a41fd121a don't count the number of repeated messages when the error messages are
2007-07-05  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimperrordialog.c (gimp_error_dialog_add): don't
	count the number of repeated messages when the error messages are
	being redirected to stderr already.

svn path=/trunk/; revision=22876
2007-07-05 15:39:22 +00:00
Sven Neumann 4512af8de1 return the number of bytes that have been read from the file.
2007-07-05  Sven Neumann  <sven@gimp.org>

	* app/xcf/xcf-read.c (xcf_read_int32) (xcf_read_int8): return the
	number of bytes that have been read from the file.

	* app/xcf/xcf-load.c (xcf_load_prop): return FALSE when reading fails.

svn path=/trunk/; revision=22873
2007-07-05 15:12:43 +00:00
Sven Neumann 933be6a806 allow the use of constants when specifying limits for a PDB type.
2007-07-05  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/pdb.pl (arg_parse): allow the use of constants when
	specifying limits for a PDB type.

	* tools/pdbgen/pdb/channel.pdb
	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/layer.pdb: use GIMP_MAX_IMAGE_SIZE as limit for
	image and drawable sizes.

	* tools/pdbgen/pdb/selection_tools.pdb: added missing include.

	* app/pdb/channel_cmds.c
	* app/pdb/image_cmds.c
	* app/pdb/layer_cmds.c
	* app/pdb/selection_tools_cmds.c: regenerated.

svn path=/trunk/; revision=22870
2007-07-05 14:31:42 +00:00
Sven Neumann a2c401b0f6 changed the highlighting of the side handles to follow changes in the
2007-07-05  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpdrawtool.c (gimp_draw_tool_draw_corner): changed
	the highlighting of the side handles to follow changes in the
	specification.

	* app/tools/gimprectangletool.c (gimp_rectangle_tool_draw): cosmetics.

svn path=/trunk/; revision=22867
2007-07-05 11:49:00 +00:00
Sven Neumann 62dbf9e330 applied patch from Jens Persson that adds a LUT to apply the jitter in
2007-07-04  Sven Neumann  <sven@gimp.org>

	* app/paint/gimpbrushcore.[ch]: applied patch from Jens Persson
	that adds a LUT to apply the jitter in polar coordinates (bug 
#434532).


svn path=/trunk/; revision=22859
2007-07-04 06:30:34 +00:00
Martin Nordholts 25fca1a6e2 Started taking GimpRectangleTool towards the new specification. The side
2007-06-30  Martin Nordholts  <martinn@svn.gnome.org>

	Started taking GimpRectangleTool towards the new specification.
	The side handles now have the same width and height as the
	corresponding corner handles, and the size of the side handles do
	not span across the whole rectangle. Side handles also have a
	limited mimimum size, just as corner handles.

	* app/tools/gimprectangletool.c (gimp_rectangle_tool_oper_update,
	gimp_rectangle_tool_draw, gimp_rectangle_tool_configure,
	gimp_rectangle_tool_get_anchor): Changed accordingly.

	* app/tools/gimpdrawtool.c (gimp_draw_tool_draw_corner): Changed
	accordingly.

svn path=/trunk/; revision=22856
2007-06-30 18:13:41 +00:00
Martin Nordholts eeb6d20d8b Made GimpRectangleTools remember where the "other side" is when
2007-06-29  Martin Nordholts  <martinn@svn.gnome.org>

	Made GimpRectangleTools remember where the "other side" is when
	fixed-center is turned on, and reset the "other side" to that position
	when fixed-center is turned off again. Fixes bug 398183.

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_button_press): Remember "other side".
	(gimp_rectangle_tool_active_modifier_key): When fixed-center is turned
	off, reset "other side".
	(gimp_rectangle_tool_get_other_side)
	(gimp_rectangle_tool_get_other_side_coord)
	(gimp_rectangle_tool_set_other_side_coord): New functions.

svn path=/trunk/; revision=22854
2007-06-29 16:37:50 +00:00
Sven Neumann 8f17d458dc fixed spelling error.
2007-06-27  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpimagecommenteditor.[ch]: fixed spelling error.

	* app/widgets/gimpcolorpanel.[ch]: applied slightly modified patch
	from Tor Lillqvist that changes the ColorPanel to provide live
	updates (bug #451568).

svn path=/trunk/; revision=22850
2007-06-27 11:54:41 +00:00
Sven Neumann c8102e617a use GTK_STOCK_PROPERTIES instead of GTK_STOCK_EDIT.
2007-06-27  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpcontrollerlist.c (gimp_controller_list_init):
	use GTK_STOCK_PROPERTIES instead of GTK_STOCK_EDIT.

svn path=/trunk/; revision=22849
2007-06-27 10:50:29 +00:00
Sven Neumann b51110157d as suggested by the HIG, use Alt-Return as default shortcut for the Image
2007-06-27  Sven Neumann  <sven@gimp.org>

	* app/actions/image-actions.c: as suggested by the HIG, use
	Alt-Return as default shortcut for the Image Properties dialog.

svn path=/trunk/; revision=22848
2007-06-27 10:41:17 +00:00
Sven Neumann 12813eb1cd show the full filename instead of the basename and ellipsize it. The
2007-06-27  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpimagepropview.c: show the full filename instead
	of the basename and ellipsize it. The tooltip was too hard to
	discover.

svn path=/trunk/; revision=22847
2007-06-27 10:07:07 +00:00
Sven Neumann 718ca7c790 app/widgets/Makefile.am app/widgets/widgets-types.h new widget derived
2007-06-27  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpimagecommenteditor.[ch]: new widget derived from
	GimpImageParasiteView. Basically the code that used to live in
	image-properties-dialog.c.

	* app/dialogs/image-properties-dialog.c: use the comment editor.

svn path=/trunk/; revision=22846
2007-06-27 09:46:00 +00:00
Sven Neumann 02b3fcea43 allow to edit the comment.
2007-06-27  Sven Neumann  <sven@gimp.org>

	* app/dialogs/image-properties-dialog.c: allow to edit the comment.

	* app/widgets/gimpimageprofileview.c: enable line wrapping.

svn path=/trunk/; revision=22845
2007-06-27 09:06:32 +00:00
Michael Natterer 4625597ab8 update the image, not the drawable so we avoid constantly invalidating the
2007-06-27  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimagemap.c (gimp_image_map_clear)
	(gimp_image_map_do): update the image, not the drawable so we
	avoid constantly invalidating the drawable preview.

	* app/tools/gimpimagemaptool.c (gimp_image_map_tool_response):
	invalidate the drawable preview here.

	* app/paint/gimppaintcore.c (gimp_paint_core_paste)
	(gimp_paint_core_replace): clean up drawable offset handling code.


svn path=/trunk/; revision=22843
2007-06-26 22:41:06 +00:00
Michael Natterer 8c8d3786d9 Removed useless image flushing which caused the image preview to be
2007-06-27  Michael Natterer  <mitch@gimp.org>

	Removed useless image flushing which caused the image preview to
	be updated needlessly:

	* app/core/gimpimagemap.c (gimp_image_map_do): don't flush the
	image when the idle rendering is completed, emit our own "flush"
	signal instead just as for the incremental display updates.

	* app/tools/gimpimagemaptool.c (gimp_image_map_tool_notify_preview):
	when switching off the preview don't flush the image, only flush
	projection and display.


svn path=/trunk/; revision=22842
2007-06-26 22:14:35 +00:00
Sven Neumann 6a61d33aea app/dialogs/image-properties-dialog.c added margins to text views.
2007-06-26  Sven Neumann  <sven@gimp.org>

	* app/dialogs/image-properties-dialog.c
	* app/widgets/gimpimageprofileview.c: added margins to text 
views.


svn path=/trunk/; revision=22841
2007-06-26 22:09:43 +00:00
Michael Natterer d8c632cb93 Invalidate the image preview after the projection is completely
2007-06-26  Michael Natterer  <mitch@gimp.org>

	Invalidate the image preview after the projection is
	completely constructed. Fixes bug #449141.

	* app/core/gimpmarshal.list: add VOID:BOOLEAN

	* app/core/gimpimage.[ch]: add boolean parameter
	invalidate_preview to the "flush" signal.

	* app/core/gimpprojection.[ch]: add boolean member
	invalidate_preview to the GimpProjection struct. Set it to TRUE if
	it was TRUE in the image's "flush" signal. When the projection is
	completely constructed after a flush, invalidate the image's
	preview.

	* app/display/gimpdisplay-handlers.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimpimagedock.c
	* app/widgets/gimpimageeditor.c: changed callback signatures
	accordingly.


svn path=/trunk/; revision=22840
2007-06-26 21:39:51 +00:00
Sven Neumann 48738dbbdd use the name if the description is empty.
2007-06-26  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpimageprofileview.c 
(gimp_image_profile_view_query):
	use the name if the description is empty.


svn path=/trunk/; revision=22839
2007-06-26 20:16:43 +00:00
Sven Neumann d2cb639b5e unset the active color picker when the dialog is unmapped. Fixes bug
2007-06-26  Sven Neumann  <sven@gimp.org>

	* app/tools/gimplevelstool.c: unset the active color picker when
	the dialog is unmapped. Fixes bug #451272.

	* app/tools/gimpimagemaptool.c: formatting.

svn path=/trunk/; revision=22838
2007-06-26 16:02:14 +00:00
Sven Neumann bb4b805243 app/dialogs/image-properties-dialog.c show comment and color profile in
2007-06-26  Sven Neumann  <sven@gimp.org>

	* app/dialogs/image-properties-dialog.c
	* app/widgets/gimpimageprofileview.[ch]: show comment and color
	profile in text views instead of using labels. Deals much better
	with longer texts.

svn path=/trunk/; revision=22837
2007-06-26 15:07:58 +00:00
Sven Neumann fd19774c3f set the full name as tooltip.
2007-06-26  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpimagepropview.c
	(gimp_image_prop_view_label_set_filename): set the full name as
	tooltip.


svn path=/trunk/; revision=22835
2007-06-26 07:22:54 +00:00
Sven Neumann 7aa01e3120 applied patch from Geert Jordaens that reimplements the algorithm to
2007-06-25  Sven Neumann  <sven@gimp.org>

	* app/core/gimp-transform-resize.c: applied patch from Geert
	Jordaens that reimplements the algorithm to determine the largest
	rectangle. Fixes bug #412473.

svn path=/trunk/; revision=22834
2007-06-25 15:36:53 +00:00
Sven Neumann 09578ea070 removed extra check for gthread and fold it into the GLIB and GTK checks.
2007-06-25  Sven Neumann  <sven@gimp.org>

	* configure.in: removed extra check for gthread and fold it into
	the GLIB and GTK checks.

	* */Makefile.am: changed accordingly.

	* app/main.c (main): always call g_thread_init().

svn path=/trunk/; revision=22832
2007-06-25 12:41:59 +00:00
Sven Neumann 5544877753 initialize the destination pixel region properly. Fixes bug #450291.
2007-06-25  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpiscissorstool.c (gradmap_tile_validate): 
initialize
	the destination pixel region properly. Fixes bug #450291.


svn path=/trunk/; revision=22830
2007-06-25 07:32:56 +00:00
Sven Neumann bc159e1c93 app/tools/gimpiscissorstool.c (gradmap_tile_validate) (find_max_gradient)
2007-06-25  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpiscissorstool.c (gradmap_tile_validate)
	(find_max_gradient) minor code cleanup.


svn path=/trunk/; revision=22829
2007-06-25 07:04:42 +00:00
Sven Neumann 8755f459ac minor code cleanup.
2007-06-25  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpiscissorstool.c (gradmap_tile_validate): minor
	code cleanup.


svn path=/trunk/; revision=22828
2007-06-25 06:57:31 +00:00
Martin Nordholts a42d1b45ed Only consider layers with combine mode Normal when testing if any layer
2007-06-22  Martin Nordholts  <martinn@svn.gnome.org>

	* app/core/gimpprojection-construct.c (gimp_projection_initialize): Only
	consider layers with combine mode Normal when testing if any layer
	covers the entire specified area. Fixes bug #440154.

svn path=/trunk/; revision=22824
2007-06-22 10:11:36 +00:00
Sven Neumann e74f8a034c note that loading fonts may take a while (on Win32 at least).
2007-06-22  Sven Neumann  <sven@gimp.org>

	* app/core/gimp.c (gimp_restore): note that loading fonts may 
take
	a while (on Win32 at least).


svn path=/trunk/; revision=22823
2007-06-22 07:29:05 +00:00
Martin Nordholts 17f91f0491 Refactored the two helper functions render_image_init_info(_full)? and
2007-06-21  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-render.c (gimp_display_shell_render):
	Refactored the two helper functions render_image_init_info(_full)?
	and always use the shell base scale for the shell->mask. Fixes
	bug #448417.

svn path=/trunk/; revision=22822
2007-06-21 20:27:19 +00:00
Sven Neumann 610feafb3e app/base/base-types.h app/base/tile-manager.[ch] removed accessors for
2007-06-21  Sven Neumann  <sven@gimp.org>

	* app/base/base-types.h
	* app/base/tile-manager.[ch]
	* app/base/tile-manager-private.h: removed accessors for user_data.
	Instead pass the user_data when setting the validation proc.

	* app/base/tile-pyramid.c
	* app/core/gimpchannel.c
	* app/core/gimpprojection.c
	* app/core/gimpselection.c
	* app/tools/gimpiscissorstool.c: changed accordingly.

svn path=/trunk/; revision=22820
2007-06-21 14:36:58 +00:00
Sven Neumann f2e9d552b2 app/base/tile-manager.[ch] removed "level_below" from the TileManager
2007-06-21  Sven Neumann  <sven@gimp.org>

	* app/base/tile-manager.[ch]
	* app/base/tile-manager-private.h: removed "level_below" from the
	TileManager struct.
	
	* app/base/tile-pyramid.c: use the TileManager's user_data to
	store a pointer to the lower level.

svn path=/trunk/; revision=22819
2007-06-21 14:13:01 +00:00
Sven Neumann 173c9d40aa use gboolean for boolean parameters.
2007-06-21  Sven Neumann  <sven@gimp.org>

	* app/base/tile-manager.[ch]: use gboolean for boolean parameters.

	* app/base/tile-pyramid.c (tile_pyramid_get_memsize): pass TRUE
	for sparse to tile_manager_get_memsize().

	* app/base/tile.c
	* app/base/tile-swap.c: minor cleanups.

	* app/core/gimpprojection.c (gimp_projection_get_tiles_at_level):
	inline the creation of the TilePyramid.

svn path=/trunk/; revision=22818
2007-06-21 14:02:14 +00:00
Michael Natterer 52f7746e76 Make sure the image preview is only invalidated for visible image changes
2007-06-21  Michael Natterer  <mitch@gimp.org>

	Make sure the image preview is only invalidated for visible
	image changes (as it was before the change below).

	* app/core/gimpimage.h (struct GimpImageFlushAccumulator): added
	member "gboolean preview_invalidated".

	* app/core/gimpimage.c (gimp_image_update): set it to TRUE here.

	(gimp_image_real_flush): inavlidate the preview only if
	flush_accum.preview_invalidated is TRUE.


svn path=/trunk/; revision=22817
2007-06-21 13:35:31 +00:00
Michael Natterer 1a13f51e02 Part one of fix for bug #449141 (fixes the projection but still leaves
2007-06-21  Michael Natterer  <mitch@gimp.org>

	Part one of fix for bug #449141 (fixes the projection but still
	leaves some image previews unupdated).

	* app/core/gimpimage.c (lots of functions)
	* app/paint/gimppaintcore.c (gimp_paint_core_finish)
	* app/file/file-open.c (file_open_sanitize_image): removed calls
	to gimp_viewable_invalidate_preview(image).

	* app/file/file-open.c (file_open_sanitize_image): update and
	flush the entire image instead. Load plug-ins are not required to
	call gimp_drawable_update() or anything else to make sure the
	projection is up-to-date.

	* app/core/gimpimage.c (gimp_image_real_flush): inavlidate the
	image preview here because we now create it from the projection.
	(this is still not the entirely correct place though).


svn path=/trunk/; revision=22815
2007-06-21 10:09:27 +00:00
Sven Neumann 263567109d introduced local variables in an attempt to make the code a little more
2007-06-21  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcurvestool.c: introduced local variables in an
	attempt to make the code a little more readable.

svn path=/trunk/; revision=22814
2007-06-21 09:27:55 +00:00
Sven Neumann 4fb71201b4 use the term "layer masks".
2007-06-21  Sven Neumann  <sven@gimp.org>

	* app/dialogs/scale-dialog.c: use the term "layer masks".


svn path=/trunk/; revision=22813
2007-06-21 08:03:36 +00:00
Sven Neumann 4738f65724 documentation.
2007-06-20  Sven Neumann  <sven@gimp.org>

	* app/base/tile-pyramid.[ch]: documentation.


svn path=/trunk/; revision=22812
2007-06-21 07:03:23 +00:00
Sven Neumann 3f747cf0e3 added missing implementations for 1 and 3 bytes per pixel.
2007-06-20  Sven Neumann  <sven@gimp.org>

	* app/base/tile-pyramid.c (tile_pyramid_write_quarter): added missing
	implementations for 1 and 3 bytes per pixel.

svn path=/trunk/; revision=22808
2007-06-20 16:25:53 +00:00
Sven Neumann 3038dc0e80 app/base/Makefile.am app/base/base-types.h image pyramid code split out of
2007-06-20  Sven Neumann  <sven@gimp.org>

	* app/base/Makefile.am
	* app/base/base-types.h
	* app/base/tile-pyramid.[ch]: image pyramid code split out of
	GimpProjection.

	* app/core/gimpprojection.[ch]: use the new TilePyramid.

svn path=/trunk/; revision=22807
2007-06-20 16:15:16 +00:00
Sven Neumann 923b06bd0e removed unused function tile_mark_valid().
2007-06-20  Sven Neumann  <sven@gimp.org>

	* app/base/tile.[ch]: removed unused function tile_mark_valid().

	* app/base/tile-manager.[ch]: removed unused public API and cleaned
	up internals used for invalidating tiles.

svn path=/trunk/; revision=22806
2007-06-20 14:25:07 +00:00
Sven Neumann 9c8b7e133e removed unused field swap_num.
2007-06-20  Sven Neumann  <sven@gimp.org>

	* app/base/tile-private.h (struct _Tile): removed unused field
	swap_num.

	* app/base/tile.c (tile_new): initialise most of the Tile struct
	in the allocator.

svn path=/trunk/; revision=22805
2007-06-20 11:59:50 +00:00
Tor Lillqvist bafefcd579 In GLib 2.13 pipe() is no longer defined as a macro in gwin32.h. Define it
2007-06-20  Tor Lillqvist  <tml@novell.com>

	* app/plug-in/gimpplugin.c: In GLib 2.13 pipe() is no longer
	defined as a macro in gwin32.h. Define it here in that case.


svn path=/trunk/; revision=22802
2007-06-20 09:22:34 +00:00
Sven Neumann 2025f54f69 set proper step and page increments in the scale entry for the corner
2007-06-19  Sven Neumann  <sven@gimp.org>

	* app/tools/gimprectangleselectoptions.c
	(gimp_rect_select_options_gui): set proper step and page
	increments in the scale entry for the corner radius.


svn path=/trunk/; revision=22801
2007-06-19 06:22:59 +00:00
Sven Neumann 50e8d93b54 free live-wire Curve segment using g_slice_free().
2007-06-18  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpiscissorstool.c (gimp_iscissors_tool_draw): free
	live-wire Curve segment using g_slice_free().


svn path=/trunk/; revision=22799
2007-06-18 19:58:06 +00:00
Sven Neumann 94c5cd064d use gimp_message() for error handling.
* app/file/file-open.c (file_open_from_command_line): use
	gimp_message() for error handling.


svn path=/trunk/; revision=22797
2007-06-18 19:32:00 +00:00
Sven Neumann 5c1a08555f take the image size into account and return the level that is actually
2007-06-16  Sven Neumann  <sven@gimp.org>

	* app/core/gimpprojection.c (gimp_projection_get_level): take 
the
	image size into account and return the level that is actually 
used.
	Fixes bug #448185.


svn path=/trunk/; revision=22792
2007-06-16 13:38:13 +00:00
Michael Natterer 93c3380a97 make sure all view actions are insensitive when there is no view.
2007-06-15  Michael Natterer  <mitch@gimp.org>

	* app/actions/view-actions.c (view_actions_update): make sure all
	view actions are insensitive when there is no view.


svn path=/trunk/; revision=22787
2007-06-15 13:04:05 +00:00
Sven Neumann c2a0689c2d micro optimization.
2007-06-14  Sven Neumann  <sven@gimp.org>

	* app/core/gimpdatafactory.c
	(gimp_data_factory_refresh_cache_remove): micro optimization.

svn path=/trunk/; revision=22779
2007-06-14 11:30:12 +00:00
Michael Natterer 258895fb2e remove calls to container_freeze() and container_thaw()
2007-06-14  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdatafactory.c (gimp_data_factory_data_foreach):
	remove calls to container_freeze() and container_thaw()

	(gimp_data_factory_data_reload)
	(gimp_data_factory_data_free): add them here instead.

	(gimp_data_factory_data_save): remove freeze/thaw calls here
	without any replacement. The list doesn't change by saving its
	items. Fixes insanely long quit time when there are many data
	objects.


svn path=/trunk/; revision=22778
2007-06-14 11:12:31 +00:00
Sven Neumann aaaf8605ae implement the GimpColorManaged interface.
2007-06-14  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimage.c: implement the GimpColorManaged 
interface.


svn path=/trunk/; revision=22777
2007-06-14 07:06:58 +00:00
Sven Neumann d32097528e if GIMP_UNSTABLE is undefined before calling exit() call tile_swap_exit(),
2007-06-13  Sven Neumann  <sven@gimp.org>

	* app/app.c (app_exit_after_callback): if GIMP_UNSTABLE is
	undefined before calling exit() call tile_swap_exit(), not
	base_exit().

svn path=/trunk/; revision=22773
2007-06-13 14:01:37 +00:00
Sven Neumann c5a48bbea0 call tile_cache_exit() before tile_swap_exit(). tile_cache_exit() may use
2007-06-13  Sven Neumann  <sven@gimp.org>

	* app/base/base.c (base_exit): call tile_cache_exit() before
	tile_swap_exit(). tile_cache_exit() may use the tile swap in
	pathological cases.

	* app/base/tile-cache.c (tile_cache_exit): warn if the tile cache
	is not empty.

svn path=/trunk/; revision=22772
2007-06-13 13:36:00 +00:00
Sven Neumann 39fb488662 minor cleanup.
2007-06-13  Sven Neumann  <sven@gimp.org>

	* app/base/tile-cache.c: minor cleanup.

svn path=/trunk/; revision=22771
2007-06-13 13:16:05 +00:00
Sven Neumann c59478af2a added errors_exit() and unset the Gimp reference. Errors may occur after
2007-06-13  Sven Neumann  <sven@gimp.org>

	* app/errors.[ch]: added errors_exit() and unset the Gimp
	reference. Errors may occur after the Gimp object has been finalized.

	* app/app.c (app_run): call errors_exit().

svn path=/trunk/; revision=22768
2007-06-13 09:27:32 +00:00
Sven Neumann 345f007049 eliminate calls to sqrt().
2007-06-12  Sven Neumann  <sven@gimp.org>

	* app/base/boundary.c (simplify_subdivide): eliminate calls to sqrt().

svn path=/trunk/; revision=22764
2007-06-12 10:20:36 +00:00
Sven Neumann 5d14b8d2a4 Applied patch from Zbigniew Chyla that further improves the
2007-06-11  Sven Neumann  <sven@gimp.org>

        Applied patch from Zbigniew Chyla that further improves the
        boundary_sort() performance (bug #388538):

        * base/boundary.c (cmp_xy): use "y" coordinate as more 
significant
        one, i.e. compare (ay, ax) to (by, bx), not (ax, ay) to (bx, 
by).

        * configure.in: bumped version to 2.3.19.


svn path=/trunk/; revision=22762
2007-06-11 21:29:59 +00:00
Sven Neumann 13e518b138 initialize width and height to zero. Fixes bug #446005.
2007-06-11  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpviewrenderer.c (gimp_view_renderer_init):
	initialize width and height to zero. Fixes bug #446005.


svn path=/trunk/; revision=22757
2007-06-11 20:01:54 +00:00
Sven Neumann 54caf4fbd4 don't disable image previews when layer previews are disabled. We do not
2007-06-11  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimage-preview.c: don't disable image previews 
when
	layer previews are disabled. We do not any longer create the 
image
	preview from the layer previews.

	* app/core/gimpimagefile.c
	* app/widgets/gimpthumbbox.c
	* tools/pdbgen/pdb/image.pdb: thumbnail rendering is not any
	longer disabled if layer previews are turned off.

	* app/config/gimprc-blurbs.h (THUMBNAIL_SIZE_BLURB): removed 
note
	that has become invalid by the change above.

	* app/core/gimpitem-preview.c: cosmetics.

	* app/pdb/image_cmds.c: regenerated.


svn path=/trunk/; revision=22756
2007-06-11 19:26:31 +00:00
Sven Neumann e23f585f07 removed unused variable.
2007-06-11  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpscaletool.c: removed unused variable.

svn path=/trunk/; revision=22754
2007-06-11 16:07:59 +00:00
Sven Neumann 04a509b0fe cosmetics
svn path=/trunk/; revision=22751
2007-06-11 07:12:19 +00:00
Sven Neumann 2cb54ef2a4 Applied the second patch from Zbigniew Chyla. Improves boundary_sort()
2007-06-11  Sven Neumann  <sven@gimp.org>

	Applied the second patch from Zbigniew Chyla. Improves
	boundary_sort() performance by reducing its time complexity from
	O(n*n) to ~O(n*log n) (bug #388538).

	* app/base/boundary.c (boundary_sort): prepare two arrays of
	pointers to segments, each sorted by different pair of
	coordinates ((x1,y1) and (x2,y2)); use new find_segment(),
	passing both arrays to it.
	(find_segment): new implementation that employs binary search to
	find matching segment, using sorted arrays prepared by
	boundary_sort().


svn path=/trunk/; revision=22750
2007-06-11 07:04:20 +00:00
Sven Neumann 65385a4781 added gimp_image_resize_to_selection().
2007-06-09  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimage-resize.[ch]: added
	gimp_image_resize_to_selection().

	* app/actions/image-actions.c
	* app/actions/image-commands.[ch]
	* app/widgets/gimphelp-ids.h
	* menus/image-menu.xml.in: added an action and a menu item for 
it.
	Fixes bug #335672.

	* plug-ins/common/align_layers.c: resolved a conflicting 
mnemonic.


svn path=/trunk/; revision=22749
2007-06-09 17:17:30 +00:00
Sven Neumann d7c712403c fixed parameter passed to gimp_image_get_background(). Fixes bug #445719.
2007-06-09  Sven Neumann  <sven@gimp.org>

	* app/core/gimpselection.c (gimp_selection_extract): fixed
	parameter passed to gimp_image_get_background(). Fixes bug 
#445719.


svn path=/trunk/; revision=22748
2007-06-09 16:43:25 +00:00
Sven Neumann d3f8ba267e same change here.
* app/core/gimpprojection.c (gimp_projection_invalidate):
	same change here.

svn path=/trunk/; revision=22746
2007-06-08 12:04:42 +00:00
Sven Neumann 5300747967 use a bit shift instead of a shift and a division.
2007-06-08  Sven Neumann  <sven@gimp.org>

	* app/core/gimpprojection.c (gimp_projection_alloc_levels): use
	a bit shift instead of a shift and a division.

svn path=/trunk/; revision=22745
2007-06-08 11:53:11 +00:00
Sven Neumann 3ce8d74b14 #define GIMP_VIEWABLE_PRIORITY_IDLE, which is even lower than
2007-06-08  Sven Neumann  <sven@gimp.org>

	* app/core/gimpviewable.h: #define GIMP_VIEWABLE_PRIORITY_IDLE,
	which is even lower than G_PRIORITY_LOW.

	* app/core/gimpundo.c
	* app/widgets/gimpviewrenderer.c: create previews with
	GIMP_VIEWABLE_PRIORITY_IDLE so that they are run after the
	projection has been invalidated.


svn path=/trunk/; revision=22743
2007-06-07 23:05:02 +00:00
Sven Neumann 345855a711 formatting.
2007-06-07  Sven Neumann  <sven@gimp.org>

	* app/base/tile-manager.c: formatting.


svn path=/trunk/; revision=22742
2007-06-07 21:55:46 +00:00
Sven Neumann a9cec3c05f folded into a single loop.
2007-06-07  Sven Neumann  <sven@gimp.org>

	* app/core/gimpprojection.c (gimp_projection_validate_pyramid_tile):
	folded into a single loop.

svn path=/trunk/; revision=22740
2007-06-07 15:43:55 +00:00
Sven Neumann e20966e7c9 some loop unrolling
svn path=/trunk/; revision=22739
2007-06-07 15:29:25 +00:00
Sven Neumann a67a70b559 weight the pixels by their alpha value.
2007-06-07  Sven Neumann  <sven@gimp.org>

	* app/core/gimpprojection.c (gimp_projection_write_quarter):
	weight the pixels by their alpha value.

svn path=/trunk/; revision=22738
2007-06-07 15:20:49 +00:00