Commit Graph

98 Commits

Author SHA1 Message Date
d9b5207aa2 Change licence to GPLv3 (and to LGPLv3 for libgimp).
2009-01-17  Michael Natterer  <mitch@gimp.org>

	* all files with a GPL header and all COPYING files:

	Change licence to GPLv3 (and to LGPLv3 for libgimp).

	Cleaned up some copyright headers and regenerated the parsers in
	the ImageMap plugin.


svn path=/trunk/; revision=27913
2009-01-17 22:28:01 +00:00
47c39d6c97 removed function gimp_display_shell_scroll_get_scaled_viewport_offset() as
2008-11-14  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-scroll.[ch]: removed function
	gimp_display_shell_scroll_get_scaled_viewport_offset() as it was
	only returning -shell->offset_x and -shell->offset_y and it
	started to show up in profiles.

	* app/display/gimpdisplayshell-draw.c
	* app/display/gimpdisplayshell-transform.c
	* app/display/gimpdisplayshell-scale.c: use the shell offsets
	directly.


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

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

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

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

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

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

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


svn path=/trunk/; revision=27202
2008-10-09 20:24:04 +00:00
8ec1d65a4a removed trailing whitespace
svn path=/trunk/; revision=26852
2008-09-04 08:37:32 +00:00
d9e5942ec6 Fix stupid slip-up in my last commit
svn path=/trunk/; revision=26777
2008-08-26 18:59:23 +00:00
dd672dde70 New function.
2008-08-26  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-scroll.c
	(gimp_display_shell_scroll_unoverscrollify): New function.

	* app/display/gimpdisplayshell-autoscroll.c
	(gimp_display_shell_autoscroll_timeout): Make sure the autoscroll
	does not result in overscroll. This more or less finalizes the
	implementation of the enhancement request in bug #362915.

svn path=/trunk/; revision=26775
2008-08-26 18:50:54 +00:00
ad693bbf9e If no scroll should be applied we can return early.
2008-08-26  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-scroll.c
	(gimp_display_shell_scroll): If no scroll should be applied we can
	return early.

svn path=/trunk/; revision=26774
2008-08-26 17:53:54 +00:00
c1e13e2c5d add gimp_canvas_scroll() which scrolls the canvas and makes the result
2008-08-22  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpcanvas.[ch]: add gimp_canvas_scroll() which
	scrolls the canvas and makes the result visible immediately.

	* app/display/gimpdisplayshell-scroll.c
	(gimp_display_shell_scroll): use the new function.


svn path=/trunk/; revision=26712
2008-08-22 15:57:41 +00:00
120b65469f Fix typo in last commit
svn path=/trunk/; revision=26686
2008-08-20 20:01:45 +00:00
ec0849dce8 Use a constant for the minimum step amount for scrollbars.
2008-08-20  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-scroll.c: Use a constant for the
	minimum step amount for scrollbars.

svn path=/trunk/; revision=26685
2008-08-20 19:46:58 +00:00
7902305706 Oops, correct parameter order.
2008-08-16  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-scroll.c
	(gimp_display_shell_scroll_center_image_on_next_size_allocate):
	Oops, correct parameter order.

svn path=/trunk/; revision=26609
2008-08-16 19:18:31 +00:00
f45897f6c7 Support axis independence.
2008-08-16  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-scroll.[ch]
	(gimp_display_shell_scroll_center_image_on_next_size_allocate):
	Support axis independence.

	* app/display/gimpdisplayshell.c: Adapt.

svn path=/trunk/; revision=26608
2008-08-16 18:50:38 +00:00
80ff2e82c3 Explain that this function needs to be used with care since it is risky.
2008-08-16  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-scroll.c
	(gimp_display_shell_scroll_center_image_on_next_size_allocate):
	Explain that this function needs to be used with care since it is
	risky.

	* app/display/gimpdisplayshell.c
	(gimp_display_shell_new)
	(gimp_display_shell_fill): Clarify that it is safe to use the
	risky function.

	(gimp_display_shell_configure_event): Make proper comparisions (<=
	not =) and explain that usage of the risky function is safe.

	(gimp_display_shell_shrink_wrap): Always call
	gimp_display_shell_scroll_center_image() and let size-requests be
	handled by GimpDisplayShell::configure_event().

	* app/actions/view-commands.c (view_shrink_wrap_cmd_callback): No
	need to center anything explicitly any longer.

svn path=/trunk/; revision=26607
2008-08-16 18:25:32 +00:00
c8ae8f67b4 New function.
2008-08-14  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-draw.[ch]
	(gimp_display_shell_draw_get_scaled_image_size_for_scale): New
	function.

	* app/display/gimpdisplayshell-scale.[ch]
	(gimp_display_shell_scale): When zooming out and the image
	starts to fit the viewport on a given axis, center on that
	axis.

	(gimp_display_shell_scale_image_starts_to_fit): New function.

	(gimp_display_shell_calculate_scale_x_and_y): New function.

	* app/display/gimpdisplayshell.c
	(gimp_display_shell_scale_changed): Use
	gimp_display_shell_calculate_scale_x_and_y().

	* app/display/gimpdisplayshell-scroll.c
	(gimp_display_shell_scroll_center_image): Bail out if neither
	vertical nor horizontal centering is requested.

svn path=/trunk/; revision=26562
2008-08-14 19:23:28 +00:00
2f52791b2b New helper function.
2008-08-14  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-scroll.c
	(gimp_display_shell_scroll_clamp_and_update): New helper function.

	* app/display/gimpdisplayshell-scale.c
	* app/display/gimpdisplayshell-scroll.c
	* app/display/gimpdisplayshell-callbacks.c: Use it.

svn path=/trunk/; revision=26554
2008-08-14 14:41:29 +00:00
21a6d735e5 Always center the image after a wrap. I can't think of a case when that
2008-08-10  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell.c (gimp_display_shell_shrink_wrap):
	Always center the image after a wrap. I can't think of a case when
	that shouldn't happen.

	* app/display/gimpdisplayshell-handlers.c
	(gimp_display_shell_size_changed_detailed_handler): Centering
	occurs implicitly after wrapping now, no need to do it explicitly.

	* app/display/gimpdisplayshell-scroll.c
	(gimp_display_shell_scroll_center_image): Handle the no-image
	case.

svn path=/trunk/; revision=26487
2008-08-10 14:26:29 +00:00
b41206c334 New low level function for setting display shell offset.
2008-08-10  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-scroll.[ch]
	(gimp_display_shell_scroll_set_offset): New low level function for
	setting display shell offset.

	(gimp_display_shell_scroll_center_image)

	* app/display/gimpdisplayshell-handlers.c
	(gimp_display_shell_size_changed_detailed_handler): Use it instead
	of gimp_display_shell_scale_by_values().

svn path=/trunk/; revision=26486
2008-08-10 13:09:24 +00:00
2eacb5cf58 Rename gimp_display_shell_scale_setup() to
2008-08-10  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-scale.[ch]:
	Rename gimp_display_shell_scale_setup() to
	gimp_display_shell_update_scrollbars_and_rulers(), because that's
	exactly what that function does.

	* app/display/gimpdisplayshell.c
	* app/display/gimpdisplayshell-scroll.c
	* app/display/gimpdisplayshell-handlers.c
	* app/display/gimpdisplayshell-callbacks.c: Adapt to new name.

svn path=/trunk/; revision=26484
2008-08-10 11:56:29 +00:00
4bbe4c81b8 Renamed gimp_display_shell_scroll_private() to gimp_display_shell_scroll()
2008-08-10  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-scroll.[ch]: Renamed
	gimp_display_shell_scroll_private() to gimp_display_shell_scroll()
	and keep it here.

	* app/display/gimpdisplayshell-private.h: Removed.

	* app/display/Makefile.am
	* app/display/gimpdisplayshell-scale.c
	* app/display/gimpdisplayshell-scroll.c
	* app/display/gimpdisplayshell-handlers.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-autoscroll.c: Adapt.

svn path=/trunk/; revision=26480
2008-08-10 11:11:19 +00:00
65ff34a540 It makes more sense for gimp_display_shell_get_scaled_image_size() to be
2008-08-10  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-scroll.[ch]: It makes more sense
	for gimp_display_shell_get_scaled_image_size() to be moved from
	here to

	* app/display/gimpdisplayshell-draw.[ch]: here, and rename it to
	gimp_display_shell_draw_get_scaled_image_size().

	* app/display/gimpdisplayshell.c: Adapt to name change.

svn path=/trunk/; revision=26479
2008-08-10 10:54:00 +00:00
b9f66d0489 gimp_display_shell_ -> gimp_display_shell_scroll_ for functions that are
2008-08-10  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-scroll.[ch]: gimp_display_shell_ ->
	gimp_display_shell_scroll_ for functions that are scroll
	related. Also did some other minor renamings.

	* app/display/gimpnavigationeditor.c
	* app/display/gimpdisplayshell-draw.c
	* app/display/gimpdisplayshell-scale.c 
	* app/display/gimpdisplayshell-render.c
	* app/display/gimpdisplayshell-transform.c
	* app/display/gimpdisplayshell-callbacks.c: Adapt to the name
	changes.

svn path=/trunk/; revision=26476
2008-08-10 09:08:11 +00:00
34b4b890cf There is no need for special casing depending on image size relative to
2008-08-10  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-scroll.c
	(gimp_display_shell_scroll_center_image): There is no need for
	special casing depending on image size relative to viewport size.

svn path=/trunk/; revision=26471
2008-08-10 07:26:35 +00:00
a736df49e2 Put functions to center the image in the display shell where they belong,
2008-08-10  Martin Nordholts  <martinn@svn.gnome.org>

	Put functions to center the image in the display shell where they
	belong, and give them proper names.

	* app/display/gimpdisplayshell-scale.[ch]: Get rid of functions
	and use the new names.

	* app/display/gimpdisplayshell-scroll.[ch]: Put the functions here
	and call them gimp_display_shell_scroll_center_image() and
	gimp_display_shell_scroll_center_image_on_next_size_allocate().

	* app/display/gimpdisplayshell.c:
	* app/display/gimpdisplayshell-handlers.c: Use the new names.

svn path=/trunk/; revision=26470
2008-08-10 07:23:14 +00:00
3b067cba23 added gimp_image_get_projection().
2008-08-07  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimage.[ch]: added gimp_image_get_projection().

	* app/display/gimpdisplay-handlers.c
	* app/display/gimpdisplayshell-render.c
	* app/display/gimpdisplayshell-scroll.c
	* app/paint/gimppaintcore.c
	* app/paint/gimpsourcecore.c
	* app/tools/gimpbycolorselecttool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpimagemaptool.c
	* app/tools/gimpiscissorstool.c
	* app/tools/gimppainttool.c
	* app/widgets/gimpsamplepointeditor.c
	* tools/pdbgen/pdb/image.pdb: use the new accessor function.

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


svn path=/trunk/; revision=26413
2008-08-07 09:17:46 +00:00
612778c885 app/display/gimpdisplayshell-scroll.[ch]
2008-08-05  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell-scroll.[ch]
	* app/display/gimpdisplayshell-draw.c
	* app/display/gimpdisplayshell-scale.c
	* app/display/gimpdisplayshell-transform.c: get rid of the "image"
	part in all instances of "scaled_image_viewport_offset", we call
	it simply "viewport" in all other places and it makes the code
	more readable.


svn path=/trunk/; revision=26395
2008-08-05 17:50:32 +00:00
5a856e9d45 Don't setup scrollbar step increment here.
2008-08-05  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-scale.c
	(gimp_display_shell_scale_setup): Don't setup scrollbar step
	increment here.

	* app/display/gimpdisplayshell-scroll.c
	(gimp_display_shell_setup_hscrollbar_with_value)
	(gimp_display_shell_setup_vscrollbar_with_value): Setup scrollbar
	step increment here and make sure that a step always scrolls at
	least a display shell pixel.

svn path=/trunk/; revision=26390
2008-08-05 17:17:27 +00:00
26c2c6afda :size-changed-detailed): change double to int in signal parameters.
2008-08-04  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage.[ch] (GimpImage::size-changed-detailed):
	change double to int in signal parameters.

	Remove gimp_image_emit_size_changed_signals() and call
	gimp_viewable_size_changed() in size-changed-detailed's default
	handler.

	* app/core/gimpimageundo.[ch]
	* app/core/gimpimage-undo-push.[ch]: change double to int in
	previous-origin related code.

	* app/core/gimpimage-undo.c
	* app/core/gimpimage-scale.c
	* app/core/gimpimage-crop.c
	* app/core/gimpimage-rotate.c
	* app/core/gimpimage-resize.c: call gimp_image_size_changed_detailed()
	instead of the removed gimp_image_emit_size_changed_signals()

	* app/display/gimpdisplayshell-scroll.[ch]: remove
	gimp_display_shell_handle_size_changed_detailed() because it
	handles both scrolling and scaling and doesn't belong here.

	* app/display/gimpdisplayshell-handlers.c: moved its code back to
	gimp_display_shell_size_changed_detailed_handler() and follow the
	double -> int change above.


svn path=/trunk/; revision=26367
2008-08-04 20:11:35 +00:00
6c48f2b601 Further work for completing bug #362915 that makes changes to the image
2008-08-03  Martin Nordholts  <martinn@svn.gnome.org>

	Further work for completing bug #362915 that makes changes to the
	image size (e.g when cropping) be much more nicely handled by
	display shell.

	* app/core/gimpimage.[ch]: Add new signal
	GimpImage::size-changed-detailed that is emited whenever
	GimpViewable::size-changed is. The new signal provides additional
	information, namely the previous origin relative to the current
	origin. Cliens choose what specific signal to listen to depending
	on how much info they need.

	* app/display/gimpdisplayshell-handlers.c: Connect to
	GimpImage::size-changed-detailed instead of
	GimpViewable::size-changed since the shell wants information about
	the previous image origin.
	(gimp_display_shell_resolution_changed_handler): Use
	gimp_display_shell_scale_resize() instead to avoid display
	garbage.

	* app/display/gimpdisplayshell-scale.[ch]: Add new utility
	function gimp_display_shell_center_image_on_next_size_allocate().

	* app/display/gimpdisplayshell-scroll.[ch]
	(gimp_display_shell_handle_size_changed_detailed): New function
	that replaces logic in gimp_display_shell_handle_size_changed and
	that takes previous-origin of the image into account and adjusts
	the offset so that the image content that remains doesn't move. If
	the window is resized on image resize, just center the image
	afterwards.

	* app/core/gimpimage-undo-push.[ch]
	(gimp_image_undo_push_image_size): Add previous-origin paremeters.

	* app/core/gimpimageundo.[ch]: Add and manage previous-origin
	properties so that the display shell offset can be appropriately
	adjusted also when undoing.

	* app/core/gimpundo.h
	* app/core/gimpimage-undo.c: Add previous_origin members to the
	undo accumulator and emit that information when the size of the
	image changes due to the undo.

	* app/core/gimpimage-crop.c (gimp_image_crop)
	* app/core/gimpimage-scale.c (gimp_image_scale)
	* app/core/gimpimage-rotate.c (gimp_image_rotate)
	* app/core/gimpimage-resize.c (gimp_image_resize_with_layers):
	Supply information about the previous-origin of the image to the
	size-changed signals and the undo system.

svn path=/trunk/; revision=26354
2008-08-03 11:35:53 +00:00
fe0d07de9f Get rid of non-intelligent scrollbar stepper sensitivity code.
2008-07-13  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell.c (gimp_display_shell_new): Get rid
	of non-intelligent scrollbar stepper sensitivity code.

	* app/display/gimpdisplayshell-scroll.c
	(gimp_display_shell_scroll_clamp_offsets): Add intelligent
	scrollbar stepper sensitivity code.

svn path=/trunk/; revision=26178
2008-07-13 14:48:44 +00:00
60fb7eda29 Consistency cleanup.
2008-07-13  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-scroll.c
	(gimp_display_shell_setup_hscrollbar_with_value): Consistency
	cleanup.

svn path=/trunk/; revision=26177
2008-07-13 14:33:04 +00:00
59a5825e23 Use gimp_display_shell_get_scaled_image_size() instead of inaccurately
2008-07-13  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-scroll.c
	(gimp_display_shell_setup_hscrollbar_with_value)
	(gimp_display_shell_setup_vscrollbar_with_value): Use
	gimp_display_shell_get_scaled_image_size() instead of inaccurately
	calculate that information locally.

svn path=/trunk/; revision=26175
2008-07-13 12:22:10 +00:00
e0cf43aea3 New function that contains logic previously kept in
2008-07-13  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-scroll.[ch]
	(gimp_display_shell_get_scaled_image_size): New function that
	contains logic previously kept in gimp_display_shell_draw_area().

	* app/display/gimpdisplayshell-draw.c
	(gimp_display_shell_draw_area): Use the new function.

svn path=/trunk/; revision=26168
2008-07-13 07:40:11 +00:00
4aeaa83f9e The following change is conceptually based on a patch by Alexia Death and
2008-07-12  Martin Nordholts  <martinn@svn.gnome.org>

	The following change is conceptually based on a patch by
	Alexia Death and implements the core functionality for
	bug #362915.

	* app/display/gimpdisplayshell-scroll.[ch]
	(gimp_display_shell_scroll_clamp_offsets): Clamp the offsets in
	such a way that allows to scroll beyond the image border.

	(gimp_display_shell_setup_hscrollbar_with_value)
	(gimp_display_shell_setup_vscrollbar_with_value): Put common
	scrollbar range setup code here.

	* app/display/gimpdisplayshell-scale.c
	(gimp_display_shell_scale_setup): Use above helper functions for
	setting up scrollbar range.

	* app/display/gimpdisplayshell-callbacks.c: Handle adjustment of
	the scrollbar range when they are about to change value.

	* app/display/gimpdisplayshell.c: Always keep the scrollbar
	steppers sensitive to user input.

svn path=/trunk/; revision=26166
2008-07-12 14:48:09 +00:00
fb32ff3efd Add short doc for gimp_display_shell_center_around_image_coordinate()
svn path=/trunk/; revision=26163
2008-07-12 14:26:49 +00:00
9f5c347d4e Replace gimp_display_shell_scroll() with
2008-07-12  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-scroll.c:
	Replace gimp_display_shell_scroll() with
	gimp_display_shell_center_around_image_coordinate() since that is
	easier to map to something sensible when we allow to scroll beyond
	image border.

	* app/display/gimpnavigationeditor.c
	(gimp_navigation_editor_marker_changed): Adapt to the new
	interface.

svn path=/trunk/; revision=26162
2008-07-12 14:20:54 +00:00
1fb0f1d82d Remove invalid TODO.
2008-07-12  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell-scroll.c
	(gimp_display_shell_get_viewport): Remove invalid TODO.

svn path=/trunk/; revision=26161
2008-07-12 14:09:16 +00:00
a33d80107b Kill disp_[xy]offset! We now keep store that information by using negative
2008-07-12  Martin Nordholts  <martinn@svn.gnome.org>

	* app/display/gimpdisplayshell.c: Kill disp_[xy]offset! We now
	keep store that information by using negative values in
	offset_[xy].

	* app/display/gimpdisplayshell-scroll.[ch]
	(gimp_display_shell_scroll_clamp_offsets)
	(gimp_display_shell_get_scaled_image_viewport_offset): Adjust
	accordingly to preserve current behaviour.

	(gimp_display_shell_get_disp_offset): New function to get the old
	disp_[xy]offset based on the new offset_[xy].

	(gimp_display_shell_get_render_start_offset): New function to get
	th old offset_[xy] based on the new offset_[xy].

	* app/display/gimpdisplayshell-draw.c
	* app/display/gimpdisplayshell-scale.c
	* app/display/gimpdisplayshell-render.c: Get rid of
	disp_[xy]offset and use
	gimp_display_shell_get_render_start_offset() and
	gimp_display_shell_get_disp_offset() instead.

svn path=/trunk/; revision=26146
2008-07-12 07:00:46 +00:00
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
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
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
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
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
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
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
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
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
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
83d3a750d4 include "libgimpmath/gimpmathtypes.h" instead of "libgimpmath/gimpmath.h".
2007-03-09  Michael Natterer  <mitch@gimp.org>

	* app/core/core-types.h: include "libgimpmath/gimpmathtypes.h"
	instead of "libgimpmath/gimpmath.h".

	* app/core/gimpbrush.h
	* app/paint/gimppaintcore.h
	* app/paint/gimpperspectiveclone.h
	* app/text/gimptext.h
	* app/tools/gimptransformtool.h: include gimpvector.h and
	gimpmatrix.h explicitely where they are needed in public structs.

	* app/*/*.c
	* tools/pdbgen/pdb/paths.pdb: include "libgimpmath/gimpmath.h"
	where needed.

	* app/pdb/paths_cmds.c: regenerated.


svn path=/trunk/; revision=22084
2007-03-09 13:00:01 +00:00
41237259c9 In all files, changed the standard copyright notice to say "GIMP - The GNU
2006-12-09  Sven Neumann  <sven@gimp.org>

        * In all files, changed the standard copyright notice to say
        "GIMP - The GNU Image Manipulation Program".
2006-12-09 21:33:38 +00:00
049872b361 app/*.[ch] converted tabs to spaces.
2006-04-12  Sven Neumann  <sven@gimp.org>

	* app/*.[ch]
	* app/*/*.[ch]: converted tabs to spaces.
2006-04-12 12:49:29 +00:00