Commit Graph

118 Commits

Author SHA1 Message Date
Michael Natterer 2ed407b54f app/tools/gimptool.[ch] add "gboolean proximity" parameter to
2006-03-25  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimptool.[ch]
	* app/tools/tool_manager.[ch]: add "gboolean proximity" parameter
	to GimpTool::oper_update() in order to emphasize its importance
	and to avoid peeking around in the GimpDisplayShell struct.

	* app/tools/gimpbycolorselecttool.c
	* app/tools/gimpclonetool.c
	* app/tools/gimpcolorpickertool.c
	* app/tools/gimpcolortool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimpforegroundselecttool.c
	* app/tools/gimpiscissorstool.c
	* app/tools/gimpmovetool.c
	* app/tools/gimpnewrectselecttool.c
	* app/tools/gimppainttool.c
	* app/tools/gimprectangletool.[ch]
	* app/tools/gimpselectiontool.c
	* app/tools/gimptransformtool.c
	* app/tools/gimpvectortool.c: changed accordingly. Got rid of
	quite some "display/gimpdisplayshell.h" includes.

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_canvas_tool_events): pass shell->proximity to
	tool_manager_oper_update_active().
2006-03-25 14:23:09 +00:00
Michael Natterer 0e7a40face app/tools/gimpclonetool.c app/tools/gimpcurvestool.c
2006-03-25  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpclonetool.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimpforegroundselecttool.c
	* app/tools/gimpselectiontool.c
	* app/tools/gimpvectortool.c (GimpTool::oper_update): don't push
	status messages when shell->proximity is FALSE. Make sure the old
	status message gets popped regardless of shell->proximity's
	value. Fixes stuck status bar messages.
2006-03-25 13:51:13 +00:00
Michael Natterer 8b8c784a5b port to G_DEFINE_TYPE() and friends. Some related cleanup.
2005-12-13  Michael Natterer  <mitch@gimp.org>

	* app/tools/*.c: port to G_DEFINE_TYPE() and friends. Some related
	cleanup.
2005-12-13 09:13:50 +00:00
Michael Natterer 855c4efe30 cleaned up and reordered instance struct and functions. Renamed functions
2005-11-23  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimptoolcontrol.[ch]: cleaned up and reordered
	instance struct and functions. Renamed functions so getters and
	setters actually have "get" and "set" in their names.

	* app/display/gimpdisplayshell-autoscroll.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/tools/gimpaligntool.c
	* app/tools/gimpconvolvetool.c
	* app/tools/gimpdodgeburntool.c
	* app/tools/gimperasertool.c
	* app/tools/gimpfliptool.c
	* app/tools/gimpforegroundselecttool.c
	* app/tools/gimpmagnifytool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimpmovetool.c
	* app/tools/gimpvectortool.c
	* app/tools/tool_manager.c: changed accordingly.
2005-11-23 19:14:05 +00:00
Michael Natterer 68cecb38ff app/tools/gimpaligntool.c app/tools/gimpcolortool.c
2005-11-19  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpaligntool.c
	* app/tools/gimpcolortool.c
	* app/tools/gimpfliptool.c
	* app/tools/gimpmagnifytool.c
	* app/tools/gimpmovetool.c
	* app/tools/gimptransformtool.c
	* app/tools/gimpvectortool.c: started to get rid of all stock GDK
	cursors in preparation of fixing bug #158407.
2005-11-19 22:16:34 +00:00
Michael Natterer c0b1fcb92c cursors/Makefile.am cursors/gimp-tool-cursors.xcf
2005-08-18  Michael Natterer  <mitch@gimp.org>

	* cursors/Makefile.am
	* cursors/gimp-tool-cursors.xcf
	* cursors/modifier-join.png
	* cursors/xbm/modifier-join-mask.xbm
	* cursors/xbm/modifier-join.xbm: images for a "join" cursor modifier.

	* app/widgets/widgets-enums.h
	* app/widgets/gimpcursor.c: add the cursor.

	* app/tools/gimpvectortool.c: use it for connecting strokes.
	Fixes bug #313252.
2005-08-18 21:35:06 +00:00
Simon Budig b2b61dd3c9 small fixes to the cursors - now the handles have their respective cursor
2005-08-10  Simon Budig  <simon@gimp.org>

	* app/tools/gimpvectortool.c: small fixes to the cursors - now
	the handles have their respective cursor as well.
2005-08-10 09:00:58 +00:00
Michael Natterer 6c88e46d72 changed path tool cursor to actually show a path and added 3 new cursors
2005-08-09  Michael Natterer  <mitch@gimp.org>

	* cursors/gimp-tool-cursors.xcf: changed path tool cursor to
	actually show a path and added 3 new cursors which are supposed
	to show a path's anchor, handle and segments. Someone really
	needs to beautify these...

	* cursors/tool-paths.png
	* cursors/xbm/tool-paths-mask.xbm
	* cursors/xbm/tool-paths.xbm: changed accordingly.

	* cursors/Makefile.am
	* cursors/tool-paths-anchor.png
	* cursors/tool-paths-control.png
	* cursors/tool-paths-segment.png
	* cursors/xbm/tool-paths-anchor-mask.xbm
	* cursors/xbm/tool-paths-anchor.xbm
	* cursors/xbm/tool-paths-control-mask.xbm
	* cursors/xbm/tool-paths-control.xbm
	* cursors/xbm/tool-paths-segment-mask.xbm
	* cursors/xbm/tool-paths-segment.xbm: new files.

	* app/widgets/widgets-enums.h (enum GimpToolCursorType): added
	PATH_ANCHOR, PATH_CONTROL and PATH_SEGMENTS.

	* app/widgets/gimpcursor.c: added the new cursors.

	* app/tools/gimpvectortool.c (gimp_vector_tool_cursor_update):
	use them.
2005-08-09 21:22:11 +00:00
Michael Natterer 32d875d070 app/dialogs/module-dialog.c app/dialogs/palette-import-dialog.c
2005-08-03  Michael Natterer  <mitch@gimp.org>

	* app/dialogs/module-dialog.c
	* app/dialogs/palette-import-dialog.c
	* app/gui/gui.c
	* app/tools/gimpcurvestool.c
	* app/tools/gimpimagemaptool.c
	* app/tools/gimplevelstool.c
	* app/tools/gimpvectortool.c
	* app/widgets/gimpaction.c
	* app/widgets/gimpcoloreditor.c
	* app/widgets/gimpcontainerbox.c
	* app/widgets/gimpcontainertreeview.c
	* app/widgets/gimpcursorview.c
	* app/widgets/gimpdnd.c
	* app/widgets/gimpdock.c
	* app/widgets/gimpdockbook.c
	* app/widgets/gimpdrawabletreeview.c
	* app/widgets/gimpeditor.c
	* app/widgets/gimpenumaction.c
	* app/widgets/gimperrordialog.c
	* app/widgets/gimpfileprocview.c
	* app/widgets/gimplayertreeview.c
	* app/widgets/gimpmenudock.c
	* app/widgets/gimpmessagebox.c
	* app/widgets/gimpmessagedialog.c
	* app/widgets/gimppluginaction.c
	* app/widgets/gimpprogressdialog.c
	* app/widgets/gimpsamplepointeditor.c
	* app/widgets/gimpstringaction.c
	* app/widgets/gimptemplateeditor.c
	* app/widgets/gimptoolbox-image-area.c
	* app/widgets/gimptoolbox.c: use canonical names for signals and
	properties.
2005-08-03 09:34:55 +00:00
Sven Neumann 2162eb6691 app/tools/gimpforegroundselectoptions.[ch] some code cleanup; moved stroke
2005-08-02  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpforegroundselectoptions.[ch]
	* app/tools/gimpforegroundselecttool.[ch]: some code cleanup; moved
	stroke width to the tool options.
2005-08-02 16:07:16 +00:00
Sven Neumann 3e74368a3b return FALSE if the keypress event isn't handled because of a display
2005-07-19  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpvectortool.c (gimp_vector_tool_key_press): return
	FALSE if the keypress event isn't handled because of a display
	mismatch.
2005-07-19 21:26:12 +00:00
Sven Neumann 93eab43eef Use the canonical form for signal names.
2005-05-27  Sven Neumann  <sven@gimp.org>

	* (lots of files): Use the canonical form for signal names.
2005-05-27 16:51:39 +00:00
Simon Budig af8320ea63 reset the vector tool to Design mode whenever a new vectors object gets
2005-05-12  Simon Budig  <simon@gimp.org>

	* app/tools/gimpvectortool.c: reset the vector tool to Design
	mode whenever a new vectors object gets connected to the tool.
	This time also when you pick a path in Edit mode (Oops).
2005-05-12 21:35:45 +00:00
Simon Budig 9ddc6cafcc reset the vector tool to Design mode whenever a new vectors object gets
2005-05-11  Simon Budig  <simon@gimp.org>

	* app/tools/gimpvectortool.c: reset the vector tool to Design
	mode whenever a new vectors object gets connected to the tool.

	Attempt to fix #300663, please report there if you like / dislike
	the new behaviour.
2005-05-11 13:59:17 +00:00
Sven Neumann 27042a7b36 app/tools/gimppainttool.[ch] unified tool and paint-tool statusbar APIs.
2005-05-07  Sven Neumann  <sven@gimp.org>

	* app/tools/gimppainttool.[ch]
	* app/tools/gimptool.[ch]: unified tool and paint-tool statusbar APIs.

	* app/tools/gimpblendtool.c
	* app/tools/gimpclonetool.c
	* app/tools/gimpcolortool.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpfuzzyselecttool.c
	* app/tools/gimpmeasuretool.c
	* app/tools/gimpmovetool.c
	* app/tools/gimpnewrectselecttool.c
	* app/tools/gimprectangletool.c
	* app/tools/gimprectselecttool.c
	* app/tools/gimpvectortool.c: changed accordingly.

	* app/tools/gimpselectiontool.c: give more hints in the statusbar.
	Some of the selection tools should probably override these.
2005-05-07 13:24:47 +00:00
Simon Budig 4ba9786d6d Applied Patch by Sven Neumann to use the new statusbar functionality.
2005-04-08  Simon Budig  <simon@gimp.org>

        * app/tools/gimpvectortool.[ch]: Applied Patch by Sven Neumann
        to use the new statusbar functionality.
2005-04-08 13:43:10 +00:00
Sven Neumann fd6d42bb17 set a different help message in polygonal mode. Fixes bug #172051.
2005-03-30  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpvectortool.c (gimp_vector_tool_status_update):
	set a different help message in polygonal mode. Fixes bug #172051.
2005-03-30 14:14:31 +00:00
Michael Natterer 4d03c8862d app/tools/gimpmagnifytool.c (gimp_magnify_tool_init)
2005-02-22  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimpmagnifytool.c (gimp_magnify_tool_init)
	* app/tools/gimpmeasuretool.c (gimp_measure_tool_init)
	* app/tools/gimpvectortool.c (gimp_vector_tool_init): set
	handles_empty_image to TRUE because all these tools work fine
	without active drawable.

	* app/display/gimpdisplayshell-callbacks.c
	(gimp_display_shell_canvas_tool_events): also look at
	handles_empty_image, not only at gimp_image_is_empty() before
	setting the BAD cursor.
2005-02-22 12:16:23 +00:00
Simon Budig fdd150e310 Switch to design mode when Escape gets pressed. Untabbified.
2004-10-25  Simon Budig  <simon@gimp.org>

	* app/tools/gimpvectortool.c: Switch to design mode when
	Escape gets pressed. Untabbified.
2004-10-25 13:29:32 +00:00
Michael Natterer 6e9d0cfa5d added labels ("_Stroke") to the SLEECTION_STROKE and PATH_STROKE stock
2004-10-23  Michael Natterer  <mitch@gimp.org>

	* libgimpwidgets/gimpstock.c: added labels ("_Stroke") to the
	SLEECTION_STROKE and PATH_STROKE stock items so they can be used
	in action areas.

	* app/widgets/gimpstrokeeditor.c: changed mnemonic to no clash
	with "_Stroke" and reordered some code.

	* app/dialogs/stroke-dialog.[ch]: use the passed stock_id instead
	of GTK_STOCK_OK. Added parameters to specify the dialog's title
	so it doesn't say "Stroke Options".

	* app/actions/select-commands.c
	* app/actions/vectors-commands.c
	* app/tools/gimpvectortool.c: pass "Stroke Selection" and "Stroke
	Path" as dialog titles.
2004-10-23 10:28:56 +00:00
Michael Natterer 7d065360c7 configure.in added new directory app/dialogs and link libappdialogs.c into
2004-09-13  Michael Natterer  <mitch@gimp.org>

	* configure.in
	* app/Makefile.am: added new directory app/dialogs and link
	libappdialogs.c into the gimp binary.

	* app/gui/Makefile.am
	* app/gui/gui-types.h
	* app/gui/gui-vtable.c
	* app/gui/gui.c

	* app/gui/about-dialog.[ch]
	* app/gui/authors.h
	* app/gui/color-notebook.[ch]
	* app/gui/convert-dialog.[ch]
	* app/gui/dialogs-constructors.[ch]
	* app/gui/dialogs.[ch]
	* app/gui/file-dialog-utils.[ch]
	* app/gui/file-new-dialog.[ch]
	* app/gui/file-open-dialog.[ch]
	* app/gui/file-open-location-dialog.[ch]
	* app/gui/file-save-dialog.[ch]
	* app/gui/grid-dialog.[ch]
	* app/gui/info-dialog.[ch]
	* app/gui/info-window.[ch]
	* app/gui/module-browser.[ch]
	* app/gui/offset-dialog.[ch]
	* app/gui/palette-import-dialog.[ch]
	* app/gui/preferences-dialog.[ch]
	* app/gui/quit-dialog.[ch]
	* app/gui/resize-dialog.[ch]
	* app/gui/resolution-calibrate-dialog.[ch]
	* app/gui/stroke-dialog.[ch]
	* app/gui/tips-dialog.[ch]
	* app/gui/tips-parser.[ch]
	* app/gui/user-install-dialog.[ch]: removed these files...

	* app/dialogs/Makefile.am
	* app/dialogs/dialogs-types.h

	* app/dialogs/*.[ch]: ...and added them here. Changed some
	filenames like module-browser -> module-dialog.

	* app/app_procs.c
	* app/actions/actions-types.h
	* app/actions/actions.c
	* app/actions/dialogs-actions.c
	* app/actions/dialogs-commands.c
	* app/actions/dockable-commands.c
	* app/actions/drawable-commands.c
	* app/actions/edit-commands.c
	* app/actions/file-commands.c
	* app/actions/gradient-editor-commands.c
	* app/actions/image-commands.c
	* app/actions/layers-commands.c
	* app/actions/palettes-commands.c
	* app/actions/select-commands.c
	* app/actions/templates-commands.c
	* app/actions/templates-commands.h
	* app/actions/vectors-commands.c
	* app/actions/view-commands.c
	* app/display/gimpdisplayshell-cursor.c
	* app/display/gimpdisplayshell-title.c
	* app/display/gimpdisplayshell.[ch]
	* app/tools/gimpcroptool.c
	* app/tools/gimpperspectivetool.c
	* app/tools/gimprotatetool.c
	* app/tools/gimpscaletool.c
	* app/tools/gimpsheartool.c
	* app/tools/gimptransformtool.[ch]
	* app/tools/gimpvectortool.c
	* app/widgets/gimpcolormapeditor.[ch]
	* app/widgets/gimpcolorpanel.c
	* app/widgets/gimpgradienteditor.[ch]
	* app/widgets/gimppaletteeditor.[ch]
	* app/widgets/gimptoolbox-color-area.c
	* menus/toolbox-menu.xml.in
	* tools/authorsgen/authorsgen.pl: changed accordingly.
2004-09-13 15:15:23 +00:00
Sven Neumann d1825782ea avoid excessive use of strdup() and strcmp(). The strings are all constant
2004-08-30  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpvectortool.[ch] (gimp_vector_tool_status_set):
	avoid excessive use of strdup() and strcmp(). The strings are all
	constant anyway.
2004-08-30 15:08:02 +00:00
Simon Budig 96e8b93e2a fixed drawing code to properly update after deleting nodes via
2004-06-28  Simon Budig  <simon@gimp.org>

	* app/tools/gimpvectortool.c: fixed drawing code to properly
	update after deleting nodes via BackSpace/Delete.
2004-06-27 23:00:46 +00:00
Michael Natterer 02b91f6628 app/tools/gimptool.[ch] added boolean return value to
2004-06-24  Michael Natterer  <mitch@gimp.org>

	* app/tools/gimptool.[ch]
	* app/tools/tool_manager.[ch]: added boolean return value to
	GimpTool::key_press() which indicates if the event was handled.

	* app/tools/gimpcroptool.c
	* app/tools/gimpeditselectiontool.[ch]
	* app/tools/gimptransformtool.c
	* app/tools/gimpvectortool.c: return TRUE if the key event was handled.

	* app/tools/gimppainttool.c: removed key_press() implementation.

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpcontrollerkeyboard.[ch]: new controller class
	which takes GdkEventKey and emits controller events for all
	combinations of modifiers and cursor keys.

	* app/widgets/gimpcontrollers.[ch]: added new function
	gimp_controllers_get_keyboard().

	* app/display/gimpdisplayshell-callbacks.c: if a key event was not
	handled by the active tool, dispatch it to the keyboard controller.

	* etc/controllerrc: add a keyboard controller which is configured
	to do the same as the removed gimp_paint_tool_key_press().
2004-06-24 10:16:08 +00:00
William Skaggs b4197cf30e Bill Skaggs <weskaggs@primate.ucdavis.edu>
* app/tools/*.c: HIGify capitalization for dialogs.  More
	progress on bug #123699.
2004-06-23 20:29:46 +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
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
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 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
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
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
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
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
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
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
Simon Budig 832b51b5a8 Since GimpVectorTool is no GimpSelectionTool, it does not make sense to
2003-11-15  Simon Budig  <simon@gimp.org>

	* app/tools/gimpvectoroptions.[ch]: Since GimpVectorTool is no
	GimpSelectionTool, it does not make sense to have
	GimpSelectionOptions for it.

	* app/tools/gimpvectoroptions.c
	* app/tools/gimpvectortool.c: Connect the Buttons to the
	Help system and make the to-selection Button modifier
	aware.
2003-11-14 23:10:24 +00:00
Simon Budig 31a72d1bd3 Add two buttons to the Tool Options
2003-11-14 Simon Budig  <simon@gimp.org>

	* app/tools/gimpvectoroptions.c: Add two buttons to the
	Tool Options

	* app/tools/gimpvectortool.c: Use them for stroking a path
	and converting a path to a selection, to make this functionality
	more obvious.
2003-11-14 03:01:52 +00:00
Simon Budig 1f3702a575 Changed the priority of ALT vs. CTRL. Resolves an small issue with
2003-10-22 Simon Budig  <simon@gimp.org>

        * app/tools/gimpvectortool.c: Changed the priority
        of ALT vs. CTRL. Resolves an small issue with (broken)
        window managers that grab ALT. Implements the suggestion
        from Raymond Ostertag in bug #124971.
2003-10-22 20:55:45 +00:00
Michael Natterer f0372cad0f Treat changes to the selection like changes to any other drawable:
2003-10-06  Michael Natterer  <mitch@gimp.org>

	Treat changes to the selection like changes to any other drawable:

	* app/core/gimpchannel.c
	* app/core/gimpchannel-combine.c: call gimp_drawable_update() after
	changing the channel.

	* app/core/gimpimage.[ch]: added struct GimpImageFlushAccumulator
	with one member "gboolean mask_changed". Connect to "update" of
	the selection and set accum.mask_changed to TRUE in the callback.
	Added default implementation for GimpImage::flush() and emit
	"mask_changed" there.

	Unrelated:
	* app/core/gimpimage.h: removed GimpGuide struct...
	* app/core/gimpimage-guides.h: ...and added it here.

	* app/core/gimpimage-undo-push.c (undo_pop_mask)
	(undo_pop_channel_mod): don't distinguish between selection and
	non-selection channels and just call gimp_drawable_update().

	* app/core/gimpundo.h
	* app/core/gimpimage-undo.c: removed "gboolean mask_changed" from
	the GimpUndoAccumulator struct since we don't have to care about
	that signal explicitly any more.

	* app/display/gimpdisplay-foreach.[ch]: removed gimp_displays_flush().

	* tools/pdbgen/pdb/display.pdb (displays_flush_invoker): call
	gimp_image_flush() on all images so the flush accumulator is
	honored.

	This generalization enables the removal of more special purpose
	code which was needed to treat the selection different:

	* app/core/gimpimage-mask-select.[ch]: removed...

	* app/core/gimpchannel-select.[ch]: ...and added under a new name
	because it's not selection specific any more.

	* app/core/gimpimage-mask.[ch]: removed...

	* app/core/gimpselection.[ch]: ...added the two remaining
	functions here. Removed all calls to gimp_image_mask_changed().

	* app/core/Makefile.am
	* app/core/gimp-edit.c
	* app/core/gimpdrawable-transform.c
	* app/core/gimpimage-scale.c
	* app/core/gimpimage-snap.c
	* app/display/gimpdisplayshell.c
	* app/gui/channels-commands.c
	* app/gui/layers-commands.c
	* app/gui/select-commands.c
	* app/gui/vectors-commands.c
	* app/tools/gimpbycolorselecttool.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpellipseselecttool.c
	* app/tools/gimpfreeselecttool.c
	* app/tools/gimpfuzzyselecttool.c
	* app/tools/gimpiscissorstool.c
	* app/tools/gimprectselecttool.c
	* app/tools/gimptransformtool.c
	* app/widgets/gimpchanneltreeview.c
	* app/widgets/gimpselectioneditor.c
	* app/widgets/gimpvectorstreeview.c
	* app/xcf/xcf-save.c
	* tools/pdbgen/pdb/paths.pdb
	* tools/pdbgen/pdb/selection.pdb
	* tools/pdbgen/pdb/selection_tools.pdb: changed accordingly.

	* app/core/gimpdrawable-bucket-fill.c
	* app/core/gimpimage-colormap.c
	* app/core/gimplayer-floating-sel.c
	* app/core/gimplayer.c
	* app/gui/image-menu.c
	* app/paint/gimppaintcore.c
	* app/tools/gimpcroptool.c
	* app/tools/gimpinkoptions.c
	* app/tools/gimpvectortool.c: removed useless and/or obsolete
	#includes.

	* app/pdb/display_cmds.c
	* app/pdb/paths_cmds.c
	* app/pdb/selection_cmds.c
	* app/pdb/selection_tools_cmds.c: regenerated.
2003-10-06 12:17:11 +00:00
Simon Budig 02f375b8d4 Made the preview respect the aspect ratio and resolutions of the image.
2003-09-29  Simon Budig  <simon@gimp.org>

	* app/widgets/gimppreviewrenderervectors.c: Made the preview
	respect the aspect ratio and resolutions of the image. There
	apparently still is an off-by-one error in it.

	* app/tools/gimpvectortool.c: (Hopefully) fixed a crash when a new
	image gets opened with the vectors tool active.
2003-09-29 16:35:30 +00:00
Simon Budig 2c212214fe Fixed vectors stroking on GRAY* and INDEXED* layers.
2003-09-23  Simon Budig  <simon@gimp.org>

	* app/core/gimpdrawable-stroke.c: Fixed vectors stroking on
	GRAY* and INDEXED* layers.

	* app/tools/gimpvectortool.c: Made the polygonal mode more
	consistent.
2003-09-22 23:19:22 +00:00
Simon Budig fa450f09b5 Previous commit got a broken pipe. 2003-09-21 19:09:56 +00:00
Simon Budig 1ac86b5a90 Show a little help in the status bar. Maybe the functions I implemented to
2003-09-19  Simon Budig  <simon@gimp.org>

	* app/tools/gimpvectortool.[ch]: Show a little help in the
	status bar. Maybe the functions I implemented to track
	the status of the status bar should live in a parent class.
	Still behaves a little weird, but I need help to fix it and it
	does not crash, so I committed it anyway...  :-)
2003-09-18 23:58:37 +00:00
Simon Budig 66a49483a7 Renamed the modes of the vector tools: - Design (creative stuff: placing
2003-09-18  Simon Budig  <simon@gimp.org>

	* app/tools/tools-enums.h: Renamed the modes of the vector tools:
	    - Design  (creative stuff: placing of new anchors /
	                               moving anchors/segments)
	    - Edit    (technical stuff: inserting/deleting anchors/segments)
	    - Move    (moving strokes/vectors)

	Jimmac: These need icons...  :-)

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

	* app/tools/gimpvectoroptions.c
	* app/tools/gimpvectortool.c: changed accordingly.
2003-09-18 14:54:54 +00:00
Michael Natterer 6b2ca702ad app/paint/Makefile.am removed... ...and added.
2003-09-18  Michael Natterer  <mitch@gimp.org>

	* app/paint/Makefile.am
	* app/paint/paint.[ch]: removed...
	* app/paint/gimp-paint.[ch]: ...and added.

	* app/core/gimp.c: changed accordingly.

	* app/tools/Makefile.am
	* app/tools/tools.[ch]: removed...

	* app/tools/gimp-tools.[ch]: ...and added. Added
	gimp_tools_restore() and gimp_tools_save() and moved the entire
	tool registering and tool_options loading/saving code here. Call
	tool_manager_init() from gimp_tools_init() and tool_manager_exit()
	from gimp_tools_exit().

	* app/tools/tool_manager.[ch]: removed the code which now lives
	in gimp-tools.[ch]. The tool manager now has no knowledge about
	individual tools any more and just handles the active_tool
	and the tool part of tool <-> display interaction.
	Removed tool_manager_get_info_by_type().

	* app/tools/gimpvectortool.c (gimp_vector_tool_register): the
	tool's identifier is "gimp-vector-tool", not "gimp-path-tool".

	* app/app_procs.c
	* app/display/gimpdisplayshell-callbacks.c
	* app/gui/vectors-commands.c
	* app/tools/gimppainttool.c: changed accordingly.
2003-09-18 13:51:10 +00:00
Simon Budig 3b1c873724 app/vectors/gimpstroke.[ch] added the endpoint of the segment to the list
2003-09-18  Simon Budig  <simon@gimp.org>

	* app/vectors/gimpstroke.[ch]
	* app/vectors/gimpbezierstroke.c: (gimp_stroke_nearest_point_get)
	added the endpoint of the segment to the list of returned values.

	* app/tools/gimpdrawtool.[ch]: (gimp_draw_tool_on_vectors_curve)
	return the endpoint also.

	* app/tools/gimpvectortool.[ch]: Use that to activate the
	to-be-changed anchors when dragging on the curve directly.

	* app/tools/gimpmovetool.[ch]: changed accordingly.
2003-09-18 13:20:40 +00:00
Simon Budig 90bf56c75b Cursor keys now move the currently active anchors, SHIFT and CTRL increase
2003-09-18  Simon Budig  <simon@gimp.org>

	* app/tools/gimpvectortool.c: Cursor keys now move the currently
	active anchors, SHIFT and CTRL increase the steps.

	* MAINTAINERS: Added myself in an attack of hubris...
2003-09-18 00:42:26 +00:00
Simon Budig 66cc2b98b5 app/vectors/gimpstroke.[ch] Changed gimp_*_anchor_select to accept the
2003-09-17  Simon Budig  <simon@gimp.org>

	* app/vectors/gimpstroke.[ch]
	* app/vectors/gimpvectors.[ch]: Changed gimp_*_anchor_select to
	accept the selection state as an argument.

	* app/tools/gimpdrawtool.[ch]: Added "exclusive" boolean parameter
	to gimp_draw_tool_on_vectors_handle(), so that you can specify
	that you just get exactly the type of anchor you want to have.

	* app/tools/gimpvectortool.[ch]: Handling of multiple selected
	anchors: Shift-Clicking in Extend mode selects them, you can
	move them together.
2003-09-17 21:49:45 +00:00