Commit Graph

11242 Commits

Author SHA1 Message Date
Michael Natterer d3d9724ee1 set proc_frame->procedure to NULL *after* calling gimp_plug_in_cleanup().
2008-10-23  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimppluginprocframe.c
	(gimp_plug_in_proc_frame_dispose): set proc_frame->procedure to
	NULL *after* calling gimp_plug_in_cleanup(). Fixes the crash on
	windows in bug #557061 (but not the bug).


svn path=/trunk/; revision=27376
2008-10-23 17:13:19 +00:00
Michael Natterer 3b053f79fa don't #include "libgimpwidgets/gimpwidgets.h".
2008-10-23  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell.h: don't #include
	"libgimpwidgets/gimpwidgets.h".

	* app/display/gimpdisplayshell-draw.c
	* app/display/gimpdisplayshell-scale.c
	* app/tools/gimpeditselectiontool.c: include it here.


svn path=/trunk/; revision=27375
2008-10-23 09:42:55 +00:00
Sven Neumann 45b41a76d1 Bug 556896 – Dialogs don't get minimized with single image window
2008-10-23  Sven Neumann  <sven@gimp.org>

	Bug 556896 – Dialogs don't get minimized with single image 
window

	* app/display/gimpdisplay-foreach.[ch]: added utility function 
to
	get the number of visible (not withdrawn or iconified) displays.

	* app/widgets/gimpdialogfactory.[ch]: added functions to hide 
and
	show the dock windows. Changed gimp_dialog_factories_toggle() to
	use the new functions.

	* app/display/gimpdisplayshell.c
	(gimp_display_shell_window_state_event): hide the docks if the
	last display is iconified. Unhide them if a display is
	uniconified. Probably needs more work ...


svn path=/trunk/; revision=27374
2008-10-23 08:39:46 +00:00
Sven Neumann 06a983e34e removed check for Carbon and added a test for the target OS being Darwin
2008-10-23  Sven Neumann  <sven@gimp.org>

	* configure.in: removed check for Carbon and added a test for 
the
	target OS being Darwin instead.

	* app/config/gimpguiconfig.c: use PLATFORM_OSX instead of
	HAVE_CARBON to determine the default "web-browser" command.


svn path=/trunk/; revision=27370
2008-10-22 22:04:30 +00:00
Martin Nordholts 2427cc5495 Bug 556804 – Zoom drop down doesn't update
* app/display/gimpdisplayshell-scale.c
* app/display/gimpdisplayshell-callbacks.c: Fix calls to
gimp_display_shell_scaled() when Resize window on zoom is enabled.

svn path=/trunk/; revision=27366
2008-10-22 19:02:00 +00:00
Sven Neumann 883cb6da5b set box->progress to NULL in destroy() and check for progress being NULL
2008-10-22  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpprogressbox.c: set box->progress to NULL in
	destroy() and check for progress being NULL in various places so
	we don't crash on API calls after the widget is destroyed.


svn path=/trunk/; revision=27362
2008-10-22 11:01:15 +00:00
Sven Neumann 90bf1e42e5 Bug 555246 – gimp crashes when a file is opened while a preview is
2008-10-22  Sven Neumann  <sven@gimp.org>

	Bug 555246 – gimp crashes when a file is opened while a preview 
is
	generating

	* app/widgets/gimpthumbbox.c: set box->progress to NULL in
	destroy() and check for progress being NULL in various places so
	we don't crash on API calls after the widget is destroyed.


svn path=/trunk/; revision=27360
2008-10-22 07:26:49 +00:00
Sven Neumann b6ae85b74c app/core/gimpimagefile.c formatting.
2008-10-22  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimagefile.c
	* app/plug-in/gimpplugin-progress.c: formatting.


svn path=/trunk/; revision=27357
2008-10-22 06:00:06 +00:00
Michael Natterer ff8e73ad0c set dialog->progress to NULL in destroy() and check for progress being
2008-10-21  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpfiledialog.c: set dialog->progress to NULL in
	destroy() and check for progress being NULL in various places so
	we don't crash on API calls after the widget is destroyed.


svn path=/trunk/; revision=27354
2008-10-21 19:23:44 +00:00
Sven Neumann 3bf04bd98c GEGL_IS_PARAM_SPEC_PATH() became GEGL_IS_PARAM_SPEC_FILE_PATH().
2008-10-21  Sven Neumann  <sven@sven>

	* app/tools/gimpgegltool.c (gimp_param_spec_duplicate):
	GEGL_IS_PARAM_SPEC_PATH() became GEGL_IS_PARAM_SPEC_FILE_PATH().


svn path=/trunk/; revision=27351
2008-10-21 14:25:23 +00:00
Sven Neumann 88340798f2 for the combo-box, strip known prefixes from the GEGL operation names and
2008-10-21  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpgegltool.c (gimp_gegl_tool_dialog): for the
	combo-box, strip known prefixes from the GEGL operation names 
and
	use icons instead.


svn path=/trunk/; revision=27350
2008-10-21 11:34:00 +00:00
Sven Neumann be7fb50cbb ref the GimpDisplay and GimpImageFile objects while holding a reference to
2008-10-21  Sven Neumann  <sven@gimp.org>

	* app/actions/file-commands.c (file_open_recent_cmd_callback): 
ref
	the GimpDisplay and GimpImageFile objects while holding a
	reference to them. Fixes a potential crash if GIMP is closed 
while
	the image is being loaded.


svn path=/trunk/; revision=27346
2008-10-21 07:51:08 +00:00
Martin Nordholts 7c351200b4 menus/image-menu.xml.in app/actions/debug-actions.c Create dump and
* menus/image-menu.xml.in
* app/actions/debug-actions.c
* app/actions/debug-commands.c: Create dump and non-dump
groups. Also added a tooltip to the Benchmark Projection action
and removed report of number of layers.

svn path=/trunk/; revision=27343
2008-10-20 17:21:21 +00:00
Sven Neumann 4c357c5f0d don't make the font size even smaller. We already use a smaller font in
2008-10-20  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimperrorconsole.c (gimp_error_console_init): 
don't
	make the font size even smaller. We already use a smaller font 
in
	the dock windows.


svn path=/trunk/; revision=27341
2008-10-20 13:48:55 +00:00
Sven Neumann 8c6a7e8843 use pointer coordinates from the passed event instead of calling
2008-10-20  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpgradienteditor.c (view_events) 
(control_events):
	use pointer coordinates from the passed event instead of calling
	gtk_widget_get_pointer().


svn path=/trunk/; revision=27340
2008-10-20 13:31:59 +00:00
Michael Natterer c75ce5af09 app/actions/debug-actions.c app/actions/debug-commands.[ch] rename
2008-10-19  Michael Natterer  <mitch@gimp.org>

	* app/actions/debug-actions.c
	* app/actions/debug-commands.[ch]
	* menus/image-menu.xml.in: rename
	debug-dump-projection-benchmarking to debug-benchmark-projection.


svn path=/trunk/; revision=27334
2008-10-19 17:05:03 +00:00
Martin Nordholts 509c025f39 Remove local channel offset defines.
* app/gegl/gimpoperationadditionmode.c: Remove local channel
offset defines.

svn path=/trunk/; revision=27331
2008-10-19 15:29:08 +00:00
Martin Nordholts 1bb7794cc3 Refer to the input as 'in' instead of 'src', the layer as 'layer' instead
* app/gegl/gimpoperation*mode.c: Refer to the input as 'in'
instead of 'src', the layer as 'layer' instead of 'aux', and the
result as 'out' instead of 'dest'.

svn path=/trunk/; revision=27329
2008-10-19 14:16:13 +00:00
Martin Nordholts e38ca5490a Rename the convenient channel offset defines from FOO_PIX to FOO as this
* app/base/base-types.h: Rename the convenient channel offset
defines from FOO_PIX to FOO as this increases readability.

* app/base/color-balance.c
* app/base/colorize.c
* app/base/desaturate.c
* app/base/hue-saturation.c
* app/base/siox.c
* app/base/threshold.c

* app/core/gimp-edit.c
* app/core/gimp-transform-region.c
* app/core/gimpchannel.c
* app/core/gimpdrawable-bucket-fill.c
* app/core/gimpdrawable-convert.c
* app/core/gimpdrawable-stroke.c
* app/core/gimpdrawable.c
* app/core/gimpimage-convert.c
* app/core/gimpimage.c
* app/core/gimppalette-import.c
* app/core/gimppickable.c

* app/gegl/gimpoperation*mode.c
* app/gegl/gimpoperationcolorbalance.c
* app/gegl/gimpoperationcolorize.c
* app/gegl/gimpoperationhuesaturation.c
* app/gegl/gimpoperationlevels.c
* app/gegl/gimpoperationposterize.c
* app/gegl/gimpoperationthreshold.c

* app/paint-funcs/subsample-region.c

* app/paint/gimpclone.c
* app/paint/gimppaintbrush.c

* app/widgets/gimpviewrenderer.c: Adapt.

svn path=/trunk/; revision=27324
2008-10-19 13:47:09 +00:00
Martin Nordholts bbbeb06973 There is nothing magic or ugly about the convenient defines, remove
* app/base/base-types.h: There is nothing magic or ugly about the
convenient defines, remove comments saying so.

svn path=/trunk/; revision=27322
2008-10-19 13:25:03 +00:00
Martin Nordholts 87d4596563 Refer to the input as 'in' instead of 'src', the layer as 'layer' instead
* app/gegl/gimpoperationadditionmode.c: Refer to the input as 'in'
instead of 'src', the layer as 'layer' instead of 'aux', and the
result as 'out' instead of 'dest'. The old terminology clashes
with at least the SVG 1.2 compositing terminology [1] and there is
no reason for creating confusion.

[1] http://www.w3.org/TR/2004/WD-SVG12-20041027/rendering.html

svn path=/trunk/; revision=27321
2008-10-19 11:22:09 +00:00
Martin Nordholts 7501c23bd9 Use local variants of channel offset defines, namely RED instead of
* app/gegl/gimpoperationadditionmode.c: Use local variants of
channel offset defines, namely RED instead of RED_PIX etc, to
increase readability.

svn path=/trunk/; revision=27320
2008-10-19 10:57:43 +00:00
Martin Nordholts 48fee852c3 In addition to priting how long it takes to validate the projection, also
* app/actions/debug-commands.c
(debug_dump_projection_benchmarking_cmd_callback): In addition to
priting how long it takes to validate the projection, also print
the number of layers in the image.

svn path=/trunk/; revision=27319
2008-10-19 08:40:01 +00:00
Martin Nordholts 9d91e6b343 menus/image-menu.xml.in app/actions/debug-actions.c
* menus/image-menu.xml.in
* app/actions/debug-actions.c
* app/actions/debug-commands.h
* app/actions/debug-commands.c: Added a 'Dump Projection
Benchmarking' item to the Debug Menu so that we can test how
different GEGL graph setups affect performance.

svn path=/trunk/; revision=27317
2008-10-19 07:59:08 +00:00
Sven Neumann e25c82e21a Applied patch from Alexia Death as attached to bug #471344:
2008-10-18  Sven Neumann  <sven@gimp.org>

	Applied patch from Alexia Death as attached to bug #471344:
	
	* app/core/Makefile.am
	* app/core/gimpcoords-interpolate.[ch]: new files with
	interpolation code taken from ...

	* app/vectors/gimpbezierstroke.c: ... here.

	* app/Makefile.am (AM_LDFLAGS): make it link.


svn path=/trunk/; revision=27314
2008-10-18 18:46:15 +00:00
Sven Neumann 8f425553a7 added signal Gimp::image-opened to announce that an image has been loaded
2008-10-17  Sven Neumann  <sven@sven>

	* app/core/gimp.[ch]: added signal Gimp::image-opened to 
announce
	that an image has been loaded and a display was created for it.

	* app/file/file-open.c (file_open_with_proc_and_display): call
	gimp_opened() to emit the new signal.

	* app/gui/dbus-service.xml
	* app/gui/gimpdbusservice.[ch]: propagate the 'opened' signal to
	listeners of the "org.gimp.GIMP.UI" DBus service.

	* app/gui/gui-unique.c: formatting.


svn path=/trunk/; revision=27297
2008-10-17 12:03:08 +00:00
Sven Neumann 584c70fed2 just some cleanup.
2008-10-16  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpviewrenderervectors.c
	(gimp_view_renderer_vectors_draw): just some cleanup.


svn path=/trunk/; revision=27293
2008-10-15 23:04:40 +00:00
Sven Neumann f55b832bd3 Bug 556248 – Scaling gives 'jagged' edges
2008-10-16  Sven Neumann  <sven@gimp.org>

	Bug 556248 – Scaling gives 'jagged' edges

	* app/paint-funcs/scale-region.c (scale): calculate pixel
	contributions based on pixel centers, not on pixel origins.


svn path=/trunk/; revision=27292
2008-10-15 22:43:27 +00:00
Michael Natterer f2e93c0e78 add the gegl: prefix here too.
2008-10-15  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpgegltool.c (gimp_gegl_tool_operation_blacklisted):
	add the gegl: prefix here too.

	(gimp_gegl_tool_get_config): canonicalize the type name of the
	created config class or we crash.


svn path=/trunk/; revision=27286
2008-10-14 23:28:23 +00:00
Michael Natterer 1ccfc38561 add the gegl: prefix here too.
2008-10-15  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpgegltool.c (gimp_gegl_tool_operation_blacklisted):
	add the gegl: prefix here too.


svn path=/trunk/; revision=27285
2008-10-14 23:14:34 +00:00
Michael Natterer 880a699cae configure.in require GEGL >= 0.0.21.
2008-10-14  Michael Natterer  <mitch@gimp.org>

	* configure.in
	* app/sanity.c: require GEGL >= 0.0.21.

	* app/core/gimpchannel.c
	* app/core/gimpdrawable-brightness-contrast.c
	* app/core/gimpdrawable-invert.c
	* app/core/gimpimage.c
	* app/core/gimpimagemap.c
	* app/core/gimplayer.c
	* app/gegl/gimp-gegl-utils.c
	* app/tools/gimpbrightnesscontrasttool.c: GEGL operation names
	are now "gegl:"-prefixed.

	* app/core/gimpimagemap.c: set the node's "dont-cache" property
	unconditionally.


svn path=/trunk/; revision=27284
2008-10-14 22:44:42 +00:00
Sven Neumann ce4c2c3bfc let new docks appear at the pointer position.
2008-10-14  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpdialogfactory.c 
(gimp_dialog_factory_add_dialog):
	let new docks appear at the pointer position.


svn path=/trunk/; revision=27282
2008-10-14 21:39:14 +00:00
Michael Natterer 5fa6af0e1f add a default implementation of GimpDrawable::get_node() which contains a
2008-10-14  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdrawable.[ch]: add a default implementation of
	GimpDrawable::get_node() which contains a layer mode node.
	Implement GimpItem::visibility_changed() and turn the node into a
	nop when the drawable is invisible. Added public function
	gimp_drawable_get_mode_node() so subclasses can plug stuff
	into its "aux" pad.

	* app/core/gimplayer.[ch]
	* app/core/gimpchannel.[ch]: changed accordingly (remove
	duplicated member and code that is now in GimpDrawable).


svn path=/trunk/; revision=27277
2008-10-14 18:32:07 +00:00
Michael Natterer 79463b2065 remove function gimp_bpp_to_babl_format_linear() and add "gboolean linear"
2008-10-13  Michael Natterer  <mitch@gimp.org>

	* app/gegl/gimp-gegl-utils.[ch]: remove function
	gimp_bpp_to_babl_format_linear() and add "gboolean linear"
	parameter to gimp_bpp_to_babl_format().

	* app/gegl/gimpoperationtilesink.c (process)
	* app/gegl/gimpoperationtilesource.c (prepare): simply pass
	self->linear to above changed function instead of selecting
	between the two old functions.


svn path=/trunk/; revision=27275
2008-10-14 09:19:37 +00:00
Sven Neumann 121785c0ed comments.
2008-10-14  Sven Neumann  <sven@gimp.org>

	* app/signals.c (gimp_init_signal_handlers): comments.


svn path=/trunk/; revision=27274
2008-10-14 07:29:59 +00:00
Sven Neumann 3f256652e6 removed prototype for gimp_sigfatal_handler()
svn path=/trunk/; revision=27271
2008-10-13 19:49:51 +00:00
Sven Neumann f6e08757a1 app/Makefile.am new files with code split out of main.c.
2008-10-13  Sven Neumann  <sven@gimp.org>

	* app/Makefile.am
	* app/signals.[ch]: new files with code split out of main.c.

	* app/main.c: changed accordingly.


svn path=/trunk/; revision=27270
2008-10-13 19:32:33 +00:00
Martin Nordholts bce95343c8 Update with a new version that is the best known so far (maybe it's even
* app/gegl/gimpoperationadditionmode.c
(gimp_operation_addition_mode_process): Update with a new version
that is the best known so far (maybe it's even correct?).

svn path=/trunk/; revision=27269
2008-10-13 19:27:43 +00:00
Sven Neumann b387734c3d Bug 547967 – Improve app/paint-funcs/ maintainability
2008-10-13  Sven Neumann  <sven@gimp.org>

	Bug 547967 – Improve app/paint-funcs/ maintainability

	Applied patch from Luidnel Maignan that splits the legacy code 
for
	layer modes into new files.
	
	* app/paint-funcs/Makefile.am
	* app/paint-funcs/layer-modes.[ch]
	* app/paint-funcs/paint-funcs-utils.h: new files with code taken
	from ...

	* app/paint-funcs/paint-funcs-generic.h
	* app/paint-funcs/paint-funcs.c: ... these two files.


svn path=/trunk/; revision=27268
2008-10-13 18:51:32 +00:00
Michael Natterer 6e6c921396 remove warning because the missing layer modes are now "implemented", ha
2008-10-13  Michael Natterer  <mitch@gimp.org>

	* app/gegl/gimp-gegl-utils.c (gimp_layer_mode_to_gegl_operation):
	remove warning because the missing layer modes are now
	"implemented", ha ha.


svn path=/trunk/; revision=27252
2008-10-12 23:09:25 +00:00
Michael Natterer 3f9e82004e renamed this class...
2008-10-12  Michael Natterer  <mitch@gimp.org>

	* app/gegl/gimpoperationpointcomposer.[ch]: renamed this class...

	* app/gegl/gimpoperationlayermode.[ch]: ...to this and add
	an own process() virtual function so we are free to hack even
	more badly in order to support legacy layer modes and proper
	ones which do meningfiul things to alpha. Simply redirect
	GeglOperationPointComposer's compose() calls to our own vfunc
	for now.

	* app/gegl/gegl-types.h
	* app/gegl/Makefile.am: changed accordingly.

	* app/gegl/gimpoperation*mode.[ch]: changed parent class and
	implemented process() method accordingly.


svn path=/trunk/; revision=27251
2008-10-12 20:26:27 +00:00
Michael Natterer 931482e5d0 Removed these accidentially commited files.
svn path=/trunk/; revision=27249
2008-10-12 19:53:08 +00:00
Michael Natterer 138781daf9 commit some #if 0'ed experimental code.
2008-10-12  Michael Natterer  <mitch@gimp.org>

	* app/gegl/gimpoperationadditionmode.c: commit some #if 0'ed
	experimental code.

	* app/actions/view-commands.c (view_use_gegl_cmd_callback): use
	gimp_image_update(), simply exposing the shell doesn't reconstruct
	the projection.


svn path=/trunk/; revision=27247
2008-10-12 19:01:22 +00:00
Michael Natterer ef1df223a8 add a "use_gegl" boolean member.
2008-10-11  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpprojection.h: add a "use_gegl" boolean member.

	* app/core/gimpprojection-construct.c (gimp_projection_construct):
	use the boolean instead of hardcoding FALSE.

	* app/actions/view-actions.c
	* app/actions/view-commands.[ch]: add a "Use GEGL" action and
	callback which sets the boolean and exposes the display.

	* menus/image-menu.xml.in: add it to the "View" menu.


svn path=/trunk/; revision=27242
2008-10-11 19:17:42 +00:00
Martin Nordholts ae75c33bfd Implement this one.
* app/gegl/gimpoperationadditionmode.c
(gimp_operation_addition_mode_process): Implement this one.

svn path=/trunk/; revision=27241
2008-10-11 19:12:49 +00:00
Michael Natterer 7a260b8f9e it's gimp-screen-node not gimp-screen_mode.
2008-10-11  Michael Natterer  <mitch@gimp.org>

	* app/gegl/gimp-gegl-utils.c (gimp_layer_mode_to_gegl_operation):
	it's gimp-screen-node not gimp-screen_mode.


svn path=/trunk/; revision=27240
2008-10-11 17:30:12 +00:00
Michael Natterer 414cc45abf add an empty abstract GeglOperationPointComposer subclass which can be
2008-10-11  Michael Natterer  <mitch@gimp.org>

	* app/gegl/gimpoperationpointcomposer.[ch]: add an empty abstract
	GeglOperationPointComposer subclass which can be used to hook in
	common debug or test or whatever code for below layer modes.

	* app/gegl/gimpoperation*mode.[ch]: add empty stubs of layer mode
	operations which do nothing but copying input to output.

	* app/gegl/Makefile.am
	* app/gegl/gegl-types.h: add them here and reordered things a bit.

	* app/gegl/gimp-gegl.c (gimp_gegl_init): register the new
	operations.

	* app/gegl/gimp-gegl-utils.c (gimp_layer_mode_to_gegl_operation):
	return the new operations.


svn path=/trunk/; revision=27239
2008-10-11 17:20:20 +00:00
Michael Natterer 2d24853f0e make it abstract.
2008-10-11  Michael Natterer  <mitch@gimp.org>

	* app/gegl/gimpoperationpointfilter.c: make it abstract.


svn path=/trunk/; revision=27232
2008-10-11 14:59:27 +00:00
Michael Natterer 90a194a631 don't return non-existing layer modes (in fact, return "normal" for all
2008-10-11  Michael Natterer  <mitch@gimp.org>

	* app/gegl/gimp-gegl-utils.c (gimp_layer_mode_to_gegl_operation):
	don't return non-existing layer modes (in fact, return "normal"
	for all modes).


svn path=/trunk/; revision=27231
2008-10-11 14:48:50 +00:00
Michael Natterer 0e88239524 add a projection node and implement GimpDrawable::get_node(). Reconfigure
2008-10-11  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpchannel.[ch]: add a projection node and
	implement GimpDrawable::get_node(). Reconfigure the node in
	visibility_changed(), set_color(), set_opacity() and
	set_show_masked().

	* app/core/gimpimage.c (gimp_image_get_graph): enable code that
	projects the channels stack on top of the layer stack.

	* app/core/gimpprojection-construct.c: remove the call to
	gimp_projection_construct_channels() from the GEGL code path. Also
	don't touch proj->construct_flag.


svn path=/trunk/; revision=27230
2008-10-11 10:29:19 +00:00
Michael Natterer e28e864ac6 remove obsolete assertion and redundant cast.
2008-10-11  Michael Natterer  <mitch@gimp.org>

	* app/core/gimplayer.c (gimp_layer_get_node): remove obsolete
	assertion and redundant cast.


svn path=/trunk/; revision=27229
2008-10-11 10:23:01 +00:00
Michael Natterer 302bda6c66 add GimpContainer::add() implementation, it's needed after all even though
2008-10-11  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdrawablestack.c: add GimpContainer::add()
	implementation, it's needed after all even though everybody uses
	gimp_container_insert() on drawable stacks.

	(gimp_drawable_stack_remove_node): no need to have a special check
	for newly added nodes, this can't happen any more now that we have
	an add() impl.

	(gimp_drawable_stack_get_graph): free the reverse list.


svn path=/trunk/; revision=27228
2008-10-11 10:18:46 +00:00
Michael Natterer 26de288d8b Fix old bug in the GimpContainer implementation that wasn't visible before
2008-10-11  Michael Natterer  <mitch@gimp.org>

	Fix old bug in the GimpContainer implementation that wasn't
	visible before the drawable stack completly b0rked when removing
	the second-last item:

	* app/core/gimpcontainer.c: add default implementations of ::add()
	and ::remove() and update container->num_children there instead of
	in the gimp_container_add() and _remove() wrapper functions.
	This way not only external callbacks connected to the "add" and
	"remove" signals are called with the correct num_children, also
	implemtations of ::add() and ::remove() in subclass have the right
	number available before/after upchaining. Add paranoia code to the
	wrapper functions which check if the subclass reall chains up.

	* app/core/gimplist.c: chain up in add() and remove().


svn path=/trunk/; revision=27227
2008-10-11 10:14:21 +00:00
Martin Nordholts a07e8586a5 Initialize 'index'.
* app/widgets/gimpdockseparator.c (gimp_dock_separator_drag_drop):
Initialize 'index'.

svn path=/trunk/; revision=27226
2008-10-11 08:42:57 +00:00
Martin Nordholts 8b459318d4 Add a GtkAnchorType member to GimpDockSeparator that specifies where a
* app/widgets/gimpdockseparator.c (gimp_dock_separator_new): Add a
GtkAnchorType member to GimpDockSeparator that specifies where a
dropped dockable shall be inserted.

(gimp_dock_separator_drag_drop): Get rid of the ugly hack where
the role of a given separator was based on its position as a child
in its container. Simply decide what role the separator has by
loooking at its anchor-member.

* app/widgets/gimpdock.c (gimp_dock_init)
(gimp_dock_add_book): Give the GimpDockSeparators their
appropriate roles directly at their construction.

svn path=/trunk/; revision=27218
2008-10-10 23:10:21 +00:00
Michael Natterer 012581b1b9 simplify by getting rid of code duplication.
2008-10-10  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdrawablestack.c
	(gimp_drawable_stack_add_node)
	(gimp_drawable_stack_remove_node): simplify by getting rid of code
	duplication.


svn path=/trunk/; revision=27217
2008-10-10 21:53:34 +00:00
Michael Natterer a037de0f18 move all the code that creates a graph of drawables and all
2008-10-10  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdrawablestack.[ch]: move all the code that creates
	a graph of drawables and all adding/removing/reordering code from
	GimpImage to this file.

	* app/core/gimpimage.c: remove the code here and use the layer
	stack's subgraph instead. Add #if 0'ed code that blends the
	channels on top of that but that doesn't work because channels
	don't provide nodes yet.


svn path=/trunk/; revision=27216
2008-10-10 21:18:24 +00:00
Michael Natterer 513c1b80f6 app/core/core-types.h app/core/Makefile.am new GimpList subclass stub
2008-10-10  Michael Natterer  <mitch@gimp.org>

	* app/core/core-types.h
	* app/core/Makefile.am
	* app/core/gimpdrawablestack.[ch]: new GimpList subclass stub
	which will manage the subgraphs of layers and channels and is also
	the first step towards layer tree.

	* app/core/gimpimage.c (gimp_image_init): keep the layers and
	channels in GimpDrawableStacks instead of plain GimpLists.


svn path=/trunk/; revision=27212
2008-10-10 20:04:03 +00:00
Michael Natterer b479b7b346 add virtual function GimpDrawable::get_node() which returns a node to be
2008-10-10  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdrawable.[ch]: add virtual function
	GimpDrawable::get_node() which returns a node to be plugged into
	the projection.

	* app/core/gimplayer.[ch]: remove public get_node() api and
	implement the virtual function instead.

	* app/core/gimpimage.c: changed accordingly.


svn path=/trunk/; revision=27211
2008-10-10 19:36:17 +00:00
Michael Natterer ac745422b9 flush the image after setting active items back from temporarily selected
2008-10-10  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpmovetool.c (gimp_move_tool_button_release): flush
	the image after setting active items back from temporarily
	selected ones. Fixes menu item sensitivity.


svn path=/trunk/; revision=27209
2008-10-10 15:41:03 +00:00
Michael Natterer 5ad366c642 implement GimpItem::visibility-changed and turn the layer's node into a
2008-10-10  Michael Natterer  <mitch@gimp.org>

	* app/core/gimplayer.c: implement GimpItem::visibility-changed
	and turn the layer's node into a nop when the layer is invisible.

	(gimp_layer_get_node): connect the stuff to a nop here too for
	invisible layers.


svn path=/trunk/; revision=27208
2008-10-10 13:52:13 +00:00
Michael Natterer 73a9bcf327 Bug 554983 – Layers Projection using GEGL
2008-10-10  Michael Natterer  <mitch@gimp.org>

	Bug 554983 – Layers Projection using GEGL

	First projection using GEGL, wheeeee. Disabled by default because
	it doesn't work with floating selection (and will not, FS
	refactoring is in the queue).

	* app/core/gimpimage.[ch]: add gimp_image_get_graph() which
	returns a GeglNode representing the image's projection.

	(gimp_image_add_layer_node)
	(gimp_image_remove_layer_node): new utility functions to add and
	remove layer nodes to/from the graph.

	(gimp_image_add_layer)
	(gimp_image_remove_layer)
	(gimp_image_position_layer): call them to keep the graph up to date.

	* app/core/gimpdrawable.c (gimp_drawable_real_update): invalidate
	the source node.

	* app/core/gimpprojection.[ch]: keep a projection graph around and
	add gimp_projection_get_sink_node() which returns the node that
	writes to the projection tiles.

	* app/core/gimpprojection-construct.c: add
	gimp_projection_construct_gegl() which is a few-liner that uses a
	GeglProcessor to run the projection graph.

	(gimp_projection_construct): call the new function (disabled by
	default).


svn path=/trunk/; revision=27207
2008-10-10 12:24:56 +00:00
Michael Natterer dba9e0c5e8 add new functions gimp_image_get_layer_by_index(), _channel_by_index() and
2008-10-10  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage.[ch]: add new functions
	gimp_image_get_layer_by_index(), _channel_by_index() and
	_vectors_by_index().

	* app/core/gimpprojection-construct.c
	* app/display/gimpdisplayshell-layer-select.c
	* app/xcf/xcf-load.c: use them instead of looking the items up
	in image->container and casting the return value.


svn path=/trunk/; revision=27206
2008-10-10 11:45:00 +00:00
Michael Natterer f2a6b781e4 the "shift" operation's x and y properties are doubles not ints.
2008-10-10  Michael Natterer  <mitch@gimp.org>

	* app/core/gimplayer.c (gimp_layer_translate)
	(gimp_layer_get_node): the "shift" operation's x and y properties
	are doubles not ints.

	(gimp_layer_apply_mask): properly disconnect the mask node.

	(gimp_layer_set_opacity): the opacity node has a "value" property,
	not "opacity".


svn path=/trunk/; revision=27205
2008-10-10 11:30:56 +00:00
Michael Natterer 517e58cdeb Address Bug 554983 – Layers Projection using GEGL
2008-10-09  Michael Natterer  <mitch@gimp.org>

	Address Bug 554983 – Layers Projection using GEGL

	* app/gegl/gimp-gegl-utils.[ch]: add (imcomplete) function
	gimp_layer_mode_to_gegl_operation() from bug #554983.

	* app/core/gimpdrawable.[ch]: add gimp_drawable_get_source_node()
	which returns a GimpOperationTileSource for the drawable's
	tiles.

	(gimp_drawable_real_set_tiles)
	(gimp_drawable_configure): set the node's "tiles" property.

	* app/core/gimplayer.[ch]: add gimp_layer_get_node() which returns
	a GeglNode with proxy "input" and "output" pads to be plugged
	into the projection graph. The node has children for opacity,
	mask, layer mode and layer offset.

	(gimp_layer_translate)
	(gimp_layer_add_mask)
	(gimp_layer_apply_mask)
	(gimp_layer_set_opacity)
	(gimp_layer_set_mode): reconfigure the respective nodes.

	* app/core/gimpimage.[ch]: keep a "graph" node around and destroy
	it in finalize(). Not even a stub, just a silly GEGL dependency.


svn path=/trunk/; revision=27204
2008-10-09 20:44:23 +00:00
Michael Natterer 5503e6a055 Add GEGL_CFLAGS and #includes as if gimpdrawable.h and gimpimage.h had a
2008-10-09  Michael Natterer  <mitch@gimp.org>

	Add GEGL_CFLAGS and #includes as if gimpdrawable.h and gimpimage.h
	had a GEGL dependency (they will have in the next commit, but I
	wanted to keep the commit separate).

	* app/dialogs/Makefile.am
	* app/file/Makefile.am
	* app/gui/Makefile.am
	* app/menus/Makefile.am
	* app/paint/Makefile.am
	* app/plug-in/Makefile.am
	* app/text/Makefile.am
	* app/vectors/Makefile.am
	* app/widgets/Makefile.am
	* app/xcf/Makefile.am: add GEGL_CFLAGS.

	* app/actions/*.c
	* app/core/*.c
	* app/dialogs/*.c
	* app/display/*.c
	* app/file/*.c
	* app/gui/*.c
	* app/menus/*.c
	* app/paint/*.c
	* app/pdb/gimppdb-utils.c
	* app/pdb/gimpprocedure.c
	* app/plug-in/*.c
	* app/text/*.c
	* app/tools/*.c
	* app/vectors/*.c
	* app/widgets/*.c
	* app/xcf/*.c: add <gegl.h> or replace <glib-object.h> by <gegl.h>
	to all files which include a drawable subclass or gimpimage.h

	* tools/pdbgen/app.pl: include <gegl.h> instead of <glib-object.h>
	in all generated files.

	* app/pdb/*-cmds.c: regenerated.

	* data/images/gimp-splash.png: the goat is still sleeping.
	By Aurore Derriennic.


svn path=/trunk/; revision=27202
2008-10-09 20:24:04 +00:00
Michael Natterer 0e4a35a2d8 Remove the last code duplication from the undo system (or if not the last
2008-10-09  Michael Natterer  <mitch@gimp.org>

	Remove the last code duplication from the undo system (or if not
	the last then at least the most ugly):

	* app/core/gimpimage.[ch] (gimp_image_add_layer,channel,vectors):
	add "gboolean push_undo" parameter and add the item without
	touching undo if it's TRUE. Changed assertions from
	g_object_is_floating() to !gimp_item_is_attached() so they also
	take items from the undo stack and not only newly created ones.

	(gimp_image_remove_layer,channel,vectors): add "push_undo"
	parameter here too. Also add a "new_active" parameter where an
	optional new active item can be passed.

	(gimp_image_remove_layer,channel): these functions must not be
	called with push_undo=FALSE and a floating selection attached to
	the layer/channel. This can't currently happen; added warnings in
	case other code is changed and makes it happen anyway.

	* app/core/gimpchannelundo.c
	* app/core/gimplayerundo.c
	* app/vectors/gimpvectorsundo.c: use above functions to add/remove
	items instead of duplicating (parts of) their code. Pass
	push_undo=FALSE and the previously active item to the remove()
	functions.

	* app/actions/channels-commands.c
	* app/actions/edit-commands.c
	* app/actions/layers-commands.c
	* app/actions/vectors-commands.c
	* app/core/gimp-edit.c
	* app/core/gimpchannelundo.c
	* app/core/gimpimage-crop.c
	* app/core/gimpimage-duplicate.c
	* app/core/gimpimage-merge.c
	* app/core/gimpimage-quick-mask.c
	* app/core/gimpimage-scale.c
	* app/core/gimplayer-floating-sel.c
	* app/core/gimplayerundo.c
	* app/core/gimpselection.c
	* app/core/gimptemplate.c
	* app/display/gimpdisplayshell-dnd.c
	* app/text/gimptext-compat.c
	* app/tools/gimptexttool.c
	* app/tools/gimpvectortool.c
	* app/vectors/gimpvectors-import.c
	* app/vectors/gimpvectorsundo.c
	* app/widgets/gimpchanneltreeview.c
	* app/widgets/gimpitemtreeview.[ch]
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimptoolbox-dnd.c
	* app/widgets/gimpvectorstreeview.c
	* app/xcf/xcf-load.c
	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/paths.pdb: changed accordingly (pass TRUE
	unless it's a new image like when loading and XCF file).

	* app/pdb/image-cmds.c
	* app/pdb/paths-cmds.c: regenerated.


svn path=/trunk/; revision=27200
2008-10-09 19:40:41 +00:00
Sven Neumann f959832666 data/images/Makefile.am added 128x128 version of wilber-devel.png.
2008-10-09  Sven Neumann  <sven@gimp.org>

	* data/images/Makefile.am
	* data/images/gimp-devel-logo.png: added 128x128 version of
	wilber-devel.png.

	* app/dialogs/about-dialog.c (about_dialog_load_logo): use
	gimp-devel-logo.png for unstable releasees.


svn path=/trunk/; revision=27199
2008-10-09 19:16:54 +00:00
Michael Natterer e21935a7b9 Bug 134956 – Curves tool doesn't save free curves
2008-10-09  Michael Natterer  <mitch@gimp.org>

	Bug 134956 – Curves tool doesn't save free curves

	* app/core/gimpmarshal.list
	* app/widgets/gimpsettingsbox.[ch]: add signal "file-dialog-setup"
	and emit it when the export/import file chooser is fully
	constructed. Callbacks can then do additional things to the
	dialog, like adding custom buttons.

	* app/tools/gimpcurvestool.h
	* app/tools/gimplevelstool.h: add boolean member
	"export_old_format".

	* app/tools/gimpcurvestool.c
	* app/tools/gimplevelstool.c (gimp_*_tool_dialog): connect to
	the settings box' "file-dialog-setup".

	(gimp_*_tool_export_setup): new callback which adds a toggle to
	the file choosers that allows to export to the old format.
	Default saving the new format, we defaulted to the old one before.

	(gimp_*_tool_settings_export): check the "export_old_format"
	boolean and only save the cruft format if it is TRUE; chain up
	otherwise, which generically saves the new format.

	* app/tools/gimplevelstool.c (gimp_levels_tool_settings_import):
	add the same file format detection code as in the curves tool
	so it transparently loads old and new levels files.


svn path=/trunk/; revision=27194
2008-10-09 15:25:59 +00:00
Sven Neumann ecccddd372 use GIMP_MINOR_VERSION to determine the version to migrate from.
2008-10-09  Sven Neumann  <sven@sven>

	* app/core/gimp-user-install.c (gimp_user_install_detect_old):
	use GIMP_MINOR_VERSION to determine the version to migrate from.


svn path=/trunk/; revision=27192
2008-10-09 13:24:50 +00:00
Michael Natterer 97b8f51049 when saving a curve of type GIMP_CURVE_FREE, don't use
2008-10-09  Michael Natterer  <mitch@gimp.org>

	* app/gegl/gimpcurvesconfig.c (gimp_curves_config_save_cruft):
	when saving a curve of type GIMP_CURVE_FREE, don't use
	gimp_curve_get_point() because that returns nothing for free
	curves.

	(gimp_curves_config_load_cruft): reset the curve before loading it.

	* app/core/gimpcurve.c (gimp_curve_get_point): instead of above
	mentioned uninitialized nonsense, at least return -1,-1 for free
	curves.


svn path=/trunk/; revision=27190
2008-10-09 09:44:08 +00:00
Michael Natterer 381d521499 app/Makefile.am change 2.6 to 2.7 here too.
2008-10-09  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* tools/Makefile.am: change 2.6 to 2.7 here too.


svn path=/trunk/; revision=27188
2008-10-09 08:28:39 +00:00
Sven Neumann e069a226d5 use a GMutex instead of a GStaticMutex as the latter needs API that causes
2008-10-08  Sven Neumann  <sven@gimp.org>

	* app/base/tile-cache.c: use a GMutex instead of a GStaticMutex
	as the latter needs API that causes compiler warnings about
	dereferencing of type-punned pointers.


svn path=/trunk/; revision=27170
2008-10-08 07:33:29 +00:00
Michael Natterer f6e04aed60 Bug 555362 – gimp-remote is not working properly
2008-10-07  Michael Natterer  <mitch@gimp.org>

	Bug 555362 – gimp-remote is not working properly

	* app/widgets/gimptoolbox-dnd.c (gimp_toolbox_dnd_init): add the
	window itself as drop traget again so gimp-remote works.


svn path=/trunk/; revision=27164
2008-10-07 21:10:29 +00:00
Michael Natterer 62e7dcc640 reorder sections consistently. Remove redundant CFLAGS.
2008-10-07  Michael Natterer  <mitch@gimp.org>

	* app/*/Makefile.am: reorder sections consistently. Remove
	redundant CFLAGS.


svn path=/trunk/; revision=27163
2008-10-07 11:58:14 +00:00
Sven Neumann 2aeb40ac96 removed debug output.
2008-10-06  Sven Neumann  <sven@gimp.org>

	* app/paint-funcs/scale-region.c (scale_region): removed debug
	output.


svn path=/trunk/; revision=27149
2008-10-06 20:47:55 +00:00
Michael Natterer 6f1b06e065 add a fallback mapping from <Toolbox> to <Image> so we catch really
2008-10-06  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/plug-in-menu-path.c (menu_path_mappings): add a
	fallback mapping from <Toolbox> to <Image> so we catch really
	everything that wants to go to <Toolbox>.


svn path=/trunk/; revision=27147
2008-10-06 20:35:41 +00:00
Michael Natterer 90db7d443c paranoia fix for hypothetical but harmful misbehavior: when setting the
2008-10-06  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpcontext.c (gimp_context_real_set_display): paranoia
	fix for hypothetical but harmful misbehavior: when setting the
	display from !=NULL to NULL, also set the image to NULL instead of
	relying on whatever obscure implicit behavior of other parts of
	GIMP which set a new display right away or make sure the image
	goes away together with the display.


svn path=/trunk/; revision=27145
2008-10-06 19:54:42 +00:00
Michael Natterer eed8f2c326 g_return_if_fail() on the mask's image being the same as the layer's
2008-10-06  Michael Natterer  <mitch@gimp.org>

	* app/core/gimplayer.c (gimp_layer_add_mask): g_return_if_fail()
	on the mask's image being the same as the layer's image. The PDB
	already checks for this.

	* app/core/gimpimage.c (gimp_image_add_layer,channel,vectors):
	remove calls to gimp_item_set_image() because we only accept
	itmes of this image anyway.


svn path=/trunk/; revision=27138
2008-10-06 09:26:44 +00:00
Michael Natterer 14aad7c222 app/plug-in/gimpplugin-cleanup.c #include <glib-object.h>, not
2008-10-05  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimpplugin-cleanup.c
	* app/vectors/gimpanchor.c: #include <glib-object.h>, not
	"glib-object.h".


svn path=/trunk/; revision=27137
2008-10-05 20:06:16 +00:00
Michael Natterer 85e46a2cc1 including ourselves serves no purpose.
2008-10-05  Michael Natterer  <mitch@gimp.org>

	* app/gegl/gegl-types.h: including ourselves serves no purpose.


svn path=/trunk/; revision=27136
2008-10-05 18:28:20 +00:00
Michael Natterer 321913dd6d Allow to "Open as Layers" in the empty display:
2008-10-05  Michael Natterer  <mitch@gimp.org>

	Allow to "Open as Layers" in the empty display:

	* app/widgets/gimpfiledialog.[ch]: add member
	"gboolean open_as_layers". Rename gimp_file_dialog_set_image() to
	gimp_file_dialog_set_save_image() and add
	gimp_file_dialog_set_open_image() which sets both the image to
	load layers into and the "open_as_layers" boolean.

	* app/dialogs/file-open-dialog.c (file_open_dialog_response): look
	at dialog->open_as_layers instead of dialog->image to decide whether
	to open as layers (that's much more obvious). Enable open as layers
	without existing image by creating the image if it doesn't exist.

	* app/actions/file-commands.c (file_open_dialog_show): add "title"
	parameter and take the uri from the image if none was passed. Use the
	new gimp_file_dialog_set_open_image() instead of poking into the
	dialog struct. Change callers to pass the title and not get the
	uri from the image; instead always pass the image.

	* app/actions/file-actions.c (file_actions_update): keep
	"Open as Layers" sensitive even without image.


svn path=/trunk/; revision=27135
2008-10-05 15:21:02 +00:00
Michael Natterer 9a720b654f some formatting cleanups.
2008-10-05  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage-contiguous-region.c: some formatting cleanups.

	(find_contiguous_segment): changed to return gboolean not gint.


svn path=/trunk/; revision=27134
2008-10-05 13:54:36 +00:00
Hans Breuer d94419a9fd updated include <string.h> for memcmp() include <string.h> for strcmp()
2008-10-03  Hans Breuer  <hans@breuer.org>

	* **/makefie.msc gimpdefs.msc app/gimpcore.def : updated
	* app/core/gimpcurve.c : include <string.h> for memcmp()
	* app/gegl/gimpcurvesconfig.c : include <string.h> for strcmp()

svn path=/trunk/; revision=27118
2008-10-03 19:27:54 +00:00
Sven Neumann 632b8d3fba bail out early if shell->display is NULL. Fixes crash reported on the
2008-10-03  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-scale.c
	(gimp_display_shell_scale_update_scrollbars)
	(gimp_display_shell_scale_update_rulers): bail out early if
	shell->display is NULL. Fixes crash reported on the 
mailing-list.


svn path=/trunk/; revision=27117
2008-10-03 19:20:46 +00:00
Sven Neumann d5be34058c add "text" to the list of blacklisted operations.
2008-10-02  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpgegltool.c 
(gimp_gegl_tool_operation_blacklisted):
	add "text" to the list of blacklisted operations.


svn path=/trunk/; revision=27114
2008-10-02 19:08:16 +00:00
Michael Natterer 68acc6598c Bug 554646 – Opening Help crashes GIMP with lqr-plugin installed
2008-10-02  Michael Natterer  <mitch@gimp.org>

	Bug 554646 – Opening Help crashes GIMP with lqr-plugin installed

	* app/widgets/gimphelp.c (gimp_help_get_help_domains): need to
	assign (*foo)[i] and not *foo[i] of a gchar** returned via return
	value location.


svn path=/trunk/; revision=27113
2008-10-02 17:16:14 +00:00
Michael Natterer 184fe0a30b keep a reference to the proc_frame's procedure. We can't asume it's always
2008-10-02  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimppluginprocframe.c: keep a reference to the
	proc_frame's procedure. We can't asume it's always there since it
	could be a temporary one and its plug-in might die during
	procedure execution, taking the temp_proc with it.


svn path=/trunk/; revision=27112
2008-10-02 17:13:58 +00:00
Martin Nordholts 259801e34e Bug 553534 – centering issues after image scaling and setting zoom
to 100%

* app/display/display-enums.h: Added a GimpZoomFocus enum with
'best guess', 'pointer' or 'image center' values.

* app/display/gimpdisplayshell-scale.[ch]
(gimp_display_shell_scale): Take a GimpZoomFocus parameter and
pass it on to

(gimp_display_shell_scale_get_zoom_focus): which returns the
requested zoom focus point if one was given, else makes a best
guess.

* app/actions/view-commands.c
* app/display/gimpstatusbar.c
* app/display/gimpnavigationeditor.c
* app/display/gimpdisplayshell-callbacks.c
* app/display/gimpdisplayshell-scale-dialog.c: For explicit-zoom
commands like "zoom to 100%", always use the image center as the
zoom focus point. For all other zooming, continue to use the
best-guess method.

* app/display/display-enums.c: Regenerated.

svn path=/trunk/; revision=27104
2008-10-02 14:53:35 +00:00
Tor Lillqvist 8d024f303d : Don't #define _GNU_SOURCE on Windows as it confuses newest mingw
2008-10-01  Tor Lillqvist  <tml@novell.com>

	* app/widgets/gtkscalebutton.c: : Don't #define _GNU_SOURCE on
	Windows as it confuses newest mingw headers.


svn path=/trunk/; revision=27097
2008-10-01 12:32:31 +00:00
Tor Lillqvist 0eb68211f3 Don't #define _GNU_SOURCE on Windows as it confuses newest mingw headers.
2008-10-01  Tor Lillqvist  <tml@novell.com>

	* app/plug-in/gimpplugin.c: Don't #define _GNU_SOURCE on Windows
	as it confuses newest mingw headers.


svn path=/trunk/; revision=27096
2008-10-01 12:27:32 +00:00
Michael Natterer 6865bb9e2b Bug 546924 – "New Image" misscalculating dimensions for non-pixel sized
2008-09-30  Michael Natterer  <mitch@gimp.org>

	Bug 546924 – "New Image" misscalculating dimensions for non-pixel
	sized templates

	* app/core/gimptemplate.h: added private param flag
	GIMP_TEMPLATE_PARAM_COPY_FIRST.

	* app/core/gimptemplate.c (gimp_template_class_init): set the flag
	on the resolution properties.

	* app/dialogs/image-new-dialog.c (image_new_template_changed):
	make sure the resolution properties are copied first.

	* libgimpconfig/gimpconfig-utils.c (gimp_config_sync): remove
	comment about fixing the template editor. That's not true any
	more.


svn path=/trunk/; revision=27091
2008-09-30 16:06:24 +00:00
Michael Natterer 52c61f6b5f keep a "default_config" object around and use it to reset the tool if it
2008-09-30  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpimagemaptool.[ch]: keep a "default_config" object
	around and use it to reset the tool if it exists.

	(gimp_image_map_tool_edit_as): set the default_config on the new
	tool so "reset" goes back to the values the tool was started with.

	* app/tools/gimpcolorbalencetool.c (gimp_color_balance_tool_reset)
	* app/tools/gimpcurvestool.c (gimp_curves_tool_reset)
	* app/tools/gimphuesaturationtool.c (gimp_hue_saturation_tool_reset)
	* app/tools/gimplevelstool.c (gimp_levels_tool_reset): use the
	default config to reset the tool here too if it exists.


svn path=/trunk/; revision=27090
2008-09-30 13:46:08 +00:00
Sven Neumann baea3223f1 don't make the upper label bold. This change compensates for the smaller
2008-09-30  Sven Neumann  <sven@gimp.org>

	* app/gui/splash.c: don't make the upper label bold. This change
	compensates for the smaller width of the new splash screen.


svn path=/trunk/; revision=27089
2008-09-30 11:27:00 +00:00
Sven Neumann ca0b070852 added gimp_pango_layout_set_scale().
2008-09-30  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpwidgets-utils.[ch]: added
	gimp_pango_layout_set_scale().

	* app/gui/splash.c: set a smaller font size on the lower label.


svn path=/trunk/; revision=27088
2008-09-30 11:16:28 +00:00
Sven Neumann 945fdb7cc0 actually use the passed weight.
2008-09-30  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpwidgets-utils.c 
(gimp_pango_layout_set_weight):
	actually use the passed weight.


svn path=/trunk/; revision=27087
2008-09-30 11:09:06 +00:00
Sven Neumann f666fe0f0b app/config/gimpbaseconfig.c reverted parts of commit 25812. Restores
2008-09-30  Sven Neumann  <sven@gimp.org>

	* app/config/gimpbaseconfig.c
	* app/config/gimpguiconfig.c: reverted parts of commit 25812.
	Restores compatibility with old gimprc files.


svn path=/trunk/; revision=27086
2008-09-30 09:41:55 +00:00
Sven Neumann 24b2c1c977 formatting.
2008-09-30  Sven Neumann  <sven@gimp.org>

	* app/config/gimprc-deserialize.c (gimp_rc_deserialize): 
formatting.


svn path=/trunk/; revision=27085
2008-09-30 09:34:20 +00:00
Sven Neumann 6a6d2f789b bumped version to 2.6.0.
2008-09-29  Sven Neumann  <sven@gimp.org>

        * configure.in: bumped version to 2.6.0.

        * app/Makefile.am
        * tools/Makefile.am: changed accordingly.

        * docs/gimprc.5.in
        * etc/gimprc: regenerated.


svn path=/trunk/; revision=27081
2008-09-29 20:33:13 +00:00
Martin Nordholts 958de4c297 Bug 554125 – Tab key doesn't hide utility windows when there is no
image open.
	
* app/widgets/gimpdialogfactory.[ch]: Add 'toggle_visibility' to
GimpDialogFactory and as a parameter to gimp_dialog_factory_new(),
and set it there.

(gimp_dialog_factories_hide_foreach): Don't hide dialogs belonging
to factories with toggle_visibility FALSE.

* app/display/gimpdisplayshell-callbacks.c
(gimp_display_shell_canvas_tool_events): Move no-image event
handling to a new helper function, and make pressing Tab hide
windows.

* app/dialogs/dialogs.c (dialogs_init): Allow toggling visibility
for all factories except the display-factory.

svn path=/trunk/; revision=27077
2008-09-29 15:42:56 +00:00
Michael Natterer 8938cca43f no need to memcpy() the arrays, they are properly copied by
2008-09-29  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpcurve.c (gimp_curve_copy): no need to memcpy() the
	arrays, they are properly copied by gimp_config_sync() now. Add
	call to gimp_data_dirty() so GimpCurvesConfig gets notified.

	* app/gegl/gimpcurvesconfig.c (gimp_curves_config_set_property):
	use gimp_config_copy() instead of copying the curve menually.


svn path=/trunk/; revision=27076
2008-09-29 12:33:58 +00:00
Michael Natterer a4ff76a5ac remove some casts that were always useless and are even more useless now
2008-09-29  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpdialogfactory.c
	(gimp_dialog_factories_show_foreach)
	(gimp_dialog_factories_hide_foreach): remove some casts that were
	always useless and are even more useless now after the recent
	readability improvement.


svn path=/trunk/; revision=27075
2008-09-29 11:08:42 +00:00
Sven Neumann 5d13567424 reduced default window height to give a window aspect ratio of roughly 3:1
2008-09-29  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell.c (gimp_display_shell_new): 
reduced
	default window height to give a window aspect ratio of roughly 
3:1
	as requested by Peter.


svn path=/trunk/; revision=27072
2008-09-29 09:48:32 +00:00
Martin Nordholts 6e876e8f7c Increase readability with widget = list->data.
* app/widgets/gimpdialogfactory.c
(gimp_dialog_factories_show_foreach)
(gimp_dialog_factories_hide_foreach): Increase readability with
widget = list->data.

svn path=/trunk/; revision=27068
2008-09-28 07:46:48 +00:00
Michael Natterer e9958b1bc7 reorder functions and add static prototypes.
2008-09-26  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpnavigationview.c: reorder functions and add
	static prototypes.


svn path=/trunk/; revision=27065
2008-09-26 18:21:36 +00:00
Michael Natterer a3d0c68a70 fix calculation of final lookup table to not darken the image.
2008-09-25  Michael Natterer  <mitch@gimp.org>

	* app/base/colorize.c (colorize_calculate): fix calculation of
	final lookup table to not darken the image.


svn path=/trunk/; revision=27062
2008-09-25 18:14:05 +00:00
Michael Natterer 4a91523321 use the new helper function here too.
2008-09-25  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-dnd.c
	(gimp_display_shell_drop_pixbuf): use the new helper function here
	too.


svn path=/trunk/; revision=27060
2008-09-25 16:59:02 +00:00
Sven Neumann 92a5eec265 moved duplicate code to a helper function.
2008-09-25  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-dnd.c
	(gimp_display_shell_drop_component)
	(gimp_display_shell_drop_drawable): moved duplicate code to a
	helper function.


svn path=/trunk/; revision=27058
2008-09-25 15:41:57 +00:00
Sven Neumann 95cd081d13 added a 'restored' flag to the Gimp object and set it in
2008-09-25  Sven Neumann  <sven@gimp.org>

	* app/core/gimp.[ch]: added a 'restored' flag to the Gimp object
	and set it in gimp_real_restore(). Added method 
gimp_is_restored().

	* app/gui/gui.c: call gui_unique_init() in gui_init() instead of
	that later in gui_restore_after_callback(). By doing so we start
	our DBus service (or message proxy window on Win32) much earlier
	in the start process, thus reducing the time frame where two
	instances of gimp can be launched.

	* app/gui/gui-unique.c
	* app/gui/gimpdbusservice.c: wait handling the queued file-open
	requests until gimp is fully restored.

	* app/gui/splash.c (splash_update): only run one iteration of 
the
	main loop. Doing it in a while loop can cause us to get stuck if
	the gimp-unique service already added an idle handler.


svn path=/trunk/; revision=27049
2008-09-25 08:56:58 +00:00
Martin Nordholts 63ca4578b9 Bug 549925 – incorrect math: adding/substracting empty selection
deselects selection

* app/tools/gimprectangleselecttool.c
(gimp_rectangle_select_tool_execute): Be more intuitive when
clicking outside the current selection for the selection modes Add
and Subtract. More specifically, don't alter the selection mask at
all.

svn path=/trunk/; revision=27048
2008-09-24 21:15:54 +00:00
Martin Nordholts f08e322809 Added new utility function gimp_rectangle_select_tool_get_operation(), and
* app/tools/gimprectangleselecttool.c: Added new utility function
gimp_rectangle_select_tool_get_operation(), and started using it.

svn path=/trunk/; revision=27047
2008-09-24 20:55:55 +00:00
Michael Natterer 8fb79f1439 call gimp_controller_editor_sel_changed() with the right GtkTreeSelection
2008-09-24  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpcontrollereditor.c
	(gimp_controller_editor_edit_response): call
	gimp_controller_editor_sel_changed() with the right
	GtkTreeSelection object (the editor's, not the action
	list's). Fixes crash upon selecting an action for a controller
	event. Spotted by Alexander Rabtchevich.


svn path=/trunk/; revision=27041
2008-09-24 09:12:36 +00:00
Martin Nordholts 7bb585132d Update documentation, the layer does not need to have an alpha channel. A
* tools/pdbgen/pdb/selection.pdb (selection_layer_alpha): Update
documentation, the layer does not need to have an alpha channel. A
layer without an alpha channel is considered opaque.

* app/pdb/selection-cmds.c 
* libgimp/gimpselection_pdb.c: Regenerated.

svn path=/trunk/; revision=27040
2008-09-24 09:09:27 +00:00
Sven Neumann c286952086 tools/pdbgen/pdb/layer.pdb added new scale procedures that allow to
2008-09-24  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/pdb/layer.pdb
	* tools/pdbgen/pdb/image.pdb: added new scale procedures that
	allow to specify the interpolation explicitly. Fixes bug 
#486977.
	Also pass the progress parameter to the scale and rotate 
functions.

	* app/pdb/image-cmds.c
	* app/pdb/internal-procs.c
	* app/pdb/layer-cmds.c
	* libgimp/gimpimage_pdb.[ch]
	* libgimp/gimplayer_pdb.[ch]: regenerated.

	* libgimp/gimp.def: updated.


svn path=/trunk/; revision=27039
2008-09-24 08:28:16 +00:00
Sven Neumann c01408279c fixed error and some typos in the PDB documentation.
2008-09-24  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/pdb/image.pdb: fixed error and some typos in the
	PDB documentation.

	* app/pdb/image-cmds.c
	* libgimp/gimpimage_pdb.c: regenerated.


svn path=/trunk/; revision=27038
2008-09-24 07:47:58 +00:00
Sven Neumann 5b7038f23c simplified
svn path=/trunk/; revision=27036
2008-09-23 07:15:37 +00:00
Sven Neumann a8cc137009 Move the "Use GEGL" check-box to the Colors menu (bug #548760):
2008-09-23  Sven Neumann  <sven@gimp.org>

	Move the "Use GEGL" check-box to the Colors menu (bug #548760):

	* app/actions/Makefile.am
	* app/actions/config-actions.[ch]
	* app/actions/config-commands.[ch]: new files holding the 
"config"
	action group that includes the "use-gegl" toggle action.

	* app/actions/debug-actions.c
	* app/actions/debug-commands.[ch]: removed the "use-gegl" 
action
	here.

	* app/menus/menus.c
	* app/actions/actions.c: added the new action group.

	* app/widgets/gimphelp-ids.h: added a help ID for the 
"use-gegl"
	action.

	* menus/image-menu.xml.in: moved the "Use GEGL" check-box to 
the
	Colors menu.


svn path=/trunk/; revision=27035
2008-09-23 07:02:24 +00:00
Sven Neumann 5f8befc536 don't set a help ID on the display menu items.
2008-09-21  Sven Neumann  <sven@gimp.org>

	* app/actions/windows-actions.c: don't set a help ID on the
	display menu items.

	* app/widgets/gimphelp-ids.h: removed now unused help ID.

	* app/menus/windows-menu.c: show a larger image preview in the
	tooltip.


svn path=/trunk/; revision=27028
2008-09-21 18:53:14 +00:00
Sven Neumann 3b9c941369 put translator comment on a single line, looks better in the .po file.
2008-09-20  Sven Neumann  <sven@gimp.org>

	* app/dialogs/about-dialog.c: put translator comment on a single
	line, looks better in the .po file.


svn path=/trunk/; revision=27025
2008-09-20 21:30:48 +00:00
Simon Budig 4372c0754b whitespace fix
2008-09-20  Simon Budig  <simon@gimp.org>

	* app/core/gimpcurve.c: whitespace fix

	* app/gegl/gimplevelsconfig.c: make sure that the points set by
	default gets unset before calculating the levels->curves
	transition. We don't want stray points in the corners.


svn path=/trunk/; revision=27018
2008-09-19 22:41:58 +00:00
Sven Neumann c7af52b846 renamed "file-new-menu" to "file-create-menu" and changed the menu label
2008-09-19  Sven Neumann  <sven@gimp.org>

	* app/actions/file-actions.c: renamed "file-new-menu" to
	"file-create-menu" and changed the menu label from "New" to 
"Create".

	* app/plug-in/plug-in-menu-path.c
	* menus/image-menu.xml.in
	* plug-ins/common/screenshot.c
	* plug-ins/script-fu/script-fu.c
	* plug-ins/script-fu/scripts/*.scm
	* plug-ins/twain/twain.c
	* plug-ins/win-snap/winsnap.c: changed accordingly.


svn path=/trunk/; revision=27013
2008-09-19 12:01:12 +00:00
Sven Neumann d986821b36 try to use the menu label with ellipsis instead of the result of
2008-09-19  Sven Neumann  <sven@gimp.org>

	* app/actions/plug-in-actions.c 
(plug_in_actions_history_changed):
	try to use the menu label with ellipsis instead of the result of
	gimp_plug_in_procedure_get_label() which has ellipsis and
	mnemonics stripped.


svn path=/trunk/; revision=27005
2008-09-19 06:43:37 +00:00
Sven Neumann 82b57dcdfe need to set the point at the index corresponding to the x value.
2008-09-19  Sven Neumann  <sven@gimp.org>

	* app/gegl/gimplevelsconfig.c 
(gimp_levels_config_to_curves_config):
	need to set the point at the index corresponding to the x value.


svn path=/trunk/; revision=27003
2008-09-18 22:54:51 +00:00
Sven Neumann c6be62a797 app/core/gimpcurve.c (gimp_curve_plot) formatting.
2008-09-18  Sven Neumann  <sven@gimp.org>

	* app/core/gimpcurve.c (gimp_curve_plot)
	* app/gegl/gimplevelsconfig.c 
(gimp_levels_config_to_curves_config):
	formatting.


svn path=/trunk/; revision=27002
2008-09-18 21:55:28 +00:00
Simon Budig 1f788a5af2 comment fix
2008-09-18  Simon Budig  <simon@gimp.org>

	* app/core/gimpcurve.c: comment fix

	* app/gegl/gimplevelsconfig.c: improve the levels->curves
	transition. Not perfect, the result does not match a "real"
	gamma correction, especially in the dark areas, where the
	curves are too dark compared to the levels.


svn path=/trunk/; revision=27001
2008-09-18 19:48:04 +00:00
Sven Neumann 1a8859805c app/plug-in/gimppluginprocedure.c minor cleanups.
2008-09-18  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimppluginprocedure.c
	* libgimp/gimp.c: minor cleanups.


svn path=/trunk/; revision=26999
2008-09-18 16:25:39 +00:00
Michael Natterer 651cb5b325 reset the RC styles of the dock's children after parsing the RC file
2008-09-18  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpdock.c (gimp_dock_style_set): reset the RC
	styles of the dock's children after parsing the RC file snippet
	for them. Fixes font size for detached dockables.


svn path=/trunk/; revision=26992
2008-09-18 10:55:53 +00:00
Tor Lillqvist 25ecbc063d Use INVALID_HANDLE_VALUE instead of INVALID_FILE_HANDLE which was an
2008-09-18  Tor Lillqvist  <tml@novell.com>

	* app/plug-in/gimppluginshm.c: Use INVALID_HANDLE_VALUE instead of
	INVALID_FILE_HANDLE which was an misunderstanding.


svn path=/trunk/; revision=26989
2008-09-18 09:35:00 +00:00
Sven Neumann 0490cd0a75 made the font scale factor for the docks configurable in gtkrc.
2008-09-18  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpdock.c: made the font scale factor for the 
docks
	configurable in gtkrc.

	* themes/Default/gtkrc
	* themes/Small/gtkrc: for documentation purposes, added the
	default value for GimpDock::font-scale here. Changed all style
	property names to use the canonical names.


svn path=/trunk/; revision=26988
2008-09-18 09:33:20 +00:00
Sven Neumann d9a2d8242e no need to check if the drawable is attached as shadow tiles are per
2008-09-18  Sven Neumann  <sven@gimp.org>

	* app/core/gimpdrawable-shadow.c 
(gimp_drawable_get_shadow_tiles):
	no need to check if the drawable is attached as shadow tiles are
	per drawable now.


svn path=/trunk/; revision=26986
2008-09-17 23:26:02 +00:00
Simon Budig 17129f3db0 quickfix: avoid last-minute-code-cleanup before checkin...
2008-09-18  Simon Budig  <simon@gimp.org>

	* app/gegl/gimpbrightnesscontrastconfig.c: quickfix:
	avoid last-minute-code-cleanup before checkin...


svn path=/trunk/; revision=26985
2008-09-17 23:09:29 +00:00
Simon Budig 53385418fb fix the brightness/contrast --> levels step by doing proper math (TM).
2008-09-18  Simon Budig  <simon@gimp.org>

	* app/gegl/gimpbrightnesscontrastconfig.c: fix the
	brightness/contrast --> levels step by doing proper math (TM).


svn path=/trunk/; revision=26984
2008-09-17 22:55:55 +00:00
Sven Neumann cd4dd6c5b6 gimp_drawable_mask_intersect() and gimp_drawable_mask_bounds() may only be
2008-09-18  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/pdb/drawable.pdb: gimp_drawable_mask_intersect()
	and gimp_drawable_mask_bounds() may only be used on attached
	drawables. Added missing checks.

	* app/pdb/drawable-cmds.c: regenerated.


svn path=/trunk/; revision=26983
2008-09-17 22:52:06 +00:00
Sven Neumann bc75eec6fc formatting.
2008-09-17  Sven Neumann  <sven@gimp.org>

	* app/actions/edit-actions.c (edit_actions_update): formatting.


svn path=/trunk/; revision=26979
2008-09-17 21:54:53 +00:00
Michael Natterer 2f13a57002 cosmetic paranoia.
2008-09-17  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpdockable.c: cosmetic paranoia.


svn path=/trunk/; revision=26971
2008-09-17 11:44:17 +00:00
Michael Natterer 68c21b49e9 Revert the change which adds GError parameters to
2008-09-17  Michael Natterer  <mitch@gimp.org>

	Revert the change which adds GError parameters to
	gimp_image_add_{channel,layer,vectors}():

	* app/actions/channels-commands.c
	* app/actions/edit-commands.c
	* app/actions/layers-commands.c
	* app/actions/vectors-commands.c
	* app/core/gimp-edit.c
	* app/core/gimpimage-duplicate.c
	* app/core/gimpimage-merge.c
	* app/core/gimpimage-quick-mask.c
	* app/core/gimpimage.[ch]
	* app/core/gimplayer-floating-sel.c
	* app/core/gimpselection.c
	* app/core/gimptemplate.c
	* app/display/gimpdisplayshell-dnd.c
	* app/text/gimptext-compat.c
	* app/tools/gimptexttool.c
	* app/tools/gimpvectortool.c
	* app/vectors/gimpvectors-import.c
	* app/widgets/gimpchanneltreeview.c
	* app/widgets/gimpitemtreeview.[ch]
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimptoolbox-dnd.c
	* app/widgets/gimpvectorstreeview.c
	* app/xcf/xcf-load.c: revert.

	Instead, fix it at the PDB level:

	* app/core/gimpimage.c: turn the "added to wrong image" warning
	into a g_return_val_if_fail() assertion.

	* app/pdb/gimppdb-utils.[ch] (gimp_pdb_item_is_floating): add a
	"dest_image" parameter and fail if the passed item is not for this
	image.

	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/layer.pdb
	* tools/pdbgen/pdb/paths.pdb: pass the dest image to
	gimp_pdb_item_is_floating().

	* app/pdb/image-cmds.c
	* app/pdb/layer-cmds.c
	* app/pdb/paths-cmds.c: regenerated.


svn path=/trunk/; revision=26970
2008-09-17 11:41:54 +00:00
Michael Natterer b0dab70de8 add GError parameter to gimp_image_add_{channel,layer,vectors}() and
2008-09-17  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage.[ch]: add GError parameter to
	gimp_image_add_{channel,layer,vectors}() and remove calls to
	g_warning(). Changed checks to be possible failures at all.

	* app/widgets/gimpitemtreeview.h (GimpAddItemFunc): add the GError
	here too.

	* app/actions/channels-commands.c
	* app/actions/edit-commands.c
	* app/actions/layers-commands.c
	* app/actions/vectors-commands.c
	* app/core/gimp-edit.c
	* app/core/gimpimage-duplicate.c
	* app/core/gimpimage-merge.c
	* app/core/gimpimage-quick-mask.c
	* app/core/gimplayer-floating-sel.c
	* app/core/gimpselection.c
	* app/core/gimptemplate.c
	* app/display/gimpdisplayshell-dnd.c
	* app/text/gimptext-compat.c
	* app/tools/gimptexttool.c
	* app/tools/gimpvectortool.c
	* app/vectors/gimpvectors-import.c
	* app/widgets/gimpchanneltreeview.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimptoolbox-dnd.c
	* app/widgets/gimpvectorstreeview.c
	* app/xcf/xcf-load.c: pass a NULL error.

	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/paths.pdb: pass the error.

	* app/pdb/image-cmds.c
	* app/pdb/paths-cmds.c: regenerated.


svn path=/trunk/; revision=26963
2008-09-17 08:27:35 +00:00
Sven Neumann b2ad06a19f added GError parameter to gimp_image_{raise,lower}_{channel,layer,vectors}
2008-09-16  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimage.[ch]: added GError parameter to
	gimp_image_{raise,lower}_{channel,layer,vectors} functions and
	removed calls to g_message().

	* app/actions/channels-commands.c
	* app/actions/layers-commands.c
	* app/actions/vectors-commands.c: pass NULL for the GError
	parameter as these actions are insensitive if they would fail.

	* tools/pdbgen/pdb/image.pdb: changed accordingly. Corrected the
	documentation.

	* app/pdb/image-cmds.c
	* libgimp/gimpimage_pdb.c: regenerated.


svn path=/trunk/; revision=26953
2008-09-16 20:56:41 +00:00
Sven Neumann db7c35373d unified error messages.
2008-09-16  Sven Neumann  <sven@gimp.org>

	* app/core/gimppalette-load.c (gimp_palette_load): unified error
	messages.


svn path=/trunk/; revision=26952
2008-09-16 20:25:15 +00:00
Michael Natterer 5e6b0345d1 use the "tool options" icon for the "context" action group since that's
2008-09-16  Michael Natterer  <mitch@gimp.org>

	* app/actions/actions.c: use the "tool options" icon for the
	"context" action group since that's what its actions mostly
	control.

	* app/actions/dialogs-actions.c: use the "brush", "gradient" and
	"palette" icons also for their resp. editors since that's also the
	icons they use in their dockable tabs.


svn path=/trunk/; revision=26949
2008-09-16 08:38:09 +00:00
Michael Natterer d2307c1bf6 add GError parameter and replace g_message() by g_set_error().
2008-09-15  Michael Natterer  <mitch@gimp.org>

	* app/core/gimplayer.[ch] (gimp_layer_add_mask): add GError
	parameter and replace g_message() by g_set_error().

	* app/core/gimplayermaskundo.c
	* app/xcf/xcf-load.c
	* app/actions/layers-commands.c: pass NULL errors since these
	places know what they are doing. Ha ha...

	* tools/pdbgen/pdb/layer.pdb
	* tools/pdbgen/pdb/image.pdb: pass the error so we get more real
	error messages for failed PDB calls.

	* app/pdb/image-cmds.c
	* app/pdb/layer-cmds.c: regenerated.


svn path=/trunk/; revision=26948
2008-09-15 21:05:01 +00:00
Michael Natterer c7a92cddc2 Bug 552413 – Script triggers Gimp-Core-CRITICAL
2008-09-15  Michael Natterer  <mitch@gimp.org>

	Bug 552413 – Script triggers Gimp-Core-CRITICAL

	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/layer.pdb: add some more checks that produce
	proper PDB error messages when adding and removing layer masks
	instead of having the code run into assertions in the called core
	functions. Also add some more checks when removing layers,
	channels or vectors.

	* app/pdb/image-cmds.c
	* app/pdb/layer-cmds.c: regenerated.


svn path=/trunk/; revision=26947
2008-09-15 20:45:42 +00:00
Michael Schumacher 97b36969a1 removed double "the" from translatable string. Fixes bug #552127.
2008-09-13  Michael Schumacher  <schumaml@cvs.gnome.org>

	* app/actions/edit-actions.c (edit_actions): removed double "the"
	from translatable string. Fixes bug #552127.

svn path=/trunk/; revision=26941
2008-09-13 20:03:29 +00:00
Michael Natterer c985f2e2a5 changed GimpBrush::get_extension() to return const gchar* instead of
2008-09-12  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdata.h: changed GimpBrush::get_extension() to return
	const gchar* instead of gchar*

	* app/core/gimpbrush.c
	* app/core/gimpbrushgenerated.c
	* app/core/gimpcurve.c
	* app/core/gimpgradient.c
	* app/core/gimppalette.c
	* app/core/gimppattern.c: changed accordingly.


svn path=/trunk/; revision=26935
2008-09-12 10:35:35 +00:00
Michael Natterer af9817b466 make a string pointer const.
2008-09-11  Michael Natterer  <mitch@gimp.org>

	* app/core/gimp-modules.c (gimp_modules_unload): make a string
	pointer const.


svn path=/trunk/; revision=26927
2008-09-11 17:19:07 +00:00
Tor Lillqvist 2a01f97b6e Untabify.
2008-09-10  Tor Lillqvist  <tml@novell.com>

	* app/gui/gui-unique.c: Untabify.


svn path=/trunk/; revision=26918
2008-09-10 20:01:45 +00:00
Tor Lillqvist 0fb8352667 Destroy the proxy window here so that gimp_unique_win32_open() in
2008-09-10  Tor Lillqvist  <tml@novell.com>

	* app/gui/gui-unique.c (gui_unique_win32_exit): Destroy the proxy
	window here so that gimp_unique_win32_open() in app/unique.c won't
	find it. This is important especially in a developer version where
	the debug output window might be left open and the proxy window
	still existing for a long time after the GTK+ main loop of the
	GIMP GUI has finished. Thanks to Michael Schumacher for pointing
	this out.

	There is still a small race window here after GIMP has begun
	closing down its GUI in gui_exit_callback() and before the proxy
	window has gone away. If another GIMP starts during that interval,
	it will find the proxy window and send it a message, which will
	then either be ignored, or the proxy window will have been
	destroyed before it gets the message. Let's ignore that. There is
	a much wider time window during which multiple GIMP instances may
	be started during GIMP startup anyway.


svn path=/trunk/; revision=26917
2008-09-10 20:00:53 +00:00
Tor Lillqvist 9950975d6b gui_unique_win32_message_handler() can be static. Include file/file-open.h
2008-09-10  Tor Lillqvist  <tml@novell.com>

	* app/gui/gui-unique.c: gui_unique_win32_message_handler() can be
	static. Include file/file-open.h for file_open_from_command_line()
	declaration. Fix copy/paste glitch in gui_unique_exit().


svn path=/trunk/; revision=26916
2008-09-10 19:25:54 +00:00
Michael Natterer 420b60b8de factor out function that selects a path and scrolls to that path. Keep the
2008-09-10  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpactionview.c: factor out function that selects a
	path and scrolls to that path. Keep the selected path visible if
	it is still there after filtering.


svn path=/trunk/; revision=26914
2008-09-10 10:44:41 +00:00
Michael Natterer 440214f259 made action labels more consistent, use '°' instead of 'degrees'.
2008-09-10  Michael Natterer  <mitch@gimp.org>

	* app/actions/context-actions.c: made action labels more
	consistent, use '°' instead of 'degrees'.

	* app/actions/context-commands.c: cosmetic change in macro
	parameters.


svn path=/trunk/; revision=26913
2008-09-10 10:01:54 +00:00
Michael Natterer 72c4ef1a83 app/Makefile.am remove references to $(REGEXREPL).
2008-09-09  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* plug-ins/script-fu/Makefile.am: remove references to $(REGEXREPL).


svn path=/trunk/; revision=26907
2008-09-09 12:21:43 +00:00
Sven Neumann bdce2966d6 based on a patch from David Gowers clamp the brush scale so that the brush
2008-09-08  Sven Neumann  <sven@gimp.org>

	* app/paint/gimpbrushcore.c: based on a patch from David Gowers
	clamp the brush scale so that the brush never becomes smaller 
than
	0.5 pixels. Fixes bug #548631.


svn path=/trunk/; revision=26900
2008-09-08 19:06:32 +00:00
Michael Natterer 3827523fe7 Bug 551306 – Color picker for text tool does not show selected palette
2008-09-08  Michael Natterer  <mitch@gimp.org>

	Bug 551306 – Color picker for text tool does not show selected
	palette

	* app/tools/gimptexttool.c (gimp_text_tool_register): add
	GIMP_CONTEXT_PALETTE_MASK to the tool option's context mask so the
	color popup's palette follows the globally selected palette.


svn path=/trunk/; revision=26899
2008-09-08 12:50:41 +00:00
Sven Neumann 52142fde13 restored alphabetic order. Use real name instead of a nick.
2008-09-08  Sven Neumann  <sven@gimp.org>

	* authors.xml: restored alphabetic order. Use real name instead 
of
	a nick.

	* AUTHORS: regenerated.

	* app/dialogs/authors.xsl: changed rule to only include
	contributors from the 2.6 development cycle in the About dialog.


svn path=/trunk/; revision=26898
2008-09-08 10:48:16 +00:00
Sven Neumann ce43257d5b Applied 'gimp-decimate.diff' as announced on the mailing-list:
2008-09-07  Sven Neumann  <sven@gimp.org>

	Applied 'gimp-decimate.diff' as announced on the mailing-list:

	* app/gimp-log.[ch]: added log domain "scale".

	* app/paint-funcs/scale-region.c: replaced decimation routines
	with box filters. Only use the decimation routines to pre-scale
	the image, always apply the interpolation for the final step.


svn path=/trunk/; revision=26896
2008-09-07 21:13:09 +00:00
Martin Nordholts 59a62ce7a1 Invalidating the view renderer is just plain wrong, revert to redrawing
* app/widgets/gimpnavigationview.c
(gimp_navigation_view_set_marker): Invalidating the view renderer
is just plain wrong, revert to redrawing the view. We will need to
solve the flicker in some other way.

svn path=/trunk/; revision=26894
2008-09-07 16:19:32 +00:00
Martin Nordholts 0cc59223c1 Bug 551141 – "Select all" does not work
* app/core/gimpchannel.c (gimp_channel_real_all): We don't want to
clear the region, we want to fill it with OPAQUE_OPACITY.

svn path=/trunk/; revision=26891
2008-09-07 06:47:17 +00:00
Michael Natterer 0d64c0d4e8 don't use // for comments.
2008-09-06  Michael Natterer  <mitch@gimp.org>

	* app/gegl/gimpoperationhuesaturation.c
	(gimp_operation_hue_saturation_process): don't use // for comments.


svn path=/trunk/; revision=26885
2008-09-06 11:26:21 +00:00
Martin Nordholts cc90920d69 mapped_* -> mapped_*_hue.
* app/gegl/gimpoperationhuesaturation.c
(gimp_operation_hue_saturation_process): mapped_* -> mapped_*_hue.

svn path=/trunk/; revision=26884
2008-09-06 07:26:33 +00:00
Martin Nordholts cadfb1c68f Bug 527085 – Hue/Saturation (working improperly)
* app/gegl/gimpoperationhuesaturation.c
(gimp_operation_hue_saturation_process): Properly map the
secondary hue. Based on patch by Michael Deal.

svn path=/trunk/; revision=26883
2008-09-06 06:53:43 +00:00
Sven Neumann ec789594af also blacklist the "stress" operations
svn path=/trunk/; revision=26880
2008-09-05 17:41:29 +00:00
Sven Neumann de8671671f blacklist "color-convert" and all GIMP operations.
2008-09-05  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpgegltool.c: blacklist "color-convert" and all 
GIMP
	operations.


svn path=/trunk/; revision=26879
2008-09-05 17:37:17 +00:00
Sven Neumann 39ed2677f6 added a blacklist of operations that should not be shown. We may want to
2008-09-05  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpgegltool.c: added a blacklist of operations that
	should not be shown. We may want to add more operations here.


svn path=/trunk/; revision=26878
2008-09-05 17:11:48 +00:00
Michael Natterer a270381096 made the "args" parameter const.
2008-09-05  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimpplugindebug.[ch] (gimp_plug_in_debug_argv): made
	the "args" parameter const.

	* app/plug-in/gimpplugin.c (gimp_plug_in_open): made some strings
	const.


svn path=/trunk/; revision=26877
2008-09-05 15:46:00 +00:00
Michael Natterer f1b8cab63d Bug 545325 – Scrollbars do not disappear automatically
2008-09-05  Michael Natterer  <mitch@gimp.org>

	Bug 545325 – Scrollbars do not disappear automatically

	* app/widgets/gimpcontainertreeview.c: autosize the columns after
	each operation that can reduce the treeview's width.


svn path=/trunk/; revision=26875
2008-09-05 14:06:01 +00:00
Michael Natterer 941310a309 Bug 550983 – The size displayed in the status bar isn't correct
2008-09-05  Michael Natterer  <mitch@gimp.org>

	Bug 550983 – The size displayed in the status bar isn't correct

	* app/tools/gimprectangletool.c: use the right precision when
	pushing the rectangle's size as coordinates to the statusbar.


svn path=/trunk/; revision=26872
2008-09-05 12:15:24 +00:00
Michael Natterer 0194327f6d app/widgets/Makefile.am app/widgets/widgets-types.h new simple widget
2008-09-05  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpactioneditor.[ch]: new simple widget which
	contains a GimpActionView plus the search entry.

	* app/dialogs/keyboard-shortcuts-dialog.c: use the new widget
	instead of implementing the search entry here.

	* app/widgets/gimpcontrollereditor.c: use a GimpActionEditor
	instead of GimpActionView so the actions become searchable here
	too.


svn path=/trunk/; revision=26870
2008-09-05 10:37:06 +00:00
Sven Neumann 66a3aedea6 expose the preview when the tool is initialized. Fixes missing redraws
2008-09-04  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptransformtool.c 
(gimp_transform_tool_initialize):
	expose the preview when the tool is initialized. Fixes missing
	redraws when the tool is selected from the menus (bug #550911).

	(gimp_transform_tool_motion): expose the preview after
	recalculating the transformation matrix.


svn path=/trunk/; revision=26868
2008-09-04 21:34:38 +00:00
Sven Neumann 8172ba88a1 improved the new DND code.
2008-09-04  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-dnd.c: improved the new DND code.


svn path=/trunk/; revision=26867
2008-09-04 18:14:56 +00:00
Tor Lillqvist b8f94b37b3 app/base/base-utils.h The return type of get_pid() should be gint, not
2008-09-04  Tor Lillqvist  <tml@novell.com>

	* app/base/base-utils.h
	* app/base/base-utils.c: The return type of get_pid() should be
	gint, not GPid. This matches also the C library on Windows, in
	which the return type of getpid() is int, not a pointer or
	intptr_t. The use for GPid in the GLib API is as a "handle" to a
	descendant processes, returned by the g_spawn_*() functions, and
	passed to the g_child_watch_*() functions, not as a "process
	identifier".


svn path=/trunk/; revision=26866
2008-09-04 17:54:06 +00:00
Sven Neumann 05e7e9dc54 handle drops on the empty image window.
2008-09-04  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-dnd.c
	(gimp_display_shell_drop_drawable) 
(gimp_display_shell_drop_pixbuf):
	handle drops on the empty image window.


svn path=/trunk/; revision=26864
2008-09-04 15:45:23 +00:00
Sven Neumann f184843d65 tweaked spacing between entry and button and resolved a mnemnic conflict.
2008-09-04  Sven Neumann  <sven@gimp.org>

	* app/dialogs/keyboard-shortcuts-dialog.c: tweaked spacing 
between
	entry and button and resolved a mnemnic conflict.


svn path=/trunk/; revision=26862
2008-09-04 14:42:16 +00:00
Michael Natterer 4bbc40b732 add a column for the casefold label of the action and filter on that.
2008-09-04  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpactionview.[ch]: add a column for the casefold
	label of the action and filter on that.

	* app/dialogs/keyboard-shortcuts-dialog.c: add a button to clear
	the filter entry. Changed the label to "Search:".


svn path=/trunk/; revision=26861
2008-09-04 14:28:00 +00:00
Michael Natterer ffdb533ab8 add an GtkTreeModelFilter between the GtkTreeView and the actual
2008-09-04  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpactionview.[ch]: add an GtkTreeModelFilter
	between the GtkTreeView and the actual GtkTreeStore. Add API to
	set the filter which is simply a string that's matched with
	strstr(). Quite some things improvable here...

	* app/dialogs/keyboard-shortcuts-dialog.c: add a "Filter" entry
	and set the filter on the action view.


svn path=/trunk/; revision=26859
2008-09-04 13:46:45 +00:00
Sven Neumann 8ec1d65a4a removed trailing whitespace
svn path=/trunk/; revision=26852
2008-09-04 08:37:32 +00:00
Michael Natterer da8137b43c made the string parameters const.
2008-09-03  Michael Natterer  <mitch@gimp.org>

	* app/pdb/gimpprocedure.[ch] (gimp_procedure_set_static_strings):
	made the string parameters const.


svn path=/trunk/; revision=26846
2008-09-03 20:26:05 +00:00
Michael Natterer d6f1bc5cf8 app/widgets/gimpcontrollerkeyboard.c (struct _KeyboardEvent) made the
2008-09-03  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpcontrollerkeyboard.c (struct _KeyboardEvent)
	* app/widgets/gimpcontrollerwheel.c (struct _WheelEvent): made the
	blurbs const.


svn path=/trunk/; revision=26845
2008-09-03 20:17:57 +00:00
Michael Natterer a1e7315643 remove the call to gdk_window_get_pointer() again.
2008-09-03  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpnavigationview.c
	(gimp_navigation_view_motion_notify): remove the call to
	gdk_window_get_pointer() again.

	(gimp_navigation_view_grab_pointer): instead, grab the pointer
	properly with owner_events=FALSE so all events are reported with
	respect to the widget's window.


svn path=/trunk/; revision=26844
2008-09-03 20:13:35 +00:00
Michael Natterer 435f6e3974 app/display/gimpdisplayshell-callbacks.c libgimpwidgets/gimpcolorselect.c
2008-09-03  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	* libgimpwidgets/gimpcolorselect.c
	* modules/color-selector-water.c
	* plug-ins/ifs-compose/ifs-compose.c: instead of using
	gdk_window_get_pointer() if GdkEventMotion::is_hint is TRUE,
	simply always use the coords from the event and call
	gdk_event_request_motions() to ask for more motion events. This is
	the recommended way and also works for events from devices other
	than the core pointer.

	* plug-ins/ifs-compose/ifs-compose.c (design_area_motion): some
	code cleanup while i was at it.


svn path=/trunk/; revision=26843
2008-09-03 19:24:51 +00:00
Sven Neumann 2552aa2b37 if INVALID_FILE_HANDLE is undefined, define it as the constant that we
2008-09-02  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimppluginshm.c: if INVALID_FILE_HANDLE is 
undefined,
	define it as the constant that we used to use here.


svn path=/trunk/; revision=26839
2008-09-02 20:52:25 +00:00
Michael Natterer 9d18f2aa9e use gtk_widget_get_style() instead of widget->style.
2008-09-02  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpstatusbar.c: use gtk_widget_get_style() instead
	of widget->style.


svn path=/trunk/; revision=26837
2008-09-02 12:55:46 +00:00
Michael Natterer 017e5ef73a no need to set strlen(sting)+1 bytes on the GtkSelectionData because
2008-09-02  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpselectiondata.c: no need to set strlen(sting)+1
	bytes on the GtkSelectionData because gtk_selection_data_set()
	zero-terminates all data anyway.


svn path=/trunk/; revision=26835
2008-09-02 12:00:07 +00:00
Michael Natterer 641dbb6593 return a const string, no need to strdup it since it's only used
2008-09-02  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpselectiondata.c (gimp_selection_data_get_name):
	return a const string, no need to strdup it since it's only used
	temporarily in this file.

	(gimp_selection_data_get_image)
	(gimp_selection_data_get_component)
	(gimp_selection_data_get_item)
	(gimp_selection_data_get_object): changed accordingly. Move
	variables to local scopes and simplify.


svn path=/trunk/; revision=26834
2008-09-02 11:30:28 +00:00
Sven Neumann 5ed7a372ee use the constant INVALID_FILE_HANDLE instead of 0xFFFFFFFF. Fixes shared
2008-09-01  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimppluginshm.c (gimp_plug_in_shm_new): use the
	constant INVALID_FILE_HANDLE instead of 0xFFFFFFFF. Fixes shared
	memory tile transport on 64bit Windows systems.


svn path=/trunk/; revision=26827
2008-09-01 20:55:31 +00:00
Sven Neumann a5f8345609 added clear_region().
2008-09-01  Sven Neumann  <sven@gimp.org>

	* app/paint-funcs/paint-funcs.[ch]: added clear_region().

	* app/base/tile-manager-crop.c
	* app/core/gimpchannel.c
	* app/core/gimpimage-merge.c
	* app/core/gimpmaskundo.c
	* app/core/gimpprojection-construct.c: use it instead of calling
	color_region() with a zero color.



svn path=/trunk/; revision=26826
2008-09-01 20:44:00 +00:00
Sven Neumann 88955a3118 also need to initialize the projection if the layer mask could introduce
2008-09-01  Sven Neumann  <sven@gimp.org>

	* app/core/gimpprojection-construct.c 
(gimp_projection_initialize):
	also need to initialize the projection if the layer mask could
	introduce transparency. Fixes bug #550024.


svn path=/trunk/; revision=26824
2008-09-01 20:24:59 +00:00
Martin Nordholts 1d7e141c2d We need to set the scale before using it. Fixes at least
2008-08-31  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-scale.c
	(gimp_display_shell_set_initial_scale): We need to set the scale
	before using it. Fixes at least gimp_display_shell_fill() and
	Image -> Duplicate giving weird initial scales.

svn path=/trunk/; revision=26823
2008-08-31 09:12:55 +00:00
Michael Natterer d9bc8db7a3 app/widgets/gimplayertreeview.c libgimpwidgets/gimpcolorscales.c
2008-08-29  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimplayertreeview.c
	* libgimpwidgets/gimpcolorscales.c
	* libgimpwidgets/gimppropwidgets.c
	* libgimpwidgets/gimpscaleentry.c
	* libgimpwidgets/gimpwidgets.c: use gtk_adjustment_get_value()
	instead of adjustment->value.


svn path=/trunk/; revision=26815
2008-08-29 15:54:10 +00:00
Michael Natterer edcd1e7810 libgimpwidgets/Makefile.am libgimpwidgets/gimpwidgets.h
2008-08-29  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/Makefile.am
	* libgimpwidgets/gimpwidgets.h
	* libgimpwidgets/gimphruler.[ch]
	* libgimpwidgets/gimpvruler.[ch]: remove separate H/VRuler classes.

	* libgimpwidgets/gimpruler.[ch]: add an "orientation" property
	instead. Add gimp_ruler_new().

	* libgimpwidgets/gimpwidgets.def: changed accordingly.

	* app/dialogs/resolution-calibrate-dialog.c
	* app/display/gimpdisplayshell.c
	* plug-ins/gfig/gfig-preview.c
	* plug-ins/imagemap/imap_preview.c: ditto.


svn path=/trunk/; revision=26810
2008-08-29 10:25:29 +00:00
Michael Natterer a2bf2da39b #include "gimpwidgets-utils.h", not "gimpwidgets-utils.c" (eek).
2008-08-29  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimphelp.c: #include "gimpwidgets-utils.h", not
	"gimpwidgets-utils.c" (eek).


svn path=/trunk/; revision=26808
2008-08-29 09:05:49 +00:00
Martin Nordholts 3cfd2a33c0 Canonically calculate scale to use for zoom-focus calculations so that it
2008-08-28  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-scale.c
	(gimp_display_shell_scale_to): Canonically calculate scale to use
	for zoom-focus calculations so that it also works when not in Dot
	by dot-mode.

svn path=/trunk/; revision=26805
2008-08-28 19:35:14 +00:00
Martin Nordholts 2975f815a8 Make the size-changed-detailed signal also contain previous image size.
2008-08-28  Martin Nordholts  <martinn@svn.gnome.org>

	* app/core/gimpimage.[ch]: Make the size-changed-detailed signal
	also contain previous image size.

	* app/display/gimpdisplayshell-handlers.c
	(gimp_display_shell_size_changed_detailed_handler): Take the
	previous image size into account and center the image if it starts
	to fit (axis indepentently) in the viewport due to the resize.

	* app/core/gimpundo.h
	* app/core/gimpimage-undo.c
	* app/core/gimpimageundo.[ch]
	* app/core/gimpimage-undo-push.[ch]: Manage the
	previous-size-information.

	* app/core/gimpimage-crop.c
	* app/core/gimpimage-scale.c
	* app/core/gimpimage-rotate.c
	* app/core/gimpimage-resize.c: Propagate previous size to the
	size-changed-detailed signal emission and the undo-system.

svn path=/trunk/; revision=26804
2008-08-28 19:12:03 +00:00
Sven Neumann 176fb24579 allow to disable the Wilber image shown at the top of the toolbox.
2008-08-28  Sven Neumann  <sven@gimp.org>

        * app/config/gimpguiconfig.[ch]: allow to disable the Wilber 
image
        shown at the top of the toolbox.

        * app/widgets/gimptoolbox.c: honor the new gimprc option.

        * app/config/gimprc-blurbs.h: document the old and new toolbox
        preferences.


svn path=/trunk/; revision=26800
2008-08-28 14:30:47 +00:00
Michael Natterer b19d4b85c3 some tiny formatting fixes.
2008-08-28  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimprectangletool.c: some tiny formatting fixes.


svn path=/trunk/; revision=26799
2008-08-28 12:54:14 +00:00
Sven Neumann c9c3329441 fixed shift direction.
2008-08-28  Sven Neumann  <sven@gimp.org>

	* app/paint-funcs/scale-region.c (scale_determine_progress):
	(scale_region_tile): fixed shift direction.


svn path=/trunk/; revision=26797
2008-08-28 08:46:08 +00:00
Michael Natterer 808ddd311b try the find_widget_under_pointer() hack only if the menu item's parent is
2008-08-27  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpuimanager.c (gimp_ui_manager_item_key_press):
	try the find_widget_under_pointer() hack only if the menu item's
	parent is really a GtkMenu (not a GtkMenuBar). Fixes crash spotted
	by rubikcube.


svn path=/trunk/; revision=26796
2008-08-27 19:36:41 +00:00
Sven Neumann 6a3e8b4cca sprinkled more const qualifiers.
2008-08-27  Sven Neumann  <sven@gimp.org>

	* app/core/gimp-transform-region.c: sprinkled more const 
qualifiers.

	* app/paint-funcs/scale-region.c: call the progress callback 
less
	often.


svn path=/trunk/; revision=26790
2008-08-27 10:19:15 +00:00
Sven Neumann 26645c5549 moved hiding the dialog from gimp_transform_tool_real_transform() to
2008-08-27  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptransformtool.c: moved hiding the dialog from 
	gimp_transform_tool_real_transform() to 
gimp_transform_tool_doit().
	Delay undrawing the preview in doit() until the transformation 
is
	done. This removes the annoying flicker at the end.


svn path=/trunk/; revision=26789
2008-08-27 09:56:46 +00:00
Sven Neumann 915803cfa9 fixed compilation
svn path=/trunk/; revision=26788
2008-08-27 08:21:34 +00:00
Sven Neumann 28cdc4d9a0 hide the tool dialog before starting to perform the transformation.
2008-08-27  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptransformtool.c 
(gimp_transform_tool_real_transform):
	hide the tool dialog before starting to perform the 
transformation.


svn path=/trunk/; revision=26787
2008-08-27 07:42:28 +00:00