Undo System: remove accumulate/store modes
authorCampbell Barton <ideasman42@gmail.com>
Tue, 5 Feb 2019 03:24:11 +0000 (14:24 +1100)
committerCampbell Barton <ideasman42@gmail.com>
Wed, 6 Feb 2019 00:52:04 +0000 (11:52 +1100)
commite535ff44ffd686def7aafec401acec657f5a614c
tree39910c4513dd223378f71af51730fae3a62ac3ae
parent8996e26116f063ce28a9784899fc36d87f31dabe
Undo System: remove accumulate/store modes

This complicated handling of undo steps in a generic way
especially switching between undo systems that stored data to ones
that accumulated changes.

Now each undo system must treat it's steps as check-point,
internally it can apply/rewind changes.

This commit also fixes projection paint where the object mode wasn't
following the undo steps.
18 files changed:
source/blender/blenkernel/BKE_undo_system.h
source/blender/blenkernel/intern/undo_system.c
source/blender/editors/armature/editarmature_undo.c
source/blender/editors/curve/editcurve_undo.c
source/blender/editors/curve/editfont_undo.c
source/blender/editors/include/ED_paint.h
source/blender/editors/lattice/editlattice_undo.c
source/blender/editors/mesh/editmesh_undo.c
source/blender/editors/metaball/editmball_undo.c
source/blender/editors/physics/particle_edit_undo.c
source/blender/editors/sculpt_paint/paint_curve_undo.c
source/blender/editors/sculpt_paint/paint_image.c
source/blender/editors/sculpt_paint/paint_image_proj.c
source/blender/editors/sculpt_paint/paint_image_undo.c
source/blender/editors/sculpt_paint/sculpt_undo.c
source/blender/editors/space_image/image_ops.c
source/blender/editors/space_text/text_undo.c
source/blender/editors/undo/memfile_undo.c