Commit Graph

112 Commits

Author SHA1 Message Date
Sven Neumann 26ae4062a7 app/core/core-enums.[ch] add vectors in an undo-group.
2003-09-13  Sven Neumann  <sven@gimp.org>

	* app/core/core-enums.[ch]
	* app/vectors/gimpvectors-import.c: add vectors in an undo-group.

	* app/gui/vectors-commands.c: added simple file selection dialogs
	for vectors import and export.
2003-09-13 02:33:30 +00:00
Sven Neumann e898287e48 simplified the parser and make it optionally create multiple vectors
2003-09-13  Sven Neumann  <sven@gimp.org>

	* app/vectors/gimpvectors-import.c: simplified the parser and
	make it optionally create multiple vectors again.
2003-09-13 01:31:50 +00:00
Sven Neumann 804315b8cf rewrote large parts of the SVG parser. It now handles nested groups and
2003-09-13  Sven Neumann  <sven@gimp.org>

	* app/vectors/gimpvectors-import.c: rewrote large parts of the SVG
	parser. It now handles nested groups and transformations. Still not
	perfect but close.
2003-09-12 22:18:09 +00:00
Sven Neumann 2360c02c15 return a transformation matrix in preparation for nested transforms.
2003-09-12  Sven Neumann  <sven@gimp.org>

	* app/vectors/gimpvectors-import.c (parse_svg_viewbox): return a
	transformation matrix in preparation for nested transforms.
2003-09-12 17:06:00 +00:00
Sven Neumann 7dd98d215c added gimp_matrix3_affine().
2003-09-12  Sven Neumann  <sven@gimp.org>

	* libgimpmath/gimpmatrix.[ch]: added gimp_matrix3_affine().

	* app/vectors/gimpvectors-import.c: added (yet unused) funtion to
	parse SVG transform attributes.

	* app/vectors/gimpvectors-export.c: fixed a stupid bug.
2003-09-12 13:23:01 +00:00
Simon Budig 8de8105450 Don't lose the last segment of closed paths when exporting...
2003-09-12  Simon Budig  <simon@gimp.org>

	* app/vectors/gimpvectors-export.c: Don't lose the last
	segment of closed paths when exporting...
2003-09-12 09:37:30 +00:00
Simon Budig f549e6946c Implemented more useful SVG export.
2003-09-12  Simon Budig  <simon@gimp.org>

	* app/vectors/gimpvectors-export.c: Implemented more useful
	SVG export.
2003-09-12 00:11:25 +00:00
Sven Neumann 8bd0ec7685 added new function gimp_drawable_transform_matrix_flip().
2003-09-11  Sven Neumann  <sven@gimp.org>

	* app/core/gimpdrawable-transform-utils.[ch]: added new function
	gimp_drawable_transform_matrix_flip().

	* app/vectors/gimpstroke.[ch]
	* app/vectors/gimpvectors.c: don't push the complex GimpItem
	transformation API down to GimpStroke. Instead setup the matrices
	in GimpVectors and use a simpler API for GimpStroke.

	* app/vectors/gimpvectors-import.c: changed accordingly.

	* app/vectors/gimpvectors-export.c: close the <path> element.
2003-09-11 01:23:58 +00:00
Sven Neumann 7772ca4606 allow to optionally export all paths from an image into a single SVG file.
2003-09-11  Sven Neumann  <sven@gimp.org>

	* app/vectors/gimpvectors-export.[ch]: allow to optionally export
	all paths from an image into a single SVG file.

	* app/gui/vectors-commands.c: changed accordingly.
2003-09-11 01:23:58 +00:00
Sven Neumann 918651ad72 added new function gimp_drawable_transform_matrix_flip().
2003-09-11  Sven Neumann  <sven@gimp.org>

	* app/core/gimpdrawable-transform-utils.[ch]: added new function
	gimp_drawable_transform_matrix_flip().

	* app/vectors/gimpstroke.[ch]
	* app/vectors/gimpvectors.c: don't push the complex GimpItem
	transformation API down to GimpStroke. Instead setup the matrices
	in GimpVectors and use a simpler API for GimpStroke.

	* app/vectors/gimpvectors-import.c: changed accordingly.

	* app/vectors/gimpvectors-export.c: close the <path> element.
2003-09-11 01:23:58 +00:00
Simon Budig b04af97000 Implemented gimp_bezier_stroke_arcto () that creates an elliptical arc in
2003-09-11  Simon Budig  <simon@gimp.org>

	* vectors/gimpbezierstroke.[ch]: Implemented
	gimp_bezier_stroke_arcto () that creates an elliptical arc
	in the way SVG works.

	* vectors/gimpvectors-import.c: use it.
2003-09-11 01:23:58 +00:00
Sven Neumann f8ea814c69 added new function gimp_drawable_transform_matrix_flip().
2003-09-11  Sven Neumann  <sven@gimp.org>

	* app/core/gimpdrawable-transform-utils.[ch]: added new function
	gimp_drawable_transform_matrix_flip().

	* app/vectors/gimpstroke.[ch]
	* app/vectors/gimpvectors.c: don't push the complex GimpItem
	transformation API down to GimpStroke. Instead setup the matrices
	in GimpVectors and use a simpler API for GimpStroke.

	* app/vectors/gimpvectors-import.c: changed accordingly.

	* app/vectors/gimpvectors-export.c: close the <path> element.
2003-09-11 01:23:58 +00:00
Sven Neumann 2e33617669 replaced GTK_CFLAGS by GDK_PIXBUF_CFLAGS.
2003-09-11  Sven Neumann  <sven@gimp.org>

	* app/vectors/Makefile.am (INCLUDES): replaced GTK_CFLAGS by
	GDK_PIXBUF_CFLAGS.

	* app/vectors/gimpvectors-export.c: added a first draft of
	GimpVectors SVG export.

	* app/gui/vectors-commands.c (vectors_export_cmd_callback): call
	gimp_vectors_export() with a hardcoded filename.
2003-09-10 23:00:45 +00:00
Sven Neumann 0037f5a7ea app/vectors/gimpvectors-import.[ch] allow to optionally create a
2003-09-11  Sven Neumann  <sven@gimp.org>

	* app/vectors/gimpvectors-import.[ch]
	* app/gui/vectors-commands.c: allow to optionally create a
	GimpVectors object per <path> element. Made this the default until
	there's a GUI for this.
2003-09-10 22:11:02 +00:00
Sven Neumann 693b9011c1 finished basic SVG path import.
2003-09-10  Sven Neumann  <sven@gimp.org>

	* app/vectors/gimpvectors-import.c: finished basic SVG path import.
2003-09-10 20:27:20 +00:00
Sven Neumann 0700992ea4 call gimp_vectors_import(). Hardcoded filename to path.svg for now.
2003-09-10  Sven Neumann  <sven@gimp.org>

	* app/gui/vectors-commands.c (vectors_import_cmd_callback): call
	gimp_vectors_import(). Hardcoded filename to path.svg for now.

	* app/vectors/gimpvectors-import.c: more work on the SVG parser.
2003-09-10 16:52:45 +00:00
Sven Neumann 9506c7570e started to add framework for SVG parser.
2003-09-10  Sven Neumann  <sven@gimp.org>

	* app/vectors/gimpvectors-import.c: started to add framework for
	SVG parser.
2003-09-10 14:55:54 +00:00
Sven Neumann eb790849de app/vectors/Makefile.am app/vectors/gimpvectors-export.[ch] added stubs
2003-09-10  Sven Neumann  <sven@gimp.org>

	* app/vectors/Makefile.am
	* app/vectors/gimpvectors-export.[ch]
	* app/vectors/gimpvectors-import.[ch]: added stubs for
	import/export of paths.

	* app/vectors/gimpvectors-preview.h: cosmetics.
2003-09-10 13:05:00 +00:00
Sven Neumann 4a4fa137d0 allow to optionally export all paths from an image into a single SVG file.
2003-09-11  Sven Neumann  <sven@gimp.org>

	* app/vectors/gimpvectors-export.[ch]: allow to optionally export
	all paths from an image into a single SVG file.

	* app/gui/vectors-commands.c: changed accordingly.
2003-09-10 13:05:00 +00:00
Sven Neumann 62cd231745 app/vectors/Makefile.am app/vectors/gimpvectors-export.[ch] added stubs
2003-09-10  Sven Neumann  <sven@gimp.org>

	* app/vectors/Makefile.am
	* app/vectors/gimpvectors-export.[ch]
	* app/vectors/gimpvectors-import.[ch]: added stubs for
	import/export of paths.

	* app/vectors/gimpvectors-preview.h: cosmetics.
2003-09-10 13:05:00 +00:00
Simon Budig a0cc73de42 Made gimp_vectors_compat_get_points accept more paths gracefully. It now
2003-09-09  Simon Budig  <simon@gimp.org>

	* app/vectors/gimpvectors-compat.[ch]: Made
	gimp_vectors_compat_get_points accept more paths gracefully. It
	now is sufficient if there is up to one open stroke in the
	vectors object - it does not have to be the last one.

	Added function to determine if all vectors can be saved in
	compatibility mode.

	* app/vectors/gimpanchor.[ch]: Made GimpAnchor a boxed type.
	* app/vectors/gimpstroke.[ch]: Add two properties to gimpstroke:
	"closed" and "control-points" (the latter is
	G_PARAM_CONSTRUCT_ONLY). Added functions to get the points that
	determine the shape of the stroke - necessary for proper saving.

	* app/xcf/xcf-private.h: added new PROP_VECTORS and XcfStrokeType.

	* app/xcf/xcf-load.c: Be able to load PROP_VECTORS, make loading
	of PROP_PATHS ignore empty paths.

	* app/xcf/xcf-save.c: Added code for saving PROP_VECTORS,
	disabled by default. Define NEW_SAVE_CODE if you want to test
	it. No guarantees are made about the forward compatibility of
	the format used.
2003-09-09 15:46:59 +00:00
Dave Neary 1c0b586e33 app/vectors/gimpvectors.[ch] app/vectors/gimpstroke.[ch] Cleanup - removed
2003-09-07  Dave Neary  <bolsh@gimp.org>

        * app/vectors/gimpvectors.[ch]
        * app/vectors/gimpstroke.[ch]
        * app/vectors/gimpbezierstroke.c: Cleanup - removed libart
        from the included headers in the .h files, don't pass around
        libart objects any more. Still stub code.
2003-09-07 18:09:58 +00:00
Simon Budig 078d575b31 Implemented gimp_bezier_stroke_arcto () that creates an elliptical arc in
2003-09-11  Simon Budig  <simon@gimp.org>

	* vectors/gimpbezierstroke.[ch]: Implemented
	gimp_bezier_stroke_arcto () that creates an elliptical arc
	in the way SVG works.

	* vectors/gimpvectors-import.c: use it.
2003-09-07 18:09:58 +00:00
Dave Neary e88298a35c app/vectors/gimpvectors.[ch] app/vectors/gimpstroke.[ch] Cleanup - removed
2003-09-07  Dave Neary  <bolsh@gimp.org>

        * app/vectors/gimpvectors.[ch]
        * app/vectors/gimpstroke.[ch]
        * app/vectors/gimpbezierstroke.c: Cleanup - removed libart
        from the included headers in the .h files, don't pass around
        libart objects any more. Still stub code.
2003-09-07 18:09:58 +00:00
Michael Natterer 47ba171afd app/display/display-types.h app/tools/tools-types.h
2003-09-07  Michael Natterer  <mitch@gimp.org>

	* app/display/display-types.h
	* app/tools/tools-types.h
	* app/vectors/vectors-types.h
	* app/widgets/widgets-types.h: removed some forgotten cruft.

	* app/vectors/gimpbezierstroke.h
	* app/vectors/gimpstroke.h
	* app/vectors/gimpvectors.h: added class struct typedefs here.
2003-09-07 10:29:10 +00:00
Simon Budig 966d58c5c0 Implemented gimp_bezier_stroke_arcto () that creates an elliptical arc in
2003-09-11  Simon Budig  <simon@gimp.org>

	* vectors/gimpbezierstroke.[ch]: Implemented
	gimp_bezier_stroke_arcto () that creates an elliptical arc
	in the way SVG works.

	* vectors/gimpvectors-import.c: use it.
2003-09-07 10:29:09 +00:00
Michael Natterer 1345a6d062 app/display/display-types.h app/tools/tools-types.h
2003-09-07  Michael Natterer  <mitch@gimp.org>

	* app/display/display-types.h
	* app/tools/tools-types.h
	* app/vectors/vectors-types.h
	* app/widgets/widgets-types.h: removed some forgotten cruft.

	* app/vectors/gimpbezierstroke.h
	* app/vectors/gimpstroke.h
	* app/vectors/gimpvectors.h: added class struct typedefs here.
2003-09-07 10:29:09 +00:00
Sven Neumann f6f49b2328 redid the fix for the compiler warning: made gimp_vectors_to_art_vpath()
2003-09-07  Sven Neumann  <sven@gimp.org>

	* app/vectors/gimpvectors.[ch]: redid the fix for the compiler
	warning: made gimp_vectors_to_art_vpath() take a const GimpVectors
	again, but don't freeze/thaw it since it isn't changed anyway.
2003-09-07 00:03:36 +00:00
Sven Neumann 99dba1ca01 app/vectors/gimpbezierstroke.c app/vectors/gimpstroke.[ch] removed
2003-09-06  Sven Neumann  <sven@gimp.org>

	* app/vectors/gimpbezierstroke.c
	* app/vectors/gimpstroke.[ch]
	* app/vectors/gimpvectors.[ch]: removed compiler warnings, cleaned
	up coding style issues,
2003-09-06 20:00:38 +00:00
Dave Neary 1d4720e560 Ooops! Sorry for the oversight. app/vectors/gimpvectors.[ch]
2003-09-06  Dave Neary  <bolsh@gimp.org>

        Ooops! Sorry for the oversight.
        * app/vectors/gimpvectors.[ch]
        * app/vectors/gimpstroke.[ch]
        * app/vectors/gimpbezierstroke.c: Changed include order
        to conform to the coding standards in devel-docs/includes.txt
        (which should really be integrated into HACKING).
2003-09-06 18:40:48 +00:00
Dave Neary 0508bdcc4b Include libart headers app/vectors/gimpvectors.[ch]
2003-09-06  Dave Neary  <bolsh@gimp.org>

	* app/vectors/Makefile.am: Include libart headers
	* app/vectors/gimpvectors.[ch]
	* app/vectors/gimpstroke.[ch]
	* app/vectors/gimpbezierstroke.[ch]: Committing unfinished,
	useless stub code for converting a GimpVectors object to a
	libart vector path. Will pad this out later.
2003-09-06 16:39:08 +00:00
Simon Budig 430b96b682 Bah. Fixed stupid error from my last commit.
2003-09-04  Simon Budig  <simon@gimp.org>

	* app/vectors/gimpbezierstroke.c: Bah. Fixed stupid error from
	my last commit.
2003-09-04 13:08:03 +00:00
Simon Budig ea865689d0 Changed the direct dragging of a segment a bit, so that close to one
2003-09-04  Simon Budig  <simon@gimp.org>

	* app/vectors/gimpbezierstroke.c: Changed the direct dragging
	of a segment a bit, so that close to one endpoint only one
	handle gets moved.
2003-09-04 11:54:55 +00:00
Simon Budig 70088acbcd app/vectors/gimpstroke.c Two small hacks to make the editing behave more
2003-09-03  Simon Budig  <simon@gimp.org>

	* app/vectors/gimpstroke.c
	* app/vectors/gimpbezierstroke.c: Two small hacks to make the
	editing behave more symmetric (no more a user visible difference
	between extending to the start or to the end of a stroke).

	* app/tools/gimpvectortool.c: Use dashed lines for the connection
	between the anchor and the handles. Looks great IMHO.
2003-09-03 21:35:24 +00:00
Sven Neumann bbfc737efa oops
oops
2003-09-02 14:07:43 +00:00
Sven Neumann b20358c07f removed a superfluous call to g_object_ref().
2003-09-02  Sven Neumann  <sven@gimp.org>

	* app/tools/gimpeditselectiontool.c (init_edit_selection): removed
	a superfluous call to g_object_ref().

	* app/vectors/gimpvectors.c (gimp_vectors_copy_strokes): free the
	old list of strokes.
2003-09-02 14:00:38 +00:00
Sven Neumann e924a1372b app/text/gimptextlayout-render.c (gimp_text_layout_render)
2003-09-02  Sven Neumann  <sven@gimp.org>

	* app/text/gimptextlayout-render.c (gimp_text_layout_render)
	* app/widgets/gimpfontselection.c (gimp_font_selection_set_fontname)
	* app/widgets/gimptexteditor.c (gimp_text_editor_new)
	* app/gui/file-save-dialog.c (file_save_ok_callback): plugged
	some memleaks found using memprof.

	* app/vectors/gimpvectors.c: implemented the finalize method.

	* app/vectors/gimpstroke.c: minor code cleanup.

	* app/core/gimpdrawable.c (gimp_drawable_finalize)
	* app/core/gimplayer.c (gimp_layer_finalize)
	* app/core/gimpparasitelist.c (gimp_parasite_list_finalize):
	removed useless assertions.
2003-09-02 13:43:26 +00:00
Simon Budig f1b283bdde duplicate the closed property too. fixes Bug #120961.
2003-09-02  Simon Budig  <simon@gimp.org>

	* app/vectors/gimpstroke.c: duplicate the closed property too.
	fixes Bug #120961.
2003-09-02 10:18:49 +00:00
Michael Natterer dcb6f225d9 added new virtual function GimpItem::stroke().
2003-09-01  Michael Natterer  <mitch@gimp.org>

	* app/core/gimpitem.[ch]: added new virtual function
	GimpItem::stroke().

	* app/core/gimpchannel.c
	* app/vectors/gimpvectors.c: implement GimpItem::stroke().

	* app/core/gimpimage-mask.[ch] (gimp_image_mask_stroke): changed
	signature to match gimp_item_stroke() (the selection mask *really*
	should be a GimpChannel subclass).
	Removed global variable "gboolean gimp_image_mask_stroking"...

	* app/core/gimpimage.[ch]: ...and added "gboolean mask_stroking"
	to the GimpImage struct.

	* app/gui/vectors-commands.[ch]: removed vectors_stroke_vectors().

	* app/widgets/widgets-types.h: removed GimpStrokeItemFunc typedef.

	* app/widgets/gimpvectorstreeview.[ch]: removed "stroke_item_func"
	member and use gimp_item_stroke() instead.

	* app/gui/dialogs-constructors.c (dialogs_vectors_list_view_new)
	* app/gui/edit-commands.c (edit_stroke_cmd_callback)
	* app/gui/vectors-commands. (vectors_stroke_cmd_callback)
	* app/widgets/gimpselectioneditor.c
	(gimp_selection_editor_stroke_clicked)
	* tools/pdbgen/pdb/edit.pdb (gimp_edit_stroke): changed accordingly.

	* app/pdb/edit_cmds.c: regenerated.

	Note that there is no GUI for "stroke channel", although it would
	be utterly cool to have one, since currently slelection stroking
	cannot be masked by a selection (because we stroke the selection).
	Anyway, if anyone has an idea how to trigger "stroke channel" with
	another drawable active (the one to stroke to), please let me
	know...
2003-09-01 17:56:44 +00:00
Simon Budig f09f3657d4 Introduced function to compare two gimpcoords
2003-09-01  Simon Budig  <simon@gimp.org>

	* app/vectors/gimpcoordmath.[ch]: Introduced function to compare
	two gimpcoords

	* app/vectors/gimpstroke.[ch]: virtualized gimp_stroke_close.

	* app/vectors/gimpbezierstroke.c: made the _close function check,
	if there is an unneeded segment (CCA-Sequence with all the same
	coordinates) at the gap to be closed. If so, remove it.
2003-09-01 00:39:47 +00:00
Simon Budig 3ef7043437 fixed it to create proper strokes...
2003-09-01  Simon Budig  <simon@gimp.org>

	* vectors/gimpbezierstroke.c: fixed it to create proper strokes...
2003-08-31 23:22:16 +00:00
Sven Neumann cf35e23578 use the new bezier stroke API.
2003-09-01  Sven Neumann  <sven@gimp.org>

	* app/text/gimptext-vectors.c: use the new bezier stroke API.

	* app/vectors/gimpbezierstroke.c (gimp_bezier_stroke_new_moveto):
	pass a NULL anchor to the first call of gimp_bezier_stroke_extend().
2003-08-31 22:33:50 +00:00
Simon Budig 835d7ab7f7 Implemented moveto/lineto/ conicto/curveto-Interface. Moved helper
2003-08-31  Simon Budig  <simon@gimp.org>

	* app/vectors/gimpbezierstroke.[ch]: Implemented moveto/lineto/
	conicto/curveto-Interface.
	Moved helper functions to calculate with GimpCoords into...

	* app/vectors/gimpcoordmath.[ch]: ...these new files.

	* app/vectors/Makefile.am: Changed accordingly.
2003-08-31 21:47:26 +00:00
Simon Budig e7d0cfadc7 Do not modify the selection state of the anchors. When extending
2003-08-29  Simon Budig  <simon@gimp.org>

	* app/vectors/gimpbezierstroke.c: Do not modify the selection
	state of the anchors. When extending EXTEND_EDITABLE return
	the anchor created (not the handle at the end of the list)

	* app/tools/tools-enums.h: Added new mode-enum for the vector tool.
	* app/tools/tools-enums.c: regenerated

	* app/tools/gimpvectortool.[ch]: Implemented moving (Shortcuts
	ALT and ALT+CTRL. The whole assignment of modifiers right now
	gets revised. Right now you have to use the Tool options to
	switch between the modes of operation. Connecting strokes now
	works in Insert/Delete mode by clicking on startpoint and
	dragging to target endpoint.

	I will write a mail to gimp-devel when the shortcuts are
	setteled a bit more. Sorry for the inconvenience.
2003-08-29 15:17:06 +00:00
Simon Budig f4b390a4f4 app/core/gimpimage-mask-select.c Fixed two crashes when a path with a
2003-08-28  Simon Budig  <simon@gimp.org>

	* app/core/gimpimage-mask-select.c
	* app/vectors/gimpbezierstroke.c: Fixed two crashes when a path
	with a single node in a stroke got converted to a selection or got
	stroked.
2003-08-28 16:53:09 +00:00
Michael Natterer c4dfccd8db Enabled type-preserving DND of all kinds of items between different
2003-08-27  Michael Natterer  <mitch@gimp.org>

	Enabled type-preserving DND of all kinds of items between
	different images. Fixes bug #119983.

	* app/core/gimpitem.[ch]: added new virtual function
	GimpItem::convert() which duplicates an item for another image.

	* app/core/gimplayer.[ch]: removed gimp_layer_new_from_drawable()
	and made it a GimpItem::convert() implementation.

	* app/vectors/gimpvectors.[ch]: removed gimp_vectors_convert() and
	made it a GimpItem::convert() implementation.

	* app/widgets/gimpitemtreeview.[ch]: removed GimpConvertItemFunc
	typedef and function pointer in GimpItemTreeViewClass since
	we can simply call gimp_item_convert() now.

	* app/widgets/gimplayertreeview.c
	* app/widgets/gimpvectorstreeview.c
	* app/display/gimpdisplayshell-dnd.c
	* tools/pdbgen/pdb/layer.pdb: changed accordingly.

	* app/pdb/layer_cmds.c: regenerated.
2003-08-27 17:21:49 +00:00
Simon Budig 08bd7a19b9 app/vectors/gimpstroke.[ch] Implemented function to connect two strokes.
2003-08-27  Simon Budig  <simon@gimp.org>

	* app/vectors/gimpstroke.[ch]
	* app/vectors/gimpbezierstroke.c: Implemented function to
	connect two strokes.

	* app/tools/gimpvectortool.[ch]: Use it. Right now you have
	to click on one endpoint, and then SHIFT+CTRL+ALT-Click on
	the other endpoint.

	Suggestions on how to solve that more sanely are welcome...
2003-08-27 00:31:20 +00:00
Simon Budig 47571782a7 Intruduce casting macro GIMP_ANCHOR.
2003-08-26  Simon Budig  <simon@gimp.org>

	* app/vectors/gimpanchor.h: Intruduce casting macro GIMP_ANCHOR.

	* app/tools/gimpvectortool.c
	* app/vectors/gimpstroke.c
	* app/vectors/gimpbezierstroke.c
	* app/vectors/gimpvectors-compat.c: Use it for code readibility.
2003-08-26 14:29:10 +00:00
Simon Budig 4571b6b5bd Minor code cleanup that automagically makes SHIFT while curve-dragging
2003-08-26  Simon Budig  <simon@gimp.org>

	* app/vectors/gimpbezierstroke.c: Minor code cleanup that
	automagically makes SHIFT while curve-dragging work...
2003-08-26 08:59:30 +00:00
Simon Budig 009766a881 app/vectors/gimpstroke.[ch] Implemented direct moving of the curve. Whee!
2003-08-26  Simon Budig  <simon@gimp.org>

	* app/vectors/gimpstroke.[ch]
	* app/vectors/gimpbezierstroke.c: Implemented direct moving of the
	curve. Whee!  :-)

	* app/tools/gimpvectortool.[ch]: Use it.
2003-08-26 00:27:03 +00:00