Commit Graph

1635 Commits

Author SHA1 Message Date
Martin Nordholts 3356a5b47e Restructure the way the rulers are setup, partly by making use of the new
2008-07-11  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-scale.c
	(gimp_display_shell_scale_setup): Restructure the way the rulers
	are setup, partly by making use of the new nifty
	gimp_display_shell_get_scaled_image_viewport_offset().

svn path=/trunk/; revision=26143
2008-07-11 21:08:34 +00:00
Martin Nordholts 998aac8b53 Remove two lines I forgot to remove in previous commit
svn path=/trunk/; revision=26142
2008-07-11 20:30:59 +00:00
Martin Nordholts 968fa2b25e We can use gimp_display_shell_get_scaled_image_viewport_offset() here
2008-07-11  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-transform.c
	(gimp_display_shell_transform_xy_f)
	(gimp_display_shell_untransform_xy_f): We can use
	gimp_display_shell_get_scaled_image_viewport_offset() here

	* app/display/gimpdisplayshell-scroll.c
	(gimp_display_shell_get_scaled_viewport): and here.

svn path=/trunk/; revision=26141
2008-07-11 20:28:37 +00:00
Martin Nordholts dc6f184a17 const- and g_return_if_fail-ify.
2008-07-11  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-scroll.[ch]
	(gimp_display_shell_get_viewport)
	(gimp_display_shell_get_scaled_viewport)
	(gimp_display_shell_get_scaled_image_viewport_offset): const- and
	g_return_if_fail-ify.

svn path=/trunk/; revision=26140
2008-07-11 20:03:36 +00:00
Martin Nordholts 18c89550fa New function to replace any occurance of
2008-07-11  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-scroll.c
	(gimp_display_shell_get_scaled_image_viewport_offset): New
	function to replace any occurance of

	  shell->disp_[xy]offset - shell->offset_[xy]

	that is just an implementation specific way of saying the same
	thing.

	* app/display/gimpdisplayshell-draw.c
	* app/display/gimpdisplayshell-transform.c: Make the code less
	implementation dependant by using the new function.

svn path=/trunk/; revision=26137
2008-07-11 19:31:45 +00:00
Martin Nordholts 74b89e5493 Update comment.
2008-07-11  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-draw.c
	(gimp_display_shell_draw_area): Update comment.

svn path=/trunk/; revision=26135
2008-07-11 18:32:27 +00:00
Martin Nordholts 06bd569012 Extend the interface with this function.
2008-07-11  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-scroll.[ch]
	(gimp_display_shell_get_viewport): Extend the interface with this
	function.

	* app/display/gimpnavigationeditor.c
	(gimp_navigation_editor_update_marker): Use it here.

svn path=/trunk/; revision=26114
2008-07-11 03:20:17 +00:00
Martin Nordholts 7fee886d49 Actually add gimpdisplayshell-private.h to SVN version control
svn path=/trunk/; revision=26113
2008-07-10 20:25:11 +00:00
Martin Nordholts 19325009fa Extend the interface with this function
2008-07-10  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-scroll.c
	(gimp_display_shell_get_scaled_viewport): Extend the interface
	with this function

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_update_handle_sizes): Forget anything we knew
	about how to interpret the icky GimpDisplayShell offset variables

svn path=/trunk/; revision=26111
2008-07-10 20:19:17 +00:00
Martin Nordholts 8f21264592 Make gimp_display_shell_scroll() a sane public interface for scrolling and
2008-07-10  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-scroll.[ch]: Make
	gimp_display_shell_scroll() a sane public interface for scrolling
	and call the old version gimp_display_shell_scroll_private()

	* app/display/gimpnavigationeditor.c: Adapt to the saner version
	of gimp_display_shell_scroll()

	* app/display/gimpdisplayshell-callbacks.c: 
	* app/display/gimpdisplayshell-autoscroll.c: Use the private
	version of gimp_display_shell_scroll()

	* app/display/Makefile.am: Added gimpdisplayshell-private.h

svn path=/trunk/; revision=26110
2008-07-10 19:23:22 +00:00
Martin Nordholts abd52cc491 The return value of gimp_display_shell_scroll() is not used anywhere, make
2008-07-10  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-scroll.[ch]: The return value of
	gimp_display_shell_scroll() is not used anywhere, make it void.

svn path=/trunk/; revision=26109
2008-07-10 18:44:30 +00:00
Sven Neumann b85545eb4d swallow informational messages if there aren't handled by the statusbar.
2008-07-10  Sven Neumann  <sven@sven-sun.berlin.jpk.com>

	* app/display/gimpdisplayshell-progress.c
	(gimp_display_shell_progress_message): swallow informational
	messages if there aren't handled by the statusbar.


svn path=/trunk/; revision=26101
2008-07-10 09:42:36 +00:00
Sven Neumann 23459bf568 if a save dialog is active for this image, then don't allow to close it.
2008-07-09  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-close.c (gimp_display_shell_close):
	if a save dialog is active for this image, then don't allow to
	close it. Fixes bug #511965.

svn path=/trunk/; revision=26095
2008-07-09 10:59:19 +00:00
Sven Neumann 1fe4281317 don't accept a progress message if the status bar is already showing a
2008-07-09  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.c (gimp_statusbar_progress_message):
	don't accept a progress message if the status bar is already
	showing a temporary message.

svn path=/trunk/; revision=26094
2008-07-09 10:45:21 +00:00
Martin Nordholts 3a879e7bdf Renamed the variales sx and sy to sw and sh.
2008-07-05  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-scroll.c
	(gimp_display_shell_scroll_clamp_offsets): Renamed the variales sx
	and sy to sw and sh.

svn path=/trunk/; revision=26070
2008-07-05 15:43:39 +00:00
Sven Neumann c3cc7367f4 don't use Escape to quit full-screen mode, it collides with tools using
2008-07-03  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_events): don't use Escape to quit full-screen
	mode, it collides with tools using the Escape key (bug #539949).

svn path=/trunk/; revision=26049
2008-07-03 11:59:56 +00:00
Michael Natterer 6aa62a907b app/dialogs/channel-options-dialog.c app/dialogs/palette-import-dialog.c
2008-06-29  Michael Natterer  <mitch@gimp.org>

	* app/dialogs/channel-options-dialog.c
	* app/dialogs/palette-import-dialog.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpnavigationeditor.c
	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcolorizetool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpposterizetool.c
	* app/widgets/gimpbrusheditor.c
	* app/widgets/gimpbrushfactoryview.c
	* app/widgets/gimpbrushselect.c
	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimpcontainertreeview-dnd.c
	* app/widgets/gimpgradienteditor.c
	* app/widgets/gimphistogrambox.c
	* app/widgets/gimppaletteeditor.c
	* app/widgets/gimpscalebutton.c: replace adjustment->value by
	gtk_adjustment_get_value (adjustment).


svn path=/trunk/; revision=26019
2008-06-29 13:41:24 +00:00
Michael Natterer 8c66ea4b19 app/actions/layers-commands.c app/actions/view-actions.c
2008-06-28  Michael Natterer  <mitch@gimp.org>

	* app/actions/layers-commands.c
	* app/actions/view-actions.c
	* app/dialogs/about-dialog.c
	* app/dialogs/layer-options-dialog.c
	* app/dialogs/preferences-dialog.c
	* app/display/gimpcanvas.c
	* app/display/gimpdisplayshell-appearance.c
	* app/display/gimpnavigationeditor.c
	* modules/colorsel_water.c: use accessors instead of accessing
	members of GTK+ widgets directly.


svn path=/trunk/; revision=26006
2008-06-28 15:12:13 +00:00
Michael Natterer b823c752d0 app/display/gimpdisplayshell-scale.c app/gegl/gimpoperationdesaturate.h
2008-06-04  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-scale.c
	* app/gegl/gimpoperationdesaturate.h
	* app/tools/gimprectangletool.c
	* app/widgets/gimpradioaction.h
	* app/widgets/gimptoggleaction.h: various fixes tpo make gtk-doc
	happy.


svn path=/trunk/; revision=25893
2008-06-04 16:09:57 +00:00
Sven Neumann 3526b43c6b reverted last change.
2008-05-29  Sven Neumann  <sven@gimp.org>

	* app/display/gimpscalecombobox.c (gimp_scale_combo_box_init):
	reverted last change.

svn path=/trunk/; revision=25859
2008-05-29 13:59:30 +00:00
Sven Neumann 86c8eba619 unset the entry's frame instead of reducing the inner border.
2008-05-29  Sven Neumann  <sven@gimp.org>

	* app/display/gimpscalecombobox.c (gimp_scale_combo_box_init):
	unset the entry's frame instead of reducing the inner border.

svn path=/trunk/; revision=25858
2008-05-29 13:20:05 +00:00
Sven Neumann 5d0c84696c set the display unit on the ruler.
2008-05-28  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-scale.c
	(gimp_display_shell_scale_setup): set the display unit on the ruler.

	* libgimpwidgets/gimphruler.c (gimp_hruler_draw_ticks)
	* libgimpwidgets/gimpvruler.c (gimp_vruler_draw_ticks): hack around
	to get nicer subdivisions for rulers showing pixels.

svn path=/trunk/; revision=25839
2008-05-28 14:33:46 +00:00
Sven Neumann e7494c1c0f started to sanitize the ruler API.
2008-05-28  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpruler.[ch]: started to sanitize the ruler 
API.

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

	* libgimpwidgets/gimpwidgets.def: updated.


svn path=/trunk/; revision=25836
2008-05-28 10:18:43 +00:00
Sven Neumann c674fc3f7f reenabled rulers by default.
2008-05-27  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayoptions.c: reenabled rulers by default.

svn path=/trunk/; revision=25831
2008-05-27 13:45:50 +00:00
Michael Natterer f8a7ba7693 revert velocity limit to 1.0, this part of the patch shouldn't have been
2008-05-27  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-coords.c: revert velocity limit to
	1.0, this part of the patch shouldn't have been applied.


svn path=/trunk/; revision=25824
2008-05-27 09:02:31 +00:00
Sven Neumann ae67f09ddd libgimpwidgets/Makefile.am libgimpwidgets/gimpwidgets.h
2008-05-26  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/Makefile.am
	* libgimpwidgets/gimpwidgets.h
	* libgimpwidgets/gimpwidgetstypes.h

	* libgimpwidgets/gimpruler.[ch]
	* libgimpwidgets/gimphruler.[ch]
	* libgimpwidgets/gimpvruler.[ch]: added ruler widgets. These are
	mostly copied from GTK+ and work as a drop-in replacement for
	GtkRuler and friends.

	* libgimpwidgets/gimpwidgets.def: updated.

	* app/display/gimpdisplayshell.c
	* app/display/gimpdisplayshell-scale.c
	* app/dialogs/resolution-calibrate-dialog.c
	* plug-ins/imagemap/imap_preview.c
	* plug-ins/gfig/gfig-preview.c: use the GimpRuler widgets.


svn path=/trunk/; revision=25820
2008-05-26 21:20:16 +00:00
Michael Natterer b819602590 Applied modified patch from Alexia Death. Addresses bug #534770:
2008-05-26  Michael Natterer  <mitch@gimp.org>

	Applied modified patch from Alexia Death. Addresses bug #534770:

	* app/paint/gimppaintoptions.[ch]: add properties for scaling
	the effects of pressure, velocity and hardness and honor them
	in the various get_dynamic_foo() functions.

	(gimp_paint_options_get_dynamic_size): look at
	pressure_options->size again, that code got lost in one of the
	earlier patches.

	* app/tools/gimppaintoptions-gui.c: add GimpScaleButtons to the
	table for the new properties.

	* app/display/gimpdisplayshell-coords.c: don't let "velocity"
	reach 1.0, use 0.9999 instead.


svn path=/trunk/; revision=25816
2008-05-26 19:52:09 +00:00
Michael Natterer 598da617b0 Stop including single headers from gtk+ to be prepared for the upcoming
2008-05-23  Michael Natterer  <mitch@gimp.org>

	Stop including single headers from gtk+ to be prepared
	for the upcoming GTK_DISABLE_SINGLE_INCLUDES:

	* configure.in: add -DGTK_DISABLE_SINGLE_INCLUDES to CPPFLAGS.

	* app/display/gimpcanvas.h
	* app/display/gimpscalecombobox.h
	* app/display/gimpstatusbar.h
	* app/widgets/*.h
	* libgimp/gimpprogressbar.h
	* libgimp/gimpselectbutton.h
	* libgimpwidgets/*.h
	* libgimpwidgets/gimpstock.c
	* plug-ins/uri/gimpmountoperation.h: remove inclusion of parent
	classes and single files from gtk+.

	* app/widgets/gtkwrapbox.h
	* libgimp/gimpbrushmenu.c
	* libgimp/gimpfontmenu.c
	* libgimp/gimpgradientmenu.c
	* libgimp/gimppalettemenu.c
	* libgimp/gimppatternmenu.c
	* libgimp/gimpselectbutton.c: #include <gtk/gtk.h>

	* plug-ins/common/poppler.c: undef GTK_DISABLE_SINGLE_INCLUDES
	when including <poppler.h>.


svn path=/trunk/; revision=25781
2008-05-23 20:38:52 +00:00
Michael Natterer fe70064f00 Applied slightly modified and fixed patch from Alexia Death which adds a
2008-05-22  Michael Natterer  <mitch@gimp.org>

	Applied slightly modified and fixed patch from Alexia Death which
	adds a "random" axis to the paint dynamics and fixes some issues
	in the previous paint dynamics commits. Fixes bug #529431.

	* app/core/core-types.h: add a "random" axis to GimpCoords.

	* app/display/gimpdisplayshell-coords.c: set it to a random value.

	* app/display/gimpdisplayshell-callbacks.c: on button_press,
	use the dynamics from the last motion event to avoid blotches
	at the beginning of paint strokes.

	* app/paint/gimppaintoptions.[ch]: add random properties the same
	way we do pressure and velocity. Add get_dynamic_size(),
	get_dynamic_color() and get_dynamic_hardness() functions which
	look at all dynamic parameters of the passed coords.

	* app/tools/gimppaintoptions-gui.c: add gui for the random options.

	* app/paint/gimpbrushcore.[ch]: remove calc_brush_scale() and use
	gimp_paint_options_get_dynamic_size_instead().
	Add "dynamic_hardness" parameters to paste_canvas(),
	replace_canvas() and get_brush_mask().

	* app/paint/gimpairbrushoptions.c
	* app/paint/gimpclone.c
	* app/paint/gimpconvolve.c
	* app/paint/gimpdodgeburn.c
	* app/paint/gimperaser.c
	* app/paint/gimpheal.c
	* app/paint/gimppaintbrush.c
	* app/paint/gimpsmudge.c: calculate the dynamic hardness and pass
	it to above brush core functions. Use the get_dynamic_color() to
	calculate the gradient color.


svn path=/trunk/; revision=25758
2008-05-22 16:38:57 +00:00
Sven Neumann da17a091f0 disable rulers by default as suggested by Peter. Please give feedback.
2008-05-16  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayoptions.c: disable rulers by default as
	suggested by Peter. Please give feedback.


svn path=/trunk/; revision=25675
2008-05-16 17:12:19 +00:00
Michael Natterer dc62afec23 emit notify::image.
2008-05-10  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplay.c (gimp_display_set_image): emit
	notify::image.


svn path=/trunk/; revision=25622
2008-05-10 15:22:17 +00:00
Sven Neumann 9b7a46311f don't reserve Delete for use by tools. Fixes bug #532116.
2008-05-10  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_events) 
(gimp_display_shell_canvas_tool_events):
	don't reserve Delete for use by tools. Fixes bug #532116.

	* app/tools/gimpimagemaptool.c
	* app/tools/gimptransformtool.c: don't use Delete (you can still
	use the Backspace key to achieve the same).


svn path=/trunk/; revision=25607
2008-05-10 10:20:42 +00:00
Michael Natterer 82c2616f0f Applied modified patch from Alexia Death which adds velocity support to
2008-05-10  Michael Natterer  <mitch@gimp.org>

	Applied modified patch from Alexia Death which adds velocity
	support to paint tools in the spirit of the pressure support we
	already have. Fixes bug #529431.

	* app/display/gimpdisplayshell-coords.c
	(gimp_display_shell_eval_event): tweak velocity calculation to
	work in screen coordinates.

	* app/paint/gimppaintoptions.[ch]: add velocity options in the
	same way as there are pressure options. Add utility functions
	which return dynamic opatity and dynamic rate according to the the
	option's settings and some GimpCoords' pressure and velocity.

	* app/tools/gimppaintoptions-gui.c: add GUI for the velocity
	options.

	* app/paint/gimpbrushcore.h: remove PRESSURE_SCALE define, it's
	now in gimppaintoptions.h.

	* app/paint/gimpbrushcore.c (gimp_brush_core_interpolate):
	inerpolate velocity too.

	(gimp_brush_core_calc_brush_scale): take velocity into account.

	(gimp_brush_core_get_brush_mask): always pressurize the mask in
	the GIMP_BRUSH_PRESSURE because there always is velocity (unlike
	pressure which is only there on tablets).

	* app/paint/gimpairbrush.c
	* app/paint/gimpclone.c
	* app/paint/gimpconvolve.c
	* app/paint/gimpdodgeburn.c
	* app/paint/gimperaser.c
	* app/paint/gimpheal.c
	* app/paint/gimppaintbrush.c
	* app/paint/gimpsmudge.c: get opacity and rate from the new paint
	options utility functions which take both pressure and velocity
	into account.

	* app/paint/gimppaintbrush.c: take velocity into account when
	calculating the gradient color offset.

	* app/paint/gimpairbrush.c: do some additional fiddling with
	velocity in the asynchronous airbrush timeout.

	* app/paint/gimpairbrushoptions.c: override the velocity-size
	property and have it default to FALSE.


svn path=/trunk/; revision=25604
2008-05-10 10:03:21 +00:00
Michael Natterer 7cdecd20d0 don't call gtk_widget_grab_focus() here.
2008-05-08  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_events): don't call gtk_widget_grab_focus() here.

	(gimp_display_shell_canvas_tool_events): call it here instead and
	add comments about how BUTTON_PRESS and FOCUS_IN interact.

	Also return TRUE from BUTTON_PRESS, BUTTON_RELEASE and
	MOTION_NOTIFY.


svn path=/trunk/; revision=25590
2008-05-08 15:26:21 +00:00
Sven Neumann d4ac3ad00e removed the entry's inner border to save some precious space in the
2008-05-08  Sven Neumann  <sven@gimp.org>

	* app/display/gimpscalecombobox.c (gimp_scale_combo_box_init):
	removed the entry's inner border to save some precious space in
	the status-bar.


svn path=/trunk/; revision=25588
2008-05-08 12:47:21 +00:00
Sven Neumann 7a8abc28b3 move the focus to the canvas on button-press events.
2008-05-08  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_events): move the focus to the canvas on
	button-press events.

	* app/widgets/gimpwindow.c (gimp_window_key_press_event): 
removed
	a use of G_UNLIKELY() that is somewhat bogus here.


svn path=/trunk/; revision=25587
2008-05-08 12:34:27 +00:00
Sven Neumann 563684d665 app/tools/gimppainttool.c applied patch from Alexia Death which changes
2008-05-05  Sven Neumann  <sven@gimp.org>

	* app/tools/gimppainttool.c
	* app/display/gimpdisplayshell-coords.c: applied patch from 
Alexia
	Death which changes the maximum smoothing for paint tools to 
more
	conservative default and adds velocity dependent smooth 
suppression.


svn path=/trunk/; revision=25564
2008-05-05 06:21:22 +00:00
Sven Neumann 9be0d9c98f also handle the Tab keys and call the "activate" handler when Tab is
2008-04-30  Sven Neumann  <sven@gimp.org>

	* app/display/gimpscalecombobox.c
	(gimp_scale_combo_box_entry_key_press): also handle the Tab keys
	and call the "activate" handler when Tab is pressed.


svn path=/trunk/; revision=25553
2008-04-30 08:43:37 +00:00
Sven Neumann 89e4fdbc44 install a "key-press-event" handler and reset the entry when the Escape
2008-04-30  Sven Neumann  <sven@gimp.org>

	* app/display/gimpscalecombobox.c: install a "key-press-event"
	handler and reset the entry when the Escape key is pressed.


svn path=/trunk/; revision=25552
2008-04-30 08:40:16 +00:00
Sven Neumann 7cc4f8c1db added signal "entry-activated".
2008-04-29  Sven Neumann  <sven@gimp.org>

	* app/display/gimpscalecombobox.[ch]: added signal 
"entry-activated".

	* app/display/gimpstatusbar.c (gimp_statusbar_new): connect to 
the
	new signal and move the focus to the canvas.

	* app/display/gimpdisplayshell.c (gimp_display_shell_new): 
comment.


svn path=/trunk/; revision=25549
2008-04-29 09:08:53 +00:00
Sven Neumann 5709dcc27a keep the current scale value, beep and reset the entry when the user input
2008-04-28  Sven Neumann  <sven@gimp.org>

	* app/display/gimpscalecombobox.c: keep the current scale value,
	beep and reset the entry when the user input cannot be parsed.
	Also changed the input parser to interpret a single number as a
	percentage.


svn path=/trunk/; revision=25547
2008-04-28 21:50:18 +00:00
Sven Neumann 5cc4c6ae3a derive from GtkComboBoxEntry. Needs some more work with respect to input
2008-04-28  Sven Neumann  <sven@gimp.org>

	* app/display/gimpscalecombobox.[ch]: derive from 
GtkComboBoxEntry.
	Needs some more work with respect to input validation and focus
	handling...


svn path=/trunk/; revision=25542
2008-04-28 16:41:02 +00:00
Sven Neumann f23d046965 app/widgets/Makefile.am app/widgets/widgets-types.h added GimpWindow class
2008-04-28  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpwindow.[ch]: added GimpWindow class and moved
	key-press-event handler from GimpDock to this class.

	* app/widgets/gimpdock.[ch]:
	* app/display/gimpdisplayshell.[ch]: derive from GimpWindow.


svn path=/trunk/; revision=25541
2008-04-28 16:30:55 +00:00
Sven Neumann 64e02fadef take vertical padding into account to avoid resizing the statusbar.
2008-04-22  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.c (gimp_statusbar_frame_size_request):
	take vertical padding into account to avoid resizing the statusbar.

svn path=/trunk/; revision=25512
2008-04-22 10:15:06 +00:00
Michael Natterer b8d687fec2 remove local "inertia" variable and simply modify the passed
2008-04-16  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-coords.c
	(gimp_display_shell_eval_event): remove local "inertia" variable
	and simply modify the passed "inertia_factor" when needed.


svn path=/trunk/; revision=25494
2008-04-16 15:19:28 +00:00
Michael Natterer 5061fb6be0 fix calculation of filter distance, it was missing a 1 / zoom_factor.
2008-04-15  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-coords.c
	(gimp_display_shell_eval_event): fix calculation of filter
	distance, it was missing a 1 / zoom_factor. Moved variables to
	local scope. Remove resundant thistime variable. Turned const
	gdouble into a #define.


svn path=/trunk/; revision=25490
2008-04-15 21:32:00 +00:00
Sven Neumann 5ab6f922d2 introduced a #define for the spacing between the icon and the statusbar
2008-04-14  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.c: introduced a #define for the spacing
	between the icon and the statusbar label.

svn path=/trunk/; revision=25484
2008-04-14 11:57:23 +00:00
Sven Neumann 88325fce62 fixed icon placement for right-to-left render direction.
2008-04-14  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.c (gimp_statusbar_label_expose): 
fixed
	icon placement for right-to-left render direction.


svn path=/trunk/; revision=25482
2008-04-14 11:05:18 +00:00
Sven Neumann a95de7a59c rewritten the code that draws the icon in the statusbar label. The new
2008-04-14  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.[ch]: rewritten the code that draws
	the icon in the statusbar label. The new code gives nicer 
spacing.


svn path=/trunk/; revision=25481
2008-04-14 10:10:02 +00:00
Sven Neumann fea85ea945 app/display/gimpdisplayshell.c (gimp_display_shell_show_tooltip)
2008-04-14  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell.c 
(gimp_display_shell_show_tooltip)
	* app/display/gimpstatusbar.c (gimp_statusbar_progress_start)
	* app/gui/gui.c (gui_menu_show_tooltip): push a NULL stock-id.


svn path=/trunk/; revision=25479
2008-04-14 07:39:23 +00:00
Sven Neumann c88bd263e0 added a sanity check.
2008-04-14  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.c (gimp_statusbar_label_expose): 
added
	a sanity check.

	* app/display/gimpdisplayshell-layer-select.c: formatting.


svn path=/trunk/; revision=25478
2008-04-14 06:50:55 +00:00
Sven Neumann e7c5bf8086 added stock-id parameters to all statusbar setters.
2008-04-14  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.[ch]: added stock-id parameters to 
all
	statusbar setters.

	* app/display/gimpdisplayshell-title.c: pass NULL as stock-id.

	* app/tools/gimptool.c: pass the tool icon to the statusbar.

	* app/tools/gimpeditselectiontool.c 
(gimp_edit_selection_tool_start):
	inherit the tool-info from the parent tool.


svn path=/trunk/; revision=25477
2008-04-14 06:28:43 +00:00
Sven Neumann d8ad4cfa7c added "label-scale" style property.
2008-04-13  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpunitcombobox.c: added "label-scale" style 
property.

	* app/display/gimpscalecombobox.[ch]: ditto. Also removed the
	support for extra action items.

	* app/display/gimpstatusbar.c: changed accordingly.

	* themes/Default/gtkrc
	* themes/Small/gtkrc: use a smaller font for the combo-box 
labels
	in the statusbar.


svn path=/trunk/; revision=25475
2008-04-13 17:01:19 +00:00
Michael Natterer 3b8d863bbe don't call gtk_widget_set_name() on a NULL menubar.
2008-04-11  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-appearance.c
	(gimp_display_shell_appearance_update): don't call
	gtk_widget_set_name() on a NULL menubar.


svn path=/trunk/; revision=25469
2008-04-11 16:58:14 +00:00
Michael Natterer 01a35bddfb unfullscreen the window before doing anything else.
2008-04-11  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell.c (gimp_display_shell_empty):
	unfullscreen the window before doing anything else.


svn path=/trunk/; revision=25466
2008-04-11 14:42:43 +00:00
Michael Natterer c57d42c32a don't show the status bar's resize grip in fullscreen mode.
2008-04-11  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-appearance.c
	(gimp_display_shell_appearance_update): don't show the status
	bar's resize grip in fullscreen mode.


svn path=/trunk/; revision=25465
2008-04-11 09:08:40 +00:00
Sven Neumann 5357d440e4 improved the check if the message can be shown in the statusbar. Do not
2008-04-10  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.[ch] 
(gimp_statusbar_progress_message):
	improved the check if the message can be shown in the statusbar.
	Do not show messages that don't fit into the given space.

	* app/gui/gui-message.c (gui_message_error_dialog): if there's
	already an error dialog associated with a progress, then use it.


svn path=/trunk/; revision=25461
2008-04-10 19:24:06 +00:00
Sven Neumann 1006d379e4 app/display/gimpdisplayshell-callbacks.c
2008-04-07  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-coords.[ch]
	* app/tools/gimppainttool.c
	* app/tools/gimptool.[ch]: applied patch from Alexia Death as
	attached to bug #508639. This change makes the smoothing depend on
	the active tool.

svn path=/trunk/; revision=25392
2008-04-07 13:54:43 +00:00
Sven Neumann 260c38b06d use gimp_statusbar_push_temp() directly instead of going through
2008-04-07  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplay-handlers.c (gimp_display_saved_handler):
	use gimp_statusbar_push_temp() directly instead of going through
	gimp_message(). Use the GTK_STOCK_SAVE icon for the statusbar
	message.

svn path=/trunk/; revision=25388
2008-04-07 12:50:57 +00:00
Sven Neumann 19864b9a42 resurrected the icon in statusbar messages.
2008-04-06  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.c: resurrected the icon in statusbar
	messages.


svn path=/trunk/; revision=25378
2008-04-06 09:54:30 +00:00
Sven Neumann fe11741319 added new function gimp_display_close() which decides if
2008-04-05  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplay.[ch]: added new function
	gimp_display_close() which decides if gimp_display_delete() or
	gimp_display_empty() needs to be called.

	* app/display/gimpdisplay-foreach.[ch]: added new function
	gimp_displays_close() and removed the 'do_quit' parameter from
	gimp_displays_delete().

	* app/gui/gui.c (gui_exit_callback): changed accordingly.

	* app/display/gimpdisplayshell-close.c: removed
	gimp_display_shell_really_close() and call gimp_display_close()
	instead.

	* app/display/gimpdisplayshell.c (gimp_display_shell_empty): 
moved
	code to update the ui managers here.

	* app/actions/file-commands.c (file_save_cmd_callback)
	(file_close_cmd_callback)
	* app/dialogs/file-save-dialog.c (file_save_dialog_response)
	* app/dialogs/quit-dialog.c (quit_close_all_dialog_response):
	close displays instead of deleting them.

	* app/gui/gui-vtable.c (gui_display_delete): call
	gimp_display_close().


svn path=/trunk/; revision=25377
2008-04-05 20:32:24 +00:00
Sven Neumann 82dc4aab8d no need to translate the empty string.
2008-04-01  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-title.c
	(gimp_display_shell_update_title_idle): no need to translate the
	empty string.


svn path=/trunk/; revision=25328
2008-03-31 22:17:45 +00:00
Sven Neumann 465b4e76c3 never set the dest_inc and src_dec variables to zero.
2008-03-30  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell.c 
(gimp_display_shell_scale_changed):
	never set the dest_inc and src_dec variables to zero.


svn path=/trunk/; revision=25313
2008-03-30 16:39:44 +00:00
Sven Neumann 9acc157a75 added new function gimp_display_shell_unset_cursor().
2008-03-30  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-cursor.[ch]: added new function
	gimp_display_shell_unset_cursor().
	(gimp_display_shell_real_set_cursor): deal with cursor_type -1 
and
	change the cursor to the default desktop cursor. Fixes warnings 
on
	image load.

	* app/display/gimpdisplayshell.c (gimp_display_shell_empty):
	use gimp_display_shell_unset_cursor().


svn path=/trunk/; revision=25312
2008-03-30 16:09:55 +00:00
Michael Natterer 8088b64c72 app/display/gimpcanvas.c app/widgets/gimpcoloreditor.c
2008-03-30  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpcanvas.c
	* app/widgets/gimpcoloreditor.c
	* app/widgets/gimpcolorframe.c
	* app/widgets/gimpcursorview.c
	* app/widgets/gimpcurveview.c
	* app/widgets/gimpdataeditor.c
	* app/widgets/gimpdock.c
	* app/widgets/gimpdockable.c
	* app/widgets/gimpdockbook.c
	* app/widgets/gimpdockseparator.c
	* app/widgets/gimpeditor.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimpmenudock.c
	* app/widgets/gimpsamplepointeditor.c
	* app/widgets/gimptoolbox.c: chain up unconditionally in
	GtkWidget::style_set() because there is has a default
	implementation.


svn path=/trunk/; revision=25307
2008-03-29 23:43:39 +00:00
Sven Neumann fc93cc19ce deprecate gimp_memsize_to_string() in favor of
2008-03-28  Sven Neumann  <sven@gimp.org>

	* libgimpbase/gimpmemsize.[ch]: deprecate gimp_memsize_to_string()
	in favor of g_format_size_for_display().

	* app/actions/edit-commands.c
	* app/core/gimpimagefile.c
	* app/dialogs/image-new-dialog.c
	* app/dialogs/image-scale-dialog.c
	* app/display/gimpdisplayshell-title.c
	* app/widgets/gimpimagepropview.c
	* app/widgets/gimptemplateeditor.c
	* app/widgets/gimpthumbbox.c
	* plug-ins/uri/uri-backend-gnomevfs.c
	* plug-ins/uri/uri-backend-gvfs.c
	* plug-ins/uri/uri-backend-libcurl.c
	* plug-ins/uri/uri-backend-wget.c: use g_format_size_for_display()
	instead of gimp_memsize_to_string().

svn path=/trunk/; revision=25285
2008-03-28 16:33:24 +00:00
Sven Neumann ded9a6c3df don't flush if there's no image. (gimp_display_shell_dnd_flush): use
2008-03-27  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-dnd.c
	(gimp_display_shell_drop_uri_list): don't flush if there's no image.
	(gimp_display_shell_dnd_flush): use gtk_window_present() instead of
	gdk_window_focus().

svn path=/trunk/; revision=25261
2008-03-27 12:22:23 +00:00
Sven Neumann f98c737094 use a button with icon for the progress cancel button.
2008-03-27  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.c: use a button with icon for the
	progress cancel button.

svn path=/trunk/; revision=25260
2008-03-27 12:17:45 +00:00
Sven Neumann be216eea27 added an arbitrary number to the minimum height.
2008-03-27  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell.c (gimp_display_shell_style_set):
	added an arbitrary number to the minimum height.

svn path=/trunk/; revision=25259
2008-03-27 12:08:55 +00:00
Sven Neumann bfa3e92155 make sure that the statusbar frame requests enough space to hold it's
2008-03-27  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.c: make sure that the statusbar frame
	requests enough space to hold it's children, also the invisible ones.

	* app/display/gimpdisplayshell.c (gimp_display_shell_style_set):
	don't add 1 pixel here, this spacing is gone.

svn path=/trunk/; revision=25258
2008-03-27 11:38:45 +00:00
Sven Neumann 81c46c382b derive GimpStatusbar from GtkStatusbar. Use the normal statusbar label for
2008-03-27  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.[ch]: derive GimpStatusbar from
	GtkStatusbar. Use the normal statusbar label for statusbar
	messages and only show the progressbar when progress is active.

	* app/display/gimpdisplayshell.c (gimp_display_shell_new): removed
	spacing from the main vertical box.

svn path=/trunk/; revision=25257
2008-03-27 10:43:55 +00:00
Sven Neumann 86cf30dd1d hide ugly details behind a sane API.
2008-03-26  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpcairo-wilber.[ch]: 
	* app/display/gimpcanvas.c (gimp_canvas_draw_drop_zone): hide 
ugly
	details behind a sane API.


svn path=/trunk/; revision=25248
2008-03-26 19:25:55 +00:00
Michael Natterer ccb8239a26 improve tooltip here too.
2008-03-26  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell.c (gimp_display_shell_empty):
	improve tooltip here too.


svn path=/trunk/; revision=25247
2008-03-26 18:26:13 +00:00
Sven Neumann 3f2120ed09 include a better Wilber path, thanks to Jimmac.
2008-03-26  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpcairo-wilber.c: include a better Wilber path,
	thanks to Jimmac.

	* app/display/gimpcanvas.c (gimp_canvas_draw_drop_zone): undid
	scaling "fix", instead take the offset into account. Draw with
	transparency.

svn path=/trunk/; revision=25246
2008-03-26 17:25:00 +00:00
Michael Natterer 00b3334d1f fix scaling.
2008-03-26  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpcanvas.c (gimp_canvas_draw_drop_zone): fix scaling.


svn path=/trunk/; revision=25245
2008-03-26 16:33:04 +00:00
Sven Neumann 93dcbb1904 app/widgets/Makefile.am new files that renders a Wilber image as a Cairo
2008-03-26  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/gimpcairo-wilber.[ch]: new files that renders a
	Wilber image as a Cairo path. Or at least it is supposed to do
	this at some point...

	* app/display/gimpcanvas.c (gimp_canvas_draw_drop_zone): use the
	scalable Wilber path. Needs more work...

svn path=/trunk/; revision=25244
2008-03-26 15:59:52 +00:00
Sven Neumann ea0f905e75 use the height for height, not the width
svn path=/trunk/; revision=25243
2008-03-26 14:20:23 +00:00
Sven Neumann 7dadaee825 install wilber.png.
2008-03-26  Sven Neumann  <sven@gimp.org>

	* data/images/Makefile.am: install wilber.png.

	* app/display/gimpcanvas.c (gimp_canvas_draw_drop_zone): try to
	load "wilber.png" from $prefix/share/gimp/2.0/images.

	* app/display/gimpdisplayshell.c (gimp_display_shell_new):
	improved tooltip.

svn path=/trunk/; revision=25242
2008-03-26 14:08:45 +00:00
Michael Natterer 7301aaaeae improve wilber scaling and remove the drop zone layout.
2008-03-26  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpcanvas.[ch]: improve wilber scaling and remove
	the drop zone layout.

	* app/display/gimpdisplayshell.c: add a tooltip instead.


svn path=/trunk/; revision=25241
2008-03-26 13:49:27 +00:00
Michael Natterer 7b8890fa66 don't set an initial cursor so we get the desktop default cursor after
2008-03-26  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_canvas_realize): don't set an initial cursor
	so we get the desktop default cursor after starting GIMP.


svn path=/trunk/; revision=25240
2008-03-26 13:47:58 +00:00
Michael Natterer 86f0c83d52 Forgot to unref the pixbuf.
svn path=/trunk/; revision=25237
2008-03-26 13:10:55 +00:00
Michael Natterer cc72a9d4c1 add wilber image to figure the proper scale behavior. Proper image still
2008-03-26  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpcanvas.c (gimp_canvas_draw_drop_zone): add
	wilber image to figure the proper scale behavior. Proper image
	still missing :)


svn path=/trunk/; revision=25236
2008-03-26 13:08:31 +00:00
Sven Neumann a1b342d8a0 app/display/gimpdisplayshell-icon.[ch] moved more icon code to its new
2008-03-26  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-icon.[ch]
	* app/display/gimpdisplayshell-handlers.c: moved more icon code to
	its new home.

svn path=/trunk/; revision=25233
2008-03-26 09:35:14 +00:00
Sven Neumann d8269f2214 forgot the icon change here
svn path=/trunk/; revision=25228
2008-03-25 16:33:37 +00:00
Sven Neumann bfd94e8e6b app/display/Makefile.am split icon code to its own file.
2008-03-25  Sven Neumann  <sven@gimp.org>

	* app/display/Makefile.am
	* app/display/gimpdisplayshell-icon.[ch]: split icon code to its
	own file.

	* app/display/gimpdisplayshell.c
	* app/display/gimpdisplayshell-handlers.c: changed accordingly.

svn path=/trunk/; revision=25227
2008-03-25 16:13:17 +00:00
Sven Neumann 3f43ea0853 fixed parameter checks.
2008-03-25  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.c (gimp_statusbar_peek): fixed
	parameter checks.

	* app/display/gimpdisplayshell-callbacks.c: formatting.

svn path=/trunk/; revision=25226
2008-03-25 14:31:05 +00:00
Sven Neumann f7a49c83e9 added gimp_statusbar_peek(), a method to access the contents of the
2008-03-25  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.[ch]: added gimp_statusbar_peek(), a
	method to access the contents of the statusbar.

	* app/display/gimpdisplayshell.c
	(gimp_display_shell_window_state_event): when the iconfied state
	changes, call gimp_display_shell_progress_window_state_changed().

	* app/display/gimpdisplayshell-progress.[ch]: when the image
	window is iconified, display the progress message in the window
	title so that it appears in the task bar.

	* app/menus/plug-in-menus.c: formatting.

svn path=/trunk/; revision=25224
2008-03-25 14:07:10 +00:00
Michael Natterer 7de3392e26 remove the window state callback here...
2008-03-25  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-callbacks.[ch]: remove the window
	state callback here...

	* app/display/gimpdisplayshell.c: ...add it here and turn it into
	a GtkWidget::window_state_event() implementation instead of a
	signal callback.


svn path=/trunk/; revision=25223
2008-03-25 13:42:40 +00:00
Sven Neumann 7c3819d467 moved handling of window state events to a separate callback.
2008-03-25  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-callbacks.[ch]: 
	* app/display/gimpdisplayshell.c (gimp_display_shell_init): moved
	handling of window state events to a separate callback.

svn path=/trunk/; revision=25221
2008-03-25 13:12:36 +00:00
Sven Neumann adaa11a070 formatting.
2008-03-25  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell.h: formatting.

svn path=/trunk/; revision=25220
2008-03-25 12:45:33 +00:00
Michael Natterer 90c932f705 fix to work without menubar, don't reset GDK_HINT_USER_POS.
2008-03-25  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell.c (gimp_display_shell_style_set):
	fix to work without menubar, don't reset GDK_HINT_USER_POS.


svn path=/trunk/; revision=25217
2008-03-25 10:08:19 +00:00
Sven Neumann a8d42d6fa6 center the empty image window on first startup.
2008-03-25  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell.c (gimp_display_shell_new): center
	the empty image window on first startup.

svn path=/trunk/; revision=25214
2008-03-25 09:19:11 +00:00
Michael Natterer ce4f0ec23d use the right GimpDisplayOptions to set the initial visibility of the
2008-03-23  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell.c (gimp_display_shell_new): use the
	right GimpDisplayOptions to set the initial visibility of the
	shell's widgets.


svn path=/trunk/; revision=25183
2008-03-23 16:24:35 +00:00
Michael Natterer a12167bec4 implement GtkWidget::size_request() and also consider the children which
2008-03-23  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpstatusbar.c: implement GtkWidget::size_request()
	and also consider the children which can be invisible when the
	display is empty.

	* app/display/gimpdisplayshell.c (gimp_display_shell_style_set):
	set the minimum height of the display to menubar + statusbar
	height.


svn path=/trunk/; revision=25182
2008-03-23 16:10:03 +00:00
Sven Neumann d9e5bbb8b6 return TRUE after calling gimp_display_shell_canvas_expose_image().
2008-03-23  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_canvas_expose): return TRUE after calling
	gimp_display_shell_canvas_expose_image().


svn path=/trunk/; revision=25181
2008-03-23 15:44:58 +00:00
Sven Neumann 9af8a16ead app/dialogs/dialogs.c changed "gimp-no-image-window" to
2008-03-23  Sven Neumann  <sven@gimp.org>

	* app/dialogs/dialogs.c
	* app/display/gimpdisplayshell.c: changed "gimp-no-image-window" 
to
	"gimp-empty-image-window".


svn path=/trunk/; revision=25180
2008-03-23 15:39:09 +00:00
Michael Natterer 281cc4c9c2 always need to fully expose the canvas now that "redisplay" was removed.
2008-03-23  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-scale.c
	(gimp_display_shell_scale_resize): always need to fully expose the
	canvas now that "redisplay" was removed.


svn path=/trunk/; revision=25179
2008-03-23 15:37:01 +00:00
Michael Natterer f8e5aa31bd Never shrink the empty display when filling it, only grow:
2008-03-23  Michael Natterer  <mitch@gimp.org>

	Never shrink the empty display when filling it, only grow:

	* app/display/gimpdisplayshell.[ch]
	* app/display/gimpdisplayshell-scale.[ch]: add "gboolean
	grow_only" parameters to shrink_wrap() APIs which restricts
	resizing of the window to growing.

	* app/display/gimpdisplayshell-scale.[ch]
	(gimp_displaY_shell_scale_resize): remove boolean "redisplay"
	parameter because is was always passed as TRUE. Add boolean
	"grow_only" instead and pass it on to shrink_wrap()

	* app/actions/view-commands.c
	* app/display/gimpdisplayshell-handlers.c: pass grow_only = FALSE.

	* app/display/gimpdisplayshell.c (gimp_display_shell_idle_fill):
	pass grow_only = TRUE.


svn path=/trunk/; revision=25178
2008-03-23 15:16:44 +00:00
Michael Natterer 54d306e8ea added a dialog factory for displays and register "gimp-no-image-window"
2008-03-23  Michael Natterer  <mitch@gimp.org>

	* app/dialogs/dialogs.[ch]: added a dialog factory for displays
	and register "gimp-no-image-window" with it.

	* app/display/gimpdisplay.[ch]: add a GimpDialogFactory parameter
	to gimp_display_new() and pass it on to gimp_display_shell_new().

	* app/display/gimpdisplayshell.[ch]: keep the passed
	GimpDialogFactory around. When the shell becomes empty, add it to
	the dialog factory and resize it to the remembered size; when it
	becomes non-empty, remove it from the dialog factory again.

	* app/gui/gui-vtable.c: pass the display dialog factory to
	gimp_display_new().


svn path=/trunk/; revision=25177
2008-03-23 13:40:39 +00:00
Sven Neumann ee166ba599 tweaked opacity calculation so that the opacity is only increased with
2008-03-21  Sven Neumann  <sven@gimp.org>

	* app/display/gimpcanvas.c (gimp_canvas_draw_drop_zone): tweaked
	opacity calculation so that the opacity is only increased with
	smaller font sizes.


svn path=/trunk/; revision=25166
2008-03-21 22:27:00 +00:00
Sven Neumann 15c7937fc3 moved defines to the header file and changed to 640x400 which is actually
2008-03-21  Sven Neumann  <sven@gimp.org>

	* app/core/gimptemplate.[ch]: moved defines to the header file 
and
	changed to 640x400 which is actually almost the golden mean as
	claimed by the comment.

	* app/display/gimpdisplayshell.c: use the defines here.


svn path=/trunk/; revision=25165
2008-03-21 22:09:23 +00:00
Sven Neumann 81521fde6c gtk_window_present() the image window to make sure that images aren't
2008-03-21  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell.c (gimp_display_shell_fill_idle):
	gtk_window_present() the image window to make sure that images
	aren't opened into a minimized image window.


svn path=/trunk/; revision=25161
2008-03-21 21:15:21 +00:00
Michael Natterer 1db77c5a04 invoke the quit action instead of calling gimp_exit() so its sensitivity
2008-03-21  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-close.c (gimp_display_shell_close):
	invoke the quit action instead of calling gimp_exit() so its
	sensitivity is taken into account.


svn path=/trunk/; revision=25157
2008-03-21 18:02:42 +00:00
Michael Natterer deefaa0e49 make sure the drop label's opacity scales with its size so we don't end up
2008-03-21  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpcanvas.c (gimp_canvas_draw_drop_zone): make sure
	the drop label's opacity scales with its size so we don't end up
	with tiny text at 10% opacity.


svn path=/trunk/; revision=25149
2008-03-21 11:31:47 +00:00
Martin Nordholts 667abcec21 gimp_exit() when closing the "no image" window.
2008-03-20  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-close.c
	(gimp_display_shell_close): gimp_exit() when closing the "no
	image" window.

svn path=/trunk/; revision=25147
2008-03-20 20:43:48 +00:00
Sven Neumann 2b43fd7535 create the empty display before the other windows.
2008-03-20  Sven Neumann  <sven@gimp.org>

	* app/gui/gui.c (gui_restore_after_callback): create the empty
	display before the other windows.

	* app/display/gimpdisplayshell.c (gimp_display_shell_new): center
	the empty window and create additional image windows under the
	mouse cursor. Just an experiment ...

svn path=/trunk/; revision=25143
2008-03-20 15:22:57 +00:00
Michael Natterer b0bcb37eb8 make it work when called with display->image == NULL. Use a randomly
2008-03-20  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell.c (gimp_display_shell_new): make it
	work when called with display->image == NULL. Use a randomly
	picked canvas size for now, more later.

	(gimp_display_shell_fill): add missing call to
	gimp_display_shell_scale_changed().

	* app/gui/gui.c (gui_restore_after_callback): create an empty
	display.


svn path=/trunk/; revision=25141
2008-03-20 13:27:49 +00:00
Michael Natterer 4aa6416c72 shrink-wrap the newly filled empty display in an idle function.
2008-03-20  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell.[ch]: shrink-wrap the newly filled
	empty display in an idle function.


svn path=/trunk/; revision=25138
2008-03-20 10:37:43 +00:00
Michael Natterer 1064bb7d95 enable the right click menu on the empty display.
2008-03-19  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_canvas_tool_events): enable the right click
	menu on the empty display.


svn path=/trunk/; revision=25135
2008-03-19 22:30:04 +00:00
Michael Natterer 993f0be3ab use the desktop default cursor for the empty display.
2008-03-19  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell.c (gimp_display_shell_empty): use
	the desktop default cursor for the empty display.


svn path=/trunk/; revision=25134
2008-03-19 22:25:21 +00:00
Michael Natterer ca99b0724c the code to reset the cursor got lost when introducing this function.
2008-03-19  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell.c (gimp_display_shell_empty): the
	code to reset the cursor got lost when introducing this function.

	* app/display/gimpdisplayshell-dnd.c
	(gimp_display_shell_dnd_init): remove redundant casts.


svn path=/trunk/; revision=25133
2008-03-19 22:18:54 +00:00
Michael Natterer fb6a3a0eca make the scale factor of the label 4/5 instead of 2/3 of the canvas and
2008-03-19  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpcanvas.c (gimp_canvas_draw_drop_zone): make the
	scale factor of the label 4/5 instead of 2/3 of the canvas and
	move the factor out of the MIN().


svn path=/trunk/; revision=25132
2008-03-19 20:37:45 +00:00
Michael Natterer bc03eded44 add boolean "quit" parameter and leave the empty display open when it is
2008-03-19  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplay-foreach.[ch] (gimp_displays_delete): add
	boolean "quit" parameter and leave the empty display open when it
	is FALSE.

	* app/dialogs/quit-dialog.c
	* app/actions/file-commands.c: pass quit = FALSE for "close all".

	* app/gui/gui.c: pass quit = TRUE when quitting.

	* app/actions/file-actions.c: fix sensitivity of "Close all".

	* app/actions/view-actions.c: fix sensitivity of "Close".


svn path=/trunk/; revision=25131
2008-03-19 20:29:30 +00:00
Sven Neumann 4936924f53 clean up after Martin.
2008-03-19  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c: clean up after 
Martin.


svn path=/trunk/; revision=25130
2008-03-19 19:33:51 +00:00
Martin Nordholts 61e4561e67 Refactor to emphasize logic. (gimp_display_shell_canvas_expose_image)
2008-03-19  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_canvas_expose): Refactor to emphasize logic.
	(gimp_display_shell_canvas_expose_image)
	(gimp_display_shell_canvas_expose_drop_zone): New helper
	functions.

svn path=/trunk/; revision=25128
2008-03-19 19:19:37 +00:00
Sven Neumann 1c0466dabc return FALSE so that the default drag highlighting works.
2008-03-19  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_canvas_expose): return FALSE so that the
	default drag highlighting works.

	* app/display/gimpdisplayshell-dnd.c: only set the canvas as 
drop
	target, not the whole shell.

	* app/display/gimpdisplayshell.c: delay the call to
	gimp_display_shell_dnd_init() until after the canvas has been
	created.


svn path=/trunk/; revision=25127
2008-03-19 19:10:00 +00:00
Sven Neumann e81f857482 app/display/gimpdisplayshell.c app/display/gimpdisplayshell-title.c
2008-03-19  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell.c
	* app/display/gimpdisplayshell-title.c
	* app/display/gimpstatusbar.[ch]: hide/show the cursor label and
	the unit and scale combo-boxes.

svn path=/trunk/; revision=25125
2008-03-19 16:54:01 +00:00
Michael Natterer a098b12f55 add gimp_display_empty()/fill() which turns it into an empty display and
2008-03-19  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplay.[ch]: add gimp_display_empty()/fill()
	which turns it into an empty display and back.

	* app/display/gimpdisplayshell.[ch]: add same api here.

	* app/display/gimpdisplayshell-close.c
	* app/gui/gui-vtable.c: use the new functions instead of having
	the code here.

	* app/display/gimpdisplayshell-selection.c
	(gimp_display_shell_selection_control): stop the timeout and free
	the segments when this function is called on an empty display.


svn path=/trunk/; revision=25124
2008-03-19 16:15:50 +00:00
Sven Neumann 424bf01acf doubled the buffer size for the statusbar title
svn path=/trunk/; revision=25121
2008-03-19 10:17:56 +00:00
Sven Neumann 08f7cacd8a changed to only append GIMP_ACRONYM in the window title and not affect the
2008-03-19  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-title.c: changed to only append
	GIMP_ACRONYM in the window title and not affect the status-bar.

svn path=/trunk/; revision=25120
2008-03-19 10:15:42 +00:00
Sven Neumann b7de914284 app/display/gimpdisplayshell.[ch] moved
2008-03-19  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell.[ch]
	* app/display/gimpdisplayshell-scale.[ch]: moved
	gimp_display_shell_set_initial_scale() to gimpdisplayshell-scale.c.

	* app/display/gimpdisplayoptions.c: reverted last change, we want
	to keep the status-bar around.

svn path=/trunk/; revision=25119
2008-03-19 09:57:22 +00:00
Michael Natterer 2621b4d250 factored out this function which calculates the zoom factor for new
2008-03-19  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell.[ch]
	(gimp_display_shell_set_initial_scale): factored out this function
	which calculates the zoom factor for new images. Also returns the
	size of the canvas for that zoom factor.

	* app/gui/gui-vtable.c (gui_display_create): use it to set the
	initial scale of images loaded into the empty display, but don't
	set the display's size yet.


svn path=/trunk/; revision=25118
2008-03-19 09:48:07 +00:00
Sven Neumann c9a09c459f hide the status-bar, at least for now.
2008-03-19  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayoptions.c
	(gimp_display_options_no_image_class_init): hide the status-bar,
	at least for now.

svn path=/trunk/; revision=25117
2008-03-19 09:34:56 +00:00
Sven Neumann a355f1777b app/widgets/gimpdockable.c moved utility function for setting attributes
2008-03-19  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpdockable.c
	* app/widgets/gimpwidgets-utils.[ch]: moved utility function for
	setting attributes on a PangoLayout out of gimpdockable.c.

	* app/display/gimpcanvas.c (gimp_canvas_draw_drop_zone): use a
	bold font and paint the layout with transparency.

svn path=/trunk/; revision=25116
2008-03-19 09:29:30 +00:00
Sven Neumann ebdd875ce7 deal with NULL image and unset the icon.
2008-03-19  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell.c (gimp_display_shell_update_icon):
	deal with NULL image and unset the icon.

	* app/display/gimpdisplay.c (gimp_display_set_image): unset the
	icon when no image is set.

	* app/display/gimpdisplayshell-title.c
	(gimp_display_shell_format_title): use GIMP_NAME as the window
	title when no image is set. Append GIMP_ACRONYM otherwise.

svn path=/trunk/; revision=25115
2008-03-19 09:11:04 +00:00
Michael Natterer bd636468e8 add new options object for the "no image" display appearance.
2008-03-18  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayoptions.[ch]: add new options object
	for the "no image" display appearance.

	* app/display/gimpdisplayshell.[ch]: keep one of them around.

	* app/display/gimpdisplayshell-appearance.[ch]: use the options
	object when the display is empty. Add guards against no image
	to some functions. Add gimp_display_shell_appearance_update()
	which sets all options according to the current display state
	(normal, fullscreen, no image).

	* app/actions/view-actions.c: don't allow to configure the GUI
	of the empty display.

	* app/display/gimpdisplayshell-callbacks.c: use the new appearance
	update function instead of doing it all here.

	* app/display/gimpdisplayshell-close.c
	* app/gui/gui-vtable.c: update the appearance when clearing or
	filling the display.

	* app/display/gimpdisplayshell-selection.c: forgot some guards
	against empty displays.


svn path=/trunk/; revision=25114
2008-03-18 22:21:47 +00:00
Michael Natterer cee3baea0f First draft of the "no image open" window, which is implemented as a
2008-03-18  Michael Natterer  <mitch@gimp.org>

	First draft of the "no image open" window, which is implemented as
	a display without image (a view with NULL model). Didn't change
	the display's appearance yet so I can first make sure the display
	without image works properly in all details before hiding these
	details.

	* app/core/gimp-gui.[ch]: add "gimp" parameter to display_create()
	and allow "image" to be NULL.

	* app/core/gimpcontext.c (gimp_context_real_set_display): a
	display's image can be NULL now.

	* app/display/gimpdisplay.[ch]: add Gimp and GimpDisplayConfig
	members.  Add Gimp parameter to gimp_display_shell_new(). Changed
	gimp_display_reconnect() to gimp_display_set_image() and allow to
	set a NULL image.

	* app/gui/gui-vtable.c (gui_display_create): if there is a single
	display without an image, call gimp_display_set_image() on that
	display instead of creating a new one.

	* app/display/gimpdisplayshell-close.c: if the last display is
	closed, don't close it but make it empty. Factored out that code
	to gimp_display_shell_really_close().

	* app/display/gimpdisplayshell-dnd.c: when dropping uris on an
	empty display, open the first one into that display and the other
	ones as layers of the newly opened image. This is consistent with
	dropping on an existing image but maybe needs some discussion.

	* app/display/gimpdisplayshell-callbacks.c: bail out early in the
	tool event callback so tools never have to deal with empty
	displays. In expose(), draw the drop zone on the empty display.

	* app/display/gimpdisplayshell-title.c: set the empty display's
	title to "Gimp - Drop Files".

	* app/display/gimpdisplay-foreach.c
	* app/display/gimpdisplay-handlers.c
	* app/display/gimpdisplayshell-appearance.c
	* app/display/gimpdisplayshell-autoscroll.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-cursor.c
	* app/display/gimpdisplayshell-dnd.c
	* app/display/gimpdisplayshell-draw.c
	* app/display/gimpdisplayshell-filter-dialog.c
	* app/display/gimpdisplayshell-handlers.c
	* app/display/gimpdisplayshell-layer-select.c
	* app/display/gimpdisplayshell-preview.c
	* app/display/gimpdisplayshell-render.c
	* app/display/gimpdisplayshell-scale.c
	* app/display/gimpdisplayshell-scroll.c
	* app/display/gimpdisplayshell-selection.c
	* app/display/gimpdisplayshell-title.c
	* app/display/gimpdisplayshell.c
	* app/display/gimpnavigationeditor.c
	* app/display/gimpstatusbar.c: use display->gimp and
	display->config instead of going via the image. Guard against
	empty displays in some few places (most places can't be
	called). Where needed, use the canvas' dimensions instead of the
	image's dimensions so scroll offsets and scrollbars still have
	sane values instead of the last image's ones.

	* app/actions/actions.c (action_data_get_gimp)
	(action_data_get_context): use display->gimp instead of
	display->image->gimp.

	* app/actions/edit-commands.c (edit_paste_cmd_callback): redirect
	to "paste as new" if there is an empty display.

	* app/actions/tools-commands.c (tools_select_cmd_callback): don't
	initialize the new tool on an empty display.

	* app/actions/view-actions.c (view_actions_update): changed lots
	of sensitivity settings to be insensitive when there is no image
	(instead of no display).

	* app/actions/view-commands.c: use the display's config object
	instead of gimp's.


svn path=/trunk/; revision=25113
2008-03-18 21:22:21 +00:00
Michael Natterer e2f6294c07 add gimp_canvas_draw_drop_zone() which simply renders a big "Drop Here" on
2008-03-18  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpcanvas.[ch]: add gimp_canvas_draw_drop_zone()
	which simply renders a big "Drop Here" on the canvas. Replaced
	Gimp member and construct property by GimpDisplayConfig.

	* app/display/gimpdisplayshell.c (gimp_display_shell_new): changed
	accordingly.


svn path=/trunk/; revision=25112
2008-03-18 20:24:49 +00:00
Michael Natterer bc9424a2b5 app/actions/data-commands.c app/actions/debug-commands.c
2008-03-12  Michael Natterer  <mitch@gimp.org>

	* app/actions/data-commands.c
	* app/actions/debug-commands.c
	* app/actions/dockable-commands.c
	* app/dialogs/stroke-dialog.c
	* app/display/gimpdisplayshell-handlers.c
	* app/gui/gui-message.c
	* app/gui/gui.c
	* app/tools/gimpforegroundselectoptions.c
	* app/tools/gimpinkoptions-gui.c
	* app/widgets/gimpcolordialog.c
	* app/widgets/gimpcontainerpopup.c
	* app/widgets/gimpcontainerview-utils.c
	* app/widgets/gimpdock.c
	* app/widgets/gimpdockable.c
	* app/widgets/gimpsessioninfo-book.c
	* app/widgets/gimpsessioninfo-dock.c
	* app/widgets/gimptoolbox.c
	* app/widgets/gimpunitcombobox.c
	* app/widgets/gimpviewablebox.c
	* libgimp/gimpexport.c
	* libgimpmodule/gimpmodule.h
	* libgimpwidgets/gimpenumwidgets.c
	* libgimpwidgets/gimpframe.c
	* libgimpwidgets/gimpoldwidgets.c
	* libgimpwidgets/gimpwidgets.c
	* plug-ins/MapObject/mapobject_ui.c
	* plug-ins/common/papertile.c
	* plug-ins/common/sinus.c
	* plug-ins/flame/flame.c
	* plug-ins/helpbrowser/gimpthrobber.c
	* plug-ins/script-fu/scheme-wrapper.c
	* plug-ins/script-fu/script-fu-console.c: use accessors instead of
	accessing GtkBin.child and GtkPaned.child1,2 directly.


svn path=/trunk/; revision=25095
2008-03-12 16:58:28 +00:00
Sven Neumann 3d7bc5a869 minor optimization.
2008-03-07  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-preview.c: minor optimization.


svn path=/trunk/; revision=25058
2008-03-06 23:20:27 +00:00
Michael Natterer dce85f963e minor formatting fixes.
2008-03-06  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_canvas_tool_events): minor formatting fixes.


svn path=/trunk/; revision=25052
2008-03-06 18:40:19 +00:00
Sven Neumann b870738a86 app/tools/gimptransformtool.c app/tools/gimptransformoptions.[ch] take the
2008-03-06  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptransformtool.c
	* app/tools/gimptransformoptions.[ch]
	* app/display/gimpdisplayshell-preview.c: take the preview opacity
	from the transform tool options. Based on a patch from Tom Lechner.
	Closes bug #520690.

svn path=/trunk/; revision=25049
2008-03-06 11:54:44 +00:00
Sven Neumann da704ae158 don't do the blending here, just apply the opacity on the pixbuf's alpha
2008-03-06  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-preview.c: don't do the blending
	here, just apply the opacity on the pixbuf's alpha channel.


svn path=/trunk/; revision=25048
2008-03-06 07:47:55 +00:00
Sven Neumann 7885067eaa minor cleanups
svn path=/trunk/; revision=25039
2008-03-05 21:14:50 +00:00
Sven Neumann 6b989615b0 applied a modified and further optimized version of the patch from Tom
2008-03-05  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-preview.c: applied a modified and
	further optimized version of the patch from Tom Lechner as
	attached to bug #167926.  This makes the transform preview take
	the layer opacity into account. Needs some more work...


svn path=/trunk/; revision=25038
2008-03-05 20:44:19 +00:00
Michael Natterer f71fd9f878 changed PROJ_ROUND() macros to use RINT() so they work correctly with
2008-03-05  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell.h: changed PROJ_ROUND() macros to
	use RINT() so they work correctly with negative numbers.

	* app/tools/gimpdrawtool.c
	(gimp_draw_tool_draw_line)
	(gimp_draw_tool_draw_dashed_line)
	(gimp_draw_tool_draw_rectangle)
	(gimp_draw_tool_draw_arc)
	(gimp_draw_tool_draw_boundary): use floating-point coordinate
	transform functions again. These functions were changed to use
	integer transform functions in 2004 (!!) which broke sub-pixel
	precision drawing for stuff like straight-line and blend tool
	and also sub-pixel drawing of the brush outline.

	Should be backported to 2.4 after it has shown no ill effects in
	trunk.


svn path=/trunk/; revision=25036
2008-03-05 16:37:43 +00:00
Sven Neumann 50d5d18af8 app/display/gimpdisplayshell-callbacks.c applied slightly modified patch
2008-03-02  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-coords.c
	(gimp_display_shell_eval_event): applied slightly modified patch
	from Alexia Death as attached to bug #508639.


svn path=/trunk/; revision=25006
2008-03-02 16:29:13 +00:00
Michael Natterer a384cca5f3 app/display/gimpdisplayshell-transform.[ch]
2008-02-26  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-transform.[ch]
	(gimp_display_shell_transform_points)
	* app/tools/gimpdrawtool.[ch] (gimp_draw_tool_draw_lines): take
	arrays of GimpVector2 instead of arrays of gdouble to represent
	the input points.

	* app/display/gimpdisplayshell-draw.c
	* app/tools/gimppolygonselecttool.c
	* app/tools/gimpfreeselecttool.c: don't cast the GimpVector2 arrays
	to double arrays when passing them to above functions.

	* app/tools/gimpiscissorstool.c: create a temporary GimpVector2
	array instead of a temporary gdouble array.


svn path=/trunk/; revision=24979
2008-02-26 17:30:33 +00:00
Michael Natterer 23456dc253 app/display/gimpdisplayshell-callbacks.c
2008-02-16  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	* app/tools/gimpforegroundselecttool.c
	* app/tools/gimpimagemaptool.c
	* app/tools/gimpiscissorstool.c
	* app/tools/gimppolygonselecttool.c
	* app/tools/gimprectangletool.c
	* app/tools/gimptransformtool.c
	* app/tools/gimpvectortool.c
	* app/widgets/gimpcontainerpopup.c
	* app/widgets/gimppaletteview.c
	* libgimpwidgets/gimpcolorhexentry.c
	* libgimpwidgets/gimpnumberpairentry.c
	* plug-ins/script-fu/script-fu-console.c: Unify the handling of
	various "Enter" and "Space" keysyms all over the place. Fixes bug
	#516544 (also see gtk bug #515047).


svn path=/trunk/; revision=24894
2008-02-16 17:51:02 +00:00
Sven Neumann ed6d75cb52 changed coordinate transformation for floats. Fixes bug #510294.
2008-02-05  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-transform.c: changed coordinate
	transformation for floats. Fixes bug #510294.

svn path=/trunk/; revision=24808
2008-02-05 10:36:44 +00:00
Sven Neumann 11a91e4e7f use a gint for direction, not a gchar which might be unsigned. Patch from
2008-02-04  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-preview.c
	(gimp_display_shell_trace_tri_edge): use a gint for direction, 
not
	a gchar which might be unsigned. Patch from Giuliano Pochini;
	fixes bug #340965.


svn path=/trunk/; revision=24795
2008-02-04 22:44:29 +00:00
Sven Neumann 8c30b1cda5 removed redundant GimpCoords parameter that use to cause valgrind warnings
2008-01-28  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell.[ch] (gimp_display_shell_snap_coords):
	removed redundant GimpCoords parameter that use to cause valgrind
	warnings about overlapping memory regions in memcpy().

	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-autoscroll.c: changed accordingly.

svn path=/trunk/; revision=24730
2008-01-28 16:00:30 +00:00
Sven Neumann 087268e6fa show the selection, even if the window is flagged as invisible, but don't
2008-01-23  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-selection.c: show the selection,
	even if the window is flagged as invisible, but don't start the
	animation. Addresses bug #505758.


svn path=/trunk/; revision=24694
2008-01-23 18:11:29 +00:00
Michael Natterer ca5ffa5b3f don't #include <gegl.h>
2008-01-23  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpimagemaptool.h: don't #include <gegl.h>

	* app/actions/tools-commands.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/tools/gimp-tools.c: include it here. Whenever the build
	breaks because of some GEGL change in GIMP, please inlcude
	<gegl.h> instead of <glib-object.h> or before <gtk/gtk.h> in the
	affected .c files.


svn path=/trunk/; revision=24685
2008-01-23 09:51:43 +00:00
Sven Neumann 0a368b32e7 app/display/gimpdisplayshell-callbacks.c applied patch from Alexia Death
2008-01-22  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-coords.[ch]: applied patch from
	Alexia Death with further event filter improvements (bug #508639).

svn path=/trunk/; revision=24672
2008-01-22 14:53:34 +00:00
Sven Neumann 7ff3037502 app/display/gimpdisplayshell-callbacks.c applied parts of a change from
2008-01-16  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-coords.c: applied parts of a change
	from Alexia Death. This improves the event smoothing (bug #508639).

svn path=/trunk/; revision=24624
2008-01-16 10:42:49 +00:00
Sven Neumann 524870327c app/core/core-types.h app/display/gimpdisplayshell-callbacks.c
2008-01-14  Sven Neumann  <sven@gimp.org>

	* app/core/core-types.h
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-coords.[ch]
	* app/display/gimpdisplayshell.h
	* app/paint/gimpink.[ch]
	* app/paint/gimpinkundo.[ch]: applied patch from Alexia Death 
that
	adds an event evaluation function that decides if an event is
	needed or can be discarded. As a side-product some useful 
dynamics
	parameters like velocity are added to the GimpCoords struct. The
	Ink tool is changed to use this information. See bug #508639.


svn path=/trunk/; revision=24607
2008-01-14 20:34:37 +00:00
Sven Neumann 4aa7e67c67 removed "add_alpha" parameter from gimp_item_duplicate() and
2008-01-08  Sven Neumann  <sven@gimp.org>

	* app/core/gimpitem.[ch]: removed "add_alpha" parameter from
	gimp_item_duplicate() and gimp_item_convert(). This is a relict
	from the time when only the bottom layer was allowed to have no
	alpha channel.

	* app/actions/channels-commands.c
	* app/actions/layers-commands.c
	* app/actions/vectors-commands.c
	* app/core/gimpchannel.c
	* app/core/gimpdrawable.c
	* app/core/gimpimage-duplicate.c
	* app/core/gimpimage-merge.c
	* app/core/gimpimage-quick-mask.c
	* app/core/gimplayer.c
	* app/core/gimplayermask.c
	* app/core/gimpselection.c
	* app/display/gimpdisplayshell-dnd.c
	* app/file/file-open.c
	* app/pdb/channel_cmds.c
	* app/pdb/layer_cmds.c
	* app/text/gimptextlayer.c
	* app/vectors/gimpvectors.c
	* app/vectors/gimpvectorsmodundo.c
	* app/widgets/gimpchanneltreeview.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimptoolbox-dnd.c
	* tools/pdbgen/pdb/channel.pdb
	* tools/pdbgen/pdb/layer.pdb: changed accordingly.

svn path=/trunk/; revision=24570
2008-01-08 11:46:15 +00:00
Hans Breuer 9a1d5f3453 **/makefile.msc app/gimpcore.def : updated so it compiles and links
2008-01-04  Hans Breuer  <hans@breuer.org>

	**/makefile.msc app/gimpcore.def : updated so it compiles and links
	(almost, see bug #507298)

svn path=/trunk/; revision=24533
2008-01-04 18:42:07 +00:00
Sven Neumann 08582c360d Merged from gimp-2-4 branch:
2008-01-04  Sven Neumann  <sven@gimp.org>

	Merged from gimp-2-4 branch:

	* app/display/gimpdisplayshell-selection.c:
	draw marching ants with G_PRIORITY_DEFAULT_IDLE; fixes bug 
#479875.


svn path=/trunk/; revision=24532
2008-01-04 18:36:38 +00:00
William Skaggs 2ba3e595bc Bill Skaggs <weskaggs@primate.udavis.edu>
committing patch by Simon Budig to give an indication
	when working on a layer mask, updated to fix staleness
	and respond to "edit-changed".  Might fix bug #132204.
	
	* app/core/core-enums.[ch]: add GIMP_SELECTION_LAYER_ON.

	* app/core/gimplayermask.c: add handler for "edit-changed".

	* app/core/gimpcanvas.[ch]:  add new style
	GIMP_CANVAS_STYLE_LAYER_MASK_ACTIVE.

	* app/display/gimpdisplayshell-selection.c: use new style
	when layer mask is active.

svn path=/trunk/; revision=24520
2008-01-03 21:53:34 +00:00
Sven Neumann 0d818d9ad3 app/display/gimpstatusbar.[ch] only update the GtkProgressBar if that
2007-12-30  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.[ch]
	* app/widgets/gimpprogressbox.[ch]: only update the 
GtkProgressBar
	if that would cause a visible change.


svn path=/trunk/; revision=24487
2007-12-30 17:25:58 +00:00
Michael Natterer 529fd5e629 app/actions/Makefile.am app/core/Makefile.am app/display/Makefile.am use
2007-12-29  Michael Natterer  <mitch@gimp.org>

	* app/actions/Makefile.am
	* app/core/Makefile.am
	* app/display/Makefile.am
	* app/tools/Makefile.am: use GEGL_CFLAGS.


svn path=/trunk/; revision=24472
2007-12-29 19:18:57 +00:00
Simon Budig 25aec86548 don't use ceil, use SCALEX. Round hopefully more properly.
2007-12-29  Simon Budig  <simon@gimp.org>

        * app/display/gimpdisplayshell.c: don't use ceil, use SCALEX.
	* app/display/gimpdisplayshell-transform.c: Round hopefully more
	properly.

	This probably exchanges one set of artefacts for another one...

	* app/display/gimpdisplayshell-render.c: minor fixes.
	* app/display/gimpdisplayshell-selection.c: whitespace fix


svn path=/trunk/; revision=24457
2007-12-28 23:13:46 +00:00
Sven Neumann 3d48f1bcc9 removed GIMP_RENDER_BUF_WIDTH and GIMP_RENDER_BUF_HEIGHT definitions.
2007-12-28  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimprender.h: removed GIMP_RENDER_BUF_WIDTH and
	GIMP_RENDER_BUF_HEIGHT definitions.

	* app/display/gimpdisplayshell.h: define the size of the display
	render buffer here.

	* app/display/gimpdisplayshell.c
	* app/display/gimpdisplayshell-draw.c
	* app/widgets/gimprender.c: changed accordingly.


svn path=/trunk/; revision=24456
2007-12-28 22:12:17 +00:00
Sven Neumann b194e6fb62 addec const qualifiers to GimpRGB parameters.
2007-12-28  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpcairo-utils.[ch]: addec const qualifiers to
	GimpRGB parameters.

	* app/widgets/gimprender.[ch]: removed global variables for
	checkerboard colors and introduced functions to get the
	checkerboard colors as pointers to GimpRGB structs.

	* app/actions/view-actions.c
	* app/display/gimpdisplayshell-appearance.c
	* app/widgets/gimpviewrenderer.c
	* app/widgets/gimpcolormapeditor.c: changed accordingly.


svn path=/trunk/; revision=24451
2007-12-28 19:14:36 +00:00
Michael Natterer 1e8371361e app/actions/image-commands.c app/actions/select-commands.c
2007-12-26  Michael Natterer  <mitch@gimp.org>

	* app/actions/image-commands.c
	* app/actions/select-commands.c
	* app/core/gimp-edit.c
	* app/core/gimpdrawable-stroke.c
	* app/core/gimpimage-duplicate.c
	* app/core/gimpimage-preview.c
	* app/core/gimpimage-rotate.c
	* app/core/gimpimageundo.c
	* app/core/gimpitem-preview.c
	* app/dialogs/grid-dialog.c
	* app/dialogs/layer-options-dialog.c
	* app/dialogs/offset-dialog.c
	* app/dialogs/stroke-dialog.c
	* app/display/gimpdisplayshell-scale.c
	* app/display/gimpdisplayshell-title.c
	* app/display/gimpdisplayshell.c
	* app/display/gimpstatusbar.c
	* app/paint/gimppaintoptions.c
	* app/tools/gimpmagnifytool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimppainttool.c
	* app/tools/gimprectangletool.c
	* app/tools/gimprotatetool.c
	* app/tools/gimpscaletool.c
	* app/tools/gimptexttool.c
	* app/vectors/gimpvectors-export.c
	* app/vectors/gimpvectors-import.c
	* app/widgets/gimpcursorview.c
	* app/widgets/gimpimagepropview.c
	* app/widgets/gimptoolbox-dnd.c
	* app/widgets/gimpviewrendererdrawable.c
	* app/widgets/gimpviewrendererimage.c
	* app/xcf/xcf-load.c
	* app/xcf/xcf-save.c: use gimp_image_get/set_resolution() instead
	of accessing the GimpImage members directly.


svn path=/trunk/; revision=24436
2007-12-26 17:33:41 +00:00
Michael Natterer 6074f7e248 app/core/gimpimage-guides.[ch] add accessors for the lists of guides and
2007-12-25  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage-guides.[ch]
	* app/core/gimpimage-sample-points.[ch]: add accessors for the lists
	of guides and sample points.

	* app/core/gimpimage-crop.c
	* app/core/gimpimage-duplicate.c
	* app/core/gimpimage-flip.c
	* app/core/gimpimage-resize.c
	* app/core/gimpimage-rotate.c
	* app/core/gimpimage-scale.c
	* app/core/gimpimage-snap.c
	* app/core/gimpimage.c
	* app/display/gimpdisplayshell-appearance.c
	* app/display/gimpdisplayshell-draw.c
	* app/display/gimpdisplayshell.c
	* app/widgets/gimpsamplepointeditor.c
	* app/xcf/xcf-save.c: use the new accessors.


svn path=/trunk/; revision=24434
2007-12-25 17:09:04 +00:00
Michael Natterer 75061fccfd app/actions/channels-commands.c app/actions/colormap-actions.c
2007-12-25  Michael Natterer  <mitch@gimp.org>

	* app/actions/channels-commands.c
	* app/actions/colormap-actions.c
	* app/actions/colormap-commands.c
	* app/actions/image-commands.c
	* app/core/gimp-edit.c
	* app/core/gimpdrawable-preview.c
	* app/core/gimpimage-colorhash.c
	* app/core/gimpimage-colormap.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimage-crop.c
	* app/core/gimpimage-duplicate.c
	* app/core/gimpimage-flip.c
	* app/core/gimpimage-guides.c
	* app/core/gimpimage-merge.c
	* app/core/gimpimage-preview.c
	* app/core/gimpimage-quick-mask.c
	* app/core/gimpimage-resize.c
	* app/core/gimpimage-rotate.c
	* app/core/gimpimage-sample-points.c
	* app/core/gimpimage-scale.c
	* app/core/gimpimage-snap.c
	* app/core/gimpimage.c
	* app/core/gimpimagefile.c
	* app/core/gimpimageundo.c
	* app/core/gimpitem-preview.c
	* app/core/gimpitem.c
	* app/core/gimplayer.c
	* app/core/gimppalette-import.c
	* app/core/gimpprojection-construct.c
	* app/core/gimpprojection.c
	* app/core/gimpselection.c
	* app/core/gimpundo.c
	* app/dialogs/layer-options-dialog.c
	* app/dialogs/print-size-dialog.c
	* app/display/gimpdisplay.c
	* app/display/gimpdisplayshell-draw.c
	* app/display/gimpdisplayshell-scale.c
	* app/display/gimpdisplayshell-scroll.c
	* app/display/gimpdisplayshell-title.c
	* app/display/gimpdisplayshell-transform.c
	* app/display/gimpdisplayshell.c
	* app/display/gimpstatusbar.c
	* app/file/file-open.c
	* app/paint/gimppaintoptions.c
	* app/tools/gimpaligntool.c
	* app/tools/gimpcolortool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpiscissorstool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimpmovetool.c
	* app/tools/gimpperspectiveclonetool.c
	* app/tools/gimprectangleselecttool.c
	* app/tools/gimprectangletool.c
	* app/tools/gimprotatetool.c
	* app/vectors/gimpvectors-export.c
	* app/vectors/gimpvectors-import.c
	* app/vectors/gimpvectors.c
	* app/widgets/gimpimagepropview.c
	* app/widgets/gimpnavigationview.c
	* app/widgets/gimpselectioneditor.c
	* app/widgets/gimpviewrendererdrawable.c
	* app/widgets/gimpviewrendererimage.c
	* app/xcf/xcf-load.c
	* app/xcf/xcf-save.c
	* tools/pdbgen/pdb/guides.pdb
	* tools/pdbgen/pdb/image.pdb: use accessors for many image properties.

	* app/pdb/guides_cmds.c
	* app/pdb/image_cmds.c: regenerated.


svn path=/trunk/; revision=24432
2007-12-25 16:21:40 +00:00
Sven Neumann 325d7d0f8f minor cleanup.
2007-12-18  Sven Neumann  <sven@gimp.org>

	* app/display/gimpnavigationeditor.c: minor cleanup.

	* app/widgets/gimpnavigationview.c
	(gimp_navigation_view_motion_notify): fixed handling of motion
	events that broke when I introduced the call to
	gdk_event_request_motions().

svn path=/trunk/; revision=24394
2007-12-18 17:43:01 +00:00
Sven Neumann 53f3123847 added code for 1 and 3 bytes per pixel. Fixes bug #504115.
2007-12-18  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-render.c
	(render_image_tile_fault_nearest): added code for 1 and 3 bytes
	per pixel. Fixes bug #504115.


svn path=/trunk/; revision=24387
2007-12-18 08:46:40 +00:00
William Skaggs 6d92a4a67f Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/widgets/gimphelp-ids.h
	* app/display/gimpdisplayshell-scale.[ch]
	* app/display/gimpnavigationeditor.[ch]
	* app/actions/view-commands.[ch]
	* app/actions/view-commands.c:

	Changed "Fit Image to Window" to "Fill Window", and changed
	"fit-to" to "fill" in all the related things.  Fixes
	bug #490364.

svn path=/trunk/; revision=24370
2007-12-16 02:06:15 +00:00
Sven Neumann 1b4f87189d app/base/tile-pyramid.c (tile_pyramid_write_quarter) corrected formula
2007-12-13  Sven Neumann  <sven@gimp.org>

	* app/base/tile-pyramid.c (tile_pyramid_write_quarter)
	* app/display/gimpdisplayshell-render.c
	(render_image_tile_fault_nearest): corrected formula used for
	pre-multiplying the alpha value.


svn path=/trunk/; revision=24353
2007-12-13 19:00:00 +00:00
Sven Neumann aaa16d3b87 Speed up our display rendering code paths by keeping data with
2007-12-13  Sven Neumann  <sven@gimp.org>

	Speed up our display rendering code paths by keeping data with
	pre-multiplied alpha where possible. The projection tile-manager
	at 100 % zoom is not affected. So we can still always get the
	non-pre-multiplied pixel data.

	* app/core/gimpprojection.[ch]: removed
	gimp_projection_get_opacity(), the projection is always opaque.

	* app/base/tile-pyramid.[ch]: use pre-multiplied alpha for the
	upper levels of the pyramid. This speeds up validation of the
	upper levels significantly.

	* app/base/temp-buf.[ch]: added temp_buf_demultiply().

	* app/core/gimpimage-preview.c: demultiply the preview temp-buf
	obtained from the projection's tile tyramid.

	* app/display/gimpdisplayshell-draw.c
	* app/display/gimpdisplayshell-render.c: added code to deal with
	pre-multiplied data. In fact all data returned by
	render_image_tile_fault() is now pre-multiplied so that
	render_image_rgb_a() and render_image_gray_a() don't need to use
	the large lookup tables from gimprender.[ch] any longer.

svn path=/trunk/; revision=24352
2007-12-13 17:27:07 +00:00
Sven Neumann daf03994b0 export the light and dark check color so that places that just need this
2007-12-13  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimprender.[ch]: export the light and dark check
	color so that places that just need this information don't have to
	access the gimp_render_blend_{dark,light}_check arrays.

	* app/actions/view-actions.c
	* app/display/gimpdisplayshell-appearance.c
	* app/widgets/gimpcolormapeditor.c: changed accordingly.

svn path=/trunk/; revision=24351
2007-12-13 14:54:23 +00:00
Hans Breuer 6f5bbfe0bd updated and removed -GD to let msvc9 complain less
2007-12-09  Hans Breuer  <hans@breuer.org>

	* **/makefile.msc : updated and removed -GD to let msvc9 complain less


svn path=/trunk/; revision=24305
2007-12-09 14:11:09 +00:00
William Skaggs 4b6b80f594 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/display/gimpdisplayshell-draw.c: draw grid correctly when
	non-integer spacing is combined with a large offset.  Fixes
	bug #502374.

	* app/core/gimpimage-snap.c: make snapping to grid work when
	coord is less than the grid offset.

svn path=/trunk/; revision=24294
2007-12-07 21:59:51 +00:00
Michael Natterer da51309673 if a device change happens, make sure we update the new active tool's
2007-12-07  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_tool_events): if a device change happens, make
	sure we update the new active tool's focus display and modifier
	state. Fixes most of bug #493176.


svn path=/trunk/; revision=24288
2007-12-07 18:54:46 +00:00
Michael Natterer efda62544d renamed log domain TOOLS to TOOL_EVENTS and added domain TOOL_FOCUS.
2007-12-07  Michael Natterer  <mitch@gimp.org>

	* app/gimp-log.[ch]: renamed log domain TOOLS to TOOL_EVENTS and
	added domain TOOL_FOCUS.

	* app/display/gimpdisplayshell-callbacks.c: s/TOOLS/TOOL_EVENTS/

	* app/tools/gimptool.c: port focus debug output to GIMP_LOG().


svn path=/trunk/; revision=24287
2007-12-07 18:52:41 +00:00
Michael Natterer bcb2a4e942 improve debug output.
2007-11-18  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_canvas_tool_events): improve debug output.


svn path=/trunk/; revision=24183
2007-11-18 16:13:14 +00:00
Michael Natterer b9a63e1b49 app/display/gimpdisplayshell-dnd.c app/widgets/gimpdnd-xds.c use
2007-11-15  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-dnd.c
	* app/widgets/gimpdnd-xds.c
	* app/widgets/gimpselectiondata.c: use GIMP_LOG(DND) here too.


svn path=/trunk/; revision=24164
2007-11-15 13:54:15 +00:00
Michael Natterer 3229e67f64 app/Makefile.am new files implementing a log facility which can be enabled
2007-11-15  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am
	* app/gimp-log.[ch]: new files implementing a log facility which
	can be enabled using the GIMP_LOG environment variable.

	* app/main.c: initialize it.

	* app/display/gimpdisplayshell-callbacks.c: use it instead of
	private debugging macros that need to be enabled at compile time.


svn path=/trunk/; revision=24160
2007-11-15 10:57:53 +00:00
Michael Natterer 10ccddfb93 app/display/gimpcanvas.c free the cached PangoLayouts in
2007-11-14  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpcanvas.c
	* app/widgets/gimpcurveview.c: free the cached PangoLayouts in
	GtkWidget::style_set().

	* app/widgets/gimppaletteview.c: draw the focus rectangle in
	hardcoded black/white since we also hardcode the grid color to
	black.

	* app/display/gimpstatusbar.c
	* app/widgets/gimpdockable.c: small cleanups while reviewing
	layout code.


svn path=/trunk/; revision=24156
2007-11-14 14:42:05 +00:00
Michael Natterer 2500162d0f don't let GimpImageMapTools move sample points. They fail badly and leave
2007-11-12  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_ruler_button_press): don't let
	GimpImageMapTools move sample points. They fail badly and leave
	the display in a paused state.


svn path=/trunk/; revision=24133
2007-11-12 14:10:24 +00:00
Michael Natterer 53b92957f6 don't crash if gimp_display_shell_filter_new() returns NULL. Fixes bug
2007-11-12  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell.c (gimp_display_shell_new): don't
	crash if gimp_display_shell_filter_new() returns NULL.
	Fixes bug #495863.


svn path=/trunk/; revision=24128
2007-11-12 09:36:45 +00:00
Sven Neumann e985096088 also cut the message at a '\r' character. Fixes the remaining aspect of
2007-11-08  Sven Neumann  <sven@gimp.org>

	* app/display/gimpstatusbar.c (gimp_statusbar_vprintf): also cut
	the message at a '\r' character. Fixes the remaining aspect of
	bug #492718.


svn path=/trunk/; revision=24091
2007-11-08 18:20:30 +00:00
Sven Neumann 3d0b3e0759 don't directly pass a message to gimp_statusbar_push(), it expects a
2007-11-08  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell.c 
(gimp_display_shell_show_tooltip):
	don't directly pass a message to gimp_statusbar_push(), it 
expects
	a format string and printf-like varargs. Fixes the crash 
reported
	in bug #492718.


svn path=/trunk/; revision=24088
2007-11-08 17:36:37 +00:00
Sven Neumann 13104834a5 use g_timeout_source_new_seconds().
2007-10-31  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-close.c
	(gimp_display_shell_close_dialog): use g_timeout_source_new_seconds().

svn path=/trunk/; revision=24016
2007-10-31 12:26:06 +00:00
Sven Neumann c1ec276567 shift only by 4 bits instead of 8. Should still keep us from overflowing
2007-10-30  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-render.c (box_filter): shift only
	by 4 bits instead of 8. Should still keep us from overflowing 32
	bit integers but reduces the rounding error and seems to really
	fix bug #491503.


svn path=/trunk/; revision=23996
2007-10-30 22:03:32 +00:00
Sven Neumann c7b4263a85 reverted change that was made for bug #490785.
2007-10-30  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-handlers.c: reverted change that
	was made for bug #490785.

svn path=/trunk/; revision=23989
2007-10-30 12:02:19 +00:00
Sven Neumann c6e030dca2 reduce rounding errors. Fixed bug #491503.
2007-10-30  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-render.c (box_filter): reduce
	rounding errors. Fixed bug #491503.

	* app/base/tile-pyramid.c (tile_pyramid_write_quarter): reduce
	rounding errors.


svn path=/trunk/; revision=23986
2007-10-30 08:39:51 +00:00
Sven Neumann cca6a3f1bd removed code that syncs the padding color with the default values set in
2007-10-27  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-handlers.c: removed code that 
syncs
	the padding color with the default values set in the 
preferences.
	Fixes bug #490785.


svn path=/trunk/; revision=23974
2007-10-27 19:01:21 +00:00
Sven Neumann dd292049e0 use INVERT instead of XOR if the xor-color is configured as white.
2007-10-25  Sven Neumann  <sven@gimp.org>

	* app/display/gimpcanvas.c (gimp_canvas_gc_new): use INVERT
	instead of XOR if the xor-color is configured as white.


svn path=/trunk/; revision=23941
2007-10-25 07:22:49 +00:00
Simon Budig bc2848806e change the PROJ_ROUND macro to do proper rounding. Seems to work well.
2007-10-24  Simon Budig  <simon@gimp.org>

        * app/display/gimpdisplayshell.h: change the PROJ_ROUND macro
	to do proper rounding. Seems to work well.


svn path=/trunk/; revision=23936
2007-10-23 23:55:53 +00:00
Sven Neumann 4ba204a2a8 tiny cosmetic cleanups.
2007-10-19  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-render.c: tiny cosmetic cleanups.


svn path=/trunk/; revision=23886
2007-10-19 07:03:33 +00:00
Sven Neumann 4bfde23c61 fixed calculation of the alpha value.
2007-10-18  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-render.c (box_filter): fixed
	calculation of the alpha value.


svn path=/trunk/; revision=23864
2007-10-18 08:07:26 +00:00
Sven Neumann 9f2174fcdf sprinkled some const qualifiers.
2007-10-17  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-render.c (box_filter): sprinkled
	some const qualifiers.


svn path=/trunk/; revision=23862
2007-10-17 19:25:01 +00:00
Michael Natterer 45ca11b324 if we need to delete/create tools on button press because the active tool
2007-10-11  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_canvas_tool_events): if we need to
	delete/create tools on button press because the active tool
	doesn't support changing drawables, make sure the newly created
	tool gets its focus_display and modifier states set correctly.
	Fixes bug #485119. Improved disabled debug output.

	* app/tools/gimptool.c: stylistic cleanup in debug output.


svn path=/trunk/; revision=23803
2007-10-11 15:25:28 +00:00
Sven Neumann 38f72c00ac removed level from GimpDisplayShell struct.
2007-10-08  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell.[ch]: removed level from
	GimpDisplayShell struct.

	* app/display/gimpdisplayshell-render.c: fixed rendering of the 
mask.
	Closes bug #448417 again.


svn path=/trunk/; revision=23767
2007-10-08 19:53:43 +00:00
Sven Neumann 95c6df090f app/config/gimpdisplayconfig.[ch] app/config/gimprc-blurbs.h
2007-10-08  Sven Neumann  <sven@gimp.org>

	* app/config/gimpdisplayconfig.[ch]
	* app/config/gimprc-blurbs.h
	* app/display/display-enums.[ch]
	* app/display/gimpdisplayshell-handlers.c
	* app/display/gimpdisplayshell-render.c: allow to configure the
	display zoom quality.

	* app/display/gimpdisplayshell-transform.c: formatting. 

svn path=/trunk/; revision=23760
2007-10-08 13:30:49 +00:00
Simon Budig 682695a80d app/display/gimpdisplayshell.[ch] 64bittified the code so that the new
2007-09-30  Simon Budig  <simon@gimp.org>

	* app/display/gimpdisplayshell.[ch]
	* app/display/gimpdisplayshell-render.c: 64bittified the code so
	  that the new renderer also works for big images. Slightly
	  reorganized.

	* app/display/gimpdisplayshell-transform.c: Another go at
	  bug #474509. This even might be fixed now...


svn path=/trunk/; revision=23698
2007-09-30 17:24:47 +00:00
Simon Budig 2f4e32a7d5 fix the numerical overflow for the new box-filtering stuff.
2007-09-26  Simon Budig  <simon@gimp.org>

	* app/display/gimpdisplayshell-render.c: fix the numerical overflow
	for the new box-filtering stuff.

	Fixes bug #479807.


svn path=/trunk/; revision=23659
2007-09-26 14:49:21 +00:00
Sven Neumann 816889b544 removed const qualifiers to fix compilation on Solaris 8 (bug #479817).
2007-09-24  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-render.c: removed const qualifiers
	to fix compilation on Solaris 8 (bug #479817).

svn path=/trunk/; revision=23642
2007-09-24 15:43:01 +00:00
Simon Budig 2e1402c01b Accomodate for spill that happens by the box filtering.
2007-09-23  Simon Budig  <simon@gimp.org>

	* app/display/gimpdisplay.c: Accomodate for spill that
	happens by the box filtering.

	Fixes bug #474509. Again. Hopefully.


svn path=/trunk/; revision=23630
2007-09-23 18:21:08 +00:00
Simon Budig a26c1d7df9 oops - managed to miss the mask rendering.
2007-09-23  Simon Budig  <simon@gimp.org>

	* app/display/gimpdisplayshell-render.c: oops - managed to miss the
	mask rendering.


svn path=/trunk/; revision=23619
2007-09-23 00:57:15 +00:00
Simon Budig 7d0a4ce1ec use Bresenham stepping for the y-direction as well.
2007-09-23  Simon Budig  <simon@gimp.org>

	* app/display/gimpdisplayshell-render.c: use Bresenham stepping
	for the y-direction as well.

	Fixes bug #474509.

	Retired old and unused functions.


svn path=/trunk/; revision=23618
2007-09-23 00:36:17 +00:00
Simon Budig 40f66e9c13 implement bresenham-like stepping for interpolating the view in
2007-09-23  Simon Budig  <simon@gimp.org>

	* app/display/gimpdisplayshell-render.c: implement
	bresenham-like stepping for interpolating the view in
	x-direction. Since I now know how it is supposed to work
	the y direction will follow shortly.

	Adresses bug #474509.


svn path=/trunk/; revision=23617
2007-09-22 22:28:51 +00:00
Simon Budig 98222b0359 avoid rendering issues by adding xdelta/2 to xstart.
2007-09-17  Simon Budig  <simon@gimp.org>

	* app/display/gimpdisplayshell-render.c: avoid rendering
	issues by adding xdelta/2 to xstart.

	Probably fixes bug #474509.


svn path=/trunk/; revision=23569
2007-09-16 23:38:37 +00:00
Sven Neumann ff80ac1701 formatting.
2007-09-14  Sven Neumann  <sven@gimp.org>

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

	* app/display/gimpdisplayshell-render.c: removed unused include.

svn path=/trunk/; revision=23545
2007-09-14 13:44:32 +00:00
Øyvind Kolås eb8924c0cb clone the middle row/column when walking off the source drawable during
* app/display/gimpdisplayshell-render.c: (render_image_tile_fault),
(render_image_tile_fault_one_row): clone the middle row/column when
walking off the source drawable during downscaling. Probably fixes bug
#469567.

svn path=/trunk/; revision=23521
2007-09-12 20:26:58 +00:00