Commit graph

8429 commits

Author SHA1 Message Date
Michael Natterer 9eb90fe54e changed src_pickable parameter to src_type.
2006-09-09  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimpclone.c (gimp_clone_line_image): changed src_pickable
	parameter to src_type.

	(gimp_clone_motion): allow the passed srcPR to have alpha even if
	the source pickable is flat. Pass the correct GimpImageType to
	gimp_clone_line_image().
2006-09-09 18:06:24 +00:00
Sven Neumann 6b09c1f604 app/app_procs.c moved some code from app_run() to errors_init().
2006-09-09  Sven Neumann  <sven@gimp.org>

	* app/app_procs.c
	* app/errors.[ch]: moved some code from app_run() to
errors_init().
2006-09-09 17:31:28 +00:00
Sven Neumann 188bbe5d37 app/app_procs.[ch] initialize the error subsystem after the gimp object
2006-09-09  Sven Neumann  <sven@gimp.org>

	* app/app_procs.[ch]
	* app/main.c: initialize the error subsystem after the gimp
object
	has been created.

	* app/errors.[ch]: store a reference to the gimp object (eek)
and
	use it to call gimp_gui_ungrab() before g_on_error_query().

	* app/core/gimp-gui.[ch]
	* app/gui/gui-vtable.c: added gimp_gui_ungrab().
2006-09-09 16:36:15 +00:00
Sven Neumann beb9cae497 added missing include.
2006-09-09  Sven Neumann  <sven@gimp.org>

	* app/dialogs/about-dialog.c: added missing include.

	* app/display/display-enums.[ch]
	* app/dialogs/preferences-dialog.c: changed labels for
	"space-bar-action" preference. Suggestions welcome for further
	improvements.
2006-09-09 00:36:23 +00:00
Sven Neumann fc40c485eb use coordinates from the current device when starting to scroll. Grab the
2006-09-08  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-callbacks.c: use coordinates from
	the current device when starting to scroll. Grab the keyboard
and
	pointer when panning with the space bar.
2006-09-08 19:36:02 +00:00
William Skaggs 26fcd6b165 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/text/gimptextlayout-render.c (gimp_text_layout_render_glyphs):
	handle tabs correctly, as instructed by behdad.  Fixes
	bug #353132.
2006-09-08 18:48:39 +00:00
Sven Neumann 6276fdfc8a added GUI for "space-bar-action".
2006-09-08  Sven Neumann  <sven@gimp.org>

	* app/dialogs/preferences-dialog.c: added GUI for "space-bar-action".
2006-09-08 16:04:09 +00:00
Michael Natterer 93a9ad8c13 must not clamp the paint area against the boundary of the src_tiles.
2006-09-08  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimpperspectiveclone.c (gimp_perspective_clone_motion):
	must not clamp the paint area against the boundary of the
	src_tiles. Various small cleanups.

	* app/paint/gimpsourcecore.[ch] (GimpSourceCore::motion): removed
	src_image parameter.

	Added new virtual function GimpSourceCore::get_source() and moved
	the source PR initialization code to its default implementation.
	(GimpPerspectiveClone will override this method later).

	* app/paint/gimpclone.c (gimp_clone_motion)
	* app/paint/gimpheal.c (gimp_heal_motion): changed accordingly.
2006-09-08 15:15:59 +00:00
Sven Neumann d01cef075b app/config/gimpdisplayconfig.[ch] app/config/gimprc-blurbs.h added new
2006-09-08  Sven Neumann  <sven@gimp.org>

	* app/config/gimpdisplayconfig.[ch]
	* app/config/gimprc-blurbs.h
	* app/display/display-enums.[ch]: added new gimprc option
	"space-bar-action" and default to "pan". Will add a GUI for this later.

	* app/display/gimpdisplayshell-callbacks.c: respect the new option
	and either pan the display or push the move tool. Fixes bug #349903.
2006-09-08 15:05:36 +00:00
Sven Neumann 2426755ba9 added function gimp_get_tool_info().
2006-09-08  Sven Neumann  <sven@gimp.org>

	* app/core/gimp.[ch]: added function gimp_get_tool_info().

	* app/actions/tools-commands.c
	* app/actions/vectors-commands.c
	* app/tools/gimppainttool.c
	* app/widgets/gimpdrawabletreeview.c
	* app/widgets/gimpselectioneditor.c
	* app/widgets/gimptoolbox.c: use the new function instead of poking
	into gimp->tool_info_list.

	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell.[ch]: moved code that deals with
	the space key into separate functions. Added space_shaded_tool
	to GimpDisplayShell instead of using a static variable for it.

	* app/tools/tool_manager.c: removed unused include.
2006-09-08 13:42:00 +00:00
Sven Neumann 13a2beb532 mark "Space" and "Backslash" for translation (using the same translation
2006-09-08  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpwidgets-utils.c: mark "Space" and "Backslash"
	for translation (using the same translation context as in GTK+).
2006-09-08 12:46:53 +00:00
Hans Breuer ccb25e3798 updated
2006-09-08  Hans Breuer  <hans@breuer.org>

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

	* app/paint/gimpperspectiveclone.c : error C2057: expected constant
	expression. Stack allocation of dynamic sized arrays is afaik a GCC
	extension, use g_alloca() instead.
2006-09-08 11:45:06 +00:00
Michael Natterer 1c309997e7 fix the tool's menu path and accelerator.
2006-09-08  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpperspectiveclonetool.c
	(gimp_perspective_clone_tool_register): fix the tool's menu path
	and accelerator.
2006-09-08 08:39:55 +00:00
Michael Natterer 1b1497657a Merged the "soc-2006-perspective-clone" branch. That branch is now
2006-09-07  Michael Natterer  <mitch@gimp.org>

	Merged the "soc-2006-perspective-clone" branch. That branch is
	now officially closed and all further fixes and changes have to
	be applied to HEAD.

	Did some minor adjustments, mostly small indentation and spacing
	fixes. Derive the tool from GimpBrushTool and renamed the enum
	added to paint-enums.h and it values, added stock icon and menu
	entry.

	Thanks a lot to Pedro Alonso Ferrer!

	* app/paint/paint-enums.[ch]: new enum GimpPerspectiveCloneMode.

	* app/paint/Makefile.am
	* app/paint/gimpperspectiveclone.[ch]
	* app/paint/gimpperspectivecloneoptions.[ch]: the perspective
	clone core and its options.

	* app/paint/gimp-paint.c: register it.

	* app/tools/Makefile.am
	* app/tools/gimpperspectiveclonetool.[ch]: the perspective clone tool.

	* app/tools/gimp-tools.c: register it.

	* app/tools/gimppaintoptions-gui.c: show the widgets that are used
	by perspective clone.

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

	* themes/Default/images/Makefile.am
	* themes/Default/images/tools/stock-tool-perspective-clone-16.png
	* themes/Default/images/tools/stock-tool-perspective-clone-22.png
	* libgimpwidgets/gimpstock.[ch]: its stock ID and icons.

	* menus/image-menu.xml.in: added it to the menu.
2006-09-07 17:10:22 +00:00
Michael Natterer 58908ecf4d removed unused variable.
2006-09-07  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpfreeselecttool.c: removed unused variable.
2006-09-07 12:57:06 +00:00
Sven Neumann 6d0e04ae6e app/base/pixel-region.[ch] app/base/tile-manager.[ch] removed code that
2006-09-07  Sven Neumann  <sven@gimp.org>

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

	* app/base/tile-cache.c
	* app/base/tile-manager.c
	* app/base/tile-private.h
	* app/base/tile.c: removed tile locking macros that were only used
	for the threaded tile swapper.
2006-09-07 09:41:23 +00:00
Michael Natterer fb13701060 pass the src_offset_x and src_offset_y as separate parameters to
2006-09-07  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimpsourcecore.[ch] (gimp_source_core_motion): pass
	the src_offset_x and src_offset_y as separate parameters to
	GimpSourceCore::motion().

	* app/paint/gimpheal.c (gimp_heal_motion): changed accordingly.

	* app/paint/gimpclone.c (gimp_clone_motion): ditto and use the new
	values for pattern cloning instead of asuming stuff that relies on
	knowledge of gimp_source_core_motion()'s internals.
2006-09-07 09:35:52 +00:00
Sven Neumann c8fb26ee96 removed --enable_threaded_tile_swapper option.
2006-09-07  Sven Neumann  <sven@gimp.org>

	* configure.in: removed --enable_threaded_tile_swapper option.

	* app/base/tile-cache.c
	* app/base/tile-private.h
	* app/base/tile-swap.c
	* app/base/tile.c: removed threaded tile swapper code which has
	been sitting here unused for too long.
2006-09-07 09:31:27 +00:00
Michael Natterer f83925673f pass the width and height of the sub-area of paint_area to
2006-09-07  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimpsourcecore.[ch] (gimp_source_core_motion): pass
	the width and height of the sub-area of paint_area to
	GimpSourceCore::motion().

	* app/paint/gimpclone.c (gimp_clone_motion)
	* app/paint/gimpheal.c (gimp_heal_motion): use the new parameters
	instead of taking these values from srcPR->w and ->h, which was
	very confusing.
2006-09-07 08:49:52 +00:00
Sven Neumann 3631a3d617 set the context property on the "edit-fill-pattern" action.
2006-09-07  Sven Neumann  <sven@gimp.org>

	* app/actions/edit-actions.c (edit_actions_setup): set the context
	property on the "edit-fill-pattern" action.
2006-09-07 07:59:35 +00:00
William Skaggs 5e9dc3c0d8 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/tools/tools-enums.[ch]: add GimpRectangleConstraint
	enum.

	* app/tools/gimprectangletool.[ch]: replace "constrain"
	boolean with "constraint" enum property.  Implement
	constraints in motion handler -- the implementation
	is rather elegant but pretty tricky.

	* app/tools/gimpcroptool.c: constrain to image bounds,
	or to active drawable bounds if "current layer only"
	option is checked.

	* app/tools/gimpellipseselecttool.c
	* app/tools/gimprectangleselecttool.c: no constraint.

	This addresses bug #353936 -- I would say fixes it, but it
	probably needs some fine-tuning.  Also perhaps fixes
	bug #329817 a bit better than before.
2006-09-06 22:51:54 +00:00
Sven Neumann e077975358 bail out early if the procedure is already at the start of the list.
2006-09-06  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimppluginmanager-history.c
	(gimp_plug_in_manager_history_add): bail out early if the
	procedure is already at the start of the list.
2006-09-06 19:50:08 +00:00
William Skaggs c28e8253d4 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/tools/tools-enums.[ch]: remove GimpCropMode enum;
	missed in previous commit.
2006-09-06 15:59:11 +00:00
William Skaggs 05f8df22d7 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/tools/gimpcroptool.c
	* app/tools/gimpcropoptions.[ch]: remove "crop vs resize"
	option, as recommended in bug #353936.
2006-09-06 15:38:28 +00:00
William Skaggs 557a217e05 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/paint-funcs/scale-funcs.[ch]: apply patch from Geert
	Jordaens to improve Lanczos scaling, with coding style
	cleanups; partly fixes bug #167956.
2006-09-06 15:29:45 +00:00
Sven Neumann 5ff13881ee also add the procedure to the history if it is called from the "Repeat" or
2006-09-06  Sven Neumann  <sven@gimp.org>

	* app/actions/plug-in-commands.c (plug_in_run_cmd_callback)
	(plug_in_repeat_cmd_callback): also add the procedure to the
	history if it is called from the "Repeat" or "Re-Show" menus.

	* plug-ins/common/vpropagate.c: changed progress text.
2006-09-06 09:11:55 +00:00
Sven Neumann dea33cb255 libgimpwidgets/Makefile.am libgimpwidgets/gimpwidgets.h added simple
2006-09-05  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/Makefile.am
	* libgimpwidgets/gimpwidgets.h
	* libgimpwidgets/gimphintbox.[ch]: added simple widget to
display
	a user hint. Having this as a widget will allow us to change the
	look, perhaps even using style properties.

	* libgimpwidgets/gimpwidgets.def: added the new symbols.

	* app/dialogs/keyboard-shortcuts-dialog.c
	* plug-ins/common/colormap-remap.c
	* plug-ins/common/redeye.c: use the new widget instead of
	duplicating the code.
2006-09-05 21:43:07 +00:00
Michael Natterer 42e9548379 app/actions/debug-actions.c app/actions/debug-commands.[ch] added "Dump
2006-09-05  Michael Natterer  <mitch@gimp.org>

	* app/actions/debug-actions.c
	* app/actions/debug-commands.[ch]
	* menus/toolbox-menu.xml.in: added "Dump Attached Data" menu item
	which prints the stuff that is attached to the gimp and
	user_context objects.
2006-09-05 21:36:20 +00:00
Michael Natterer 6c7f0c6830 added gimp_tool_get_options() so tools don't need to incude
2006-09-05  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimptool.[ch]: added gimp_tool_get_options() so tools
	don't need to incude "core/gimptoolinfo.h" just to get to
	their options.

	* app/tools/gimp*tool.h: added macros GIMP_FOO_TOOL_GET_OPTIONS()
	which return specific tool options types and do all casting
	themselves.

	* app/tools/*.c: use the new macros and don't include
	"core/gimptoolinfo.h" in most files.

	* app/tools/gimpcolorpickertool.c (gimp_color_picker_tool_register):
	make it use the parent context's FG and BG.

	* app/tools/gimpcolortool.c (gimp_color_tool_real_picked): set the
	color on the tool's options, not on the user context.
2006-09-05 18:25:31 +00:00
Michael Natterer a76e59de65 don't #include "core/gimptoolinfo.h"
2006-09-05  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpmenudock.c: don't #include "core/gimptoolinfo.h"
2006-09-05 16:11:47 +00:00
Sven Neumann 25c1dfe65f don't specialcase gimp->no_interface; it's a pointless optimization.
2006-09-05  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimppluginmanager.c (gimp_plug_in_manager_restore):
	don't specialcase gimp->no_interface; it's a pointless optimization.
2006-09-05 10:03:49 +00:00
Sven Neumann 36666a5b49 sort the load and save procedures after adding them to the database,
2006-09-05  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimppluginmanager.c (gimp_plug_in_manager_restore):
	sort the load and save procedures after adding them to the
	database, otherwise there is nothing to sort.
2006-09-05 09:45:48 +00:00
Sven Neumann 4bb2851f56 disabled debug spew.
2006-09-05  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpselectiondata.c: disabled debug spew.

	* plug-ins/common/raw.c: fixed saving of INDEXEDA drawables. Added
	code to load such files. Fixes bug #354034.
2006-09-05 09:26:28 +00:00
Sven Neumann 1b099bfde4 switch from a short timeout to an idle handler for starting the animation.
2006-09-05  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-selection.c: switch from a short
	timeout to an idle handler for starting the animation.
2006-09-05 07:09:56 +00:00
Michael Natterer 869ec3acd7 corrected origPR extents calculation. Makes the tool work at image borders
2006-09-05  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimpheal.c (gimp_heal_motion): corrected origPR
	extents calculation. Makes the tool work at image borders
	where it used to warn.

	(gimp_heal_laplace_iteration)
	(gimp_heal_region): minor coding style stuff.
2006-09-04 23:24:31 +00:00
Michael Natterer 9ecec01da2 do a lot of stuff that was duplicated in clone and heal. Added lots of
2006-09-05  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimpsourcecore.[ch] (gimp_source_core_motion): do a
	lot of stuff that was duplicated in clone and heal. Added lots of
	parameters to GimpSourceCore::motion() to get the stuff down to
	clone and heal.

	* app/paint/gimpclone.c (gimp_clone_motion): changed accordingly.

	* app/paint/gimpheal.c (gimp_heal_motion): ditto. Made it work for
	dest_drawable != src_pickable. Always add alpha to all buffers and
	convert the source buffer to the dest drawable's color space
	because the algorithm works only on buffers of same depth.
2006-09-04 22:54:50 +00:00
Sven Neumann fed784180f connect to both window state and visibility events 2006-09-04 21:23:50 +00:00
Sven Neumann c0e4133876 app/display/gimpdisplayshell.c more code cleanup. Monitor the shell's
2006-09-04  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell.c
	* app/display/gimpdisplayshell-selection.c: more code cleanup.
	Monitor the shell's window visibility and don't run the timeout
if
	the shell is fully obscured.
2006-09-04 21:11:14 +00:00
Sven Neumann 16206cdacf more code cleanup. Monitor the shell's window state and don't run the
2006-09-04  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-selection.c: more code cleanup.
	Monitor the shell's window state and don't run the timeout if
the
	shell is withdrawn or iconified.
2006-09-04 20:56:14 +00:00
Sven Neumann fb44096100 added missing include 2006-09-04 19:06:40 +00:00
Sven Neumann cf3f63243e code cleanup. Only use a timeout if there is actually a selection and if
2006-09-04  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-selection.c: code cleanup. Only
use
	a timeout if there is actually a selection and if it is not
hidden.
2006-09-04 18:22:50 +00:00
Sven Neumann 3b92ec7406 hide the internal API.
2006-09-04  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-selection.[ch]: hide the internal
API.

	* app/display/gimpdisplayshell-appearance.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-handlers.c
	* app/display/gimpdisplayshell.[ch]
	* app/tools/gimpcolortool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpmovetool.c: changed accordingly.

	* app/config/gimpdisplayconfig.c
	* app/dialogs/preferences-dialog.c: increased the default
marching
	ants speed.
2006-09-04 17:18:38 +00:00
Sven Neumann 969d40caf1 some cleanup. Made the Selection struct private and removed unused state
2006-09-04  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-selection.[ch]: some cleanup.
Made
	the Selection struct private and removed unused state member.
	Removed redundant parameter from
gimp_display_shell_selection_start().

	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell.c: changed accordingly.
2006-09-04 16:13:28 +00:00
Michael Natterer fca7fc0257 removed enum GimpHealAlignMode, we use the GimpSourceAlignMode now and can
2006-09-04  Michael Natterer  <mitch@gimp.org>

	* app/paint/paint-enums.[ch]: removed enum GimpHealAlignMode, we
	use the GimpSourceAlignMode now and can always disable REGISTERED
	in the GUI should it turn out to be really totally pointless.

	* app/paint/Makefile.am
	* app/paint/gimphealoptions.[ch]: removed. Its properties are
	completely covered by GimpSourceOptions.

	* app/paint/gimpheal.[ch]: derive from GimpSourceCore.

	* app/tools/gimphealtool.[ch]: derive from GimpSourceTool.
2006-09-04 15:40:56 +00:00
Sven Neumann 9a75754282 fixed logic for starting the idle swapper 2006-09-04 08:16:33 +00:00
Sven Neumann d1cc52ecbf only run the idle swapper if needed and use a lower priority for the
2006-09-04  Sven Neumann  <sven@gimp.org>

        * app/base/tile-cache.c: only run the idle swapper if needed and
        use a lower priority for the timeout.
2006-09-04 07:22:10 +00:00
Michael Natterer 449621f54d app/tools/Makefile.am new class which is essentially a copy of
2006-09-04  Michael Natterer  <mitch@gimp.org>

	* app/tools/Makefile.am
	* app/tools/gimpsourcetool.[ch]: new class which is essentially a
	copy of GimpCloneTool with s/clone/source/ plus some minor
	modifications.

	* app/tools/gimpclonetool.[ch]: remove almost everything and
	derive from GimpSourceTool.
2006-09-03 23:11:35 +00:00
Michael Natterer 8a3842bde4 removed palette_inport_dialog_show() and palette_import_dialog_destroy()
2006-09-03  Michael Natterer  <mitch@gimp.org>

	* app/dialogs/palette-import-dialog.[ch]: removed
	palette_inport_dialog_show() and palette_import_dialog_destroy()
	and don't remember the created dialog internally. Instead, made
	palette_import_dialog_new() public.

	* app/dialogs/dialogs.c
	* app/dialogs/dialogs-constructors.[ch]: register it with the
	toplevel dialog factory as singleton toplevel.

	* app/actions/palettes-commands.c (palettes_import_cmd_callback):
	use the dialog factory to create the palette import dialog.
2006-09-03 16:39:00 +00:00
Michael Natterer 6a073e6874 added non-property boolean member "use_source" which defalts to TRUE.
2006-09-03  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimpsourceoptions.[ch] (struct GimpSourceOptions): added
	non-property boolean member "use_source" which defalts to TRUE.

	* app/paint/gimpcloneoptions.c: imeplement GObject::notify() and
	set source_options->use_source to TRUE if the clone type is
	GIMP_IMAGE_CLONE.

	* app/paint/gimpsourcecore.h: removed bogus
	gimp_source_core_register() prototype.
2006-09-03 14:38:42 +00:00