gimp/app/paint
Michael Natterer c8b4394d71 Reimplemented the undo history:
2003-02-20  Michael Natterer  <mitch@gimp.org>

	Reimplemented the undo history:

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

	Changes/cleanups to the undo system to enable/simplify the new
	undo history implementation:

	* app/core/core-types.h: removed enum undo_event_t. Removed the
	GimpImage parameter from GimpUndoPopFunc and GimpUndoFreeFunc
	because GimpUndo has a GimpImage pointer now (see below).

	* app/core/core-enums.[ch]: added enum GimpUndoEvent. Added an
	enum value for REDO_EXPIRED.

	* app/core/gimpimage.[ch]: added a GimpUndo pointer to the
	"undo_event" signal which needs to be passed for all events except
	UNDO_FREE.

	* app/display/gimpdisplayshell-handlers.c: changed accordingly.

	* app/core/gimpundo.[ch]: added a GimpImage pointer to the
	GimpUndo struct. Removed GimpImage parameters all over the
	place. Added preview stuff. The preview creation needs to be
	triggered explicitly using gimp_undo_create_preview() because the
	GimpUndo can't know when it's possible to create the preview.

	* app/core/gimpimage-undo-push.c
	* app/paint/gimppaintcore-undo.c
	* app/tools/gimptransformtool-undo.c: changed accordingly, cleanup.

	* app/core/gimpundostack.[ch]: ditto. Return the freed undo from
	gimp_undo_stack_free_bottom(). Removed unused container signal
	handlers.

	* app/core/gimpimage-undo.c: free the redo stack the same way old
	undos are freed (from bottom up). Emit "undo_event" with event ==
	REDO_EXPIRED for each removed redo.

	* app/core/gimpmarshal.list: added new marshallers.

	New undo history implementation:

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimpundoeditor.[ch]
	* app/widgets/gimpundopreview.[ch]: new widgets for the undo
	step previews and the history itself.

	* app/widgets/gimppreview-utils.c: added GimpUndoPreview to the
	list of possible preview types.

	* app/gui/dialogs-constructors.[ch]
	* app/gui/dialogs-menu.c
	* app/gui/dialogs.c
	* app/gui/image-menu.c
	* app/gui/toolbox-menu.c: removed the old and added the new undo
	history to the dialog factory and the various dialog menus.

	* app/widgets/gimpdnd.[ch]: don't warn if a GType has no
	corresponding DND type. Instead, return FALSE from the function
	that failed.

	* app/widgets/gimppreview.c: check the return value of gimpdnd
	functions.  Not only add drag sources but also remove them when no
	longer needed.

	* app/widgets/gimpselectioneditor.h: removed unneeded inclusion of
	"gui/gui-types.h".
2003-02-20 12:47:42 +00:00
..
.cvsignore Core/UI separation for the paint tools: 2002-02-14 19:31:16 +00:00
gimpairbrush.c Moved the undo step implementations to the core and pass around lots of 2003-02-14 14:14:29 +00:00
gimpairbrush.h Made GimpToolOptions a GimpContext subclass and objectified all tool 2003-02-05 14:39:40 +00:00
gimpairbrushoptions.c Added object properties for almost all tool_options values and registered 2003-02-07 17:12:21 +00:00
gimpairbrushoptions.h Added object properties for almost all tool_options values and registered 2003-02-07 17:12:21 +00:00
gimpclone.c Moved the undo step implementations to the core and pass around lots of 2003-02-14 14:14:29 +00:00
gimpclone.h Made GimpToolOptions a GimpContext subclass and objectified all tool 2003-02-05 14:39:40 +00:00
gimpcloneoptions.c Added object properties for almost all tool_options values and registered 2003-02-07 17:12:21 +00:00
gimpcloneoptions.h Added object properties for almost all tool_options values and registered 2003-02-07 17:12:21 +00:00
gimpconvolve.c Moved the undo step implementations to the core and pass around lots of 2003-02-14 14:14:29 +00:00
gimpconvolve.h Made GimpToolOptions a GimpContext subclass and objectified all tool 2003-02-05 14:39:40 +00:00
gimpconvolveoptions.c Added object properties for almost all tool_options values and registered 2003-02-07 17:12:21 +00:00
gimpconvolveoptions.h Added object properties for almost all tool_options values and registered 2003-02-07 17:12:21 +00:00
gimpdodgeburn.c Moved the undo step implementations to the core and pass around lots of 2003-02-14 14:14:29 +00:00
gimpdodgeburn.h Made GimpToolOptions a GimpContext subclass and objectified all tool 2003-02-05 14:39:40 +00:00
gimpdodgeburnoptions.c Added object properties for almost all tool_options values and registered 2003-02-07 17:12:21 +00:00
gimpdodgeburnoptions.h Added object properties for almost all tool_options values and registered 2003-02-07 17:12:21 +00:00
gimperaser.c Moved the undo step implementations to the core and pass around lots of 2003-02-14 14:14:29 +00:00
gimperaser.h Made GimpToolOptions a GimpContext subclass and objectified all tool 2003-02-05 14:39:40 +00:00
gimperaseroptions.c Added object properties for almost all tool_options values and registered 2003-02-07 17:12:21 +00:00
gimperaseroptions.h Added object properties for almost all tool_options values and registered 2003-02-07 17:12:21 +00:00
gimpink-blob.c added app/display/ and app/plug-in/. Empty for now except for the types 2001-08-17 14:27:31 +00:00
gimpink-blob.h Made GimpToolOptions a GimpContext subclass and objectified all tool 2003-02-05 14:39:40 +00:00
gimpink.c Moved the undo step implementations to the core and pass around lots of 2003-02-14 14:14:29 +00:00
gimpink.h app/tools/gimpairbrushtool.[ch] app/tools/gimpbezierselecttool.[ch] 2002-05-03 11:31:08 +00:00
gimpinkoptions.c add a new variable to hold the brush vbox so the we return the correct 2003-02-15 21:53:10 +00:00
gimpinkoptions.h simplified everything a lot by merging the public GimpContextPropType enum 2003-02-09 17:32:52 +00:00
gimppaintbrush.c Moved the undo step implementations to the core and pass around lots of 2003-02-14 14:14:29 +00:00
gimppaintbrush.h app/core/Makefile.am new object for registering GimpPaintCore subclasses, 2002-02-27 13:57:49 +00:00
gimppaintcore-kernels.h Core/UI separation for the paint tools: 2002-02-14 19:31:16 +00:00
gimppaintcore-stroke.c Added object properties for almost all tool_options values and registered 2003-02-07 17:12:21 +00:00
gimppaintcore-stroke.h added gimp_paint_core_stroke_vectors() which strokes the whole vector 2002-02-26 03:19:47 +00:00
gimppaintcore-undo.c Reimplemented the undo history: 2003-02-20 12:47:42 +00:00
gimppaintcore-undo.h Moved the undo step implementations to the core and pass around lots of 2003-02-14 14:14:29 +00:00
gimppaintcore.c Moved the undo step implementations to the core and pass around lots of 2003-02-14 14:14:29 +00:00
gimppaintcore.h Separated tool_options creation from tool registration so we don't 2002-06-17 10:34:28 +00:00
gimppaintoptions.c Added object properties for almost all tool_options values and registered 2003-02-07 17:12:21 +00:00
gimppaintoptions.h Added object properties for almost all tool_options values and registered 2003-02-07 17:12:21 +00:00
gimppencil.c Moved the undo step implementations to the core and pass around lots of 2003-02-14 14:14:29 +00:00
gimppencil.h Made GimpToolOptions a GimpContext subclass and objectified all tool 2003-02-05 14:39:40 +00:00
gimpsmudge.c Moved the undo step implementations to the core and pass around lots of 2003-02-14 14:14:29 +00:00
gimpsmudge.h Made GimpToolOptions a GimpContext subclass and objectified all tool 2003-02-05 14:39:40 +00:00
gimpsmudgeoptions.c Added object properties for almost all tool_options values and registered 2003-02-07 17:12:21 +00:00
gimpsmudgeoptions.h Added object properties for almost all tool_options values and registered 2003-02-07 17:12:21 +00:00
gimpsourcecore.c Moved the undo step implementations to the core and pass around lots of 2003-02-14 14:14:29 +00:00
gimpsourcecore.h Made GimpToolOptions a GimpContext subclass and objectified all tool 2003-02-05 14:39:40 +00:00
gimpsourceoptions.c Added object properties for almost all tool_options values and registered 2003-02-07 17:12:21 +00:00
gimpsourceoptions.h Added object properties for almost all tool_options values and registered 2003-02-07 17:12:21 +00:00
Makefile.am Moved the undo step implementations to the core and pass around lots of 2003-02-14 14:14:29 +00:00
makefile.msc updated 2002-12-01 14:53:17 +00:00
paint-enums.c the virtual serialize_property() returning FALSE doesn't mean the 2003-02-08 15:27:51 +00:00
paint-enums.h the virtual serialize_property() returning FALSE doesn't mean the 2003-02-08 15:27:51 +00:00
paint-types.h Moved the undo step implementations to the core and pass around lots of 2003-02-14 14:14:29 +00:00
paint.c Moved the undo step implementations to the core and pass around lots of 2003-02-14 14:14:29 +00:00
paint.h Added some kind of paint core registry. It's ugly and will change... 2002-02-26 02:00:02 +00:00