Commit Graph

1732 Commits

Author SHA1 Message Date
Bill Skaggs 848307668e added Store/Recall buttons for one-click saving and loading of curves.
2004-06-22  Bill Skaggs  <weskaggs@primate.ucdavis.edu>

	* app/tools/gimpcurvestool.c: added Store/Recall buttons for
	one-click saving and loading of curves.  Should create stock
	labels for them.  Hopefully resolves bug #75558.
2004-06-22 17:17:16 +00:00
Michael Natterer afeaf96dd5 chain up unconditionally now that we draw the brush outline while
2004-06-22  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpclonetool.c (gimp_clone_tool_draw): chain up
	unconditionally now that we draw the brush outline while
	painting. Fixes brush outline artefacts on button_press and
	button_release. Spotted by sjburges.
2004-06-22 15:31:14 +00:00
William Skaggs 8a7e2703dc Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/tools/gimptransformoptions.c: use radio buttons
	for constraint options.  Makes all options visible,
	should resolve bug #68106.
2004-06-22 02:21:13 +00:00
Sven Neumann d97fb0a287 removed the label between the spinbuttons, it looks silly. Converted tabs
2004-06-20  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimphistogrambox.[ch]: removed the label between the
	spinbuttons, it looks silly. Converted tabs to spaces, removed
	trailing whitespace.

	* app/widgets/gimphistogrameditor.c
	* app/tools/gimpthresholdtool.c: changed accordingly.
2004-06-20 22:04:10 +00:00
William Skaggs ca7aac79d1 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/widgets/gimphistogrambox.[ch]:
	* app/tools/gimpthresholdtool.c: Changed the threshold tool dialog
	so that it uses a two-triangle-slider scale of the sort used in the
	levels tool.  Almost all of the changes are actually in the
	histogram-box widget code, which is only used by the threshold
	tool.  Fixes bug #137521.
2004-06-20 20:51:23 +00:00
Bill Skaggs 8ec615926e fixed my fix for bug # 68106, which worked incorrectly for two of the
2004-06-19 Bill Skaggs  <weskaggs@primate.ucdavis.edu>

	* app/tools/gimpscaletool.c: fixed my fix for bug # 68106, which
	worked incorrectly for two of the control points.
2004-06-19 18:40:51 +00:00
William Skaggs 5180d547d0 Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/tools/gimpscaletool.c: changed algorithm for scaling when
	aspect ratio is constrained, to fix strange behavior described
	in bug # 68106.
2004-06-18 23:07:23 +00:00
Philip Lafleur 31fd87873b reverted my fix to bug #144570.
2004-06-18  Philip Lafleur  <plafleur@cvs.gnome.org>

	* app/tools/gimptransformtool.c: reverted my fix to bug #144570.
2004-06-18 10:47:07 +00:00
Philip Lafleur f6c502b40b Fix fuzzy select menu label.
2004-06-18  Philip Lafleur  <plafleur@cvs.gnome.org>

	* app/tools/gimpfuzzyselecttool.c: Fix fuzzy select menu label.
2004-06-18 09:48:44 +00:00
Philip Lafleur 860d29d09c If transforming a path, use the path bounds rather than the mask bounds.
2004-06-18  Philip Lafleur  <plafleur@cvs.gnome.org>

	* app/tools/gimptransformtool.c (gimp_transform_tool_bounds):
	If transforming a path, use the path bounds rather than the mask
	bounds. Fixes bug #144570.
2004-06-18 05:47:44 +00:00
Philip Lafleur d1e706484c Force aspect ratio to match selection when 'From Selection' is clicked.
2004-06-15  Philip Lafleur  <plafleur@cvs.gnome.org>

	* app/tools/gimpcroptool.c (crop_selection_callback): Force
	aspect ratio to match selection when 'From Selection' is clicked.
	Fixes bug #144361. Also converted tabs to spaces.
2004-06-15 15:30:36 +00:00
Michael Natterer 587e070ff4 removed PRETRACE_PAINT and POSTTRACE_PAINT from the GimpPaintCoreState
2004-06-14  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimppaintcore.[ch]: removed PRETRACE_PAINT and
	POSTTRACE_PAINT from the GimpPaintCoreState enum. Removed
	"gboolean traces_on_window" from GimpPaintCoreClass.

	* app/paint/gimpclone.[ch]
	* app/paint/gimpink.c
	* app/tools/gimpclonetool.c: changed accordingly.

	* app/tools/gimppainttool.c: ditto. Show the brush outline
	while painting. Fixes bug #118348.
2004-06-14 15:26:29 +00:00
Michael Natterer 4b9a4db275 use gimp_draw_tool_is_active() instead of
2004-06-14  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimptransformtool.c: use gimp_draw_tool_is_active()
	instead of GIMP_IS_DISPLAY(draw_tool->gdisp).
2004-06-14 15:13:37 +00:00
Philip Lafleur 905b0e031e Disable preview in corrective mode, and notify preview when switching
2004-06-14  Philip Lafleur  <plafleur@cvs.gnome.org>

	* app/tools/gimptransformtool.c: Disable preview in corrective
	mode, and notify preview when switching transform type and
	direction.
2004-06-14 13:21:29 +00:00
Michael Natterer 3e2690832c added new virtual function GimpPaintCore::post_paint() and call it after
2004-06-14  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimppaintcore.[ch]: added new virtual function
	GimpPaintCore::post_paint() and call it after calling
	GimpPaintCore::paint().

	* app/paint/gimpbrushcore.[ch]: renamed brush_core->grr_brush
	to brush_core->main_brush and reset brush_core->brush
	to brush_core->main_brush in GimpPaintCore::post_paint().

	* app/paint/gimpbrushcore.c
	* app/paint/gimppaintcore-stroke.c
	* app/tools/gimppainttool.c: removed all code which restores
	the brush_core's old brush after painting since post_paint()
	does this automatically now.

	* app/paint/gimpclone.[ch]: moved static variables to the
	GimpClone struct.
2004-06-14 12:52:33 +00:00
Philip Lafleur 4ad2d7177f Preview is now only used for layer transformations.
2004-06-14  Philip Lafleur  <plafleur@cvs.gnome.org>

	* app/tools/gimptransformtool.c: Preview is now only used for
	layer transformations.
2004-06-14 11:45:45 +00:00
Michael Natterer 4c68bd878a app/tools/gimpperspectivetool.c app/tools/gimprotatetool.c
2004-06-14  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpperspectivetool.c
	* app/tools/gimprotatetool.c
	* app/tools/gimpscaletool.c
	* app/tools/gimpsheartool.c: removed calls to
	gimp_transform_tool_expose_preview() from all
	GimpTransformTool::motion() implementations...

	* app/tools/gimptransformtool.c: ...and call it after calling
	tr_tool_class->preview().
2004-06-14 10:48:00 +00:00
Michael Natterer 1082ee6b94 remember the last used GimpCursorFormat so changing the format in prefs
2004-06-14  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell.[ch]: remember the last used
	GimpCursorFormat so changing the format in prefs applies
	instantly, and not after the next tool change.

	* app/display/gimpdisplayshell-cursor.[ch]
	* app/tools/gimptool.[ch]
	* app/tools/gimptoolcontrol.[ch]
	* app/tools/gimpclonetool.c
	* app/tools/gimpcolortool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimpiscissorstool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimpmovetool.c
	* app/tools/gimptransformtool.c: s/GdkCursorType/GimpCursorType/g
2004-06-14 10:19:39 +00:00
Philip Lafleur 71b4d89167 Preview wasn't being turned off before performing a transformation. Also
2004-06-14  Philip Lafleur  <plafleur@cvs.gnome.org>

	* app/tools/gimptransformtool.c (gimp_transform_tool_doit): Preview
	wasn't being turned off before performing a transformation. Also
	converted tabs to spaces.
2004-06-14 09:06:28 +00:00
Simon Budig a3936388bc Minor tweaks to two macros. Shouldn't change anything.
2004-06-13  Simon Budig  <simon@gimp.org>

	* app/tools/gimpiscissorstool.c: Minor tweaks to two macros.
	Shouldn't change anything.
2004-06-13 12:48:40 +00:00
Michael Natterer 2498adc5f6 added enum GimpCursorFormat which can be one of { BITMAP, PIXBUF,
2004-06-13  Michael Natterer  <mitch@gimp.org>

	* app/widgets/widgets-enums.[ch]: added enum GimpCursorFormat
	which can be one of { BITMAP, PIXBUF, PIXBUF-PREMULTIPLY } to
	work around broken X servers.

	* app/config/gimpguiconfig.[ch]
	* app/config/gimprc-blurbs.h: added GimpGuiConfig::cursor-format.

	* app/gui/preferences-dialog.c: added a GUI for the new option.

	* app/widgets/gimpcursor.[ch]: added cursor_format parameter
	to gimp_cursor_new() and _set().

	* app/display/gimpdisplayshell-cursor.c
	* app/tools/gimpcurvestool.c
	* app/widgets/gimpdialogfactory.c: pass an appropriate cursor_mode.
2004-06-13 02:08:54 +00:00
Philip Lafleur afb3f5c16c Fixed incorrect logic that caused perfect-but-slow pointer tracking to be
2004-06-12  Philip Lafleur  <plafleur@cvs.gnome.org>

	* app/display/gimpdisplayshell-callbacks.c: Fixed incorrect logic that
	caused perfect-but-slow pointer tracking to be used in tools that
	don't request exact mode.

	* app/display/Makefile.am:
	* app/display/gimpdisplayshell-appearance.[ch]:
	* app/display/gimpdisplayshell-callbacks.c:
	* app/display/gimpdisplayshell.[ch]:
	* app/display/gimpdisplayshell-preview.[ch]: added
	* app/tools/gimpperspectivetool.c:
	* app/tools/gimprotatetool.c:
	* app/tools/gimpscaletool.c:
	* app/tools/gimpsheartool.c:
	* app/tools/gimptransformoptions.[ch]:
	* app/tools/gimptransformtool.[ch]: Implemented live transformation
	previews, available through tool options. Fixes bug #108172.
2004-06-13 01:37:29 +00:00
Simon Budig d76b2183aa Make Enter/Return apply the transformation, Backspace/Delete resets the
2004-06-12  Simon Budig  <simon@gimp.org>

	* app/tools/gimptransformtool.c: Make Enter/Return apply the
	transformation, Backspace/Delete resets the transformation.

	* app/tools/gimpcroptool.c: Simplify the key_press callback.
2004-06-12 20:10:40 +00:00
Simon Budig 3fe1753e1a Make the Enter/Return key do the crop action.
2004-06-12  Simon Budig  <simon@gimp.org>

	* app/tools/gimpcroptool.c: Make the Enter/Return key do
	the crop action.

	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpvectortool.c: Make the _key_press functions
	safe for non-arrow keys.
2004-06-12 19:29:50 +00:00
Simon Budig 3c1b7fe68f renamed the "arrow_key" member to "key_press", since it is now no longer
2004-06-12  Simon Budig  <simon@gimp.org>

	* app/tools/gimptool.[ch]: renamed the "arrow_key" member
	to "key_press", since it is now no longer about just the arrow
	keys.

	* app/tools/gimpcroptool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpeditselectiontool.h
	* app/tools/gimpmovetool.c
	* app/tools/gimppainttool.c
	* app/tools/gimpselectiontool.c
	* app/tools/gimptexttool.c
	* app/tools/gimpvectortool.c
	* app/tools/tool_manager.c: Changed accordingly.
2004-06-12 18:41:52 +00:00
Simon Budig 39614b34a6 renamed tool_manager_arrow_key_active to tool_manager_key_press_active.
2004-06-12  Simon Budig  <simon@gimp.org>

	* app/tools/tool_manager.[ch]: renamed
	tool_manager_arrow_key_active to tool_manager_key_press_active.

	* app/display/gimpdisplayshell-callbacks.c: Also dispatch
	GDK_Return/KP_Enter/BackSpace/Delete to the tools "arrow_key"
	member of GimpTool probably should be renamed.

	* app/tools/gimpvectortool.c: Use Enter/Return to convert the
	current path to a selection, use Backspace/Delete to delete the
	currently active anchors in a path.

	Implemented on Jimmacs request - thanks for being a great host  :)
2004-06-12 18:03:48 +00:00
Philip Lafleur 234cb4c61c renamed all "pressure-pressure" variables to "pressure-hardness".
2004-06-12  Philip Lafleur  <plafleur@cvs.gnome.org>

	* app/paint/gimppaintoptions.[ch]: renamed all "pressure-pressure"
	variables to "pressure-hardness".

	* app/paint/gimpairbrush.c:
	* app/tools/gimppaintoptions-gui.c: changed accordingly.
2004-06-12 12:44:24 +00:00
Sven Neumann beae166d54 no need request GIMP_MOTION_MODE_EXACT here since the parent class does
2004-06-09  Sven Neumann  <sven@gimp.org>

	* app/tools/gimppenciltool.c (gimp_pencil_tool_init): no need
	request GIMP_MOTION_MODE_EXACT here since the parent class does
	that already.

	* app/tools/gimpinktool.c (gimp_ink_tool_init): ditto. Enable the
	color picker feature for the ink tool.
2004-06-09 12:14:55 +00:00
Michael Natterer 714d63fcda cursors/Makefile.am cursors/cursor-none.png new empty cursor images.
2004-06-05  Michael Natterer  <mitch@gimp.org>

	* cursors/Makefile.am
	* cursors/cursor-none.png
	* cursors/xbm/cursor-none.xbm: new empty cursor images.

	* app/config/gimpdisplayconfig.[ch]
	* app/config/gimprc-blurbs.h
	* app/widgets/widgets-enums.h
	* app/widgets/gimpcursor.c
	* app/display/gimpdisplayshell-cursor.c
	* app/tools/gimppainttool.[ch]
	* app/tools/gimpinktool.c
	* app/gui/preferences-dialog.c: applied patches from Philip
	Lafleur which implement hiding the cursor completely for paint
	tools. Changed the name of the config option from
	"hide-paint-tool-cursor" to "show-paint-tool-cursor" and default
	to TRUE because this needs the brush outline being visible while
	painting to be really usable. Fixes bug #132163.

	* app/widgets/widgets-enums.h: renamed all GimpCursorType and
	GimpToolCursorType enum values to GIMP_CURSOR_* and
	GIMP_TOOL_CURSOR_*.

	* app/widgets/gimpcursor.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-cursor.c
	* app/tools/gimp*tool.c; changed accordingly.
2004-06-04 23:08:29 +00:00
Sven Neumann de1ed0a379 allow to move a text layer using the cursor keys.
2004-06-04  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptexttool.c (gimp_text_tool_class_init): allow to
	move a text layer using the cursor keys.
2004-06-04 17:51:32 +00:00
Sven Neumann 62b59db976 app/display/gimpdisplayshell-scale.c app/gui/info-window.c
2004-06-02  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-scale.c
	* app/gui/info-window.c
	* app/gui/preferences-dialog.c
	* app/gui/resize-dialog.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpthresholdtool.c
	* app/widgets/gimpdockable.c
	* app/widgets/gimpfiledialog.c
	* app/widgets/gimpgradienteditor.c
	* app/widgets/gimphistogrambox.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimpstrokeeditor.c: tweaked some spacings for
	consistency and better HIG compliance.
2004-06-02 17:56:02 +00:00
Sven Neumann c509204b7d tools/pdbgen/pdb/image.pdb app/pdb/image_cmds.c reverted changes I did to
2004-06-01  Sven Neumann  <sven@gimp.org>

	* tools/pdbgen/pdb/image.pdb
	* app/pdb/image_cmds.c
	* app/core/gimpimage.[ch]: reverted changes I did to the image
	unit earlier. As in 2.0, it will continue to not accept pixels.
	This makes the PDB API and the XCF format compatible again and
	fixes bug #142961 (and to some extent bug #137704).

	* app/core/Makefile.am
	* app/core/gimpimage-unit.[ch]: removed these files. The
	convenience accessors defined here aren't commonly used any
	longer.

	* app/display/gimpdisplay.[ch]
	* app/display/gimpdisplayshell.[ch]: added a unit parameter to
	gimp_display_new(). Made "unit" and "scale" properties of
	GimpDisplayShell.

	* app/actions/image-commands.c
	* app/actions/images-commands.c
	* app/actions/layers-commands.c
	* app/actions/select-commands.c
	* app/actions/view-commands.c
	* app/core/gimp-edit.c
	* app/core/gimp.[ch]
	* app/core/gimptemplate.c
	* app/display/gimpdisplayshell-handlers.c
	* app/display/gimpdisplayshell-scale.c
	* app/display/gimpdisplayshell-title.c
	* app/display/gimpstatusbar.c
	* app/file/file-open.c
	* app/gui/gui-vtable.c
	* app/gui/info-window.c
	* app/gui/offset-dialog.c
	* app/gui/resize-dialog.[ch]
	* app/pdb/display_cmds.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimppainttool.c
	* app/tools/gimprectselecttool.c
	* app/tools/gimprotatetool.c
	* app/tools/gimpscaletool.c
	* app/vectors/gimpvectors-export.c
	* app/widgets/gimptoolbox-dnd.c
	* tools/pdbgen/pdb/display.pdb: changed accordingly. Use the
	display unit where the image unit was used before.
2004-06-01 22:04:20 +00:00
Sven Neumann 4c03f0156c app/widgets/Makefile.am app/widgets/widgets-types.h added new widget
2004-05-31  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcontainerentry.[ch]: added new widget
	GimpContainerEntry, a GtkEntry with completion that implements the
	GimpContainerView interface.

	* app/tools/gimptextoptions.c (gimp_text_options_gui): added a
	GimpContainerEntry to select the font.
2004-05-31 17:53:25 +00:00
Sven Neumann e0ebd94ee9 app/paint/gimpconvolve.c app/paint-funcs/paint-funcs.[ch] reverted last
2004-05-31  Sven Neumann  <sven@gimp.org>

	* app/paint/gimpconvolve.c
	* app/paint-funcs/paint-funcs.[ch]
	* app/tools/gimpiscissorstool.c: reverted last change and applied
	new patch instead (bug #72878).
2004-05-31 10:36:06 +00:00
Sven Neumann 727ed840ab app/paint/gimpconvolve.c app/paint-funcs/paint-funcs.[ch] applied a patch
2004-05-31  Sven Neumann  <sven@gimp.org>

	* app/paint/gimpconvolve.c
	* app/paint-funcs/paint-funcs.[ch]
	* app/tools/gimpiscissorstool.c: applied a patch from Philip
	Lafleur that fixes RGBA resampling in Convolve tool (bug #72878).
2004-05-31 07:45:50 +00:00
Michael Natterer afb57d59bf app/paint/gimpbrushcore.c app/paint/gimpdodgeburn.c
2004-05-28  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimpbrushcore.c
	* app/paint/gimpdodgeburn.c
	* app/paint/gimppaintcore.[ch]
	* app/tools/gimpairbrushtool.c
	* app/tools/gimpclonetool.c
	* app/tools/gimpconvolvetool.c
	* app/tools/gimpdodgeburntool.c
	* app/tools/gimpinktool.c
	* app/tools/gimppaintbrushtool.c
	* app/tools/gimppenciltool.c
	* app/tools/gimpsmudgetool.c: code review / cleanup.
2004-05-28 09:34:13 +00:00
Michael Natterer 23cfde41ba removed enum GimpPaintCoreFlags and member GimpPaintCore::flags. Added
2004-05-27  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimppaintcore.[ch]: removed enum GimpPaintCoreFlags
	and member GimpPaintCore::flags. Added "gboolean traces_on_window"
	to GimpPaintCoreClass (defaults to FALSE).

	* app/paint/gimpclone.c: set traces_on_window = TRUE.

	* app/paint/gimpbrushcore.[ch]: added
	"gboolean handles_changing_brush" to GimpBrushCoreClass (defaults
	to FALSE).

	* app/paint/gimpclone.c
	* app/paint/gimpdodgeburn.c
	* app/paint/gimperaser.c
	* app/paint/gimppaintbrush.c
	* app/paint/gimppaintcore.c: set handles_changing_brush = TRUE.

	* app/tools/gimppainttool.c: changed accordingly.
2004-05-27 20:48:49 +00:00
Michael Natterer b9d74b9aa4 added "guint32 time" parameters to GimpPaintCore::paint() and
2004-05-26  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimppaintcore.[ch]: added "guint32 time" parameters
	to GimpPaintCore::paint() and ::interpolate().

	* app/paint/gimpairbrush.c
	* app/paint/gimpbrushcore.c
	* app/paint/gimpclone.c
	* app/paint/gimpconvolve.c
	* app/paint/gimpdodgeburn.c
	* app/paint/gimperaser.c
	* app/paint/gimppaintbrush.c
	* app/paint/gimpsmudge.c: changed accordingly.

	* app/paint/gimpink.c: ditto and use the passed time instead of
	hardcoded dummy values.

	* app/paint/gimppaintcore-stroke.c: pass '0' as time.

	* app/tools/gimppainttool.c: pass the GdkEvent time.
2004-05-26 16:13:53 +00:00
Michael Natterer 5e07ceb851 app/paint/Makefile.am app/paint/gimpink-blob.[ch] app/paint/gimpink.[ch]
2004-05-26  Michael Natterer  <mitch@gimp.org>

	* app/paint/Makefile.am
	* app/paint/gimpink-blob.[ch]
	* app/paint/gimpink.[ch]
	* app/paint/gimpinkoptions.[ch]: new files. Ported the ink tool
	to be a direct GimpPaintCore subclass without any GUI.

	* app/paint/gimp-paint.c: register GimpInk with the list of paint
	cores.

	* app/tools/Makefile.am
	* app/tools/gimpinkoptions.[ch]
	* app/tools/gimpinktool-blob.[ch]: removed these files.

	* app/tools/gimpinkoptions-gui.[ch]: new files containing only
	the GUI for GimpInkOptions.

	* app/tools/gimpinktool.[ch]: reduced to some few lines which
	implement a simple GimpPaintTool subclass.

	* app/tools/gimp-tools.c: associate the GimpInk paint_core with
	the GimpInkTool.
2004-05-26 15:34:45 +00:00
Sven Neumann c0783a91dc app/display/gimpdisplayshell-layer-select.c app/display/gimpprogress.c
2004-05-26  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-layer-select.c
	* app/display/gimpprogress.c
	* app/gui/brush-select.c
	* app/gui/color-notebook.c
	* app/gui/convert-dialog.c
	* app/gui/font-select.c
	* app/gui/gradient-select.c
	* app/gui/info-dialog.c
	* app/gui/offset-dialog.c
	* app/gui/palette-select.c
	* app/gui/pattern-select.c
	* app/gui/stroke-dialog.c
	* app/gui/tips-dialog.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimptexttool.c
	* app/widgets/gimpcolordisplayeditor.c
	* app/widgets/gimpcolorframe.c
	* app/widgets/gimpdevicestatus.c
	* app/widgets/gimpviewabledialog.c: adjusted dialog spacings.
2004-05-26 13:39:23 +00:00
Michael Natterer 552fc7a519 don't do special stuff if a virtual function doesn't exist. Instead, added
2004-05-26  Michael Natterer  <mitch@gimp.org>

	* app/paint/gimppaintcore.c: don't do special stuff if a virtual
	function doesn't exist. Instead, added default implementations
	which do the special stuff and call the virtual functions
	unconditionally.

	* app/tools/gimppainttool.c: some stylistic cleanup.
2004-05-26 12:55:10 +00:00
Michael Natterer 080b503fd0 check if the GimpPaintCore really is a GimpBrushCore before catsting and
2004-05-26  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimppainttool.c (gimp_paint_tool_button_press): check
	if the GimpPaintCore really is a GimpBrushCore before catsting and
	fiddling with internaly.
2004-05-26 08:45:59 +00:00
Michael Natterer 9a41a73de8 app/paint/Makefile.am app/paint/gimpbrushcore-kernels.h new GimpPaintCore
2004-05-25  Michael Natterer  <mitch@gimp.org>

	* app/paint/Makefile.am
	* app/paint/gimpbrushcore-kernels.h
	* app/paint/gimpbrushcore.[ch]: new GimpPaintCore subclass
	containing all the brush painting specific stuff.

	* app/paint/gimppaintcore-kernels.h: removed this file.

	* app/paint/gimppaintcore.[ch]: removed all brush stuff.

	* app/paint/gimpairbrush.c
	* app/paint/gimpclone.[ch]
	* app/paint/gimpconvolve.[ch]
	* app/paint/gimpdodgeburn.[ch]
	* app/paint/gimperaser.[ch]
	* app/paint/gimppaintbrush.[ch]
	* app/paint/gimppencil.c
	* app/paint/gimpsmudge.[ch]: changed accordingly. Derive all
	classes which used to derive directly from GimpPaintCore from
	GimpBrushCore now. Lots of cleanup.

	* app/paint/paint-types.h
	* app/paint/gimp-paint.c
	* app/paint/gimppaintcore-stroke.c
	* app/tools/gimppainttool.c
	* tools/kernelgen.c: changed accordingly.
2004-05-25 20:41:09 +00:00
Michael Natterer 1c62ddef4d Long overdue core container cleanup:
2004-05-24  Michael Natterer  <mitch@gimp.org>

	Long overdue core container cleanup:

	* app/core/gimplist.[ch]: added "unique-names" and "sort-func"
	properties and merged the resp. code from GimpDataList into
	GimpList. Removed "policy" parameters from gimp_list_new() and
	added "unique_names". Added new constructor gimp_list_new_weak().
	Made public function gimp_list_uniquefy_name() private.

	* app/core/Makefile.am
	* app/core/core-types.h
	* app/core/gimpdatalist.[ch]: removed. Its functionality is
	entirely in GimpList now.

	* app/core/gimpdata.[ch]: added gimp_data_name_compare() which
	used to live in GimpDataList.

	* app/core/gimp.c
	* app/core/gimpdatafactory.c
	* app/core/gimpimage.c
	* app/core/gimptoolinfo.c
	* app/core/gimpundostack.c
	* app/paint/gimp-paint.c
	* app/tools/gimp-tools.c
	* app/widgets/gimpdevices.c
	* app/widgets/gimptemplateeditor.c
	* app/widgets/gimpundoeditor.c: changed list creation accordingly.

	Made gimp->templates, gimp->named_buffers, tool_info->presets and
	the image's lists of layers, channels and vectors automatically
	ensure unique names.

	* app/widgets/gimptemplateview.c
	* app/actions/file-commands.c
	* app/actions/templates-commands.c
	* app/actions/tool-options-commands.c: removed calls to
	gimp_list_uniquefy_name().

	* app/core/gimpitem.c: removed major insanity where the items
	themselves where ensuring their unique names. Bah!

	* app/core/gimplayer.c (gimp_layer_name_changed): chain up
	conditionally.

	* app/core/gimplayermask.c (gimp_layer_mask_name_changed): removed
	because there is no need any more to keep the parent
	implementation from being invoked.
2004-05-24 10:49:34 +00:00
Henrik Brix Andersen 58e6a476ab added plug-ins/MapObject/mapobject_apply.c and plug-ins/maze/maze.h. Fixes
2004-05-23 Henrik Brix Andersen <brix@gimp.org>

* po-plugins/POTFILES.in: added plug-ins/MapObject/mapobject_apply.c
and plug-ins/maze/maze.h. Fixes part of bug #142996

* app/config/gimprc-blurbs.h
* plug-ins/gfig/gfig-spiral.c (spiral_button_press)
* plug-ins/gimpressionist/orientation.c (create_orientationpage)
* plug-ins/common/diffraction.c (diffraction_dialog)
* plug-ins/common/bumpmap.c (bumpmap_dialog)
* plug-ins/maze/maze.h
* plug-ins/MapObject/mapobject_apply.c (compute_image)
* app/tools/gimpmeasuretool.c (gimp_measure_tool_dialog_update)
* plug-ins/print/gimp_main_window.c (create_scaling_frame): marked
strings for translation, corrected small typos. Fixes part of bug
#142996
2004-05-23 12:43:13 +00:00
Michael Natterer 6f1f65d514 made the "visible" property serializable.
2004-05-18  Michael Natterer  <mitch@gimp.org>

	* app/core/gimptoolinfo.c: made the "visible" property serializable.

	* app/tools/gimp-tools.c: store the tools' order and visibility
	in a new config file called "toolrc".
2004-05-18 12:23:56 +00:00
Sven Neumann 2dcc7ccdfd fixed position of vertical line indicating the picked color. Patch from
2004-05-15  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcurvestool.c: fixed position of vertical line
	indicating the picked color. Patch from William Skaggs and
	Søren Wedel Nielsen; fixes bug #142506.
2004-05-15 13:11:07 +00:00
Sven Neumann 6750667d87 libgimpwidgets/gimpwidgets.c (gimp_scale_entry_new_internal) left-align
2004-05-12  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/gimpwidgets.c (gimp_scale_entry_new_internal)
	* app/widgets/gimpwidgets-utils.c (gimp_table_attach_stock):
	left-align the label.

	* app/actions/channels-commands.c
	* app/actions/layers-commands.c
	* app/actions/qmask-commands.c
	* app/actions/vectors-commands.c
	* app/display/gimpdisplayshell-scale.c
	* app/gui/brush-select.c
	* app/gui/file-new-dialog.c
	* app/gui/info-dialog.c
	* app/gui/info-window.c
	* app/gui/module-browser.c
	* app/gui/offset-dialog.c
	* app/gui/palette-import-dialog.c
	* app/gui/preferences-dialog.c
	* app/gui/resize-dialog.c
	* app/tools/gimpblendoptions.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimppaintoptions-gui.c
	* app/tools/gimpscaletool.c
	* app/tools/gimpselectionoptions.c
	* app/tools/gimpsheartool.c
	* app/tools/gimptextoptions.c
	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimpgrideditor.c
	* app/widgets/gimphistogrameditor.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimpstrokeeditor.c
	* app/widgets/gimpwidgets-utils.c: left-align labels as suggested
	by the HIG.
2004-05-12 11:37:21 +00:00
Michael Natterer de7a940501 app/config/gimpconfig-deserialize.c app/config/gimpscanner.c
2004-05-12  Michael Natterer  <mitch@gimp.org>

	* app/config/gimpconfig-deserialize.c
	* app/config/gimpscanner.c
	* app/core/gimp-edit.c
	* app/core/gimpchannel-combine.c
	* app/core/gimpcontainer.c
	* app/core/gimpdrawable-bucket-fill.c
	* app/core/gimpdrawable-combine.c
	* app/core/gimpdrawable.c
	* app/core/gimpgradient.c
	* app/core/gimpimage-flip.c
	* app/core/gimpimage-merge.c
	* app/core/gimpimage-projection.c
	* app/core/gimpimage.c
	* app/display/gimpdisplay-handlers.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpprogress.c
	* app/gui/info-dialog.c
	* app/gui/module-browser.c
	* app/gui/offset-dialog.c
	* app/plug-in/plug-in.c
	* app/tools/gimpdrawtool.c
	* app/tools/tool_manager.c
	* app/widgets/gimpactiongroup.c
	* app/widgets/gimpdialogfactory.c
	* app/widgets/gimpgradienteditor.c
	* app/widgets/gimpitemfactory.c
	* app/widgets/gimppropwidgets.c
	* app/widgets/gimpwidgets-utils.c
	* app/xcf/xcf-save.c
	* libgimp/gimpexport.c
	* libgimpwidgets/gimphelpui.c
	* libgimpwidgets/gimppixmap.c
	* libgimpwidgets/gimpunitmenu.c: replaced G_GNUC_FUNCTION,
	G_GNUC_PRETTY_FUNCTION, G_STRLOC and hardcoded function names in
	g_warning()s by G_STRFUNC.
2004-05-12 08:13:33 +00:00
Sven Neumann 486ccb33d7 app/tools/gimpmagnifyoptions.[ch] applied a patch from William Skaggs that
2004-05-10  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpmagnifyoptions.[ch]
	* app/tools/gimpmagnifytool.c: applied a patch from William Skaggs
	that changes a misleading option label. Fixes bug #137508.
2004-05-10 17:02:20 +00:00
Michael Natterer da0de0873f Started making the toolbox configurable. Addresses bug #105764. Not
2004-05-10  Michael Natterer  <mitch@gimp.org>

	Started making the toolbox configurable.
	Addresses bug #105764. Not finished yet.

	* app/core/gimptoolinfo.[ch]: renamed "in_toolbox" to "visible"
	and made it a GObject property.

	* app/tools/gimp-tools.[ch]: added new function
	gimp_tools_get_default_order() which returns a GList of tool
	identifiers.

	* app/actions/tools-actions.c
	* app/actions/tools-commands.[ch]: added actions & callbacks for
	toggling the "visible" boolean and for resetting all tools.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimptoolview.[ch]: new widget which allows to
	toggle a tool's visibility and to reorder the tools.

	* app/widgets/gimptoolbox.[ch]: removed member "GtkWidget *trash"
	and pack all tool buttons into the same wrap box. Connect to
	"reoder" of the tool container and to "notify::visible" of all
	tool infos and update the toolbox accordingly.

	* app/gui/dialogs-constructors.c: create a GimpToolView for the
	tools list/grid.

	* app/menus/menus.c: register a <Tools> menu for the dialog above.

	* menus/Makefile.am
	* menus/tools-menu.xml: added the menu.
2004-05-10 00:41:57 +00:00
Michael Natterer 6bed69024f removed action "select-by-color".
2004-05-05  Michael Natterer  <mitch@gimp.org>

	* app/actions/select-actions.c: removed action "select-by-color".

	* app/tools/gimpbycolorselecttool.c: add the shortcut here.

	* app/actions/tools-actions.c: added alternative tool actions for
	"by-color-select" and "rotate" which are identical to the ones
	generated from the GimpToolInfo except for their label. Make sure
	they have the same accelerators as the generated ones.

	* menus/image-menu.xml.in: use the alternative actions for
	"<Image>/Select/By Color" and
	"<Layer>/Transform/Arbitrary Rotation...".
2004-05-05 01:17:23 +00:00
Sven Neumann 58bcea08cc added construct properties to make it possible to derive from
2004-05-05  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpviewabledialog.c: added construct properties to
	make it possible to derive from GimpViewableDialog.

	* app/widgets/gimptooldialog.[ch]: make GimpToolDialog a real
	object, not just a convenience constructor.

	* themes/Default/gtkrc
	* themes/Small/gtkrc: set a smaller border_width of 6 pixels for
	the action area of tool dialogs.

	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpimagemaptool.c: set a smaller border_width of 6
	pixels on tool dialogs to make them more compact.
2004-05-05 00:01:19 +00:00
Sven Neumann 97dd0a8e65 app/gui/info-dialog.c app/tools/gimpcolorbalancetool.c
2004-05-05  Sven Neumann  <sven@gimp.org>

	* app/gui/info-dialog.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcolorizetool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimpimagemaptool.c
	* app/tools/gimplevelstool.c: use GimpFrame widgets, changed spacings.

	* app/widgets/gimptexteditor.c: tweaked.
2004-05-04 22:33:52 +00:00
Sven Neumann 6fd0eeac65 app/tools/gimpblendoptions.c app/tools/gimpbucketfilloptions.c
2004-05-04  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpblendoptions.c
	* app/tools/gimpbucketfilloptions.c
	* app/tools/gimpcoloroptions.c
	* app/tools/gimpinkoptions.c
	* app/tools/gimppaintoptions-gui.c
	* app/tools/gimpselectionoptions.c
	* app/tools/gimptooloptions-gui.c
	* app/tools/gimptransformoptions.c: use GimpFrames where GtkFrame
	was used. Put "Pressure Sensitivity" frame into a GtkExpander.
2004-05-04 21:11:06 +00:00
Michael Natterer 29e4cf347b Fix bug #141719:
2004-05-04  Michael Natterer  <mitch@gimp.org>

	Fix bug #141719:

	* app/tools/gimpmovetool.c (gimp_move_tool_motion): use RINT()
	instead of ROUND() to round double coords to guide positions.

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_canvas_tool_events): pass RINT()-rounded
	coords to gimp_display_shell_update_cursor() instead of implicitly
	truncating by casting to int.
2004-05-04 13:09:39 +00:00
Michael Natterer c7a7196b56 Treat FG/BG just like all other context properties:
2004-05-04  Michael Natterer  <mitch@gimp.org>

	Treat FG/BG just like all other context properties:

	* app/paint/gimppaintoptions.h: added GIMP_CONTEXT_FOREGROUND_MASK
	and _BACKGROUND_MASK to GIMP_PAINT_OPTIONS_CONTEXT_MASK to specify
	that they are used by GimpPaintOptions (automatically affects all
	paint tools).

	* app/tools/gimpblendtool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpinktool.c: set FOREGROUND_MASK and BACKGROUND_MASK
	manually here.

	* app/tools/tool_manager.c (tool_manager_tool_changed): decide
	about the globality of FG and BG at the same place where we decide
	about the brush's, pattern's etc. globality, but hardcode them to
	global = TRUE instead of looking at GimpConfig.

	Fixes bug #141786.
2004-05-04 11:26:22 +00:00
Pedro Gimeno c8d982c1bf Cleanups. (gimp_rect_select_tool_coords_to_integer): Undo my bogus fix for
2004-04-30  Pedro Gimeno  <pggimeno@wanadoo.es>

	* app/tools/gimprectselecttool.c: Cleanups.
	(gimp_rect_select_tool_coords_to_integer): Undo my bogus fix for
	bug #138103, which led to bug #140649.

	* app/pdb/procedural_db.c (procedural_db_init_procs): Add missing
	compat procs: gimp_channel_ops_duplicate, gimp_channel_ops_offset.
2004-04-30 19:14:37 +00:00
Michael Natterer 2a84015e39 stripped the menu paths from the "menu_path". Will be renamed to
2004-04-29  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimp*tool.c (gimp_*_tool_register): stripped the menu
	paths from the "menu_path". Will be renamed to "action_name" or
	something soon...

	* plug-ins/dbbrowser/dbbrowser.c
	* plug-ins/common/plugindetails.c
	* plug-ins/common/uniteditor.c: register under the new
	"Extensions" placeholder.
2004-04-29 13:19:28 +00:00
Michael Natterer 4654280114 Switch from GtkItemFactory to GtkUIManager. The migration is almost
2004-04-29  Michael Natterer  <mitch@gimp.org>

	Switch from GtkItemFactory to GtkUIManager. The migration is
	almost complete, still stuff missing/incomplete, definitely added
	a bunch of new bugs...

	* app/actions/*-commands.[ch]: converted all callback from
	GtkItemFactory callbacks to GtkAction callbacks.

	* app/actions/debug-actions.c
	* app/actions/gradient-editor-actions.c
	* app/actions/help-actions.c
	* app/actions/plug-in-actions.c
	* app/actions/qmask-actions.c
	* app/actions/tool-options-actions.c: various fixes.

	* app/display/gimpdisplay.[ch]
	* app/display/gimpdisplayshell-appearance.[ch]
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell.[ch]: move everything from
	GtkItemFactory to GtkUIManager.

	* app/gui/dialogs.[ch]: added new function dialogs_get_toolbox().
	Needed because the action callbacks don't have a widget parameter
	and sometimes we need a parent window for showing dialogs.

	* app/gui/Makefile.am
	* app/gui/brushes-menu.[ch]
	* app/gui/buffers-menu.[ch]
	* app/gui/channels-menu.[ch]
	* app/gui/colormap-editor-menu.[ch]
	* app/gui/dialogs-menu.[ch]
	* app/gui/documents-menu.[ch]
	* app/gui/error-console-menu.[ch]
	* app/gui/fonts-menu.[ch]
	* app/gui/gradient-editor-menu.[ch]
	* app/gui/gradients-menu.[ch]
	* app/gui/images-menu.[ch]
	* app/gui/layers-menu.[ch]
	* app/gui/palette-editor-menu.[ch]
	* app/gui/palettes-menu.[ch]
	* app/gui/patterns-menu.[ch]
	* app/gui/qmask-menu.[ch]
	* app/gui/templates-menu.[ch]
	* app/gui/vectors-menu.[ch]: removed these files.

	* app/gui/gui.c: create a global UI manager for the image popup
	menu and the toolbox menubar.

	* app/gui/menus.[ch]: removed all GtkItemFactory code.

	* app/gui/image-menu.[ch]
	* app/gui/toolbox-menu.[ch]: removed everything except the trivial
	setup_funcs.

	* app/gui/file-open-menu.c
	* app/gui/file-save-menu.c
	* app/gui/tool-options-menu.c: don't use the macros from menus.h
	any more, they are gone.

	* app/gui/gui-vtable.c
	* app/gui/plug-in-menus.[ch]: create/destroy the dynamic plug-in
	menu entries.

	* app/tools/gimpimagemaptool.c: s/gimp_item_factory_update/
	gimp_ui_manager_update/g

	* app/widgets/gimpuimanager.[ch]: added API to get an action
	group by name.

	* app/widgets/gimpmenufactory.c: don't choke on the item_factory
	entries being NULL.

	* app/widgets/gimpactiongroup.c: make sure booleans set using
	g_object_set() only have TRUE or FALSE values.

	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimpcomponenteditor.c
	* app/widgets/gimpcontainereditor.[ch]
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainertreeview.c
	* app/widgets/gimpdockable.[ch]
	* app/widgets/gimpdocked.[ch]
	* app/widgets/gimpeditor.[ch]
	* app/widgets/gimperrorconsole.c
	* app/widgets/gimpgradienteditor.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimppaletteeditor.c
	* app/widgets/gimptoolbox.c
	* app/widgets/gimptooloptionseditor.c: removed all GtkItemFactory
	code and enable the #if 0'ed UI manager stuff.

	* menus/gradient-editor-menu.xml: fixed typos.

	* menus/image-menu.xml: duplicate everything so we have both
	an image menubar and an image popup menu. Badly cries for an
	XSL processor.

	* menus/toolbox-menu.xml: added an "Extensions" placeholder.
2004-04-29 12:52:29 +00:00
Michael Natterer 62dcfaecbf app/actions/qmask-actions.c prepared qmask_actions_update() and the qmask
2004-04-21  Michael Natterer  <mitch@gimp.org>

	* app/actions/qmask-actions.c
	* app/actions/qmask-commands.c: prepared qmask_actions_update()
	and the qmask callbacks to be merged into the image ui manager.

	* app/actions/dialogs-actions.c
	* app/actions/edit-actions.c
	* app/actions/file-actions.c
	* app/actions/image-actions.c
	* app/actions/layers-actions.c
	* app/actions/plug-in-actions.c
	* app/actions/tools-actions.c
	* app/actions/view-actions.c: fixed lots of typos and buglets
	spotted in my first test run.

	* app/gui/menus.c: register the needed action groups with the
	<Image> menu.

	* app/tools/gimp-tools.c
	* app/tools/gimpdodgeburntool.[ch]
	* app/tools/gimppaintoptions-gui.c: s/dodgeburn/dodge_burn/g.

	* app/widgets/gimpactionfactory.c
	* app/widgets/gimpmenufactory.[ch]: s/G_GNUC_FUNCTION/G_STRFUNC/g,
	updated copyright header.

	* menus/image-menu.xml: fixed typos and added the "Filters"
	submenus.
2004-04-21 10:55:45 +00:00
Sven Neumann 5766718d6f libgimpwidgets/Makefile.am libgimpwidgets/gimpwidgets.h
2004-04-20  Sven Neumann  <sven@gimp.org>

	* libgimpwidgets/Makefile.am
	* libgimpwidgets/gimpwidgets.h
	* libgimpwidgets/gimpwidgetstypes.h
	* libgimpwidgets/gimpintstore.[ch]: added a GimpIntStore, derived
	from GtkListStore, to be used by GimpIntComboBox and also by the
	image and drawable menus.

	* libgimpwidgets/gimpintcombobox.c: use the new GimpIntStore.

	* app/widgets/gimpenumstore.[ch]: derive from GimpIntStore,
	removed API that is provided by the parent class.

	* app/widgets/gimpenumcombobox.[ch]: derive from GimpIntComboBox,
	removed API that is provided by the parent class.

	* app/gui/resize-dialog.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimplevelstool.c
	* app/widgets/gimpcolorframe.c
	* app/widgets/gimphistogrameditor.c
	* app/widgets/gimppropwidgets.c
	* app/widgets/gimpstrokeeditor.c: changed accordingly.
2004-04-20 19:06:37 +00:00
Sven Neumann e2709b97ba avoid unnecessary casts.
2004-04-19  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpenumstore.[ch]: avoid unnecessary casts.

	* app/widgets/gimpenumcombobox.[ch]: added an API that inserts a
	GtkTreeModelFilter to make items invisible. This is a kludge to
	workaround bug #135875.

	* app/tools/gimpcurvestool.c
	* app/tools/gimplevelstool.c
	* app/widgets/gimphistogrameditor.c: use the new function to hide
	histogram channels that are not available with the current
	drawable.
2004-04-18 22:38:45 +00:00
Sven Neumann 89cf45541a app/widgets/Makefile.am app/widgets/widgets-types.h removed GimpEnumMenu.
2004-04-18  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpenummenu.[ch]: removed GimpEnumMenu.

	* app/widgets/gimpenumwidgets.[ch]: moved widget constructors that
	don't use GimpEnumMenu from gimpenummenu.[ch] to these new files.

	* app/widgets/gimpenumcombobox.[ch]: added a GtkComboBox widget
	using GimpEnumStore; replaces GimpEnumMenu.

	* app/widgets/gimpenumstore.[ch]: added new function
	gimp_enum_store_lookup_by_value().

	* app/widgets/gimppropwidgets.[ch]: replaced
	gimp_prop_enum_option_menu_new() with gimp_prop_enum_combo_box_new().

	* app/gui/brush-select.[ch]
	* app/gui/convert-dialog.c
	* app/gui/layers-commands.c
	* app/gui/preferences-dialog.c
	* app/gui/resize-dialog.c
	* app/tools/gimpblendoptions.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpmagnifytool.c
	* app/tools/gimppaintoptions-gui.c
	* app/tools/gimpselectionoptions.c
	* app/tools/gimptransformoptions.c
	* app/widgets/gimpcolorframe.c
	* app/widgets/gimpeditor.c
	* app/widgets/gimpgrideditor.c
	* app/widgets/gimphistogrameditor.c
	* app/widgets/gimpstrokeeditor.c
	* app/widgets/gimptemplateeditor.c
	* app/widgets/gimptexteditor.c: ported to GimpEnumComboBox.
2004-04-18 15:12:42 +00:00
Henrik Brix Andersen 30fb5a7565 resolved conflicting mnemonic. Fixes bug #139868.
2004-04-17 Henrik Brix Andersen <brix@gimp.org>

* app/tools/gimphuesaturationtool.c
(gimp_hue_saturation_tool_dialog): resolved conflicting
mnemonic. Fixes bug #139868.
2004-04-17 02:06:59 +00:00
Sven Neumann ed4e23096b app/tools/gimpcolorpickertool.c don't use gtk_window_present() to raise
2004-04-16  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpmeasuretool.c: don't use gtk_window_present() to
	raise the tool dialog since it also moves the focus away from the
	image window. Fixes the problem described in bug #139349.
2004-04-16 13:50:28 +00:00
Sven Neumann 77ae74798d some code cleanup that I forgot to do when applying the patch.
2004-04-16  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcroptool.c: some code cleanup that I forgot to do
	when applying the patch.
2004-04-16 13:36:14 +00:00
Michael Natterer 2f2301c905 derive it from GtkFileChooser instead of GtkFileSelection.
2004-04-15  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpfiledialog.[ch]: derive it from GtkFileChooser
	instead of GtkFileSelection.

	* app/gui/file-dialog-utils.c
	* app/gui/file-open-dialog.c
	* app/gui/file-save-dialog.c
	* app/widgets/gimpthumbbox.c: changed accordingly.

	* app/gui/gradients-commands.c
	* app/gui/vectors-commands.c
	* app/tools/gimpimagemaptool.c
	* app/widgets/gimperrorconsole.c
	* app/widgets/gimptexteditor.c
	* libgimpwidgets/gimpfileentry.c: use file choosers instead of
	file selectors.
2004-04-15 16:28:26 +00:00
Sven Neumann 7849638db3 app/tools/gimpcropoptions.[ch] applied a patch from Jordi Gay that allows
2004-04-15  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcropoptions.[ch]
	* app/tools/gimpcroptool.[ch]: applied a patch from Jordi Gay that
	allows to keep the aspect ratio fixed.
2004-04-15 15:17:36 +00:00
Michael Natterer a30db14bb7 set translate_desc to "Move Layer Mask".
2004-04-15  Michael Natterer  <mitch@gimp.org>

	* app/core/gimplayermask.c (gimp_layer_mask_class_init): set
	translate_desc to "Move Layer Mask".

	* app/tools/gimpeditselectiontool.c: take the undo desc
	from the moved item's class instead of duplicating all
	strings here.
2004-04-15 15:07:30 +00:00
Michael Natterer 18d9161eea Get rid of the "current_context" which was in fact just a bunch of global
2004-04-15  Michael Natterer  <mitch@gimp.org>

	Get rid of the "current_context" which was in fact just a bunch of
	global variables. Instead, pass the needed context all the way
	from the GUI and the PDB to the core. This is a prerequisite for
	macro recording and generally helps separating the various
	subsystems from each other. Work in progress...

	* app/core/gimp.[ch]: removed member "current_context" and
	gimp_[get|set]_current_context().

	* app/core/gimp-edit.[ch]
	* app/core/gimpdrawable-blend.[ch]
	* app/core/gimpdrawable-bucket-fill.[ch]
	* app/core/gimpdrawable-offset.[ch]
	* app/core/gimpdrawable-transform.[ch]
	* app/core/gimpimage-crop.[ch]
	* app/core/gimpimage-flip.[ch]
	* app/core/gimpimage-merge.[ch]
	* app/core/gimpimage-resize.[ch]
	* app/core/gimpimage-rotate.[ch]
	* app/core/gimpimage.[ch]
	* app/core/gimpimagefile.[ch]
	* app/core/gimpitem-linked.[ch]
	* app/core/gimpitem.[ch]
	* app/core/gimplayer.[ch]
	* app/core/gimpselection.[ch]
	* app/core/gimptemplate.[ch]
	* app/file/file-open.[ch]
	* app/file/file-save.[ch]
	* app/pdb/procedural_db.[ch]
	* app/text/gimptext-compat.[ch]
	* app/text/gimptextlayer-transform.[ch]
	* app/gui/brush-select.[ch]
	* app/gui/font-select.[ch]
	* app/gui/gradient-select.[ch]
	* app/gui/palette-select.[ch]
	* app/gui/pattern-select.[ch]: added tons of "GimpContext *context"
	parameters and use the passed context instead of
	gimp_get_current_context().

	* app/app_procs.c
	* app/batch.c
	* app/core/gimpchannel.c
	* app/core/gimpdrawable.c
	* app/paint/gimperaser.c
	* app/paint/gimppaintbrush.c
	* app/plug-in/plug-in-message.c
	* app/plug-in/plug-ins.c
	* app/text/gimptextlayer.c
	* app/tools/gimpblendtool.c
	* app/tools/gimpbucketfilltool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpfliptool.c
	* app/tools/gimpinktool.c
	* app/tools/gimptransformtool.c
	* app/vectors/gimpvectors.c
	* app/gui/convert-dialog.c
	* app/gui/drawable-commands.c
	* app/gui/edit-commands.c
	* app/gui/file-commands.c
	* app/gui/file-new-dialog.c
	* app/gui/file-open-dialog.c
	* app/gui/file-save-dialog.c
	* app/gui/image-commands.c
	* app/gui/layers-commands.c
	* app/gui/offset-dialog.c
	* app/gui/select-commands.c
	* app/gui/vectors-commands.c
	* app/widgets/gimpdnd.c
	* app/widgets/gimpdocumentview.c
	* app/widgets/gimphelp.c
	* app/widgets/gimpthumbbox.c: pass gimp_get_user_context() or
	GIMP_CONTEXT(tool_options) or whatever is the right context
	to the changed core functions.

	* tools/pdbgen/app.pl: pass "GimpContext *context" to all
	generated PDB invokers.

	* tools/pdbgen/pdb/brush_select.pdb
	* tools/pdbgen/pdb/brushes.pdb
	* tools/pdbgen/pdb/drawable.pdb
	* tools/pdbgen/pdb/edit.pdb
	* tools/pdbgen/pdb/font_select.pdb
	* tools/pdbgen/pdb/gradient_select.pdb
	* tools/pdbgen/pdb/gradients.pdb
	* tools/pdbgen/pdb/image.pdb
	* tools/pdbgen/pdb/layer.pdb
	* tools/pdbgen/pdb/paint_tools.pdb
	* tools/pdbgen/pdb/palette.pdb
	* tools/pdbgen/pdb/palette_select.pdb
	* tools/pdbgen/pdb/palettes.pdb
	* tools/pdbgen/pdb/paths.pdb
	* tools/pdbgen/pdb/pattern_select.pdb
	* tools/pdbgen/pdb/patterns.pdb
	* tools/pdbgen/pdb/selection.pdb
	* tools/pdbgen/pdb/text_tool.pdb
	* tools/pdbgen/pdb/transform_tools.pdb: pass the new context
	parameter to the changed core functions.

	* app/pdb/*_cmds.c: regenerated.
2004-04-14 23:37:34 +00:00
Michael Natterer 2e61d12ed4 Moved the calls to floating_sel_relax()/rigor() from various places to two
2004-04-13  Michael Natterer  <mitch@gimp.org>

	Moved the calls to floating_sel_relax()/rigor() from various
	places to two single spots in the core where they are actually
	needed. Fixes bug #138356 (which was caused by the projection
	being triggered in the middle of changing the floating selection's
	size or the size of the drawable it is attached to). This commit
	effectively removes floating selection fiddling from the core's
	public API.

	* app/core/gimpdrawable.[ch] (gimp_drawable_has_floating_sel): new
	function which returns TRUE if there is a floating selection
	attached to the drawable.

	* app/core/gimpdrawable.c (gimp_drawable_translate)
	(gimp_drawable_set_tiles_full): if the drawable *has* a floating
	selection, relax/rigor it before/after modifying the drawable.

	* app/core/gimplayer.c (gimp_layer_translate)
	(gimp_layer_set_tiles): if the layer *is* the floating selection,
	relax/rigor it before/after modifying it.

	* app/core/gimpdrawable-transform.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimage-crop.c
	* app/core/gimpimage-flip.c
	* app/core/gimpimage-resize.c
	* app/core/gimpimage-rotate.c
	* app/core/gimpimage-scale.c
	* app/gui/layers-commands.c
	* app/tools/gimpeditselectiontool.c
	* tools/pdbgen/pdb/layer.pdb: removed calls to
	floating_sel_rigor()/relax() all over the place. Also removed
	lots of undo groups which are obsolete now.

	* app/pdb/layer_cmds.c: regenerated.
2004-04-13 13:54:54 +00:00
Sven Neumann 68d9b6013c push an undo group only when it's needed. This resurrects text undo
2004-04-10  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptexttool.c (gimp_text_tool_apply): push an undo
	group only when it's needed. This resurrects text undo compression
	that broke when bug #137767 got fixed.
2004-04-10 18:11:00 +00:00
Pedro Gimeno f7ce875889 Sanitize rectangle and ellipse selection handling (bug #138237 and bug
2004-04-05  Pedro Gimeno  <pggimeno@wanadoo.es>

	Sanitize rectangle and ellipse selection handling (bug #138237
	and bug #138103):

	* app/tools/gimprectselecttool.h
	* app/tools/gimprectselecttool.c (GimpRectSelectTool): new
	member "moved" indicating whether the cursor was moved after
	the click.
	(gimp_rect_select_tool_coords_to_integer): New function for
	consistent conversion of the rectangle FP coords to pixels.
	(gimp_rect_select_tool_button_press,
	gimp_rect_select_tool_button_release,
	gimp_rect_select_tool_motion, gimp_rect_select_tool_draw): use
	it instead of fiddling with the FP coordinates. Update "moved"
	and use it to detect whether the selection needs to be cleared.

	* app/tools/gimpellipseselecttool.c
	(gimp_ellipse_select_tool_draw): use the new coords_to_integer
	function.
2004-04-05 08:08:23 +00:00
Michael Natterer acc72b620e added undo type GIMP_UNDO_TEXT_LAYER_MODIFIED and undo group types
2004-04-01  Michael Natterer  <mitch@gimp.org>

	* app/core/core-enums.[ch] (enum GimpUndoType): added undo type
	GIMP_UNDO_TEXT_LAYER_MODIFIED and undo group types
	GIMP_UNDO_GROUP_DRAWABLE and GIMP_UNDO_GROUP_DRAWABLE_MOD.

	* app/core/gimpimage-undo-push.[ch]: added new new function
	gimp_image_undo_push_text_layer_modified() which makes
	modifications of the text_layer's "modified" boolean undoable.

	* app/core/gimpdrawable.[ch]: added new virtual function
	GimpDrawable::push_undo() and moved the actual undo pushing into
	the default implementation gimp_drawable_real_push_undo().

	* app/text/gimptextlayer.c (gimp_text_layer_push_undo): new
	function. Pushes the text_layer's modified state to the undo stack
	after upchaining and sets modified to TRUE.

	(gimp_text_layer_set_tiles): ditto.

	(gimp_lext_layer_apply_region)
	(gimp_text_layer_replace_region): removed because their default
	implementations already call gimp_drawable_push_undo().

	(gimp_text_layer_swap_pixels): removed because swap_pixels() is
	used by undo only and doesn't need to care about the text_layer's
	modified state.

	(gimp_text_layer_render): don't set modified to FALSE here because
	we can't push an undo step here.

	(gimp_text_layer_set): push the modified state to the undo stack
	and set it to FALSE here. Also push the layer's tiles if the
	layer was modified.

	* app/tools/gimptexttool.c (gimp_text_tool_apply): push "modified"
	to the undo stack and set it to FALSE here, too.

	Fixes bug #137767.
2004-04-01 14:51:58 +00:00
Simon Budig 157af2d30c One really should use braces when mixing additions and multiplication and
2004-03-31  Simon Budig  <simon@gimp.org>

	* app/tools/gimptransformtool.c: One really should use braces
	when mixing additions and multiplication and the operator
	precedence is not the desired one...

	I feel stupid...  :-)
2004-03-31 14:21:36 +00:00
Michael Natterer 13b46f4847 fixed condition which triggers the path tool's undo hack. Fixes bug
2004-03-25  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpvectortool.c (gimp_vector_tool_button_release):
	fixed condition which triggers the path tool's undo hack.  Fixes
	bug #138086. Also g_object_unref() the undo step.

	Removed trailing whitespace.
2004-03-25 12:46:20 +00:00
Manish Singh 87fba73a12 libgimp/gimp.c close the shm_open fd in the POSIX shm case. We were
2004-03-25  Manish Singh  <yosh@gimp.org>

        * libgimp/gimp.c
        * app/plug-in/plug-in-shm.c: close the shm_open fd in the POSIX
        shm case. We were leaking an fd here.
2004-03-25 09:02:28 +00:00
Sven Neumann c809f21ab5 keep the text editor open as long as the text tool is connected to a text
2004-03-22  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptexttool.c: keep the text editor open as long as
	the text tool is connected to a text layer. Open the text editor
	when a text layer is activated in the layers dialog.
2004-03-22 15:19:19 +00:00
Sven Neumann 7469b06006 preserve the text tool on image changes. Instead connect to the text
2004-03-22  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptexttool.[ch]: preserve the text tool on image
	changes. Instead connect to the text layer's "notify::modified"
	signal and disconnect from the layer when it is modified.
	Fixes bug #137890.
2004-03-22 14:32:47 +00:00
Sven Neumann 2326e1b979 added gimp_undo_type_to_name() a similar function used to live in
2004-03-21  Sven Neumann  <sven@gimp.org>

	* app/core/gimpundo.[ch]: added gimp_undo_type_to_name() a similar
	function used to live in gimpimage-undo.[ch].

	* app/core/gimpitemundo.c (gimp_item_undo_new): allow NULL as name
	and generate it from the undo_type then.

	* app/core/gimpimage-undo.[ch]: added gimp_image_undo_push_undu(),
	new function that allows to push an undo on the image.

	* app/text/Makefile.am
	* app/text/text-types.h
	* app/text/gimptextundo.[ch]: added GimpTextUndo, derived from
	GimpItemUndo.

	* app/core/gimpimage-undo-push.c (gimp_image_undo_push_text_layer):
	use the new code and simply push a text undo here.

	* app/tools/gimptexttool.c: compress text undos by peeking at the
	undo stack. Fixes bug #137766.
2004-03-21 23:14:21 +00:00
Pedro Gimeno 9127a54dec Fixed several off-by-one problems in display:
2004-03-20  Pedro Gimeno  <pggimeno@wanadoo.es>

	Fixed several off-by-one problems in display:

	* app/display/gimpdisplayshell.h (PROJ_ROUND): New macro to apply
	to a float the same rounding method as the one used when rendering.
	(SCALEX, SCALEY): Use PROJ_ROUND instead of truncating.

	* app/display/gimpdisplayshell-transform.c
	(gimp_display_shell_transform_xy): Accept gdouble image coordinates
	even if the returned screen coordinates are integer. Use PROJ_ROUND
	instead of (gint) to apply proper rounding. Fixes bug #137566.

	* app/display/gimpdisplayshell-transform.h
	(gimp_display_shell_transform_xy): changed accordingly.

	* app/display/gimpdisplayshell-draw.c
	* app/tools/gimpdrawtool.c: make sure everywhere that PROJ_ROUND
	is used either directly or through gimp_display_shell_transform_xy,
	instead of using arbitrary rounding methods.
2004-03-20 21:59:41 +00:00
Sven Neumann 584b3ceb9b don't take the image from tool->gdisp, this might be a NULL pointer.
2004-03-20  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptexttool.c (gimp_text_tool_create_vectors): don't
	take the image from tool->gdisp, this might be a NULL pointer.

	* app/core/gimpimage-undo-push.c: removed debugging output.
2004-03-20 20:10:05 +00:00
Sven Neumann 20d03407fe avoid to set the unit property with every size change; only set it if it
2004-03-20  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimppropwidgets.c (gimp_prop_size_entry_callback):
	avoid to set the unit property with every size change; only set it
	if it actually changed.

	* app/core/gimpimage-undo-push.c (gimp_image_undo_push_text_layer):
	allow to pass a GParamSpec that identifies a single text property
	to be changed. In this case, don't store a GimpText object on the
	undo stack but only the changed value.

	* app/tools/gimptexttool.c: use the new undo feature to reduce the
	memory footprint of text undo for the common case.

	* app/text/gimptextlayer.c: changed accordingly.
2004-03-20 17:21:48 +00:00
Simon Budig a08efc86bd Assigned "b" as the default shortcut for the path tool ("Bezier").
2004-03-20  Simon Budig  <simon@gimp.org>

	* app/tools/gimpvectortool.c: Assigned "b" as the default shortcut
	for the path tool ("Bezier").

	Fixes bug #137753.
2004-03-20 15:28:28 +00:00
Sven Neumann fc3846e422 update the text editor when the text changes (for example when undoing
2004-03-20  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptexttool.c: update the text editor when the text
	changes (for example when undoing text changes). Push a drawable
	undo when applying text changes to a modified text layer.
2004-03-20 13:26:02 +00:00
Simon Budig 5e47b5a0ed Make it possible to refresh the preview of an undo step.
2004-03-20  Simon Budig  <simon@gimp.org>

	* app/core/gimpundo.[ch]: Make it possible to refresh the preview
	of an undo step.

	* app/tools/gimpeditselectiontool.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimplayertreeview.c: refresh the preview when
	compressing undos. This ensures that the last preview in the undo
	history always reflects the current state of the image.
2004-03-19 23:42:42 +00:00
Sven Neumann cbbe4f3871 don't exchange the text_layer's text object but sync it with the text
2004-03-20  Sven Neumann  <sven@gimp.org>

	* app/core/gimpimage-undo-push.c (undo_pop_text_layer): don't
	exchange the text_layer's text object but sync it with the text
	object from the undo step.

	* app/text/gimptextlayer.c (gimp_text_layer_set): in case the
	layer has a mask, push an undo group around the text modifications.

	* app/tools/gimptexttool.c (gimp_text_tool_idle_apply): push a
	text layer undo before applying the text changes.
2004-03-19 23:08:24 +00:00
Sven Neumann 5420154a66 if there's a layer mask, resize it with the layer.
2004-03-19  Sven Neumann  <sven@gimp.org>

	* app/text/gimptextlayer.c (gimp_text_layer_render): if there's a
	layer mask, resize it with the layer.

	* app/tools/gimptexttool.c: don't change text_tool->layer before
	calling gimp_text_tool_connect().
2004-03-19 19:26:18 +00:00
Sven Neumann e9e3e22dae added a confirmation dialog that is shown when the user attempts to modify
2004-03-19  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptexttool.[ch]: added a confirmation dialog that is
	shown when the user attempts to modify a modified text layer.
2004-03-19 16:29:36 +00:00
Michael Natterer fddb9ce0e3 app/gui/color-notebook.c (color_notebook_new) app/tools/gimpcroptool.c
2004-03-19  Michael Natterer  <mitch@gimp.org>

	* app/gui/color-notebook.c (color_notebook_new)
	* app/tools/gimpcroptool.c (crop_info_create)
	* app/tools/gimptransformtool.c (gimp_transform_tool_dialog):
	explicitely set a default response for dialog buttons which were
	created using gtk_dialog_add_buttons().
2004-03-19 10:15:56 +00:00
Sven Neumann d7dbf81ab0 cleaned up text tool logic.
2004-03-18  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptexttool.[ch]: cleaned up text tool logic.
2004-03-18 20:55:00 +00:00
Sven Neumann 17679a610b added a missing call to gimp_image_flush().
2004-03-18  Sven Neumann  <sven@gimp.org>

	* app/display/gimpdisplayshell-dnd.c (gimp_display_shell_bucket_fill):
	added a missing call to gimp_image_flush().

	* app/tools/gimptexttool.c: propagate text changes to the tool
	options.

	* app/text/gimptextlayer.c: made "text", "auto-rename" and
	"modified" properties of the text layer and copy them when
	duplicating a text layer.

	* app/text/gimptextlayer-xcf.[ch]: added utility functions to
	convert the new properties to flags to be saved in the XCF file.

	* app/xcf/xcf-load.c
	* app/xcf/xcf-private.h
	* app/xcf/xcf-save.c: load and save text layer properties.
	Disabled warnings about unknown properties for stable branches.
2004-03-18 15:27:23 +00:00
Sven Neumann b7965325e6 look ahead in the queue of pending changes and compress changes to the
2004-03-15  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptexttool.c (gimp_text_tool_apply): look ahead in
	the queue of pending changes and compress changes to the same
	property. Fixed a couple of smaller issues.

	* app/widgets/gimpwidgets-utils.c: corrected indentation.
2004-03-16 00:16:52 +00:00
Michael Natterer 59b77c35c2 emit "update" signals from the drawable before and after setting tiles and
2004-03-15  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdrawable.c (gimp_drawable_set_tiles_full): emit
	"update" signals from the drawable before and after setting tiles
	and offsets.

	* app/core/gimpdrawable-offset.c (gimp_drawable_offset)
	* app/core/gimpdrawable-transform.c (gimp_drawable_transform_paste)
	* app/core/gimpimage-undo-push.c (undo_pop_layer_mod, _channel_mod)
	* app/text/gimptextlayer.c (gimp_text_layer_render)
	* app/tools/gimptransformtool.c (gimp_transform_tool_doit):
	removed calls to gimp_drawable_update().

	* app/core/gimpdrawable-offset.c (gimp_drawable_offset): don't
	push an undo step before calling gimp_drawable_set_tiles()
	but simply pass push_undo == TRUE and the undo_desc.
2004-03-15 20:05:31 +00:00
Michael Natterer 1ef5fa93ca added "offset_x" and "offset_y" parameters to GimpDrawable::set_tiles().
2004-03-15  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpdrawable.[ch]: added "offset_x" and "offset_y"
	parameters to GimpDrawable::set_tiles().

	(gimp_drawable_set_tiles): removed the "GimpImageType" parameter.

	(gimp_drawable_set_tiles_full): new function adding type, offset_x
	and offset_y parameters.

	(gimp_drawable_real_set_tiles): set the drawable's offsets from
	the offset parameters and its size from the passed TileManager's
	size. Emit "size_changed" accordingly.

	* app/core/gimpchannel.c
	* app/core/gimpdrawable-offset.c
	* app/core/gimpdrawable-transform.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimage-undo-push.c
	* app/core/gimplayer.c
	* app/text/gimptextlayer.c
	* app/tools/gimptransformtool.c: changed accordingly: removed
	calls to gimp_viewable_size_changed() and all sorts of hackish
	assignments of the drawable's width/height/offset_x/offset_y
	properties.
2004-03-15 19:34:35 +00:00
Michael Natterer 7977603648 don't call gimp_image_flush().
2004-03-15  Michael Natterer  <mitch@gimp.org>

	* app/text/gimptextlayer.c (gimp_text_layer_render): don't call
	gimp_image_flush().

	* app/tools/gimpxttool.c (gimp_text_tool_apply): call it here
	instead.

	Now that we have a common place that exchanges drawable->tiles,
	we can abstract away boundary invalidation for this operation:

	* app/core/gimpdrawable.c (gimp_drawable_real_set_tiles):
	call gimp_drawable_invalidate_boundary() before setting
	the new tiles.

	* app/core/gimpchannel.c (gimp_channel_set_tiles)
	* app/core/gimpdrawable-transform.c (gimp_drawable_transform_paste)
	* app/core/gimpimage-undo-push.c (undo_pop_layer_mod)
	* app/core/gimplayer.c (gimp_layer_scale) (gimp_layer_resize)
	(gimp_layer_flip) (gimp_layer_rotate) (gimp_layer_transform)
	* app/text/gimptextlayer.c (gimp_text_layer_render): removed
	calls to gimp_drawable_invalidate_boundary() from all functions
	which finally call gimp_drawable_real_set_tiles().

	* app/tools/gimptransformtool.c (gimp_transform_tool_doit): no
	need to set channel->bounds_known to FALSE, because
	gimp_drawable_set_tiles() already did this.
2004-03-15 17:53:55 +00:00
Sven Neumann 63bb032f70 app/tools/gimpcolorpickertool.c app/tools/gimpcroptool.c
2004-03-14  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpimagemaptool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimptransformtool.c: don't set tool dialogs transient
	to the image window. Fixes bug #128833.
2004-03-14 22:16:12 +00:00
Sven Neumann f67c16ec60 removed all idle handling here. Changes to the text-layer's text object
2004-03-14  Sven Neumann  <sven@gimp.org>

	* app/text/gimptextlayer.[ch]: removed all idle handling here.
	Changes to the text-layer's text object all applied synchronously.

	* app/display/gimpdisplayshell-dnd.c
	* app/text/gimptextlayer-transform.c: removed now obsolete calls
	to gimp_text_layer_flush().

	* app/tools/gimptexttool.[ch]: queue up changes to the proxy text
	object and apply them in one go from a low-priority idle handler.
	This is basically what GimpTextLayer used to do.
2004-03-14 18:48:00 +00:00
Sven Neumann 0993486a0a app/tools/gimptextoptions.[ch] introduced a proxy GimpText object that is
2004-03-14  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptextoptions.[ch]
	* app/tools/gimptexttool.[ch]: introduced a proxy GimpText object
	that is tied to the GimpTextOptions for the lifetime of the text
	tool. Brings us one step closer to text undo...
2004-03-14 17:54:23 +00:00
Michael Natterer 2498c6659e Completed the fix for bug #136702:
2004-03-13  Michael Natterer  <mitch@gimp.org>

	Completed the fix for bug #136702:

	* app/core/gimpitem.[ch]: added "gboolean supersample" and
	"gint recursion_level" to GimpItem::transform().

	* app/core/gimpitem-linked.[ch]	(gimp_item_linked_transform): ditto.

	* app/core/gimpdrawable-transform.[ch]: added "recursion_level"
	parameters and removed the RECURSION_LEVEL #define.

	* app/core/gimpchannel.c
	* app/core/gimpdrawable.c
	* app/core/gimplayer.c
	* app/vectors/gimpvectors.c: changed accordingly.

	* app/tools/gimptransformoptions.[ch]: added new property
	"recursion_level" which is not serializable and has no GUI. Pretty
	useless, but it's IMHO better to hardcode the default value here
	than in gimpdrawable-transform.c

	* app/tools/gimptransformtool.c: changed accordingly.

	* tools/pdbgen/pdb/transform_tools.pdb: hardcode "recursion_level"
	to 3.

	* app/pdb/transform_tools_cmds.c: regenerated.
2004-03-13 17:45:58 +00:00
Sven Neumann 27fc81be2a override the "gradient_repeat" property inherited from GimpPaintOptions
2004-03-13  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpblendoptions.c: override the "gradient_repeat"
	property inherited from GimpPaintOptions and set the default to
	GIMP_REPEAT_NONE. Seems more appropriate for the blend tool.
2004-03-13 15:48:32 +00:00
Sven Neumann c179f9acaf added new virtual function GimpDrawable::set_tiles().
2004-03-13  Sven Neumann  <sven@gimp.org>

	* app/core/gimpdrawable.[ch]: added new virtual function
	GimpDrawable::set_tiles().

	* app/core/gimpchannel.c
	* app/core/gimplayer.c: push an undo before chaining up in
	set_tiles().

	* app/core/gimpdrawable-transform.c
	* app/core/gimpimage-convert.c
	* app/tools/gimptransformtool.c: use gimp_drawable_set_tiles()
	instead of fiddling with the drawable's tile manager directly.
2004-03-13 13:56:09 +00:00
Sven Neumann beaed82ce8 for consistency, changed the label from "Supersample" to "Supersampling".
2004-03-13  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptransformoptions.c (gimp_transform_options_gui): for
	consistency, changed the label from "Supersample" to "Supersampling".
2004-03-13 11:41:57 +00:00
Raphael Quinet 59dfdac9b1 added new "supersample" property to GimpTransformOptions and added
2004-03-13  Raphael Quinet  <quinet@gamers.org>

	* app/tools/gimptransformoptions.[ch]: added new "supersample"
	property to GimpTransformOptions and added corresponding check
	button in the option dialog for the transform tools.

	* app/core/gimpdrawable-transform.[ch],
	* app/core/gimpdrawable.c,
	* app/tools/gimptransformtool.c: new "gboolean supersample"
	parameter added to gimp_drawable_transform_tiles_affine() and
	gimp_drawable_transform_affine().

	* tools/pdbgen/pdb/transform_tools.pdb: ditto.  For the PDB calls,
	the supersample parameter is set to FALSE for "rotate" and "shear"
	and set to TRUE for "perspective", "scale" and "transform_2d".

	* app/pdb/transform_tools_cmds.c: regenerated.

	The new "supersample" option lets the user decide if the
	transformations should use supersampling (RECURSION_LEVEL 3) or
	not.  This fixes both bug #136702 and bug #109817.  Hopefully for
	good, this time.
2004-03-13 11:24:25 +00:00
Raphael Quinet 40825ad048 added missing semicolon that was breaking the build.
2004-03-13  Raphael Quinet  <quinet@gamers.org>

	* app/tools/gimptexttool.c (gimp_text_tool_set_layer): added
	missing semicolon that was breaking the build.
2004-03-13 09:04:37 +00:00
Sven Neumann 4634ee2244 bugfix.
2004-03-13  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptexttool.c (gimp_text_tool_set_layer): bugfix.
2004-03-13 03:57:01 +00:00
Sven Neumann 285b58de41 use a GimpSizeEntry for the font size.
2004-03-13  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptextoptions.[ch]: use a GimpSizeEntry for the
	font size.

	* app/tools/gimptexttool.c: set the size entry's resolution to the
	image resolution. Fixes bug #118356.
2004-03-13 03:19:53 +00:00
Sven Neumann 07a92fe591 keep a pointer on the active text layer and let the tool follow the active
2004-03-13  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptexttool.[ch]: keep a pointer on the active text
	layer and let the tool follow the active layer. Fixes bug #124970.

	* app/gui/layers-commands.c: changed accordingly.
2004-03-13 00:47:31 +00:00
Sven Neumann dc652db2f5 app/tools/gimpcurvestool.c app/tools/gimpinktool.c print debug output to
2004-03-12  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcurvestool.c
	* app/tools/gimpinktool.c
	* app/tools/gimptool.c: print debug output to stderr.
2004-03-12 13:50:36 +00:00
Sven Neumann 8827ea203a always connect the "text_changed" signal so text layers can be edited
2004-03-12  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptexttool.c (gimp_text_tool_editor): always connect
	the "text_changed" signal so text layers can be edited again.
2004-03-12 00:36:17 +00:00
Sven Neumann 97d533410d set the color of the new text from the context foreground color.
2004-03-11  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptextoptions.c (gimp_text_options_create_text):
	set the color of the new text from the context foreground color.
2004-03-11 21:05:36 +00:00
Sven Neumann fb2d9928a8 redid the color handling. Still not perfect, but it is somewhat cleaner.
2004-03-11  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptextoptions.[ch]: redid the color handling.
	Still not perfect, but it is somewhat cleaner.
2004-03-11 20:52:49 +00:00
Sven Neumann 21f26743c1 made gimp_config_sync() and gimp_config_connect() also work on objects of
2004-03-11  Sven Neumann  <sven@gimp.org>

	* app/config/gimpconfig-utils.c: made gimp_config_sync() and
	gimp_config_connect() also work on objects of different types.
	Properties with the same name and the same type are synced /
	connected.

	* app/core/gimpcontext.[ch]: added convenience functions to get/set
	the font by name.

	* app/tools/gimptextoptions.[ch]: don't hold a GimpText object
	that duplicates properties like font and color which are in
	GimpContext already. Instead added all text properties that are
	controlled from the text tool options.  Handling of the foreground
	color is somewhat broken and needs a GimpContext wizard (Mitch!).

	* app/text/gimptext.c: blurbs are not any longer needed now that
	the property widgets are created from the GimpTextOptions.

	* app/tools/gimptexttool.c: changed accordingly.

	* app/widgets/gimptexteditor.[ch]: use an internal GtkTextBuffer
	and emit "text-changed" when it changes.
2004-03-11 18:47:37 +00:00
Sven Neumann 9ff5123e63 connect notify::preview using g_signal_connect_object(). Fixes bug
2004-03-11  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpimagemaptool.c (gimp_image_map_tool_initialize):
	connect notify::preview using g_signal_connect_object().
	Fixes bug #136850.
2004-03-11 12:36:10 +00:00
Simon Budig 70671753ae app/base/cpu-accel.c app/display/gimpdisplayshell-dnd.c
2004-03-10  Simon Budig  <simon@gimp.org>

	* app/base/cpu-accel.c
	* app/display/gimpdisplayshell-dnd.c
	* app/tools/gimpvectortool.c
	* app/vectors/gimpbezierstroke.c
	* app/vectors/gimpvectors-import.c: Removed, disabled or
	conditionalized some debug output.

	There still is debug output when pushing/popping the move tool
	via space bar. Mitch wanted to look at that.
2004-03-10 15:10:34 +00:00
Michael Natterer 79e13a1ca0 app/tools/gimpdrawtool.c app/tools/gimpselectiontool.c
2004-03-10  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpdrawtool.c
	* app/tools/gimpselectiontool.c
	* app/tools/gimptool.c
	* app/tools/gimptransformtool.c: minor cleanup.
2004-03-10 12:45:11 +00:00
Michael Natterer 860f3d46be don't reinitialize the tool when the image becomes dirty but just cancel
2004-03-10  Michael Natterer  <mitch@gimp.org>

	* app/tools/tool_manager.c (tool_manager_image_dirty): don't
	reinitialize the tool when the image becomes dirty but just cancel
	it (fixes bug #131965). Also, only cancel the tool if the tool is
	operating on one of the dirtied image's displays (fixes bug #12253).
2004-03-10 12:25:15 +00:00
Michael Natterer c5efb31dec redid my last layer_mask vs. layer move fix by reordering the whole
2004-03-09  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpmovetool.c (gimp_move_tool_button_press): redid my
	last layer_mask vs. layer move fix by reordering the whole
	function: now we first check if we can pick a path, guide or layer
	and bail out early if we can't; do the actual init_edit_selection()
	calls in a trivial unconditional switch() after that picking
	check. Removes code duplication and makes the whole function less
	nested and weird.

	Cleaned up the whole file a bit.
2004-03-09 13:24:15 +00:00
Hans Breuer 2036638f73 updated
2004-03-07  Hans Breuer  <hans@breuer.org>

	* themes/Default/images/makefile.msc
	  app/*/makefile.msc plug-ins/makefile.msc : updated
2004-03-07 23:13:51 +00:00
Sven Neumann dd4a8fff00 compute the slider positions in the expose event handler so that the
2004-03-05  Sven Neumann  <sven@gimp.org>

	* app/tools/gimplevelstool.c: compute the slider positions in the
	expose event handler so that the sliders get positioned correctly
	when the dialog is resized.
2004-03-05 14:22:02 +00:00
Michael Natterer c9a1455e54 #include "widgets/gimppropwidgets.h"
2004-03-05  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpcurvestool.c: #include "widgets/gimppropwidgets.h"
2004-03-05 10:03:07 +00:00
Sven Neumann 0ef0afea3a app/tools/gimpcurvestool.c app/tools/gimplevelstool.c added buttons to
2004-03-05  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcurvestool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpthresholdtool.c: added buttons to toggle the
	histogram scale from the tool dialogs. Fixes bug #136227.
2004-03-05 01:31:33 +00:00
Michael Natterer f3df250a74 if we pick a layer to move and this layer has a mask which is being edited
2004-03-04  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpmovetool.c (gimp_move_tool_button_press): if we
	pick a layer to move and this layer has a mask which is being
	edited (active), start moving the mask, not the layer.
2004-03-04 21:01:26 +00:00
Sven Neumann e21dc0ee93 marked new strings for translation.
2004-03-04  Sven Neumann  <sven@gimp.org>

	* app/config/gimprc-blurbs.h: marked new strings for translation.

	* libgimpwidgets/gimpstock.h: added #defines for missing icons.
	This allows us to replace them later without changing the API.

	* app/gui/dialogs-constructors.c
	* app/gui/dialogs-menu.c
	* app/gui/gradient-editor-commands.c
	* app/gui/image-menu.c
	* app/gui/toolbox-menu.c
	* app/tools/gimppaintoptions-gui.c
	* app/tools/gimptextoptions.c
	* app/widgets/gimppaletteeditor.c: use the new stock icon names
	instead of abusing GTK+ and GIMP tool stock icons.

	* app/gui/preferences-dialog.c (prefs_dialog_new): added icons
	to the new check buttons.
2004-03-04 16:10:57 +00:00
Michael Natterer ba265516a1 app/config/gimpcoreconfig.[ch] added boolean properties "global-brush",
2004-03-04  Michael Natterer  <mitch@gimp.org>

	* app/config/gimpcoreconfig.[ch]
	* app/config/gimprc-blurbs.h: added boolean properties
	"global-brush", "global-pattern" etc.

	* app/gui/preferences-dialog.c: added GUI for them to the
	"Tool Options" page.

	* app/tools/tool_manager.c (tool_manager_tool_changed): honor the
	new prefs options when copying the new tool's properties.
	Fixed bug #122519.
2004-03-04 14:04:22 +00:00
Michael Natterer dade4a8430 app/tools/gimpeditselectiontool.c compress undo steps only if the redo
2004-03-02  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpeditselectiontool.c
	* app/widgets/gimplayertreeview.c: compress undo steps only
	if the redo stack is empty.
2004-03-02 14:33:31 +00:00
Sven Neumann ad26c89bbb changed the upper limit for the supersampling depth from 10 to 6 (as a
2004-02-29  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpblendoptions.c: changed the upper limit for the
	supersampling depth from 10 to 6 (as a workaround for bug #133266).
2004-02-29 15:02:04 +00:00
Michael Natterer 4ae2c548d6 cleanup.
2004-02-25  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpimagemaptool.c: cleanup.

	* app/tools/gimplevelstool.c (gimp_levels_tool_dialog): added 2px
	spacing between the pick buttons and their entries.
2004-02-25 15:56:50 +00:00
Michael Natterer 0d3e3625c3 moved "shell_desc" from GimpImageMapTool to GimpImageMapToolClass and
2004-02-25  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpimagemaptool.[ch]: moved "shell_desc" from
	GimpImageMapTool to GimpImageMapToolClass and added
	"load_dialog_title" and "save_dialog_title". Create the
	load/save buttons in gimp_image_map_tool_initialize() and
	remember them in the GimpImageMapTool struct. Moved the
	whole load/save button/dialog logic into private functions.

	* app/tools/gimpcurvestool.c
	* app/tools/gimplevelstool.c: changed accordingly, removed
	load/save callbacks, inlined the load/save functions into
	GimpImageMapTool's virtual function implementations.

	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcolorizetool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimpposterizetool.c
	* app/tools/gimpthresholdtool.c: changed accordingly.
2004-02-25 13:55:45 +00:00
Sven Neumann 0a309fe940 app/tools/gimpcurvestool.[ch] removed obsoleted variables.
2004-02-25  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcurvestool.[ch]
	* app/tools/gimplevelstool.h: removed obsoleted variables.
2004-02-25 12:31:18 +00:00
Sven Neumann c66053676c removed obsolete includes 2004-02-25 10:28:09 +00:00
Sven Neumann c1de6345a7 app/tools/gimpcurvestool.[ch] app/tools/gimpimagemapoptions.[ch]
2004-02-25  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcurvestool.[ch]
	* app/tools/gimpimagemapoptions.[ch]
	* app/tools/gimpimagemaptool.[ch]
	* app/tools/gimplevelstool.[ch]: moved the settings file dialog
	that was duplicated in the curves and levels tools to the
	GimpImageMapTool class. Store the last used filename in the
	GimpImageMapOptions (proper fix for bug #135059).
2004-02-25 10:23:43 +00:00
Dave Neary 879e24fec9 Revert to 1.2 behaviour of hiding rather than destroying the curves
2004-02-24  Dave Neary  <bolsh@gimp.org>

        * app/tools/gimpcurvestool.c: Revert to 1.2 behaviour of hiding
        rather than destroying the curves load/save dialog. This makes
        the last selected curve be selected when the dialog is
        re-opened, and fixes bug #135059.

        Also append G_DIR_SEPARATOR_S to the end of the filename we
        build while creating the dialog, rather than ".".
2004-02-24 22:09:28 +00:00
Simon Budig 00c35dad74 don't access the array before checking if the index is within the valid
2004-02-23  Simon Budig  <simon@gimp.org>

	* app/tools/gimpinktool-blob.c: don't access the array before
	checking if the index is within the valid bounds...
2004-02-23 20:12:35 +00:00
Sven Neumann 5077aa4c85 Let all GimpImageMap tools remember the state of the preview toggle (bug
2004-02-22  Sven Neumann  <sven@gimp.org>

	Let all GimpImageMap tools remember the state of the preview toggle
	(bug #135059):

	* app/tools/Makefile.am
	* app/tools/gimpimagemapoptions.[ch]
	* app/tools/tools-types.h: added new GimpToolOptions class to hold
	the preview setting.

	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcolorizetool.c
	* app/tools/gimpcoloroptions.[ch]
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimpimagemaptool.[ch]
	* app/tools/gimpposterizetool.c
	* app/tools/tools-types.h: use the new class.
2004-02-22 14:28:53 +00:00
Simon Budig 331f982322 added "use_offsets" parameter to gimp_draw_tool_draw_boundary() for
2004-02-21  Simon Budig  <simon@gimp.org>

	* app/tools/gimpdrawtool.[ch]: added "use_offsets" parameter
	to gimp_draw_tool_draw_boundary() for consistency.

	* app/tools/gimpeditselectiontool.c: Changed accordingly.

	* app/tools/gimppainttool.c: when drawing straight lines draw
	the brush preview at the end of the line.
2004-02-21 16:06:56 +00:00
Sven Neumann cec5c6ab31 put the color bars into an event box and draw the sliders on the event box
2004-02-20  Sven Neumann  <sven@gimp.org>

	* app/tools/gimplevelstool.[ch]: put the color bars into an event
	box and draw the sliders on the event box window.

	* app/widgets/gimpcolorbar.[ch]: removed support for input events
	which is no longer needed. For consistency, renamed "channel"
	property to "histogram-channel".

	* app/widgets/gimphistogrambox.c: changed accordingly.

	* app/widgets/gimpenummenu.[ch]: added new function
	gimp_enum_stock_box_set_child_padding().

	* app/tools/gimpcurvestool.[ch]: let the graph widget expand with
	the dialog plus some other dialog tweaks.

	* app/widgets/gimphistogrameditor.c: let the channel menu shrink
	as in the other dialogs.

	* libgimpwidgets/gimpcolorselect.c (gimp_color_select_image_fill):
	allocate temporary buffer on the stack.
2004-02-21 12:25:09 +00:00
Sven Neumann 924acb2b0d app/widgets/Makefile.am app/widgets/widgets-types.h added new widget
2004-02-19  Sven Neumann  <sven@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcolorbar.[ch]: added new widget GimpColorBar.

	* app/tools/gimpcurvestool.c
	* app/tools/gimplevelstool.c
	* app/widgets/gimphistogrambox.[ch]: use GimpColorBar widgets.

	* app/widgets/gimpcolorframe.[ch]: fixed typos.
2004-02-19 19:56:04 +00:00
Sven Neumann 7b7b978e8f follow some of the levels tool dialog changes for consistency.
2004-02-19  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcurvestool.c (gimp_curves_tool_dialog): follow
	some of the levels tool dialog changes for consistency.
2004-02-19 14:10:54 +00:00
Sven Neumann 200cca7f36 more dialog tweaking, fixed positioning of slider triangles.
2004-02-19  Sven Neumann  <sven@gimp.org>

	* app/tools/gimplevelstool.c: more dialog tweaking, fixed
	positioning of slider triangles.
2004-02-19 02:23:32 +00:00
Sven Neumann 1abda66f8e readded some code that was accidentally forgotten with the last commit 2004-02-19 00:06:30 +00:00
Sven Neumann 5f147b8e91 applied patch from Dave Neary that removes gray point pickers for
2004-02-19  Sven Neumann  <sven@gimp.org>

	* app/tools/gimplevelstool.c (gimp_levels_tool_dialog): applied
	patch from Dave Neary that removes gray point pickers for
	individual channels (bug #125303). Let the levels widgets expand
	with the dialog.
2004-02-18 23:52:31 +00:00
Simon Budig 097801d7a7 app/config/gimpguiconfig.[ch] Added new GUI option: snapping distance
2004-02-18  Simon Budig  <simon@gimp.org>

	* app/config/gimpguiconfig.[ch]
	* app/config/gimprc-blurbs.h: Added new GUI option: snapping distance

	* app/gui/preferences-dialog.c: add a preferences widget

	* app/tools/gimpmovetool.c
	* app/display/gimpdisplayshell.c: use it for snapping.
2004-02-18 20:31:11 +00:00
Sven Neumann fb1213290f tile-cache.c tile-private.h removed trailing whitespace, added some
2004-02-18  Sven Neumann  <sven@gimp.org>

        * tile-cache.c
        * tile-private.h
        * tile.[ch]: removed trailing whitespace, added some newlines,
        let tile_is_valid() return a gboolean instead of a gint.

        * app/core/gimpimage-projection.c
        * app/core/gimpimage-undo-push.c
        * app/paint/gimppaintcore.c
        * app/tools/gimpinktool.c: use the return value from tile_is_valid()
        as a boolean.
2004-02-18 18:57:43 +00:00
Simon Budig 40ac20ff92 app/display/gimpdisplayshell.c Adjusted snapping distance to 8 pixels,
2004-02-18  Simon Budig  <simon@gimp.org>

	* app/display/gimpdisplayshell.c
	* app/tools/gimpmovetool.c: Adjusted snapping distance
	to 8 pixels, probably should be a preferences option.

	* app/tools/gimppainttool.c: Do not center the start and end
	of a straight line to the center of an image-pixel unless
	the brush mode is GIMP_BRUSH_HARD. Fixes bug #134410.
2004-02-18 18:37:49 +00:00
Sven Neumann 9f654edabf use limits from libgimpbase instead of arbitrary numbers. Don't allow a
2004-02-16  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcroptool.c (crop_info_create): use limits from
	libgimpbase instead of arbitrary numbers. Don't allow a crop width
	or height smaller than 1 (or GIMP_MIN_IMAGE_SIZE actually).
2004-02-16 12:21:27 +00:00
Simon Budig ce5e592e23 make a similar fix as in my last commit for snapping the guides.
2004-02-13  Simon Budig  <simon@gimp.org>

	* app/core/gimpimage-guides.[ch]: make a similar fix as in my
	last commit for snapping the guides.

	* app/tools/gimpmovetool.c: use the fixed version.
2004-02-13 14:04:41 +00:00
Michael Natterer 8091f46f71 call gimp_image_colormap_changed() after installing the colormap.
2004-02-12  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpimage-convert.c (gimp_image_convert): call
	gimp_image_colormap_changed() after installing the colormap.

	* app/tools/gimphistogramoptions.h: fixed typedef of
	GimpHistogramOptionsClass.
2004-02-12 14:09:35 +00:00
Michael Natterer cfd6fb0a8e ignore double clicks so we don't grab the pointer away from the curves
2004-02-12  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimphistogramview.c (gimp_histogram_view_button_press):
	ignore double clicks so we don't grab the pointer away from the
	curves dialog. Fixes bug #132356.

	* app/tools/gimpcurvestool.c (curves_graph_events): ignore button
	press and release events from all buttons except the first one.
2004-02-12 13:12:56 +00:00
Sven Neumann ecdf62b5ce derive the text tool from GimpTool directly. Doesn't look like we are
2004-02-12  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptexttool.[ch]: derive the text tool from GimpTool
	directly. Doesn't look like we are going to use draw_tool
	functionality for 2.0.
2004-02-12 00:03:42 +00:00
Sven Neumann d893018056 repaired broken text tool logic (bug #124969).
2004-02-11  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptexttool.c: repaired broken text tool logic
	(bug #124969).
2004-02-11 14:44:01 +00:00
Sven Neumann 4005559c72 set GIMP_CONTEXT_FONT_MASK. Fixes bug #133067.
2004-02-10  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptexttool.c (gimp_text_tool_register): set
	GIMP_CONTEXT_FONT_MASK. Fixes bug #133067.
2004-02-10 02:15:41 +00:00
Sven Neumann f3c8c2ad83 don't activate the iscissors tool if it's already active (bug #132351).
2004-02-08  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpiscissorstool.c (gimp_iscissors_tool_button_press):
	don't activate the iscissors tool if it's already active
	(bug #132351).
2004-02-08 22:28:21 +00:00
Sven Neumann bfed965df9 implemented so that double-clicking a text layer now only activates the
2004-02-08  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptexttool.c (gimp_text_tool_set_layer): implemented
	so that double-clicking a text layer now only activates the text
	tool but also set the layer's text on the tool options.
2004-02-08 22:09:57 +00:00
Sven Neumann d298be7a8c put overly picky sanity checks into #ifdef GIMP_UNSTABLE ... #endif so we
2004-02-08  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptoolcontrol.c (gimp_tool_control_activate)
	(gimp_tool_control_halt): put overly picky sanity checks into
	#ifdef GIMP_UNSTABLE ... #endif so we won't get these harmless
	tool warnings from the stable version (bug #121074).
2004-02-08 21:46:30 +00:00
Hans Breuer 5cbb416a91 new file to keep common definitions for the msc build use common
2004-02-07  Hans Breuer  <hans@breuer.org>

	* gimpdefs.msc : new file to keep common definitions for the msc build
	* **/makefile.msc : use common defintions, e.g. GIMP_VER
	* Makefile.am : add the former to EXTRA_DIST
2004-02-07 23:01:33 +00:00
Michael Natterer bfe203c2e2 removed all drawing functions. The file was still too large.
2004-02-07  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpdisplayshell.[ch]: removed all drawing functions.
	The file was still too large.

	* app/display/Makefile.am
	* app/display/gimpdisplayshell-draw.[ch]: new files containing
	the drawing functions.

	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell-handlers.c
	* app/tools/gimpmovetool.c: changed #includes accordingly.

	* app/display/gimpdisplay-handlers.c
	(gimp_display_size_changed_handler): added some #if 0'ed code I'm
	not sure about. Actually, some of the handlers in this file could
	need the same code, so it could be abstracted as
	gimp_display_stop_draw() or something. Please have a look.
2004-02-07 00:16:52 +00:00
Michael Natterer b48b110e3e don't try to CLAMP() the passed in rectangle to valid image/drawable
2004-02-05  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimprectselecttool.c
	(gimp_rect_select_tool_rect_select): don't try to CLAMP() the
	passed in rectangle to valid image/drawable coordinates manually
	when auto-shrinking the selection. Instead, use
	gimp_rectangle_intersect(). Also honor the active drawable's
	offsets. Fixes bug #133467.
2004-02-05 11:11:22 +00:00
Sven Neumann b49e39e8ed app/core/gimpchannel.c app/tools/gimptexttool.c app/vectors/gimpvectors.c
2004-02-04  Sven Neumann  <sven@gimp.org>

	* app/core/gimpchannel.c
	* app/tools/gimptexttool.c
	* app/vectors/gimpvectors.c
	* app/widgets/gimpbufferview.c: removed double semicolons.
2004-02-04 16:52:35 +00:00
Simon Budig 645a1ab652 Store the zoom factor as float, not as a ratio.
2004-01-29  Simon Budig  <simon@gimp.org>

	* app/display/gimpdisplayshell.[ch]: Store the zoom factor as
	float, not as a ratio.

	* app/display/gimpdisplayshell-scale.[ch]: change the API to
	expose the Float instead a weirdly encoded integer. Implement
	functions to get a ratio from the scale factor. Implement a set
	as presets as discussed on the mailinglist. Changed Zoom->Other
	dialog to enable entering a float.

	* app/display/gimpdisplayshell-title.c
	* app/display/gimpnavigationview.c
	* app/gui/image-menu.c
	* app/gui/info-window.c
	* app/tools/gimpmagnifytool.c: changed accordingly.

	* app/core/gimp.[ch]
	* app/display/gimpdisplay.[ch]
	* app/gui/gui-vtable.c
	* app/widgets/widgets-enums.h: Made the various display-creating
	functions accept a float for the scale. Introduce a new
	GimpZoomType: GIMP_ZOOM_TO. Generally adjust the API to use
	floats instead of weird integers.

	* app/core/gimp-edit.c
	* app/core/gimptemplate.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/file/file-open.c
	* app/gui/image-commands.c
	* app/gui/view-commands.[ch]
	* tools/pdbgen/pdb/display.pdb
	* app/widgets/gimpimageview.c
	* app/widgets/gimptoolbox-dnd.c: changed accordingly

	* app/pdb/display_cmds.c: regenerated
2004-01-29 22:22:29 +00:00
Sven Neumann 4591bc1a8d app/tools/gimpcurvestool.c app/tools/gimpinkoptions.c removed explicit
2004-01-29  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcurvestool.c
	* app/tools/gimpinkoptions.c
	* app/tools/gimplevelstool.c: removed explicit grabs. The pointer
	is already implicitely grabbed while the button is pressed.
2004-01-29 13:59:14 +00:00
Michael Natterer b2606b5128 Re-enabled filling the whole selection using the bucket fill tool. Fixes
2004-01-27  Michael Natterer  <mitch@gimp.org>

	Re-enabled filling the whole selection using the bucket fill
	tool. Fixes bug #132649.

	* app/tools/gimpbucketfilloptions.[ch]: added boolean property
	"fill-selection" and a GUI for it.

	* app/tools/gimpbucketfilltool.c: changed accordingly.
2004-01-27 15:26:11 +00:00
Sven Neumann 0fd5669948 app/tools/gimpcurvestool.c use dark_gc instead of text_aa_gc to draw the
2004-01-26  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcurvestool.c
	* app/widgets/gimphistogramview.c: use dark_gc instead of
	text_aa_gc to draw the histogram and curves grid lines. dark_gc is
	slightly lighter, looks better and fixes bug #132565.
2004-01-26 16:45:01 +00:00
Simon Budig 9d8df85168 do nothing in _button_press when the tool is in the VECTORS_FINISHED
2004-01-26  Simon Budig  <simon@gimp.org>

	* app/tools/gimpvectortool.c: do nothing in _button_press when
	the tool is in the VECTORS_FINISHED state.
	Fixes bug #132508.
2004-01-25 23:51:18 +00:00
Michael Natterer 00c525abbc fiddle with the passed channel index only for GRAYA drawables, not for all
2004-01-24  Michael Natterer  <mitch@gimp.org>

	* tools/pdbgen/pdb/color.pdb (levels, curves): fiddle with the
	passed channel index only for GRAYA drawables, not for all GRAY
	drawables. Fixes bug #132322.

	* tools/pdbgen/pdb/color.pdb: regenerated.

	* app/tools/gimpcurvestool.[ch]
	* app/tools/gimplevelstool.[ch]: fixed the same bug here. It never
	occured because the "channel" field was accidentially initialized
	with the correct value and never changed after.
2004-01-24 18:35:49 +00:00
Michael Natterer 613e328f13 added boolean return value to GimpTool::initialize(). Returning FALSE
2004-01-21  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimptool.[ch]: added boolean return value to
	GimpTool::initialize(). Returning FALSE means the tool could not
	be initialized and doesn't want to receive button events.
	Return TRUE from the default implementation.

	* app/tools/tool_manager.[ch]: added boolean return value to
	tool_manager_initialize_active(). Don't set the tool's display or
	drawable if initialize() returns FALSE.

	* app/display/gimpdisplayshell-callbacks.c: don't send button
	events to the tool if initialize() returns FALSE.

	* app/tools/gimpbrightnesscontrasttool.c
	* app/tools/gimpcolorbalancetool.c
	* app/tools/gimpcolorizetool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimphuesaturationtool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpposterizetool.c
	* app/tools/gimpthresholdtool.c: return FALSE for NULL and indexed
	drawables.

	* app/tools/gimpimagemaptool.c: always return TRUE because our
	subclasses already checked if the active drawable is OK.

	* app/tools/gimptransformtool.c: return FALSE for layers with
	masks. Fixes bug #132089. Some random cleanups.
2004-01-21 16:07:48 +00:00
Michael Natterer 73d258eb3d renamed info_dialog_popdown() to info_dialog_hide() and
2004-01-21  Michael Natterer  <mitch@gimp.org>

	* app/gui/info-dialog.[ch]: renamed info_dialog_popdown() to
	info_dialog_hide() and info_dialog_popup() to info_dialog_present().
	Added info_dialog_show() which just shows the dialog without
	calling gtk_window_present().

	* app/gui/info-window.c
	* app/gui/view-commands.c
	* app/tools/gimptransformtool.c: changed accordingly.

	* app/tools/gimpcroptool.c
	* app/tools/gimpperspectivetool.c
	* app/tools/gimprotatetool.c
	* app/tools/gimpscaletool.c
	* app/tools/gimpsheartool.c: use info_dialog_show() so the dialog
	doesn't grab the focus away from the canvas. Fixes bug #132041.
2004-01-21 11:16:57 +00:00
Michael Natterer 1eee624d25 if there is a floating selection, anchor it before adding the text layer.
2004-01-19  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimptexttool.c (gimp_text_tool_create_layer): if there
	is a floating selection, anchor it before adding the text layer.
	Fixes bug #127451.

	Also fixed some issues with undo. Addresses, but does not fix
	bug #124969 and bug #130985.
2004-01-19 17:21:53 +00:00
Sven Neumann 6d506d51bb include "libgimpbase/gimpbase.h" where needed; removed now unnecessary
2004-01-19  Sven Neumann  <sven@gimp.org>

	* app/*/*.c: include "libgimpbase/gimpbase.h" where needed; removed
	now unnecessary inclusions of "file/file-utils.h".
2004-01-19 01:54:11 +00:00
Sven Neumann a70698c4d9 removed file_utils_filename_to_utf8() ...
2004-01-19  Sven Neumann  <sven@gimp.org>

	* app/file/file-utils.[ch]: removed file_utils_filename_to_utf8() ...

	* libgimpbase/gimputils.[ch]: ... and added it here as
	gimp_filename_to_utf8(). Added some docs that promise less than
	the current implementation holds so that we can change the
	implementation later.

	* app/*/*.c: use gimp_filename_to_utf8() where
	file_utils_filenames_to_utf8() has been used before.

	* libgimpbase/gimpbase.def: changed accordingly.

	* configure.in: reset GIMP_INTERFACE_AGE.
2004-01-19 01:08:43 +00:00
Sven Neumann 2eafd75021 code cleanup; draw in the expose_event handler only.
2004-01-19  Sven Neumann  <sven@gimp.org>

	* app/tools/gimplevelstool.[ch]: code cleanup; draw in the
	expose_event handler only.
2004-01-18 23:23:48 +00:00
Michael Natterer 65c83a6c57 use gimp_drawable_bytes_with_alpha().
2004-01-18  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpinktool.c (ink_set_paint_area): use
	gimp_drawable_bytes_with_alpha().
2004-01-18 20:37:41 +00:00
Sven Neumann 4a234e4421 do a proper fix for bug #131680.
2004-01-16  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcroptool.c (crop_recalc): do a proper fix for bug
	#131680.
2004-01-16 16:13:56 +00:00
David Odin 04d7e139c4 bloc some signals before destroying the info dialog box, to prevent
* app/tools/gimpcroptool.c: bloc some signals before destroying the
info dialog box, to prevent accessing to freed memory fixes bug #131680
2004-01-16 15:09:52 +00:00
Michael Natterer 0af39061b6 Fixed bug #78732 (don't paste off screen):
2004-01-15  Michael Natterer  <mitch@gimp.org>

	Fixed bug #78732 (don't paste off screen):

	* app/display/gimpdisplayshell-transform.[ch]: added new function
	gimp_display_shell_untransform_viewport() which returns the
	visible rectangle of the image in image coordinates.

	* app/core/gimp-edit.[ch] (gimp_edit_paste): added viewport
	parameters and changed positioning of the pasted layer as follows:

	- if there is a selection, center on the selection (just as before).
	- if there is no viewport, center on the active drawable.
	- if the viewport intersects with the active drawable, center
	  on the intersection.
	- if the viewport does *not* intersect with the active drawable,
	  center on the active drawable (off-screen, but better than pasting
	  something that will be invisible due to floating selection clipping).
	- if there is no active drawable, center on the viewport.
	- if there is no active drawable and no viewport, center on the image.

	* app/widgets/gimpbufferview.c (gimp_buffer_view_paste_clicked)
	(gimp_buffer_view_paste_into_clicked)
	* app/display/gimpdisplayshell-dnd.c (gimp_display_shell_drop_buffer)
	* app/gui/edit-commands.c (edit_paste_cmd_callback)
	(edit_paste_into_cmd_callback): ask the shell for the viewport
	and pass it to gimp_edit_paste().

	* app/display/gimpdisplayshell-dnd.c
	(gimp_display_shell_drop_drawable): center the created layer on
	the viewport.

	* app/tools/gimpmovetool.c (gimp_move_tool_button_release): use
	gimp_display_shell_untransform_viewport() (its code was taken from
	here).

	* tools/pdbgen/pdb/edit.pdb: pass "no viewport" to gimp_edit_paste().

	* app/pdb/edit_cmds.c: regenerated.
2004-01-15 14:36:43 +00:00
Tor Lillqvist 18485018b3 Add new function file_utils_filename_to_utf8(), which is to be used when
2004-01-14  Tor Lillqvist  <tml@iki.fi>

	* app/file/file-utils.[ch]: Add new function
	file_utils_filename_to_utf8(), which is to be used when converting
	file names (which are kept in the on-disk encoding) to UTF-8 for
	passing to GTK, or to g_print() etc.

	* app/*/*.c: Call file_utils_filename_to_utf8(). Should fix most
	of the warnings generated by non-UTF8 pathnames. See #130118.

	* libgimpbase/gimpenv.b: Document that gimp_directory() etc return
	strings in the on-disk encoding.

	* libgimpmodule/gimpmodule.c: Convert filenames to UTF-8 (using
	g_filename_to_utf8()) before passing to g_print().
2004-01-14 02:03:37 +00:00
Michael Natterer 3bee156b6e Allow invoking the text tool by double clicking a text layer in the layers
2004-01-13  Michael Natterer  <mitch@gimp.org>

	Allow invoking the text tool by double clicking a text layer in
	the layers dialog, just like the path tool is invoked when double
	clicking a path.

	* app/tools/gimptexttool.[ch]: added empty
	gimp_text_tool_set_layer() stub. Sven, your turn...

	* app/gui/layers-commands.[ch]: added layers_text_tool() which
	invokes the text tool on text layers and falls back to
	layers_edit_layer_query() otherwise.
	Added layers_text_tool_cmd_callback() for the layers menu.

	* app/gui/layers-menu.c: added "Text Tool" menu item and hide
	it for layers which are no text layers.

	* app/gui/dialogs-constructors.c (dialogs_layer_list_view_new):
	use layers_text_tool() as "activate" function.
2004-01-13 19:08:16 +00:00
Michael Natterer 9eaace417f renamed gimp_histogram_nchannels() to gimp_histogram_n_channels().
2004-01-13  Michael Natterer  <mitch@gimp.org>

	* app/base/gimphistogram.[ch]: renamed gimp_histogram_nchannels()
	to gimp_histogram_n_channels().

	* app/core/gimpdrawable-histogram.c: removed silly double negation
	logic. Cleanup.

	* app/widgets/gimphistogrameditor.c
	* app/widgets/gimphistogramview.c: adjust the GimpHistogramChannel
	for GRAYA images to make sure we pick alpha from the right slot.

	* app/tools/gimpcurvestool.c
	* app/tools/gimplevelstool.c: removed the same hack here and call
	gimp_histogram_view_set_channel() with the correct enum value.

	* tools/pdbgen/pdb/color.pdb (levels, curves, histogram): fiddle
	with enum values here too so GRAY* drawables produce the correct
	results.

	Fixed precondition checks and set "success" in a uniform way all
	over the place.

	Use gimp_drawable_calculate_histogram() instead of duplicating its
	code here.

	(started with a patch from Pedro Gimeno. Fixes bug #109078)

	* app/pdb/color_cmds.c: regenerated.
2004-01-13 11:51:45 +00:00
Michael Natterer 856c4eeedb Enabled/fixed moving of channels and layer masks (was something between
2004-01-12  Michael Natterer  <mitch@gimp.org>

	Enabled/fixed moving of channels and layer masks (was something
	between disabled and broken before).

	* app/tools/gimpeditselectiontool.h (enum EditType): added new
	values EDIT_CHANNEL_TRANSLATE and EDIT_LAYER_MASK_TRANSLATE.

	* app/tools/gimpmovetool.c (gimp_move_tool_button_press): look at
	the type of the active drawable and invoke GimpEditSelectionTool
	accordingly.

	(gimp_move_tool_cursor_update): don't show the "bad" cursor when
	the active drawable is a channel or layer mask.

	* app/tools/gimpeditselectiontool.c: changed/enabled moving of
	channels and layer masks to work similar to selection mask moving:

	- Show only the item's outline while moving and do the actual move
	  on button_release.
	- Fixed/generalized some code to cope with the fact that we move
	  the linked layers/vectors *while* moving but the moved channel
	  itself *after* moving.
	- Draw the channel's/mask's bounding box instead of its boundary
	  if the boundary is empty (if all its values are either below or
	  above HALF_WAY).
2004-01-12 14:13:24 +00:00
Michael Natterer 84458f5b95 removed GimpTool::cursor_update() implementation (which was there only to
2004-01-02  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimppainttool.c: removed GimpTool::cursor_update()
	implementation (which was there only to stop drawing the brush
	preview when the mouse leaves the canvas). Instead, look at
	shell->proximity in GimpTool::oper_update() and just don't start
	drawing the preview if proximity is FALSE.

	* app/display/gimpdisplay.c (gimp_display_delete): set
	gdisp->shell to NULL *before* gtk_widget_destroy()ing the shell so
	our tool callbacks don't dispatch stuff while the shell is in the
	middle of being destroyed.

	Both changes fix bug #129374, though the latter is the fix for the
	real problem.
2004-01-02 17:36:45 +00:00
Simon Budig c1350d177a Fixed missing undo step when moving (components of) the path. Don't add an
2003-12-31  Simon Budig  <simon@gimp.org>

	* app/tools/gimpvectortool.[ch]: Fixed missing undo step when
	moving (components of) the path. Don't add an undo step when
	nothing changes.

	Also rephrased the help strings in the statusbar to be shorter
	and encourage the user to try shift. Fixes bug #124025.
2003-12-31 02:10:09 +00:00
Sven Neumann d9ee8e8c30 fixed table packing.
2003-12-31  Sven Neumann  <sven@gimp.org>

	* app/tools/gimptextoptions.c (gimp_text_options_gui): fixed
	table packing.
2003-12-31 00:42:35 +00:00
Simon Budig e95b38e66c Do not move anchors in edit mode.
2003-12-30  Simon Budig  <simon@gimp.org>

	* app/tools/gimpvectortool.c: Do not move anchors in edit mode.

	Fixes bug #124973.
2003-12-30 22:22:54 +00:00
Michael Natterer 2bfb425ce1 update the crop dialog in crop_recalc(), not in gimp_crop_tool_draw().
2003-12-19  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpcroptool.c: update the crop dialog in
	crop_recalc(), not in gimp_crop_tool_draw().
2003-12-19 21:03:22 +00:00
Simon Budig 7914b59223 Removed private statusbar gdisplay pointer. Now help texts are only shown
2003-12-19  Simon Budig  <simon@gimp.org>

	* app/tools/gimpvectortool.[ch]: Removed private statusbar
	gdisplay pointer. Now help texts are only shown on the gdisp
	of the tool. Fixes bug #128209
2003-12-19 19:23:37 +00:00
Michael Natterer 37a9a0838d restore the cap_style and join_style properties for the XOR GdkGC to the
2003-12-17  Michael Natterer  <mitch@gimp.org>

	* app/display/gimpcanvas.c (gimp_canvas_gc_new): restore the
	cap_style and join_style properties for the XOR GdkGC to the
	values GimpDrawTool's GC used to have. Fixes the result of
	gdk_draw_segments().

	* app/tools/gimpfuzzyselecttool.c (gimp_fuzzy_select_tool_motion):
	CLAMP the threshold to its possible values when setting it in the
	selection options.

	(gimp_fuzzy_select_tool_button_release): restore the original
	threshold after selecting.
2003-12-17 12:59:06 +00:00
Hans Breuer 1baa2d4581 [ I've postponed my reservations against pangoft2/fontconfig/freetype2
2003-12-12  Hans Breuer  <hans@breuer.org>

	[
	 I've postponed my reservations against pangoft2/fontconfig/freetype2
	 usage, so The Gimp should now build with msvc without patching it.
	]

	* app/makefile.msc app/text/makefile.msc : use $(PANGOFT2_CFLAGS) etc.

	* libgimpthumb/makefile.msc : (new file)
	* makefile.msc : added libgimpthumb

	* libgimpthumb/gimpthumbnail.c : include gimpwin32-io.h
	* libgimpthumb/gimpthumb-utils.c : don't compare size pointer
	with GIMP_THUMB_SIZE_FAIL but *size

	* plug-ins/makefile.msc : handle libgimpoldpreview

	* plug-ins/common/decompose.c : define cbrt() if not __GLIBC__

	* plug-ins/common/winclipboard.c : make it compile without gimpcompat.h

	* plug-ins/imagemap/imagemap_csim_lex.c : its a generated file
	but still win32/msvc has no unistd.h

	* plug-ins/pygimp/makefile.msc : (new file) to use the binary you
	need to patch glib, see bug #98737

	* plug-ins/libgimpoldpreview.c : use <libgimp/gimp.h> instead of "gimp.h"

	* **/Makefile.am : added makefile.msc to EXTRA_DIST
2003-12-13 01:35:19 +00:00
Michael Natterer 2d8df2555f app/tools/gimpblendoptions.c (gimp_blend_options_gui)
2003-12-12  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpblendoptions.c (gimp_blend_options_gui)
	* app/tools/gimpcoloroptions.c (gimp_color_options_gui)
	* app/tools/gimpinkoptions.c (gimp_ink_options_gui): removed calls
	to gtk_frame_set_shadow_type (frame, GTK_SHADOW_ETCHED_IN) because
	that's the default anyway.
2003-12-12 11:41:08 +00:00
Michael Natterer b59f5e9057 call gimp_color_options_new, not gimp_histogram_options_new.
2003-12-12  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpcurvestool.c (gimp_curves_tool_register): call
	gimp_color_options_new, not gimp_histogram_options_new.
2003-12-12 10:53:41 +00:00
Sven Neumann 7478a4d12a use GimpHistogramOptions instead of GimpColorOptions and connect the
2003-12-12  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcurvestool.c: use GimpHistogramOptions instead of
	GimpColorOptions and connect the options to the histogram view.
2003-12-12 00:17:04 +00:00
Michael Natterer a1c3265e09 added a hack that allows to render the histogram in a brighter color.
2003-12-12  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimphistogramview.[ch]: added a hack that allows to
	render the histogram in a brighter color. Fixed initial range for
	views that are not selectable.

	* app/tools/gimpcurvestool.[ch]: replaced the GtkDrawingArea by a
	bright GimpHistogramView and render the curves tool controls on
	top of the histogram. Fixes bug #71633.
2003-12-11 23:35:17 +00:00
Michael Natterer e72b406a5f applied (modified) patch from Ed Halley which adds "quintile marks". Fixes
2003-12-11  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimphistogramview.[ch]: applied (modified) patch
	from Ed Halley which adds "quintile marks". Fixes bug #129050.
	Render the histogram on a base_gc background and use text_gc and
	text_aa_gc for rendering the histogram and the helper lines.
	Fixed rendering of the 1px border around the histogram. Removed
	separate drawing of baseline, left and right helper lines and draw
	a rectangle which marks the entire area of possible values. Fixed
	size_request calculation. Added missing getters. Cleanup.

	* app/tools/gimpcurvestool.c: use the same color scheme as the
	histogram.

	* app/tools/gimpcurvestool.c (curves_load,save_callback)
	* app/tools/gimplevelstool.c (levels_load,save_callback):
	gtk_window_present() the file dialog if it is already visible.
2003-12-11 13:57:03 +00:00
Sven Neumann e5f0ed85e2 an XOR line was being drawn twice; spotted by Marco Munari.
2003-12-08  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpcroptool.c (gimp_crop_tool_draw): an XOR line was
	being drawn twice; spotted by Marco Munari.
2003-12-08 09:52:58 +00:00
Michael Natterer cbfbc2b269 changed the range of the "lightness" parameter to [-100..+100], where -100
2003-11-18  Michael Natterer  <mitch@gimp.org>

	* app/base/colorize.[ch]: changed the range of the "lightness"
	parameter to [-100..+100], where -100 results in pure black and
	+100 in pure white. Default to lightness == 0 so the initial
	transform changes just the colors while keeping the original
	lightness.

	* app/tools/gimpcolorizetool.[ch]: changed accordingly. Reordered
	the scales to be in HSL order.
2003-11-18 16:06:47 +00:00
Michael Natterer 56863fac49 support '|'-separated lists of dialog identifiers and raise any of them if
2003-11-18  Michael Natterer  <mitch@gimp.org>

	* app/widgets/gimpdialogfactory.[ch]
	(gimp_dialog_factory_dialog_raise): support '|'-separated lists of
	dialog identifiers and raise any of them if it is already open, or
	the first dialog in the list otherwise.

	* app/gui/dialogs-commands.c (dialogs_create_dockable_cmd_callback):
	removed the same functionality here.

	* app/gui/edit-commands.c
	* app/tools/gimppaintoptions-gui.c
	* app/tools/gimptextoptions.c
	* app/widgets/gimpdevicestatus.c
	* app/widgets/gimptoolbox-indicator-area.c: pass lists of dialog
	identifiers to gimp_dialog_factory_dialog_raise().
2003-11-18 12:28:15 +00:00
Michael Natterer 976816a5f4 app/gui/file-dialog-utils.[ch] app/gui/file-open-dialog.c
2003-11-17  Michael Natterer  <mitch@gimp.org>

	* app/gui/file-dialog-utils.[ch]
	* app/gui/file-open-dialog.c
	* app/gui/file-save-dialog.c
	* app/gui/gradients-commands.c
	* app/gui/vectors-commands.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimplevelstool.c
	* app/widgets/gimperrorconsole.c
	* app/widgets/gimptexteditor.c
	* libgimpwidgets/gimpfileselection.c: don't access the "ok_button"
	and "cancel_button" members of GtkFileSelection. Instead, connect
	to GtkDialog::response(). Feels better and reduces code which
	depends on the to-be-deprecated GtkFileSelection. Changed border
	widths to match the 6px border width of other GIMP dialogs.
	File selections in plug-ins will follow...
2003-11-17 18:29:59 +00:00
Hans Breuer b23682bf8e still unacceptable patched to compile without FT2, see bug #113681
2003-11-16  Hans Breuer  <hans@breuer.org>

	* app/text/*.c : still unacceptable patched to compile
	without FT2, see bug #113681

	* **makefile.msc : updated

	* app/config/gimpconfig-dump.c : include gimpwin32-io.h

	* app/plug-in/plug-ins.c : don't depend on g_print handling
	%s with NULL pointers, it doesn't anymore with glib cvs at
	least not on win32

	* app/widgets/gimppropwidgets.c
	  libgimpbase/gimputils.c
	  libgimpwidgets/gimpmemsizeentry.c :
	sorry about the mess, need to work-around a stupi not able
	to cast from guint64 to double

	* app/widgets/gimppropwidgets.c (gimp_prop_memsize_entry_new) :
	avoid 'overflow in floating-point constant arithmetic' by disabling
	an imho alays questionable g_return_val_if_fail() for _MSC_VER only

	* libgimpmodule/gimpmodule.def : sorted

	* libgimpwidgets/gimpfileselection.c : removed unused S_ISDIR
	definition

	* app/gui/themes.c : filenames in rc files need to be escaped
2003-11-16 21:20:14 +00:00
Michael Natterer 2ed4be61fe remove unused variables.
2003-11-16  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimprectselecttool.c
	(gimp_rect_select_tool_button_release): remove unused variables.
2003-11-16 20:13:42 +00:00
Daniel Rogers cf5b620d5e app/tools/gimpellipseselecttool.c app/tools/gimprectselectool.c Includes
2003-11-15  Daniel Rogers  <daniel@phasevelocity.org>
        * app/tools/gimpellipseselecttool.c
        * app/tools/gimprectselectool.c
        * app/tools/gimprectselect.h: Includes changes from Sven.
        Fixes a bug with alt-draging ellipse and rect selections
        on small pixel areas.
2003-11-15 23:39:37 +00:00