Commit graph

10651 commits

Author SHA1 Message Date
Michael Natterer bbbc6375e7 move generating the random axis to the right place.
2008-05-22  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimpbrushcore.c (gimp_brush_core_interpolate): move
	generating the random axis to the right place.


svn path=/trunk/; revision=25766
2008-05-22 20:17:49 +00:00
Michael Natterer d66828c883 replace the pressure-expanded, velocity-expanded and random-expanded
2008-05-22  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimppaintoptions.[ch]: replace the pressure-expanded,
	velocity-expanded and random-expanded properties by a single
	dynamics-expanded property.

	* app/tools/gimppaintoptions-gui.c: pack the toggle matrix into an
	expander, some cleanup.


svn path=/trunk/; revision=25765
2008-05-22 19:06:51 +00:00
Michael Natterer 791638fb15 revert accidential change of all occurences of "hardness" to "pressure" in
2008-05-22  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimppaintoptions-gui.c: revert accidential change of
	all occurences of "hardness" to "pressure" in strings and function
	names.


svn path=/trunk/; revision=25764
2008-05-22 18:54:16 +00:00
Michael Natterer c03253684a factor out a utility function that creates a dynamics check button.
2008-05-22  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimppaintoptions-gui.c: factor out a utility function
	that creates a dynamics check button.


svn path=/trunk/; revision=25763
2008-05-22 18:38:18 +00:00
Michael Natterer 3bcf7ff632 first version of a matrix of toggles for the dynamics parameters instead
2008-05-22  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimppaintoptions-gui.c: first version of a matrix of
	toggles for the dynamics parameters instead of three expanders.


svn path=/trunk/; revision=25762
2008-05-22 18:28:39 +00:00
Martin Nordholts 91cf64359d Base a start of a new segment on the pending point, and enable 15 degree
2008-05-22  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimpfreeselecttool.c: Base a start of a new segment on
	the pending point, and enable 15 degree constraints on the pending
	point when Ctrl is being held down.

svn path=/trunk/; revision=25761
2008-05-22 18:05:10 +00:00
Martin Nordholts 74e037bf80 app/core/gimpcurve-load.c (gimp_curve_load) Remove unused variables.
2008-05-22  Martin Nordholts  <martinn@svn.gnome.org>

	* app/core/gimpcurve-load.c (gimp_curve_load)
	* app/paint/gimppaintbrush.c (_gimp_paintbrush_motion): Remove
	unused variables.

svn path=/trunk/; revision=25760
2008-05-22 17:00:24 +00:00
Martin Nordholts cb13929f5c app/tools/gimpfreeselecttool.[ch] Fix that some
2008-05-22  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimpfreeselecttool.[ch]
	* app/tools/gimpforegroundselecttool.c: Fix that some
	gimp_free_select_tool_-functions had the wrong name.

svn path=/trunk/; revision=25759
2008-05-22 16:58:21 +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 ea80388073 use a logarithmic slider.
2008-05-22  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpposterizetool.c (gimp_posterize_tool_dialog):
	use a logarithmic slider.

svn path=/trunk/; revision=25757
2008-05-22 16:18:57 +00:00
Martin Nordholts 3ba5ecb5eb Remember the selection operation in use when the tool was started, and use
2008-05-22  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimpfreeselecttool.c: Remember the selection operation
	in use when the tool was started, and use that when doing the
	selection. Improvements are still to be made with regards to
	synchronizing the tool options with the selection operation
	actually used.

svn path=/trunk/; revision=25756
2008-05-22 15:40:18 +00:00
Michael Natterer 8004eba247 check if the tool class has the "settings_name" string set to decide
2008-05-22  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpimagemaptool.c: check if the tool class has
	the "settings_name" string set to decide whether to add
	the settings GUI.

	* app/tools/gimpdesaturatetool.c
	* app/tools/gimpposterizetool.c: don't set any settings
	strings. Presets make no sense for tools with just one parameter.


svn path=/trunk/; revision=25755
2008-05-22 15:39:00 +00:00
Sven Neumann 8a62ba6a5d changed order of parameters to be consistent with gimp_drawable_process().
2008-05-22  Sven Neumann  <sven@gimp.org>

	* app/core/gimpdrawable-operation.[ch]
	(gimp_drawable_apply_operation): changed order of parameters to be
	consistent with gimp_drawable_process().

	* app/core/gimpdrawable-process.[ch]: introduced a variant of
	gimp_drawable_process() for processing a GimpLut with
	gimp_lut_process().

	* app/core/gimpdrawable-brightness-contrast.c
	* app/core/gimpdrawable-color-balance.c
	* app/core/gimpdrawable-colorize.c
	* app/core/gimpdrawable-curves.c
	* app/core/gimpdrawable-desaturate.c
	* app/core/gimpdrawable-equalize.c
	* app/core/gimpdrawable-hue-saturation.c
	* app/core/gimpdrawable-invert.c
	* app/core/gimpdrawable-levels.c
	* app/core/gimpdrawable-posterize.c
	* app/core/gimpdrawable-threshold.c: changed accordingly.

svn path=/trunk/; revision=25754
2008-05-22 11:52:02 +00:00
Michael Natterer e3ffcae1bb Fix menu item label.
svn path=/trunk/; revision=25753
2008-05-22 11:25:56 +00:00
Michael Natterer 9f85ee0070 s/save/export/g, s/load/import/g, removed button tooltip members.
2008-05-22  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpimagemaptool.[ch]: s/save/export/g,
	s/load/import/g, removed button tooltip members.

	* app/tools/gimpimagemaptool-settings.[ch]
	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcolorizetool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimpdesaturatetool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpposterizetool.c
	* app/tools/gimpthresholdtool.c: changed accordingly.

	* app/tools/gimpimagemaptool-settings.c: clean up menu item creation.


svn path=/trunk/; revision=25752
2008-05-22 11:00:50 +00:00
Michael Natterer 4aaf1c4737 delete trailing whitespace.
2008-05-22  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpfreeselecttool.c: delete trailing whitespace.


svn path=/trunk/; revision=25751
2008-05-22 10:53:20 +00:00
Sven Neumann b3ac4eadb6 make the mnemonic work
svn path=/trunk/; revision=25750
2008-05-22 09:05:30 +00:00
Sven Neumann 0d6c259be3 added a call to gimp_tool_options_create_folder().
2008-05-22  Sven Neumann  <sven@gimp.org>

	* app/tools/gimp-tools.c (gimp_tools_init): added a call to
	gimp_tool_options_create_folder().

	* app/core/gimp-user-install.c (gimp_user_install_items): no need
	to create the tool-options folder here if we are doing that on
	each startup.

svn path=/trunk/; revision=25749
2008-05-22 09:01:08 +00:00
Sven Neumann e161a6148c use a combo-box for the curve type.
2008-05-22  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcurvestool.c (gimp_curves_tool_dialog): use a
	combo-box for the curve type.

svn path=/trunk/; revision=25748
2008-05-22 08:39:30 +00:00
Sven Neumann a81c227a1a core/gimpdrawable-brightness-contrast.c core/gimpdrawable-color-balance.c
2008-05-22  Sven Neumann  <sven@gimp.org>

	* core/gimpdrawable-brightness-contrast.c
	* core/gimpdrawable-color-balance.c
	* core/gimpdrawable-colorize.c
	* core/gimpdrawable-equalize.c
	* core/gimpdrawable-hue-saturation.c
	* core/gimpdrawable-posterize.c
	* core/gimpdrawable-threshold.c: ported to 
gimp_drawable_process().


svn path=/trunk/; revision=25747
2008-05-22 06:04:01 +00:00
Martin Nordholts 41f102f1ab Don't return in the middle of the function.
2008-05-22  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimpfreeselecttool.c
	(gimp_free_select_tool_cursor_update): Don't return in the middle
	of the function.

svn path=/trunk/; revision=25746
2008-05-22 05:44:28 +00:00
Martin Nordholts 79623b1ade "Draw a rough circle around the object to extract" -> "Rougly outline the
2008-05-21  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimpforegroundselecttool.c
	(gimp_foreground_select_tool_oper_update): "Draw a rough circle
	around the object to extract" -> "Rougly outline the object to
	extract".

svn path=/trunk/; revision=25743
2008-05-21 19:48:02 +00:00
Martin Nordholts 17e98ebccc Don't expose implementation details.
2008-05-21  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimpfreeselecttool.[ch]: Don't expose implementation
	details.

	* app/tools/gimpforegroundselecttool.c
	(gimp_foreground_select_tool_select): Use new
	gimp_free_select_get_points() functions since we don't know
	anything about how the Free Select Tool is implemented any longer.

svn path=/trunk/; revision=25742
2008-05-21 19:36:16 +00:00
Michael Natterer 986ba501f5 app/tools/gimpimagemaptool.[ch] turn the ugly row of favorites options
2008-05-21  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpimagemaptool.[ch]
	* app/tools/gimpimagemaptool-settings.c: turn the ugly row of
	favorites options buttons into a menu that's attached to an arrow
	button right of the favorites combo.


svn path=/trunk/; revision=25741
2008-05-21 19:14:46 +00:00
Michael Natterer 48fbb509a4 remove unused variable.
2008-05-21  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpcurvestool.c: remove unused variable.


svn path=/trunk/; revision=25740
2008-05-21 19:12:49 +00:00
Martin Nordholts 54884aea92 constify the points argument.
2008-05-21  Martin Nordholts  <martinn@svn.gnome.org>

	* app/core/gimpscanconvert.c (gimp_scan_convert_add_polyline):
	constify the points argument.

svn path=/trunk/; revision=25739
2008-05-21 19:11:42 +00:00
Michael Natterer 2a064f55a6 remove PixelProcessorFunc typedef.
2008-05-21  Michael Natterer  <mitch@gimp.org>

	* app/base/pixel-processor.h: remove PixelProcessorFunc typedef.

	* app/base/base-types.h: add it here.

	* app/config/gimpbaseconfig.c: #include "base/base-types.h"

	* app/core/gimpdrawable-curves.c
	* app/core/gimpdrawable-desaturate.c
	* app/core/gimpdrawable-invert.c: remove pixel processor include.

	* app/core/gimpdrawable-levels.c: port to gimp_drawable_process().


svn path=/trunk/; revision=25738
2008-05-21 19:07:26 +00:00
Michael Natterer 7add4e3247 use a stock_id that exists.
2008-05-21  Michael Natterer  <mitch@gimp.org>

	* app/gegl/gimpdesaturateconfig.c: use a stock_id that exists.


svn path=/trunk/; revision=25737
2008-05-21 19:04:56 +00:00
Michael Natterer 3b56173831 add missing include and missing call to gimp_drawable_mask_intersect().
2008-05-21  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdrawable-process.c (gimp_drawable_process): add
	missing include and missing call to gimp_drawable_mask_intersect().


svn path=/trunk/; revision=25736
2008-05-21 18:50:13 +00:00
Martin Nordholts 3842f7cb03 Made the Foreground Select Tool work again.
2008-05-21  Martin Nordholts  <martinn@svn.gnome.org>

	Made the Foreground Select Tool work again.

	* app/tools/gimpforegroundselecttool.c
	(gimp_foreground_select_tool_control): Set tool->display =
	NULL when halting the tool.

	(gimp_foreground_select_tool_button_press): Only activate the
	tool control if it is not active (it might be actived already
	by the Free Select Tool).

	* app/tools/gimpfreeselecttool.c
	(gimp_free_select_tool_commit): Don't _halt explicitly
	here. If a tool implementation wants to halt in this
	situation, let them do that in their
	GimpFreeSelectTool::select() instead.

svn path=/trunk/; revision=25735
2008-05-21 18:23:23 +00:00
Sven Neumann a786d4deab app/core/Makefile.am new file holding code to apply a PixelProcessor to
2008-05-21  Sven Neumann  <sven@gimp.org>

	* app/core/Makefile.am
	* app/core/gimpdrawable-process.[ch]: new file holding code to
	apply a PixelProcessor to the full drawable.

	* app/core/gimpdrawable-desaturate.c
	* app/core/gimpdrawable-invert.c: use the new helper function.

	* app/core/gimpdrawable-desaturate.[ch] 
(gimp_drawable_desaturate):
	take a GimpProgress parameter.

	* tools/pdbgen/pdb/color.pdb: changed accordingly.

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


svn path=/trunk/; revision=25734
2008-05-21 16:45:44 +00:00
Martin Nordholts 97edc3567f Slightly improve one of the status bar messages.
2008-05-21  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimpfreeselecttool.c
	(gimp_free_select_tool_status_update): Slightly improve one of the
	status bar messages.

svn path=/trunk/; revision=25733
2008-05-21 15:39:52 +00:00
Sven Neumann c19b2170ff changed to take a pointer as first argument as all PixelProcessor
2008-05-21  Sven Neumann  <sven@gimp.org>

	* app/base/desaturate.[ch]: changed to take a pointer as first
	argument as all PixelProcessor functions.

	* app/core/gimpdrawable-desaturate.c: changed accordingly.

	* app/tools/gimpdesaturatetool.[ch]: added legacy code path.

svn path=/trunk/; revision=25730
2008-05-21 14:20:15 +00:00
Sven Neumann 9519a1751d fold the three desaturate functions into one
svn path=/trunk/; revision=25729
2008-05-21 13:51:26 +00:00
Sven Neumann 595d54eddf app/base/Makefile.am moved legacy desaturate code here.
2008-05-21  Sven Neumann  <sven@gimp.org>

	* app/base/Makefile.am
	* app/base/desaturate.[ch]: moved legacy desaturate code here.

	* app/core/gimpdrawable-desaturate.c: use the code in app/base.

svn path=/trunk/; revision=25728
2008-05-21 13:34:07 +00:00
Michael Natterer 37ff630992 bail out if there is no config object.
2008-05-21  Michael Natterer  <mitch@gimp.org>

	* app/gegl/gimpoperationdesaturate.c
	(gimp_operation_desaturate_process): bail out if there is no
	config object.


svn path=/trunk/; revision=25727
2008-05-21 13:29:08 +00:00
Sven Neumann e86e003224 Add Desaturate as an image-map tool with live preview (bug #533808):
2008-05-21  Sven Neumann  <sven@gimp.org>

	Add Desaturate as an image-map tool with live preview (bug #533808):

	* app/gegl/Makefile.am
	* app/gegl/gegl-types.h
	* app/gegl/gimpdesaturateconfig.[ch]: added config object for the
	desaturate point filter.
	
	* app/gegl/gimpoperationdesaturate.[ch]: derive from
	GimpOperationPointFilter. Unrolled the inner loop.

	* app/core/gimpdrawable-desaturate.c: changed accordingly.

	* app/tools/Makefile.am
	* app/tools/gimpdesaturatetool.[ch]: added desaturate as an
	imagemap tool. So far only the GEGL code path is implemented.

	* app/tools/gimp-tools.c: register the new tool.

	* app/dialogs/dialogs.c: register the new tool dialog.

	* app/dialogs/Makefile.am
	* app/dialogs/desaturate-dialog.[ch]: removed the desaturate dialog.

	* app/actions/drawable-actions.c
	* app/actions/drawable-commands.[ch]: removed action
	"drawable-desaturate".

	* app/widgets/gimphelp-ids.h: changed help IDs accordingly.

	* menus/image-menu.xml.in: replaced "drawable-desaturate" with
	"tools-desaturate".

	* libgimpwidgets/gimpstock.h: added a define for
	GIMP_STOCK_TOOL_DESATURATE.

svn path=/trunk/; revision=25726
2008-05-21 13:11:06 +00:00
Michael Natterer a921d65df6 app/core/Makefile.am app/core/core-types.h new GimpViewable subclass which
2008-05-20  Michael Natterer  <mitch@gimp.org>

	* app/core/Makefile.am
	* app/core/core-types.h
	* app/core/gimpimagemapconfig.[ch]: new GimpViewable subclass
	which has a "time" property. Sets the object's name to a date
	string if a time != 0 gets set. Has a compare function which first
	sorts the objects with a timestamp in MRU order and then the
	objects without timestamp by name.

	* app/gegl/gimpbrightnesscontrastconfig.[ch]
	* app/gegl/gimpcolorbalanceconfig.[ch]
	* app/gegl/gimpcolorizeconfig.[ch]
	* app/gegl/gimpcurvesconfig.[ch]
	* app/gegl/gimphuesaturationconfig.[ch]
	* app/gegl/gimplevelsconfig.[ch]
	* app/gegl/gimpposterizeconfig.[ch]
	* app/gegl/gimpthresholdconfig.[ch]: derive from GimpImageMapConfig.

	* app/tools/gimpimagemaptool.c: sort the settings container with
	above compare function.

	* app/tools/gimpimagemaptool-settings.c: add utility functions
	for loading and saving the settings container. In the settings
	combo, add a separator between MRU items and favorites.

	* app/Makefile.am: make the thing link.


svn path=/trunk/; revision=25724
2008-05-20 21:41:47 +00:00
Michael Natterer b646fd3d17 don't crash if an object has a NULL name. Move variables to local scopes.
2008-05-20  Michael Natterer  <mitch@gimp.org>

	* app/core/gimplist.c (gimp_list_uniquefy_name): don't crash if an
	object has a NULL name. Move variables to local scopes. Remove
	redundant casts.


svn path=/trunk/; revision=25723
2008-05-20 21:30:40 +00:00
Martin Nordholts 889cc7155a Increase handle size to 12 pixels (the same size as for the Paths Tool).
2008-05-20  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimpfreeselecttool.c: Increase handle size to 12
	pixels (the same size as for the Paths Tool).

svn path=/trunk/; revision=25722
2008-05-20 19:09:41 +00:00
Martin Nordholts 59e3ee1317 Added statusbar help-messages for the Free Select Tool.
2008-05-20  Martin Nordholts  <martinn@svn.gnome.org>

	Added statusbar help-messages for the Free Select Tool.

	* app/tools/gimpfreeselecttool.c
	(gimp_free_select_tool_oper_update): Don't bail out if
	tool->display is NULL, instead modify the underlying logic to deal
	with this.

svn path=/trunk/; revision=25721
2008-05-20 17:06:19 +00:00
Michael Natterer d6e3339f1b remove gimp_image_map_tool_add_recent()...
2008-05-20  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpimagemaptool.c: remove
	gimp_image_map_tool_add_recent()...

	* app/tools/gimpimagemaptool-settings.[ch]: ...and add it here.


svn path=/trunk/; revision=25720
2008-05-20 15:50:49 +00:00
Michael Natterer 38ee606813 unref the new settings object after adding it to the recent container.
2008-05-20  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpimagemaptool.c (gimp_image_map_tool_add_recent):
	unref the new settings object after adding it to the recent
	container.

	* app/tools/gimpimagemaptool-settings.c: add a "Save to Favorites"
	button which pops a string entry dialog and saves the current
	settings to the recent container.


svn path=/trunk/; revision=25719
2008-05-20 15:03:03 +00:00
Michael Natterer 353283b8e8 app/tools/Makefile.am new files containing all the recent settings and
2008-05-20  Michael Natterer  <mitch@gimp.org>

	* app/tools/Makefile.am
	* app/tools/gimpimagemaptool-settings.[ch]: new files containing
	all the recent settings and settings load/save GUI and code.  Got
	rid of shortcut loading/saving using shift+click. Added default
	implementations of ::settings_load() and ::settings_save().
	The GUI is currently horrible, work in progress!

	* app/tools/gimpimagemaptool.c: removed the settings code here.

	* app/tools/gimpcurvestool.c * app/tools/gimplevelstool.c: don't
	pack the load and save buttons, this is done generically for all
	tools now.

	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcolorizetool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimpposterizetool.c
	* app/tools/gimpthresholdtool.c: set the load/save related members
	of GimpImageMapToolClass.


svn path=/trunk/; revision=25718
2008-05-20 14:17:13 +00:00
Sven Neumann 9a63a43566 app/widgets/Makefile.am app/widgets/gimptoggleaction.[ch] added new action
2008-05-20  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/gimptoggleaction.[ch]
	* app/widgets/gimpradioaction.[ch]: added new action types derived
	from GtkToggleAction and GtkRadioAction. These types override the
	"connect_proxy" method to enable tooltips in menus.

	* app/widgets/gimpactiongroup.c: use the new action types.

	* app/actions/dockable-actions.c: added a tooltip for the
	"dockable-lock-tab" action.

svn path=/trunk/; revision=25717
2008-05-20 09:51:04 +00:00
Sven Neumann 115bf7cedd app/tools/gimpbrightnesscontrasttool.c fixed grammar.
2008-05-20  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpbrightnesscontrasttool.c 
	* app/tools/gimplevelstool.c: fixed grammar.


svn path=/trunk/; revision=25716
2008-05-20 06:14:53 +00:00
Sven Neumann 33b5a890cc app/widgets/gimpdockable.[ch] added a "locked" propery to GimpDockable. A
2008-05-19  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpdockable.[ch]
	* app/widgets/gimpdockbook.[ch]: added a "locked" propery to
	GimpDockable. A locked dockable cannot be moved by drag-n-drop.
	Allows users to protect their dockables from accidental changes,
	mainly when working with a tablet.

	* app/widgets/gimpsessioninfo-dockable.[ch]: store the "locked"
	property in the session info.

	* app/actions/dockable-actions.c
	* app/actions/dockable-commands.[ch]: added an action for 
toggling
	the "locked" state.

	* app/widgets/gimphelp-ids.h: new help-id "gimp-dock-tab-lock".

	* menus/dockable-menu.xml.in: show the new menu item.

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


svn path=/trunk/; revision=25715
2008-05-19 21:11:03 +00:00
Michael Natterer 62719d6703 Unabstract image map tool settings load/save a bit before it's turned into
2008-05-19  Michael Natterer  <mitch@gimp.org>

	Unabstract image map tool settings load/save a bit before it's
	turned into generic load/save for all image map tools:

	* app/gegl/gimpcurvesconfig.[ch]
	* app/gegl/gimplevelsconfig.[ch]: add GError** to save_cruft()
	functions.

	* app/tools/gimpimagemaptool.[ch]: add GError to
	::settings_save(), changed "file" parameter of ::settings_load()
	and ::settings_save() to "filename", removed
	gimp_image_map_tool_load_save() utility function and moved the
	code to the settings_load() and settings_save() utility functions.

	* app/tools/gimpcurvestool.c
	* app/tools/gimplevelstool.c: changed accordingly. Open and close
	the settings files here.


svn path=/trunk/; revision=25714
2008-05-19 18:22:01 +00:00
Sven Neumann 0c915afba4 removed unused import.
2008-05-19  Sven Neumann  <sven@gimp.org>

	* app/paint/gimpperspectiveclone.c: removed unused import.

svn path=/trunk/; revision=25710
2008-05-19 13:48:04 +00:00
Sven Neumann e25f8894ae corrected description of gimp-layer-set-show-mask procedure.
2008-05-19  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/pdb/layer.pdb: corrected description of
	gimp-layer-set-show-mask procedure.

	* app/pdb/layer-cmds.c
	* libgimp/gimplayer_pdb.c: regenerated.

svn path=/trunk/; revision=25709
2008-05-19 13:27:29 +00:00
Michael Natterer 1f99342777 set "identity" to TRUE if appropriate.
2008-05-19  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpcurve.c
	(gimp_curve_set_n_points)
	(gimp_curve_set_n_samples): set "identity" to TRUE if appropriate.

	(gimp_curve_calculate): don't set it to TRUE when there are no
	control points.


svn path=/trunk/; revision=25708
2008-05-19 11:08:24 +00:00
Sven Neumann e614d6375e fixed the call to memcpy() in the CURVE_NONE case.
2008-05-19  Sven Neumann  <sven@gimp.org>

	* app/core/gimpcurve-map.c (gimp_curve_map_pixels): fixed the call
	to memcpy() in the CURVE_NONE case.

svn path=/trunk/; revision=25707
2008-05-19 09:02:30 +00:00
Michael Natterer 57a9451c4c implement (de)serializing of the points and samples arrays using
2008-05-18  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpcurve.c: implement (de)serializing of the points
	and samples arrays using GValueArray. Set "identity" to FALSE
	after deserializing.


svn path=/trunk/; revision=25704
2008-05-18 20:07:07 +00:00
Michael Natterer c65b09921a libgimpconfig/gimpconfig-serialize.[ch] add
2008-05-18  Michael Natterer  <mitch@gimp.org>

	* libgimpconfig/gimpconfig-serialize.[ch]
	* libgimpconfig/gimpconfig.def: add
	gimp_config_serialize_property_by_name().

	* app/gegl/gimpcolorbalanceconfig.c
	* app/gegl/gimpcurvesconfig.c
	* app/gegl/gimphuesaturationconfig.c
	* app/gegl/gimplevelsconfig.c: implement serialize() and
	deserialize() and make sure the properties which change when the
	channel/range property changes are handled correctly. Not too
	ugly but it's still a hack...


svn path=/trunk/; revision=25703
2008-05-18 19:13:28 +00:00
Michael Natterer 4d0b4464ac made the lists of recent settings persistent. Note that the settings of
2008-05-18  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpimagemaptool.c: made the lists of recent settings
	persistent. Note that the settings of tools that modify multiple
	channels or ranges are saved incompletely because their settings
	still lack custom serialize() implementations. Work in progress.


svn path=/trunk/; revision=25702
2008-05-18 17:01:48 +00:00
Michael Natterer 173905b1e1 add gimp_tool_info_build_options_filename() which creates a filename under
2008-05-18  Michael Natterer  <mitch@gimp.org>

	* app/core/gimptoolinfo.[ch]: add
	gimp_tool_info_build_options_filename() which creates a filename
	under $GIMPDIR/tool-options/ with an optional suffix.

	* app/core/gimptooloptions.c
	* app/core/gimptoolpresets.c: use it and remove own build_filename()
	functions.


svn path=/trunk/; revision=25701
2008-05-18 15:37:43 +00:00
Michael Natterer 9670b467e2 renamed public function set_dash_pattern() to take_dash_pattern() to
2008-05-18  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpstrokeoptions.[ch]: renamed public function
	set_dash_pattern() to take_dash_pattern() to clarify memory
	management of the passed GArray.

	* app/widgets/gimpdasheditor.c
	* app/widgets/gimpstrokeeditor.c: changed accordingly.


svn path=/trunk/; revision=25700
2008-05-18 15:15:07 +00:00
Michael Natterer fd5e71c4f9 implement the GimpConfig interface and add the code for equal(), reset()
2008-05-18  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpcurve.c: implement the GimpConfig interface and add
	the code for equal(), reset() and copy() from GimpCurvesConfig.

	* app/gegl/gimpcurvesconfig.c: remove the copied code and use
	GimpConfig methods to compare, reset and copy curve objects.


svn path=/trunk/; revision=25699
2008-05-18 14:25:54 +00:00
Michael Natterer 330376d798 clean up last patch.
2008-05-18  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimpbrushcore.c: clean up last patch.


svn path=/trunk/; revision=25698
2008-05-18 13:55:57 +00:00
Martin Nordholts 267462eb62 Applied patch from Alexia Death that makes velocity dynamics controlled
2008-05-18  Martin Nordholts  <martinn@svn.gnome.org>

	Applied patch from Alexia Death that makes velocity dynamics
	controlled scale properly recalculate the brush mask when
	necessary (bug #533618).

	* app/paint/gimpbrushcore.[ch] (gimp_brush_core_scale_mask): A
	change in scale requires a recalculation of the cached brush mask.

svn path=/trunk/; revision=25696
2008-05-18 13:10:23 +00:00
Martin Nordholts b615941210 Merged the Polygon Select Tool capabilities with the Free Select Tool.
2008-05-18  Martin Nordholts  <martinn@svn.gnome.org>

	Merged the Polygon Select Tool capabilities with the Free Select
	Tool. Among the things still to do is improved help texts, more
	suitable graphics, and cursor mangement, but the core
	functionality is in place. Thanks to Alexia Death for initial
	testing. It will also be neccesary to do some work to adapt the
	Foreground Select Tool to the new Free Select Tool implementation.

	Quick instructions on how the tool works:

	 o A click adds a polygonal segment, a drag adds a free-hand
	   segment
	 o Return-key commits, Escape-key cancels, Backspace-key removes
	   last segment
	 o You can grab and move segment vertices
	 o You can cancel both a move, and the creation of a segment

	* app/tools/gimpfreeselecttool.[ch]: More or less
	reimplemented. We keep a sequential array of all the points in the
	polygon (including the free segments), and we have another array
	with point indices that we use to represent the segments. On top
	of this we have a few helper functions that tries to abstract away
	the pretty raw nature of the implementation.

	* app/tools/gimpforegroundselecttool.[ch]: Keep track on its own
	last_coord, and adjust to the new implementation of the Free
	Select Tool. Still needs some work, for example handling that the
	Free Select Tool now resets GimpTool::display.
	(gimp_foreground_select_tool_key_press): Pass on key event to
	parent class when appropriate. (Bails out too early though...)

svn path=/trunk/; revision=25693
2008-05-18 11:39:17 +00:00
Michael Natterer 621415d35a also copy curve->identity.
2008-05-18  Michael Natterer  <mitch@gimp.org>

	* app/gegl/gimpcurvesconfig.c (gimp_curves_config_set_property):
	also copy curve->identity.


svn path=/trunk/; revision=25692
2008-05-18 10:20:10 +00:00
Sven Neumann 48dcf22eab fixed issues with the profiling code.
2008-05-17  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimagemap.c: fixed issues with the profiling code.


svn path=/trunk/; revision=25691
2008-05-17 19:15:49 +00:00
Michael Natterer 228dd93e9d add gimp_image_map_tool_edit_as().
2008-05-17  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpimagemaptool.[ch]: add gimp_image_map_tool_edit_as().

	* app/tools/gimplevelstool.c (levels_to_curves_callback): use it.

	* app/gegl/gimpbrightnesscontrastconfig.[ch]: add
	gimp_brightness_contrast_config_to_levels_config().

	* app/tools/gimpbrightnesscontrasttool.c: implement "Edit as Levels".


svn path=/trunk/; revision=25690
2008-05-17 17:57:39 +00:00
Øyvind Kolås 425c734eea Make the created GEGL graphs have the "dont-cache" property set to avoid
* app/core/gimpdrawable-operation.c:
* app/core/gimpimagemap.c: Make the created GEGL graphs have the
"dont-cache" property set to avoid unneeded caches.

svn path=/trunk/; revision=25689
2008-05-17 15:26:12 +00:00
Michael Natterer 2a38f864f2 add new function gimp_stock_button_new() which creates a button with icon
2008-05-17  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpwidgets-constructors.[ch]: add new function
	gimp_stock_button_new() which creates a button with icon and label
	which is *not* the stock_id's label.

	* app/dialogs/preferences-dialog.c (prefs_button_add)
	* app/tools/gimplevelstool.c (gimp_levels_tool_dialog): use it.


svn path=/trunk/; revision=25688
2008-05-17 14:29:25 +00:00
Michael Natterer a3bde5d64c add help IDs for the stuff in the Windows menu.
2008-05-17  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimphelp-ids.h: add help IDs for the stuff in the
	Windows menu.

	* app/actions/windows-actions.c: use them.


svn path=/trunk/; revision=25687
2008-05-17 14:08:19 +00:00
Michael Natterer 409bdaa30b fix crash (don't dereference dialog after it has been destroyed). Also put
2008-05-17  Michael Natterer  <mitch@gimp.org>

	* app/dialogs/file-save-dialog.c (file_save_dialog_response): fix
	crash (don't dereference dialog after it has been destroyed). Also
	put back code that sets the dialog back to sensitive if it still
	exists.


svn path=/trunk/; revision=25686
2008-05-17 14:07:25 +00:00
Michael Natterer e801795022 app/core/gimpimagefile.c app/tools/gimpaligntool.c
2008-05-17  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimagefile.c
	* app/tools/gimpaligntool.c
	* app/tools/gimpselectiontool.c
	* app/tools/gimpvectortool.c
	* plug-ins/color-rotate/color-rotate-dialog.c
	* plug-ins/common/noise-rgb.c
	* plug-ins/common/value-propagate.c
	* plug-ins/gfig/gfig-dialog.c
	* plug-ins/gfig/gfig.h
	* plug-ins/gimpressionist/general.c
	* plug-ins/gimpressionist/gimpressionist.h
	* plug-ins/gimpressionist/orientation.c
	* plug-ins/gimpressionist/size.c
	* plug-ins/gimpressionist/utils.c
	* plug-ins/gradient-flare/gradient-flare.c
	* plug-ins/ifs-compose/ifs-compose.c
	* plug-ins/imagemap/imap_main.c
	* plug-ins/imagemap/imap_preferences.c: in latest GLib _() returns
	"const gchar*" as it should. Add const qualifiers to local utility
	functions and some explicit casts to fix the warnings caused by
	this.


svn path=/trunk/; revision=25685
2008-05-17 13:08:19 +00:00
Michael Natterer fe395446aa add tooltips to the menu items of open and recently closed docks.
2008-05-17  Michael Natterer  <mitch@gimp.org>

	* app/actions/windows-actions.c: add tooltips to the menu items of
	open and recently closed docks.

	* app/widgets/gimpaction.c: connect to "notify::tooltip" and make
	sure gimp_help_set_help_data() gets called when the action's
	tooltip changes.


svn path=/trunk/; revision=25684
2008-05-17 12:53:07 +00:00
Michael Natterer 18502898f8 applied patch from Lars-Peter Clausen which adds
2008-05-17  Michael Natterer  <mitch@gimp.org>

	* tools/pdbgen/pdb/gradient.pdb: applied patch from Lars-Peter
	Clausen which adds gimp-gradient-get-number-of-segments. Fixes
	bug #533474.

	* app/pdb/gradient-cmds.c
	* app/pdb/internal-procs.c
	* libgimp/gimpgradient_pdb.[ch]: regenerated.

	* libgimp/gimp.def: add the new symbol.


svn path=/trunk/; revision=25683
2008-05-17 09:19:58 +00:00
Sven Neumann 9c0c73d4f1 added some basic benchmarking code. Will become optional but for now it is
2008-05-16  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimagemap.c: added some basic benchmarking code.
	Will become optional but for now it is enabled by default.


svn path=/trunk/; revision=25679
2008-05-16 21:01:24 +00:00
Michael Natterer ebe4406610 formatting.
2008-05-16  Michael Natterer  <mitch@gimp.org>

	* app/Makefile.am: formatting.


svn path=/trunk/; revision=25676
2008-05-16 17:35:19 +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 ab56cfdef5 reverse the list after loading so it keeps its order.
2008-05-16  Michael Natterer  <mitch@gimp.org>

	* app/dialogs/dialogs.c (dialogs_load_recent_docks): reverse the
	list after loading so it keeps its order.

	* app/menus/windows-menu.c (windows_menu_setup)
	(windows_menu_recent_add): keep the recent docks menu in MRU
	order.


svn path=/trunk/; revision=25672
2008-05-16 16:24:24 +00:00
Michael Natterer ff5310a4ea Implement the presistent menu of recently closed docks, still somewhat
2008-05-16  Michael Natterer  <mitch@gimp.org>

	Implement the presistent menu of recently closed docks, still
	somewhat hackish but fully functional. Fixes bug #132744.

	* app/actions/dialogs-actions.c
	* app/actions/dialogs-commands.[ch]
	* menus/image-menu.xml.in: remove the menu items that were
	creating the hardcoded preconfigured docks.

	* app/dialogs/dialogs.[ch]: add GimpContainer of recently closed
	docks and API to load and save it.

	* app/gui/session.c: call the recent dock load and save functions.

	* app/widgets/gimpsessioninfo.[ch]: implement the GimpConfig interface
	and (de)serialize via proper interface methods.

	* app/gui/session.c
	* app/widgets/gimpdialogfactory.c: use the GimpConfig API
	to (de)serialize session infos and added the code that was
	formerly in the info's (de)serialize functions but didn't belong
	there.

	* app/widgets/gimpaction.[ch]: add "max-width-chars" property and
	set it on proxy menu item labels.

	* app/actions/windows-actions.[ch]
	* app/actions/windows-commands.[ch]
	* app/menus/windows-menu.c: add actions and menu of recently
	closed docks and code to restore the dock when the menu items are
	selected. Use above new action property to ensure a minimum
	width of the menu.

	* app/widgets/gimpmenudock.c: use '-' instead of '|' for
	separating notebooks in the window title. Menu items don't like	'|'.

	* app/widgets/gimpdock.c: removed the confirmation dialog when
	closing docks and simply add them to the recent docks container.
	This code is totally misplaced and will move to another file soon.


svn path=/trunk/; revision=25671
2008-05-16 16:06:42 +00:00
Sven Neumann b236aa58ea don't write over the end of the samples array. Someone should review this
2008-05-14  Sven Neumann  <sven@gimp.org>

	* app/core/gimpcurve.c (gimp_curve_plot): don't write over the end
	of the samples array.  Someone should review this code. It looks
	as if the loop could be rewritten in a safer and cleaner way.

svn path=/trunk/; revision=25670
2008-05-14 16:19:33 +00:00
Sven Neumann c1c17203a4 fixed use of uninitialized value.
2008-05-14  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpcurveview.c (gimp_curve_view_motion_notify):
	fixed use of uninitialized value.

svn path=/trunk/; revision=25668
2008-05-14 15:38:43 +00:00
Sven Neumann 80f2a1b1ab relabeled submenu to "Recently Closed Docks".
2008-05-14  Sven Neumann  <sven@gimp.org>

	* app/actions/windows-actions.c (windows_actions): relabeled
	submenu to "Recently Closed Docks".

svn path=/trunk/; revision=25667
2008-05-14 14:52:03 +00:00
Michael Natterer 6d708832fd app/menus/windows-menu.c app/actions/windows-actions.c move the list of
2008-05-14  Michael Natterer  <mitch@gimp.org>

	* app/menus/windows-menu.c
	* app/actions/windows-actions.c
	* menus/image-menu.xml.in: move the list of dockable dialogs and
	the list of recent docks to submenus and keep the list of open
	image windows and docks at the "Windows" menu toplevel. The list
	of recent docks doesn't exist yet, its contents are fake.


svn path=/trunk/; revision=25666
2008-05-14 13:39:24 +00:00
Michael Natterer 8a85b95eb5 also copy curve->identity.
2008-05-14  Michael Natterer  <mitch@gimp.org>

	* app/gegl/gimpcurvesconfig.c (gimp_curves_config_copy): also
	copy curve->identity.


svn path=/trunk/; revision=25665
2008-05-14 10:59:04 +00:00
Sven Neumann 241bd2980f for an opaque buffer, initialize the brush mask with 255 instead of 0.
2008-05-14  Sven Neumann  <sven@gimp.org>

	* app/core/gimpbrushclipboard.c
	(gimp_brush_clipboard_buffer_changed): for an opaque buffer,
	initialize the brush mask with 255 instead of 0.  Fixes bug 
#532886.



svn path=/trunk/; revision=25661
2008-05-14 07:04:41 +00:00
Michael Natterer 9ca46cca70 remove widget member from struct GimpSessionInfoBook. Return the created
2008-05-14  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpsessioninfo-book.[ch]: remove widget member from
	struct GimpSessionInfoBook. Return the created GimpDockbook from
	restore().

	* app/widgets/gimpsessioninfo-dock.c (restore): use the returned
	book instead of the struct member.


svn path=/trunk/; revision=25658
2008-05-14 00:00:41 +00:00
Michael Natterer 5766498fff Made session info serialization independent from widgets so it can be used
2008-05-14  Michael Natterer  <mitch@gimp.org>

	Made session info serialization independent from widgets so it can
	be used on stored dock layouts which are not open:

	* app/widgets/gimpsessioninfo-book.[ch]
	* app/widgets/gimpsessioninfo-dock.[ch]
	* app/widgets/gimpsessioninfo-dockable.[ch]: add from_widget()
	functions which return newly allocated session info structs.
	Changed serialize() functions to take these structs instead of
	widgets. Changed deserialize() functions to return the structs
	instead of appending them to lists in their parent structs. Don't
	free anything in restore().

	* app/widgets/gimpsessioninfo-aux.[ch]
	(gimp_session_info_aux_serialize): take a GList of aux_info
	instead of a widget.

	* app/widgets/gimpsessioninfo.[ch]: add new functions get_info()
	which collects above session info details from dialogs and
	clear_info() which clears that info. Call clear_info() from
	finalize(). Don't free anything in restore().

	* app/widgets/gimpdialogfactory.c
	(gimp_dialog_factories_save_foreach): collect the session info
	detials from the dialogs before serializing because serialize()
	doesn't know about the widget any longer. Clear the infos after
	serializing.

	(gimp_dialog_factories_restore_foreach): clear the session info
	details after creating the dialogs because restore() doesn't clear
	the info by itself any longer.


svn path=/trunk/; revision=25657
2008-05-13 23:43:57 +00:00
Michael Natterer 24a7aa75bd turn "info != NULL" checks into "GIMP_IS_SESSION_INFO (info)".
2008-05-13  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpsessioninfo.c: turn "info != NULL" checks into
	"GIMP_IS_SESSION_INFO (info)".


svn path=/trunk/; revision=25656
2008-05-13 21:29:00 +00:00
Michael Natterer 0b0d0aad78 turn into a GimpObject subclass. No logical changes yet.
2008-05-13  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpsessioninfo.[ch]: turn into a GimpObject
	subclass. No logical changes yet.

	* app/widgets/widgets-types.h
	* app/widgets/gimpdialogfactory.c: changed accordingly.


svn path=/trunk/; revision=25655
2008-05-13 21:17:11 +00:00
Michael Natterer ddf2dca558 First prototype of a button in the levels tool dialog that will jump the
2008-05-13  Michael Natterer  <mitch@gimp.org>

	First prototype of a button in the levels tool dialog that will
	jump the the curves tool with the same settings:

	* app/gegl/gimplevelsconfig.[ch]: add new function
	gimp_levels_config_to_curves_config() which converts a
	GimpLevelsConfig to a GimpCurvesConfig. Still lacks support
	for gamma.

	* app/tools/gimplevelstool.c: add "Edit this Settings as Curves"
	button and jump to curves when clicked. Still ugly.


svn path=/trunk/; revision=25654
2008-05-13 20:52:24 +00:00
Sven Neumann 85cc5d92e5 use memcpy() for the CURVE_NONE case.
2008-05-13  Sven Neumann  <sven@gimp.org>

	* app/core/gimpcurve-map.c (gimp_curve_map_pixels): use memcpy()
	for the CURVE_NONE case.


svn path=/trunk/; revision=25653
2008-05-13 19:42:20 +00:00
Sven Neumann 0ff4081fbf corrected implementation for CURVE_NONE
svn path=/trunk/; revision=25652
2008-05-13 14:44:08 +00:00
Sven Neumann 972cea0d02 cleanup in preparation of adding a SIMD version
svn path=/trunk/; revision=25651
2008-05-13 13:46:46 +00:00
Sven Neumann 517cfe6750 introduced an enum to clean up the code. Optimize another not so uncommon
2008-05-13  Sven Neumann  <sven@gimp.org>

	* app/core/gimpcurve-map.[ch] (gimp_curve_map_pixels): introduced
	an enum to clean up the code. Optimize another not so uncommon case.

svn path=/trunk/; revision=25650
2008-05-13 11:32:38 +00:00
Sven Neumann aba934224e create a bitmask that represents the curves that need to be applied and
2008-05-13  Sven Neumann  <sven@gimp.org>

	* app/core/gimpcurve-map.c (gimp_curve_map_pixels): create a
	bitmask that represents the curves that need to be applied and
	optimize the most common cases.

svn path=/trunk/; revision=25649
2008-05-13 09:39:14 +00:00
Simon Budig b449e38485 add a comment explaining the hack.
2008-05-13  Simon Budig  <simon@gimp.org>

	* app/vectors/vectors-types.h: add a comment explaining the hack.


svn path=/trunk/; revision=25648
2008-05-13 09:18:32 +00:00
Sven Neumann 1a67f2b549 simplified the general case.
2008-05-13  Sven Neumann  <sven@gimp.org>

	* app/core/gimpcurve-map.c (gimp_curve_map_value): simplified 
the
	general case.


svn path=/trunk/; revision=25647
2008-05-13 07:20:23 +00:00
Sven Neumann 06603cb0d4 keep a boolean flag to identify an identity mapping. Set it to TRUE when
2008-05-11  Sven Neumann  <sven@gimp.org>

	* app/core/gimpcurve.[ch]: keep a boolean flag to identify an
	identity mapping. Set it to TRUE when the curve is reset.

	* app/core/gimpcurve-map.c (gimp_curve_map_value): optimize for
	the case where the curve is an identity mapping.


svn path=/trunk/; revision=25646
2008-05-13 07:10:48 +00:00
Simon Budig 80039486aa app/vectors/gimpvectors.[ch] app/vectors/gimpstroke.[ch] Implement
2008-05-12  Simon Budig  <simon@gimp.org>

	* app/vectors/gimpvectors.[ch]
	* app/vectors/gimpstroke.[ch]
	* app/vectors/gimpbezierstroke.c: Implement functionality to
	get a bezier description a la moveto/curveto/closepath.

	* app/vectors/vectors-types.h: implement an evil hack to avoid
	the inclusion of cairo.h in most C files...

	* app/vectors/Makefile.am: link against cairo

	* app/widgets/gimpviewrenderervectors.c: use the new functionality
	for preview rendering.


svn path=/trunk/; revision=25645
2008-05-12 21:47:07 +00:00
Sven Neumann 6e6a0355aa app/core/Makefile.am
2008-05-11  Sven Neumann  <sven@gimp.org>

	* app/core/Makefile.am
	* app/core/gimpcurve.[ch]:
	* app/core/gimpcurve-map.[ch]: split curve map functions into
	seperate files.

	* app/gegl/gimpoperationcurves.c
	* app/tools/gimpcurvestool.c
	* app/widgets/gimpcurveview.c: changed accordingly.

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


svn path=/trunk/; revision=25642
2008-05-11 14:56:57 +00:00
Sven Neumann a392a231d3 renamed gimp_curve_map() to gimp_curve_map_value(). Added new function
2008-05-11  Sven Neumann  <sven@gimp.org>

	* app/core/gimpcurve.[ch]: renamed gimp_curve_map() to
	gimp_curve_map_value(). Added new function 
gimp_curve_map_pixels()
	which will allow for better optimization.

	* app/gegl/gimpoperationcurves.c 
(gimp_operation_curves_process):
	use gimp_curve_map_pixels().

	* app/tools/gimpcurvestool.c
	* app/widgets/gimpcurveview.c: follow API change.


svn path=/trunk/; revision=25641
2008-05-11 14:48:22 +00:00
Martin Nordholts f5c4c35ff8 No need to expose definitions of GimpCropTool or GimpCropToolClass.
2008-05-11  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimpcroptool.[ch]: No need to expose definitions of
	GimpCropTool or GimpCropToolClass.

svn path=/trunk/; revision=25640
2008-05-11 13:23:35 +00:00
Martin Nordholts de8909ddee Fix emission of rectangle-change-complete signals.
2008-05-11  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c: Fix emission of
	rectangle-change-complete signals.

	* app/tools/gimpcroptool.c
	* app/tools/gimprectangleselecttool.c:
	Use the rectangle-change-complete signal to update the default
	aspect ratio. Fixes bug #530519.

	* app/tools/gimpcroptool.c
	(gimp_crop_tool_button_release)
	(gimp_crop_tool_options_notify)
	* app/tools/gimprectangleselecttool.c
	(gimp_rectangle_select_tool_button_release): No need to explicitly
	update option defaults since it is handled through the
	rectangle-change-complete signal now.

svn path=/trunk/; revision=25639
2008-05-11 13:01:24 +00:00
Sven Neumann f7768c3a9a minor cleanup.
2008-05-11  Sven Neumann  <sven@gimp.org>

	* app/core/gimpcurve.[ch] (gimp_curve_map): minor cleanup.


svn path=/trunk/; revision=25638
2008-05-11 12:25:36 +00:00
Sven Neumann 9070d8364a optimized for the case where gamma is 1.0.
2008-05-11  Sven Neumann  <sven@gimp.org>

	* app/gegl/gimpoperationlevels.c (gimp_operation_levels_map):
	optimized for the case where gamma is 1.0.


svn path=/trunk/; revision=25636
2008-05-11 09:51:15 +00:00
Michael Natterer 1e50d79b17 add an "ellipsize" property that is applied to all proxy menu items'
2008-05-11  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpaction.[ch]: add an "ellipsize" property that is
	applied to all proxy menu items' labels.

	* app/actions/windows-actions.c: set the dock actions to
	PANGO_ELLIPSIZE_END because their labels can be insanely long.


svn path=/trunk/; revision=25635
2008-05-11 09:26:17 +00:00
Michael Natterer a0e6800c0d small cleanup.
2008-05-11  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpaction.c (gimp_action_set_proxy): small cleanup.


svn path=/trunk/; revision=25634
2008-05-11 08:55:13 +00:00
Michael Natterer 7d25d6e6bc app/actions/windows-commands.[ch] app/actions/windows-actions.c add
2008-05-11  Michael Natterer  <mitch@gimp.org>

	* app/actions/windows-commands.[ch]
	* app/actions/windows-actions.c
	* app/menus/windows-menu.c: add dynamic actions and menu items for
	all open docks. Present the dock when the menu item is selected.


svn path=/trunk/; revision=25633
2008-05-11 08:15:00 +00:00
Martin Nordholts d933812406 Active the tool control earlier. (gimp_rectangle_tool_synthesize_motion):
2008-05-10  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_button_press): Active the tool control
	earlier.
	(gimp_rectangle_tool_synthesize_motion): Bail out if the tool
	control is active, we don't want to synthesize a motion in this
	case as it emits unwanted rectangle-changed signals.

svn path=/trunk/; revision=25630
2008-05-10 19:19:47 +00:00
Michael Natterer fb904ad1cb add signals "dock-added" and "dock-removed".
2008-05-10  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpdialogfactory.[ch]: add signals "dock-added" and
	"dock-removed".

	(gimp_dialog_factory_add_dialog)
	(gimp_dialog_factory_remove_dialog): emit them when docks get
	added and removed.


svn path=/trunk/; revision=25629
2008-05-10 19:11:18 +00:00
Michael Natterer 88d8cf3c09 renamed the "Create New Dock" submenu to simply "Docks". Its contents are
2008-05-10  Michael Natterer  <mitch@gimp.org>

	* app/actions/windows-actions.c: renamed the "Create New Dock"
	submenu to simply "Docks". Its contents are about ti change soon.

	* menus/image-menu.xml.in: changed accordingly. Added a "Docks"
	placeholder inside and add the "show toolbox" menu item there.


svn path=/trunk/; revision=25628
2008-05-10 19:02:50 +00:00
Michael Natterer 71df1ab46d add boolean "append" property which makes gimp_container_add() append to
2008-05-10  Michael Natterer  <mitch@gimp.org>

	* app/core/gimplist.[ch]: add boolean "append" property which
	makes gimp_container_add() append to the list instead of the
	default prepend.

	* app/core/gimp.c: create the display list with append = TRUE so
	the images menu is in a proper order.


svn path=/trunk/; revision=25627
2008-05-10 18:42:41 +00:00
Michael Natterer 6b0a5d8e5d don't hide the empty images menu, use gimp_image_get_uri() instead of the
2008-05-10  Michael Natterer  <mitch@gimp.org>

	* app/actions/windows-actions.c: don't hide the empty images menu,
	use gimp_image_get_uri() instead of the object's name.


svn path=/trunk/; revision=25626
2008-05-10 18:39:35 +00:00
Michael Natterer 4717f727df fix parameter name.
2008-05-10  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpactiongroup.h: fix parameter name.


svn path=/trunk/; revision=25625
2008-05-10 18:37:46 +00:00
Michael Natterer b1a1da88c5 Start changing the "Dialogs" menu to "Windows", still incomplete.
2008-05-10  Michael Natterer  <mitch@gimp.org>

	Start changing the "Dialogs" menu to "Windows", still incomplete.
	Addresses bug #309707.

	* app/actions/Makefile.am
	* app/actions/windows-actions.[ch]
	* app/actions/windows-commands.[ch]: new files which currently
	hold the "show toolbox" action and callback and new code which
	maintains automatically generated actions for accessing (raising)
	all open images.

	* app/actions/actions.c: register the new "windows" action group.

	* app/actions/dialogs-actions.c
	* app/actions/dialogs-commands.[ch]: remove "show toolbox"
	action and callback and also the action for the "Disalogs" menu.

	* app/menus/Makefile.am
	* app/menus/windows-menu.[ch]: new files which create and destroy
	the menu items for the image window actions.

	* app/menus/menus.c: register the "windows" action group with
	all UI managers that have the "dialogs" action group.

	* app/menus/image-menu.c (image_menu_setup): call
	windows_menu_setup().

	* app/gui/gui.c: s/dialogs_show_toolbox/windows_show_toolbox/g

	* menus/image-menu.xml.in: some minor s/dialogs/windows/
	and add the "Images" submenu.


svn path=/trunk/; revision=25623
2008-05-10 16:21:37 +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
Martin Nordholts e6beb59347 Don't forget updating the default apsect ratio when cancelling a rectangle
2008-05-10  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangleselecttool.c
	(gimp_rectangle_select_tool_cancel): Don't forget updating the
	default apsect ratio when cancelling a rectangle select.

svn path=/trunk/; revision=25619
2008-05-10 12:44:04 +00:00
Sven Neumann 9f582ed6ac rerender the text layer as suggested in bug #532078.
2008-05-10  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptexttool.c (gimp_text_tool_confirm_response):
	rerender the text layer as suggested in bug #532078.
	(gimp_text_tool_confirm_dialog): minor dialog improvements.


svn path=/trunk/; revision=25618
2008-05-10 12:36:06 +00:00
Sven Neumann 93decd4d16 formatting.
2008-05-10  Sven Neumann  <sven@gimp.org>

	* app/core/gimpbrush-scale.c: formatting.


svn path=/trunk/; revision=25615
2008-05-10 12:07:15 +00:00
Sven Neumann 6859c9f642 reset the translation on the cairo context. Resurrects brush emblems which
2008-05-10  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpviewrenderer.c (gimp_view_renderer_real_draw):
	reset the translation on the cairo context. Resurrects brush
	emblems which were drawn in the wrong position.

	* app/widgets/gimpviewrendererbrush.c 
(gimp_view_renderer_brush_draw):
	formatting.


svn path=/trunk/; revision=25614
2008-05-10 11:58:25 +00:00
Martin Nordholts 05320b55ea Don't forget updating the integer representation when reverting the
2008-05-10  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_button_release): Don't forget updating the
	integer representation when reverting the rectangle after
	cancelling a rubber-banding.

svn path=/trunk/; revision=25610
2008-05-10 10:34:03 +00:00
Martin Nordholts a535806b14 Update the tool options after a release; the rectangle might change if a
2008-05-10  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_button_release): Update the tool options
	after a release; the rectangle might change if a rubber-banding is
	cancelled.

svn path=/trunk/; revision=25608
2008-05-10 10:25:23 +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 a37bce0d31 add SHADOW_TILES log domain.
2008-05-10  Michael Natterer  <mitch@gimp.org>

	* app/gimp-log.[ch]: add SHADOW_TILES log domain.

	* app/plug-in/gimpplugin-cleanup.c (gimp_plug_in_cleanup_item):
	turn commented-out g_printerr() into a GIMP_LOG()


svn path=/trunk/; revision=25605
2008-05-10 10:15:49 +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
Martin Nordholts d6db9d5262 Add a GimpRectangleTool::cancel() implementation that updates default
2008-05-10  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimpcroptool.c: Add a GimpRectangleTool::cancel()
	implementation that updates default aspect ratio when cancelling a
	crop.

svn path=/trunk/; revision=25601
2008-05-10 07:34:22 +00:00
Martin Nordholts 0a27fd37fa Keep track of the current image and manage a subscription to
2008-05-09  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimpcroptool.[ch]: Keep track of the current image and
	manage a subscription to "size-changed" so that default aspect
	ratio is properly updated.
	(gimp_crop_tool_execute): No need to explicitly call
	gimp_crop_tool_update_option_defaults() any longer.

svn path=/trunk/; revision=25598
2008-05-09 12:46:28 +00:00
Simon Budig 168935ec10 expose the internal most flexible rendering function. Make use of the
2008-05-09  Simon Budig  <simon@gimp.org>

	* app/core/gimpscanconvert.[ch]: expose the internal most
	flexible rendering function. Make use of the miter limit
	again.


svn path=/trunk/; revision=25597
2008-05-09 11:56:58 +00:00
Simon Budig f65cb91356 kind of resurrect the blending modes, although now implemented as
2008-05-09  Simon Budig  <simon@gimp.org>

	* app/core/gimpscanconvert.[ch]: kind of resurrect the
	blending modes, although now implemented as compositing
	on top of the existing content of a mask.

	* app/tools/gimpforegroundselecttool.c: changed accordingly


svn path=/trunk/; revision=25595
2008-05-09 11:18:44 +00:00
Simon Budig c42cd9449b resurrect dashed strokes.
2008-05-09  Simon Budig  <simon@gimp.org>

	* app/core/gimpscanconvert.c: resurrect dashed strokes.


svn path=/trunk/; revision=25594
2008-05-09 09:10:22 +00:00
Sven Neumann 33b4a5fa51 check for a minimum required cairo version (1.4.14).
2008-05-09  Sven Neumann  <sven@gimp.org>

	* configure.in: check for a minimum required cairo version 
(1.4.14).

	* app/core/gimpscanconvert.c: copied some code from cairo until
	we depend on cairo 1.6.


svn path=/trunk/; revision=25593
2008-05-09 08:05:01 +00:00
Simon Budig 5426c0c10e removed Libart usage, replaced with Cairo. Dashed strokes do not yet work
2008-05-09  Simon Budig  <simon@gimp.org>

	* app/core/gimpscanconvert.[ch]: removed Libart usage,
	  replaced with Cairo. Dashed strokes do not yet work again, will
	  happen tomorrow. Also the blending modes need a second look at.

	  Also removed deprecated API which made it unnecessarily complicated.

	* app/tools/gimpiscissorstool.c: use the current API.

	* app/core/Makefile.am
	* app/Makefile.am
	* configure.in: removed libart dependency, added cairo dependency
	  where necessary.


svn path=/trunk/; revision=25591
2008-05-08 23:35:53 +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 62fdd17b23 added infrastructure to access and set some state information of the
2008-05-08  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpfiledialog.[ch]: added infrastructure to 
access
	and set some state information of the GtkFileChooser.

	* app/dialogs/file-open-dialog.c
	* app/dialogs/file-save-dialog.c: don't keep the file-chooser
	dialogs around. Instead keep the state attached to the Gimp 
object
	(one state for load, one for save dialogs). Closes bug #528811.


svn path=/trunk/; revision=25586
2008-05-08 11:30:54 +00:00
Sven Neumann 7bacfae912 app/widgets/widgets-types.h formatting.
2008-05-08  Sven Neumann  <sven@gimp.org>

	* app/widgets/widgets-types.h 
	* app/widgets/gimpfiledialog.c: formatting.


svn path=/trunk/; revision=25585
2008-05-08 10:44:05 +00:00
Martin Nordholts fc35afe371 Make it feel like a class member function by G_CONNECT_SWAPPED-izing it.
2008-05-07  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimpcroptool.c (gimp_crop_tool_image_changed): Make it
	feel like a class member function by G_CONNECT_SWAPPED-izing it.

svn path=/trunk/; revision=25582
2008-05-07 17:55:39 +00:00
Sven Neumann bfa9eb956e commented out debug message.
2008-05-07  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimpplugin-cleanup.c (gimp_plug_in_cleanup_item):
	commented out debug message.

svn path=/trunk/; revision=25580
2008-05-07 08:05:00 +00:00
Michael Natterer c1b372f9ca split gimp_plug_in_handle_tile_request() into two functions:
2008-05-06  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimpplugin-message.c: split
	gimp_plug_in_handle_tile_request() into two functions:
	gimp_plug_in_handle_tile_put() and gimp_plug_in_handle_tile_get().


svn path=/trunk/; revision=25578
2008-05-06 20:30:51 +00:00
Michael Natterer 7d81b3041c show an error message instead of crashing when a plug-in registers a
2008-05-06  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimpplugin-message.c
	(gimp_plug_in_handle_proc_install): show an error message instead
	of crashing when a plug-in registers a prodecure with a NULL
	argument or return value name. Also introduce two macros which
	make the utf-8 validation of all strings much more readable.


svn path=/trunk/; revision=25577
2008-05-06 20:15:12 +00:00
Michael Natterer 7ba66f8ee3 the second parameter of gimp_drawable_levels_stretch() is now a
2008-05-05  Michael Natterer  <mitch@gimp.org>

	* app/actions/drawable-commands.c
	(drawable_levels_stretch_cmd_callback): the second parameter of
	gimp_drawable_levels_stretch() is now a GimpProgress.


svn path=/trunk/; revision=25570
2008-05-05 19:13:55 +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
Martin Nordholts 032b3998d4 gimptexttool.c
2008-05-02  Martin Nordholts  <martinn@svn.gnome.org>

	* gimptexttool.c
	* gimptexttool.h:
	* gimprectangletool.c
	* gimprectangletool.h
	* gimprectangleselecttool.c: Renamed the "rectangle-changed"
	signal to "rectangle-change-complete" which is much better name
	since the signal is not emited when the rectangle is changed, but
	when the change is complete.

svn path=/trunk/; revision=25557
2008-05-02 09:05:13 +00:00
Martin Nordholts b9987bbfb6 Minor simplification.
2008-05-01  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_active_modifier_key): Minor simplification.

svn path=/trunk/; revision=25555
2008-05-01 19:29:15 +00:00
Martin Nordholts b9aa7f2c67 Align static function prototpyes.
2008-04-30  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimpcroptool.c: Align static function prototpyes.

svn path=/trunk/; revision=25554
2008-04-30 18:55:49 +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 a780a37830 formatting.
2008-04-29  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpwindow.c (gimp_window_key_press_event): 
formatting.


svn path=/trunk/; revision=25548
2008-04-29 08:47:52 +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
João Sebastião de Oliveira Bueno Calligaris 2735b82cbd 2008-04-28 Joao S. O. Bueno
* app/pdb/drawable-transform-cmds.c
        * app/pdb/vectors-cmds.c: regenerated
        * ChangeLog: added missing entry for 2008-04-26 commit changing my name.

svn path=/trunk/; revision=25543
2008-04-28 21:02:29 +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 ada10e7577 applied patch from Michael Deal that fixes use of the overlap option (bug
2008-04-28  Sven Neumann  <sven@gimp.org>

	* app/base/hue-saturation.c (hue_saturation): applied patch from
	Michael Deal that fixes use of the overlap option (bug #527085).


svn path=/trunk/; revision=25539
2008-04-28 14:46:20 +00:00
Michael Natterer 1a264f0989 clean up last commit.
2008-04-26  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpgegltool.c: clean up last commit.


svn path=/trunk/; revision=25535
2008-04-26 12:12:26 +00:00
Øyvind Kolås 9672d0a207 made the GEGL tool only show ops from relevant categories, the list of
* app/tools/gimpgegltool.c: (gimp_get_subtype_classes),
(gimp_gegl_tool_compare_operation_names), (gimp_get_geglopclasses),
(gimp_gegl_tool_dialog): made the GEGL tool only show ops from
relevant categories, the list of relevant categories is hard coded
for now.

svn path=/trunk/; revision=25533
2008-04-26 11:49:25 +00:00
Martin Nordholts 2d2358b47f No need to bail out if there is no display.
2008-04-26  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_options_notify): No need to bail out if there
	is no display.

svn path=/trunk/; revision=25532
2008-04-26 11:14:19 +00:00
Martin Nordholts 5743e21890 Some more simplifications and cleanups.
2008-04-26  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_options_notify): Some more simplifications
	and cleanups.

svn path=/trunk/; revision=25531
2008-04-26 10:54:34 +00:00
Martin Nordholts f2a00b3018 Simplifications and cleanups.
2008-04-26  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_options_notify): Simplifications and
	cleanups.

svn path=/trunk/; revision=25530
2008-04-26 10:38:53 +00:00
Michael Natterer f532e425e0 add g_return_if_fail().
2008-04-25  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimppaintoptions.c (gimp_paint_options_get_jitter):
	add g_return_if_fail().

	* app/paint/gimpheal.c (gimp_heal_motion)
	* app/paint/gimpdodgeburn.c (gimp_dodge_burn_motion): free stuff
	right after it's not used any longer, instead of at the end of the
	function.

	* app/paint/gimppaintbrush.c (_gimp_paintbrush_motion): move a
	statement to improve consistency with other motion() functions.


svn path=/trunk/; revision=25526
2008-04-25 13:39:36 +00:00
Sven Neumann c12e89a032 app/app.c reverted change from 2008-01-31. Use the GEGL option group again
2008-04-25  Sven Neumann  <sven@gimp.org>

	* app/app.c
	* app/gegl/gimp-gegl.c: reverted change from 2008-01-31. Use the
	GEGL option group again now that GEGL provides some commmand-line
	options.

svn path=/trunk/; revision=25524
2008-04-25 11:44:00 +00:00
Michael Natterer 7ee6ebcaaf reorder jitter options stuff to be consistently ordered all over the
2008-04-25  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimppaintoptions.[ch]: reorder jitter options stuff to
	be consistently ordered all over the place.


svn path=/trunk/; revision=25523
2008-04-25 10:52:01 +00:00
Michael Natterer 561ec036b5 app/widgets/gimpdock.c minor cosmetics.
2008-04-25  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpdock.c
	* libgimpwidgets/gimpcellrenderertoggle.c: minor cosmetics.


svn path=/trunk/; revision=25522
2008-04-25 08:53:11 +00:00
Sven Neumann 97861975b1 do not any longer accept middle-mouse-button paste on the toolbox buttons
2008-04-25  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimptoolbox.c: do not any longer accept
	middle-mouse-button paste on the toolbox buttons but use the
	toolbox drop area for that.


svn path=/trunk/; revision=25521
2008-04-25 07:05:48 +00:00
Sven Neumann c42698d65d removed default keyboard shortcut for "dock-close".
2008-04-25  Sven Neumann  <sven@gimp.org>

	* app/actions/dock-actions.c (dock_actions): removed default
	keyboard shortcut for "dock-close".


svn path=/trunk/; revision=25520
2008-04-25 06:08:39 +00:00
Martin Nordholts 947e873793 Do appropriate equal and not-equal comparions for floting point numbers.
2008-04-24  Martin Nordholts  <martinn@svn.gnome.org>

	* app/tools/gimprectangletool.c
	(gimp_rectangle_tool_options_notify): Do appropriate equal and
	not-equal comparions for floting point numbers. Fixes bug #527863.

svn path=/trunk/; revision=25516
2008-04-24 05:55:59 +00:00
Michael Natterer c6cdd13af6 simplify call to window_actions_update() (we already have a local "shell"
2008-04-22  Michael Natterer  <mitch@gimp.org>

	* app/actions/view-actions.c (view_actions_update): simplify call
	to window_actions_update() (we already have a local "shell"
	variable that is NULL when there is no display).


svn path=/trunk/; revision=25514
2008-04-22 16:53:42 +00:00
Michael Natterer 5fea1a5963 add check for the GEGL version.
2008-04-22  Michael Natterer  <mitch@gimp.org>

	* app/sanity.c: add check for the GEGL version.


svn path=/trunk/; revision=25513
2008-04-22 14:15:30 +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 b9ba5072d5 do the actual cleanup in utility functions and reduce
2008-04-21  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimpplugin-cleanup.c: do the actual cleanup in
	utility functions and reduce gimp_plug_in_cleanup() to merely
	iterating the cleanup lists.


svn path=/trunk/; revision=25511
2008-04-21 19:53:10 +00:00
Michael Natterer e5be5664ed Move the shadow tiles from the image to the drawable. Fixes bug #100469.
2008-04-21  Michael Natterer  <mitch@gimp.org>

	Move the shadow tiles from the image to the drawable.
	Fixes bug #100469.

	* app/core/Makefile.am
	* app/core/gimpdrawable-shadow.[ch]: new files implementing
	the shadow tiles.

	* app/core/gimpimage.[ch]: remove the shadow tile manager from the
	GimpImage struct. Remove gimp_image_get_shadow_tiles() and
	_free_shadow_tiles().

	* app/core/gimpdrawable.[ch]: add the shadow tile manager
	here. Remove get_shadow_tiles() and merge_shadow(). Free the
	shadow tiles in finalize and when the drawable gets removed from
	the image.

	* app/core/gimpdrawable-brightness-contrast.c
	* app/core/gimpdrawable-color-balance.c
	* app/core/gimpdrawable-colorize.c
	* app/core/gimpdrawable-curves.c
	* app/core/gimpdrawable-desaturate.c
	* app/core/gimpdrawable-equalize.c
	* app/core/gimpdrawable-hue-saturation.c
	* app/core/gimpdrawable-invert.c
	* app/core/gimpdrawable-levels.c
	* app/core/gimpdrawable-operation.c
	* app/core/gimpdrawable-posterize.c
	* app/core/gimpdrawable-threshold.c
	* app/core/gimpimagemap.c: changed accordingly. Free the shadow tiles
	after using them.

	* app/plug-in/gimpplugin-cleanup.[ch]: add
	gimp_plug_in_cleanup_add_shadow() and _remove_shadow() which keep
	track of whether shadow tiles were created on behalf of a plug-in
	procedure.

	(gimp_plug_in_cleanup): free shadow tiles which were created but
	not destroyed by a plug-in procedure.

	* app/plug-in/gimpplugin-message.c (plug_in_handle_tile_request):
	call gimp_plug_in_cleanup_add_shadow() whenever a plug-in requests
	shadow tiles.

	* tools/pdbgen/pdb/drawable.pdb: use the new drawable shadow
	API. Add new procedure gimp-drawable-free-shadow. Call
	gimp_plug_in_cleaup_remove_shadow() when it gets called.

	* tools/pdbgen/pdb/image.pdb: deprecate gimp-image-free-shadow.
	Calling it has no effect any longer.

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


svn path=/trunk/; revision=25510
2008-04-21 17:20:51 +00:00
Michael Natterer 4c2a0f58ca replaced unused parameter "context" by "progress" and pass the progress on
2008-04-20  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdrawable-levels.[ch]: replaced unused parameter
	"context" by "progress" and pass the progress on internally.
	Factor common code out to gimp_drawable_levels_internal().

	* tools/pdbgen/pdb/color.pdb: pass progress instead of context.

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


svn path=/trunk/; revision=25501
2008-04-20 13:38:13 +00:00
Michael Natterer 15dd7ca20e prototype indentation and minor declatation and function reordering for
2008-04-19  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdata.c: prototype indentation and minor declatation
	and function reordering for the sake of consistency.


svn path=/trunk/; revision=25499
2008-04-19 14:48:50 +00:00
Sven Neumann 83226c8ae5 don't draw the handles on pixel centers, we don't blend between pixel
2008-04-18  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpblendtool.c (gimp_blend_tool_draw): don't draw 
the
	handles on pixel centers, we don't blend between pixel centers.


svn path=/trunk/; revision=25498
2008-04-18 21:05:29 +00:00
Michael Natterer 7aa177fa01 Add some infrastructure that will be used soon:
2008-04-17  Michael Natterer  <mitch@gimp.org>

	Add some infrastructure that will be used soon:

	* app/plug-in/gimppluginprocframe.[ch]: replace "cleanup" list
	by two lists "image_cleanups" and "item_cleanups" and call
	gimp_plug_in_cleanup() if any of them is non-NULL.

	* app/plug-in/gimpplugin-cleanup.c: add private new() and free()
	functions for GimpPlugInCleanupImage structs and add the same
	infrastructure for GimpPlugInCleanupItem structs which are
	currently unused.


svn path=/trunk/; revision=25497
2008-04-17 17:55:04 +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
Sven Neumann 5f613135e6 initialize the units vtable in libgimpbase instead of trying to override
2008-04-16  Sven Neumann  <sven@gimp.org>

	* app/config/test-config.c: initialize the units vtable in
	libgimpbase instead of trying to override symbols from it.
	Fixes bug #528160.

svn path=/trunk/; revision=25491
2008-04-16 10:35:52 +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 9d51e64525 renamed gimp_plug_in_handle_tile_req() to
2008-04-14  Sven Neumann  <sven@gimp.org>

	* app/plug-in/gimpplugin-message.c: renamed
	gimp_plug_in_handle_tile_req() to 
gimp_plug_in_handle_tile_request().


svn path=/trunk/; revision=25488
2008-04-14 17:50:25 +00:00
Michael Natterer 07708f74bd made messages about killed plug-ins due to invalid tile requests more
2008-04-14  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/gimpplugin-message.c (gimp_plug_in_handle_tile_req):
	made messages about killed plug-ins due to invalid tile requests
	more verbose. They are good for debugging only and not translated,
	so more info can't hurt. Also fail (kill the plug-in) if a tile is
	requested that lives on the undo stack.


svn path=/trunk/; revision=25487
2008-04-14 15:01:23 +00:00
Sven Neumann df22da37fd formatting.
2008-04-14  Sven Neumann  <sven@gimp.org>

	* app/tools/gimppolygonselecttool.c: formatting.

svn path=/trunk/; revision=25486
2008-04-14 12:56:25 +00:00
Michael Natterer 3a2cbab0db simplify and fix logic to do the "right" thing. Hard to describe, try
2008-04-14  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimppolygonselecttool.c
	(gimp_polygon_select_tool_button_release): simplify and fix logic
	to do the "right" thing. Hard to describe, try youself ;)


svn path=/trunk/; revision=25485
2008-04-14 12:50:21 +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 9db8d2ef35 formatting.
2008-04-13  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptool.h: formatting.


svn path=/trunk/; revision=25476
2008-04-13 18:04:27 +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 af484e2fe2 minor cosmetics.
2008-04-13  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpiscissorstool.c: minor cosmetics.

	* cursors/gimp-tool-cursors.xcf: add the new SELECT modifier.


svn path=/trunk/; revision=25474
2008-04-13 13:50:01 +00:00
Martin Nordholts a8bbf6b29b Applied modified patch from Daniel Hornung that changes the mouse cursor
2008-04-12  Martin Nordholts  <martinn@svn.gnome.org>

	Applied modified patch from Daniel Hornung that changes the mouse
	cursor to a "clicking will create a selection"-icon when hovering
	the center of a pending Scissors Select Tool selection (bug #493370)

	* app/tools/gimpiscissorstool.c
	(gimp_iscissors_tool_cursor_update): Use the new cursor icon.

	* cursors/modifier-select.png
	* cursors/xbm/modifier-select.xbm
	* cursors/xbm/modifier-select-mask.xbm: New cursor icon.

	* cursors/makefile.msc
	* cursors/Makefile.am 
	* app/widgets/gimpcursor.c
	* app/widgets/widgets-enums.h: Changed accordingly.

svn path=/trunk/; revision=25473
2008-04-12 11:40:52 +00:00
Martin Nordholts 626f2093e8 Applied patch from Mark Locascio that makes the center point of rectangles
2008-04-12  Martin Nordholts  <martinn@svn.gnome.org>

	* app/core/gimpimage-snap.c (gimp_image_snap_rectangle): Applied
	patch from Mark Locascio that makes the center point of rectangles
	snap (bug #527659).

svn path=/trunk/; revision=25471
2008-04-12 05:47:56 +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
Sven Neumann 22205696de tweaked the layout to save a few pixels.
2008-04-11  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptextoptions.c (gimp_text_options_gui): tweaked the
	layout to save a few pixels.

svn path=/trunk/; revision=25467
2008-04-11 15:30:58 +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
Michael Natterer ff492c52a3 implement GimpDocked::set_context() and set the GimpViewRenderers'
2008-04-10  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpcomponenteditor.c: implement
	GimpDocked::set_context() and set the GimpViewRenderers'
	contexts. Unclear how this could have been missed since it
	warned badly about NULL contexts.


svn path=/trunk/; revision=25460
2008-04-10 12:54:35 +00:00
Sven Neumann 35742009be fixed build of test-config.
2008-04-09  Sven Neumann  <sven@gimp.org>

	* app/config/Makefile.am: fixed build of test-config.


svn path=/trunk/; revision=25449
2008-04-09 20:24:43 +00:00
Sven Neumann 48c864acfb removed function name from debug output.
2008-04-09  Sven Neumann  <sven@gimp.org>

	* app/plug-in/plug-in-menu-path.c (plug_in_menu_path_map): 
removed
	function name from debug output.


svn path=/trunk/; revision=25443
2008-04-09 17:10:01 +00:00
Michael Natterer 63e9148785 enable and improve debug output for mapped menu paths.
2008-04-09  Michael Natterer  <mitch@gimp.org>

	* app/plug-in/plug-in-menu-path.c (plug_in_menu_path_map): enable
	and improve debug output for mapped menu paths.


svn path=/trunk/; revision=25437
2008-04-09 15:37:45 +00:00
Sven Neumann b824df9b57 changed descriptions for the GIMP_UNDO_FS_RIGOR and GIMP_UNDO_FS_RELAX
2008-04-09  Sven Neumann  <sven@gimp.org>

	* app/core/core-enums.[ch] (enum GimpUndoType): changed
	descriptions for the GIMP_UNDO_FS_RIGOR and GIMP_UNDO_FS_RELAX
	undo types again.

svn path=/trunk/; revision=25433
2008-04-09 14:42:32 +00:00
Sven Neumann 08a4422c1a disabled the language entry until it works.
2008-04-09  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimptexteditor.c (gimp_text_editor_new): disabled
	the language entry until it works.

svn path=/trunk/; revision=25432
2008-04-09 14:16:45 +00:00
Sven Neumann e198bc4f2b better descriptions for the GIMP_UNDO_FS_RIGOR and GIMP_UNDO_FS_RELAX undo
2008-04-09  Sven Neumann  <sven@gimp.org>

	* app/core/core-enums.[ch] (enum GimpUndoType): better descriptions
	for the GIMP_UNDO_FS_RIGOR and GIMP_UNDO_FS_RELAX undo types.

	* app/core/gimplayer-floating-sel.c: corrected a comment.

svn path=/trunk/; revision=25431
2008-04-09 14:06:28 +00:00
Sven Neumann 1bf5911cfa added mnemnic for "edit-paste-as-new" menu item.
2008-04-09  Sven Neumann  <sven@gimp.org>

	* app/actions/edit-actions.c (edit_actions): added mnemnic for
	"edit-paste-as-new" menu item.

svn path=/trunk/; revision=25429
2008-04-09 11:10:12 +00:00
Michael Natterer e188e22fa7 Really map everything else in "Xtns" to "Filters/Extensions".
svn path=/trunk/; revision=25428
2008-04-09 10:56:56 +00:00
Michael Natterer e173c6facb add "File/New" submenu and an "Acquire" placeholder inside it. Removed
2008-04-09  Michael Natterer  <mitch@gimp.org>

	* menus/image-menu.xml.in: add "File/New" submenu and an "Acquire"
	placeholder inside it. Removed "File/Acquire". Removed the "Xtns"
	menu.

	* app/plug-in/plug-in-menu-path.[ch] (plug_in_menu_path_map):
	add "menu_label" parameter and add support for mapping around
	individual menu items while preserving their translation and
	mnemonics. Add mappings for the known menus from "Xtns" and map
	them to "File/New".

	Map everything else in "Xtns" to "Filters/Extensions".

	* app/plug-in/gimppluginmanager-menu-branch.c
	(gimp_plug_in_manager_add_menu_branch): pass the menu_label so
	menu branches can be mapped with their translation.

	* app/plug-in/gimppluginprocedure.c
	(gimp_plug_in_procedure_add_menu_path): pass NULL because mapping
	menu items which have no submenu makes no sense and is redundant.

	* app/actions/image-actions.c: remove the "Xtns" menu action.

	* app/actions/file-actions.c: add action for the "File/New" menu
	and removed the "File/Acquire" action.

	* app/actions/edit-actions.c: rename "Paste as New" to
	"From Clipboard".

	* menus/image-menu.xml.in: add the "From Clipboard" action to the
	"File/New" menu.


svn path=/trunk/; revision=25427
2008-04-09 10:48:01 +00:00
Sven Neumann 3f2385dcc2 added new methods gimp_container_get_{first,last}_child().
2008-04-09  Sven Neumann  <sven@gimp.org>

	* app/core/gimpcontainer.[ch]: added new methods
	gimp_container_get_{first,last}_child().

	* app/actions/file-actions.c (file_actions_close_all_update)
	* app/dialogs/layer-add-mask-dialog.c (layer_add_mask_dialog_new)
	* app/dialogs/palette-import-dialog.c (palette_import_image_callback)
	* app/gui/gui-vtable.c (gui_get_empty_display): 
	* app/widgets/gimpmenudock.c (gimp_menu_dock_image_changed): use
	the new GimpContainer methods.

	* app/core/gimpundostack.c: use the new GimpContainer methods and
	cleaned up the code.

svn path=/trunk/; revision=25426
2008-04-09 09:50:29 +00:00
Sven Neumann 32d31eeb73 moved Languages to the bottom. Removed separator from the Filters list as
2008-04-09  Sven Neumann  <sven@gimp.org>

	* menus/image-menu.xml.in: moved Languages to the bottom.  Removed
	separator from the Filters list as there was really no rule as to
	what goes above and what goes below.

	* app/actions/plug-in-actions.c: added Filters->Decor submenu.

	* plug-ins/script-fu/script-fu.c (script_fu_extension_init):
	removed registration of redundant menu branches.

svn path=/trunk/; revision=25422
2008-04-09 08:39:24 +00:00
Michael Natterer 5015460bc8 add placeholder "Help/Programming"
2008-04-08  Michael Natterer  <mitch@gimp.org>

	* menus/image-menu.xml.in: add placeholder "Help/Programming"

	* plug-ins/common/plugin-browser.c
	* plug-ins/common/procedure-browser.c: move the plug-in and
	procedure browsers there.

	* menus/image-menu.xml.in: moved the (now by default empty)
	"Extensions" placeholder from "Xtns" to "Filters". Let's see what
	cruft shows up there.

	* app/plug-in/plug-in-menu-path.c: map "Xtns/Extensions" to
	"Filters/Extensions".


svn path=/trunk/; revision=25415
2008-04-08 18:31:56 +00:00
Michael Natterer 3aa63a431f Start getting rid of the "Xtns" menu:
2008-04-08  Michael Natterer  <mitch@gimp.org>

	Start getting rid of the "Xtns" menu:

	* app/actions/dialogs-actions.c (dialogs_toplevel_actions):
	renamed "Module Manager" to "Modules".

	* menus/image-menu.xml.in: move it to "Edit/Preferences" for the
	time being so it doesn't block the removal of the "Xtns" menu.

	Move "Languages" placeholder from "Xtns" to "Filters".

	* app/plug-in/plug-in-menu-path.c (menu_path_mappings): map
	"Xtns/Languages" to "Filters/Languages".


svn path=/trunk/; revision=25414
2008-04-08 18:18:59 +00:00
Michael Natterer 231497046d set GDK_HINT_MIN_SIZE on dialogs which had no previous sessionrc entry.
2008-04-08  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpdialogfactory.c
	(gimp_dialog_factory_set_user_pos): set GDK_HINT_MIN_SIZE on
	dialogs which had no previous sessionrc entry. Fixes the minimum
	size of the very first empty display of a new GIMP installation
	and shouldn't have any ill effects on other windows.


svn path=/trunk/; revision=25409
2008-04-08 08:26:48 +00:00
Sven Neumann a6dd0be4b2 app/composite/gimp-composite-3dnow-test.c
2008-04-07  Sven Neumann  <sven@gimp.org>

	* app/composite/gimp-composite-3dnow-test.c
	* app/composite/gimp-composite-altivec-test.c
	* app/composite/gimp-composite-mmx-test.c
	* app/composite/gimp-composite-sse-test.c
	* app/composite/gimp-composite-sse2-test.c
	* app/composite/gimp-composite-vis-test.c: include <stdlib.h>


svn path=/trunk/; revision=25407
2008-04-07 21:17:25 +00:00
Sven Neumann f1196fd405 added missing file.
2008-04-07  Sven Neumann  <sven@gimp.org>

	* app/gegl/Makefile.am (libappgegl_a_SOURCES): added missing 
file.

	* app/tools/tools-enums.c: regenerated.


svn path=/trunk/; revision=25404
2008-04-07 20:56:03 +00:00
Sven Neumann 959d391bfe tweaked verbose version output.
2008-04-07  Sven Neumann  <sven@gimp.org>

	* app/version.c (gimp_show_library_version): tweaked verbose
	version output.


svn path=/trunk/; revision=25402
2008-04-07 19:33:24 +00:00
Sven Neumann 3f129393cf app/tools/gimptexttool.c removed out 'force-narrow' mode as it is hard to
2008-04-07  Sven Neumann  <sven@gimp.org>

	* app/tools/gimprectangletool.[ch]:
	* app/tools/gimptexttool.c removed out 'force-narrow' mode as it
	is hard to use and just looks broken.


svn path=/trunk/; revision=25399
2008-04-07 18:57:32 +00:00
Sven Neumann b677d882a4 formatting.
2008-04-07  Sven Neumann  <sven@gimp.org>

	* app/tools/gimprectangletool.c: formatting.


svn path=/trunk/; revision=25398
2008-04-07 18:25:18 +00:00
William Skaggs d3a6f7f2a1 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/tools/gimprectangletool.[ch]: add "force_narrow"
	parameter.

	* app/tools/gimptexttool.c: Force rectangle to always
	be narrow, and squash a few bugs.

svn path=/trunk/; revision=25397
2008-04-07 16:32:31 +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 f434da8d7b app/actions/templates-actions.c when creating an image from a template,
2008-04-07  Sven Neumann  <sven@gimp.org>

	* app/actions/templates-actions.c 
	* app/actions/templates-commands.c: when creating an image from a
        template, skip the New Image dialog as suggested in bug #480802.

svn path=/trunk/; revision=25391
2008-04-07 13:38:52 +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 2f8cf53bb1 canonicalize the procedure name and also try compat names.
2008-04-07  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/pdb/procedural_db.pdb (procedural_db_proc_exists):
	canonicalize the procedure name and also try compat names.

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

svn path=/trunk/; revision=25386
2008-04-07 09:12:07 +00:00
Sven Neumann f84b68a4af added new procedure gimp-procedural-db-proc-exists.
2008-04-06  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/pdb/procedural_db.pdb: added new procedure
	gimp-procedural-db-proc-exists.

	* app/pdb/internal-procs.c
	* app/pdb/procedural-db-cmds.c
	* libgimp/gimpproceduraldb_pdb.[ch]: regenerated.

	* libgimp/gimp.def: updated.

	* plug-ins/print/print.c (page_setup): use the new procedure.


svn path=/trunk/; revision=25384
2008-04-06 20:30:59 +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 1ea02d38b3 removed unused include
svn path=/trunk/; revision=25372
2008-04-05 16:57:57 +00:00
Sven Neumann af8f8ed645 corrected fix for bug #511926.
2008-04-05  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpcolormapeditor.c (gimp_colormap_editor_draw):
	corrected fix for bug #511926.


svn path=/trunk/; revision=25371
2008-04-05 16:15:18 +00:00
Michael Natterer b5207f42d0 reorder functions so getters and setters are together, rename fontsize()
2008-04-04  Michael Natterer  <mitch@gimp.org>

	* tools/pdbgen/pdb/text_layer.pdb: reorder functions so getters
	and setters are together, rename fontsize() functions to
	font_size(), fix get_color() implementation.

	* app/pdb/text-layer-cmds.c
	* libgimp/gimptextlayer_pdb.[ch]: regenerated.

	* libgimp/gimp.def: changed accordingly.


svn path=/trunk/; revision=25368
2008-04-04 15:42:50 +00:00
Sven Neumann 5fce4a4da6 added gimp_vectors_new_from_text_layer().
2008-04-04  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/pdb/vectors.pdb: added
	gimp_vectors_new_from_text_layer().

	* app/pdb/internal-procs.c
	* app/pdb/vectors-cmds.c
	* libgimp/gimpvectors_pdb.[ch]: regenerated.

	* libgimp/gimp.def: updated.

svn path=/trunk/; revision=25367
2008-04-04 14:50:42 +00:00
Sven Neumann ca205c10a3 clear the selection as gimp_selection_extract() doesn't do this for us any
2008-04-04  Sven Neumann  <sven@gimp.org>

	* app/core/gimpselection.c (gimp_selection_float): clear the
	selection as gimp_selection_extract() doesn't do this for us any
	longer (see bug #510534).

svn path=/trunk/; revision=25366
2008-04-04 14:31:06 +00:00
Sven Neumann fe66716f48 follow renaming of internal_procs.h.
2008-04-04  Sven Neumann  <sven@gimp.org>

	* app/core/gimp.c: follow renaming of internal_procs.h.

svn path=/trunk/; revision=25363
2008-04-04 11:36:54 +00:00
Sven Neumann ab9a5199eb forgot to move the generated header
svn path=/trunk/; revision=25362
2008-04-04 11:33:00 +00:00
Sven Neumann b5c23c3da9 added missing include.
2008-04-04  Sven Neumann  <sven@gimp.org>

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

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

svn path=/trunk/; revision=25360
2008-04-04 11:18:26 +00:00
Sven Neumann b8e4695941 changed the names of the generated files.
2008-04-04  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/app.pl: changed the names of the generated files.

	* app/pdb/Makefile.am
	* app/pdb/*cmds.c: renamed.

svn path=/trunk/; revision=25359
2008-04-04 11:15:55 +00:00
Sven Neumann ccce5a29a8 cosmetic change in the generated code.
2008-04-04  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/app.pl: cosmetic change in the generated code.

	* app/pdb/*_cmds.c: regenerated.

svn path=/trunk/; revision=25358
2008-04-04 10:58:56 +00:00
Sven Neumann 18b7d42c9a cosmetics.
2008-04-04  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/pdb/plug_in.pdb: cosmetics.

	* app/pdb/plug_in_cmds.c: regenerated.

svn path=/trunk/; revision=25357
2008-04-04 10:53:50 +00:00
Sven Neumann 62e6240b04 added test for floating items.
2008-04-04  Sven Neumann  <sven@gimp.org>

	* app/pdb/gimppdb-utils.[ch]: added test for floating items.

	* tools/pdbgen/pdb/image.pdb: use it to improve error handling.

	* app/pdb/image_cmds.c: regenerated.


svn path=/trunk/; revision=25356
2008-04-04 07:21:27 +00:00
Sven Neumann 472fa72b12 improved error handling.
2008-04-04  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/pdb/image.pdb: improved error handling.

	* app/pdb/image_cmds.c: regenerated.


svn path=/trunk/; revision=25355
2008-04-04 07:11:13 +00:00
Sven Neumann 54e8c482d1 added utility functions to check the image base type.
2008-04-04  Sven Neumann  <sven@gimp.org>

	* app/pdb/gimppdb-utils.[ch]: added utility functions to check 
the
	image base type.

	* tools/pdbgen/pdb/convert.pdb: use it so that we get a proper
	error set on failure.

	* app/pdb/convert_cmds.c: regenerated.


svn path=/trunk/; revision=25354
2008-04-04 06:57:42 +00:00
Sven Neumann 6f2e776871 minor cleanup.
2008-04-04  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimage-convert.[ch]
	(gimp_image_convert_set_dither_matrix): minor cleanup.

	* tools/pdbgen/pdb/convert.pdb: changed accordingly.

	* app/pdb/convert_cmds.c: regenerated.


svn path=/trunk/; revision=25353
2008-04-04 06:29:35 +00:00
Michael Natterer 953a62b63d app/pdb/gimppdb-utils.c GIMP_PDB_CALLING_ERROR and
2008-04-03  Michael Natterer  <mitch@gimp.org>

	* app/pdb/gimppdb-utils.c
	* tools/pdbgen/pdb/text_layer.pdb: GIMP_PDB_CALLING_ERROR and
	GIMP_PDB_EXECUTION_ERROR are not from the GimpPdbErrorCode
	enum. Use GIMP_PDB_INVALID_ARGUMENT instead.

	* app/pdb/text_layer_cmds.c: regenerated.


svn path=/trunk/; revision=25351
2008-04-03 10:01:16 +00:00
Michael Natterer 356d689eef don't accept palettes with more than 256 colors.
2008-04-03  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage-convert.c (gimp_image_convert): don't accept
	palettes with more than 256 colors.

	* tools/pdbgen/pdb/convert.pdb: fail here too for palettes
	with > 256 colors. Fixes bug #525471.

	* app/pdb/convert_cmds.c: regenerated.


svn path=/trunk/; revision=25348
2008-04-03 08:36:44 +00:00
William Skaggs 98e0671a85 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/text/gimptextlayout.c
	* app/tools/gimptexttool.[ch]
	* app/tools/gimprectangletool.[ch]
	* app/tools/gimptextoptions.c: allow resizing of text
	box.  This is work in progress, and needs some tweaks
	and fixes.  See bug #122707.

svn path=/trunk/; revision=25344
2008-04-02 21:32:32 +00:00
Sven Neumann d331fbd356 tools/pdbgen/Makefile.am new text layer PDB API created by Marcus Heese
2008-04-02  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/Makefile.am
	* tools/pdbgen/pdb/text_layer.pdb: new text layer PDB API 
created
	by Marcus Heese (see bug #164539).

	* app/pdb/Makefile.am
	* app/pdb/text_layer_cmds.c: new generated file.

	* libgimp/Makefile.am
	* libgimp/gimptextlayer_pdb.[ch]: new generated files.

	* app/pdb/internal_procs.[ch]
	* libgimp/gimp_pdb.h
	* tools/pdbgen/groups.pl: regenerated.


svn path=/trunk/; revision=25342
2008-04-02 20:53:51 +00:00
Sven Neumann 078a4b64e6 special treatment for gimppdberror.h to get a saner include order.
2008-04-02  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/app.pl: special treatment for gimppdberror.h to 
get
	a saner include order.

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


svn path=/trunk/; revision=25341
2008-04-02 20:50:16 +00:00
Sven Neumann bd1feb95de added gimp_pdb_layer_is_text_layer().
2008-04-02  Sven Neumann  <sven@gimp.org>

	* app/pdb/gimppdb-utils.[ch]: added 
gimp_pdb_layer_is_text_layer().


svn path=/trunk/; revision=25339
2008-04-02 20:35:53 +00:00
Sven Neumann c5143ab82d fixed bug in last commit.
2008-04-02  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/stddefs.pdb: fixed bug in last commit.

	* app/pdb/drawable_cmds.c
	* libgimp/gimpdrawable_pdb.c: regenerated.


svn path=/trunk/; revision=25338
2008-04-02 20:18:07 +00:00
Sven Neumann 52c09fcfeb added shortcut for contributions from Marcus Heese.
2008-04-02  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/stddefs.pdb: added shortcut for contributions 
from 
	Marcus Heese.

	* tools/pdbgen/pdb/drawable.pdb: added 
gimp_drawable_is_text_layer(),
	taken from the patch attached to bug #164539.

	* app/pdb/internal_procs.c
	* app/pdb/drawable_cmds.c
	* libgimp/gimpdrawable_pdb.[ch]: regenerated.

	* libgimp/gimp.def: updated.


svn path=/trunk/; revision=25337
2008-04-02 19:29:17 +00:00
Sven Neumann 842d68b491 removed frame around the mode radio buttons (bug #525747).
2008-04-02  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpperspectiveclonetool.c: removed frame around the
	mode radio buttons (bug #525747).

	* app/tools/gimpdodgeburntool.c: relabelled "Mode" frame to 
"Range".


svn path=/trunk/; revision=25336
2008-04-02 18:53:53 +00:00
Sven Neumann 9d9726e4cd use gimp_pango_layout_set_weight().
2008-04-02  Sven Neumann  <sven@gimp.org>

	* app/gui/splash.c: use	gimp_pango_layout_set_weight().

svn path=/trunk/; revision=25335
2008-04-02 16:39:44 +00:00
Sven Neumann 32640a6c07 don't set a help-id on items in the Open Recent menu.
2008-04-02  Sven Neumann  <sven@gimp.org>

	* app/actions/file-actions.c: don't set a help-id on items in the
	Open Recent menu.

	* app/menus/file-menu.c (file_menu_setup): show a larger thumbnail
	in the tooltips for recently used images.

svn path=/trunk/; revision=25332
2008-04-02 14:11:32 +00:00