git.blender.org - blender.git/rss - source/blender/editors/sculpt_paint/paint_undo.c historyhttps://git.blender.org/gitweb/gitweb.cgi/blender.git/history?f=source/blender/editors/sculpt_paint/paint_undo.c
The official Blender Foundation treeenBlender Foundationstatic/git-logo.pnggit.blender.org - blender.git/rss - source/blender/editors/sculpt_paint/paint_undo.c historyhttps://git.blender.org/gitweb/gitweb.cgi/blender.git/history?f=source/blender/editors/sculpt_paint/paint_undo.c
Sat, 31 Mar 2018 18:40:37 +0000Sat, 31 Mar 2018 18:40:37 +0000gitweb v.2.22.0/2.22.0Undo: unified undo system w/ linear historyCampbell Barton <ideasman42@gmail.com>Mon, 19 Mar 2018 13:17:59 +0000https://git.blender.org/gitweb/gitweb.cgi/blender.git/commitdiff/651b8fb14eb6ee5cbfa98bffe80a966a0753b14ehttps://git.blender.org/gitweb/gitweb.cgi/blender.git/commitdiff/651b8fb14eb6ee5cbfa98bffe80a966a0753b14e
Undo: unified undo system w/ linear history
Undo: unified undo system w/ linear history
- Use a single undo history for all operations.
- UndoType's are registered and poll the context to check if they
should be used when performing an undo push.
- Mode switching is used to ensure the state is correct before
undo data is restored.
- Some undo types accumulate changes (image & text editing)
others store the state multiple times (with de-duplication).
This is supported by checking UndoStack.mode `ACCUMULATE` / `STORE`.
- Each undo step stores ID datablocks they use with utilities to help
manage restoring correct ID's.
Needed since global undo is now mixed with other modes undo.
- Currently performs each undo step when going up/down history
Previously this wasn't done, making history fail in some cases.
This can be optimized to skip some combinations of undo steps.
grease-pencil is an exception which has not been updated
since it integrates undo into the draw-session.
See D3113

]]>
GSOC 2013 paintAntony Riakiotakis <kalast@gmail.com>Mon, 21 Jul 2014 10:02:05 +0000https://git.blender.org/gitweb/gitweb.cgi/blender.git/commitdiff/f745564e4ee791e4faf804b09ce975b882f4f8d9https://git.blender.org/gitweb/gitweb.cgi/blender.git/commitdiff/f745564e4ee791e4faf804b09ce975b882f4f8d9
GSOC 2013 paint
GSOC 2013 paint
Yep, at last it's here!
There are a few minor issues remaining but development can go on in
master after discussion at blender institute.
For full list of features see:
http://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.72/Painting
Thanks to Sergey and Campbell for the extensive review and to the
countless artists that have given their input and reported issues during
development.

]]>
Fix T39196, Dynamic Topology Undo Applied to Wrong MeshAntony Riakiotakis <kalast@gmail.com>Tue, 13 May 2014 17:59:54 +0000https://git.blender.org/gitweb/gitweb.cgi/blender.git/commitdiff/33df6aa12ea6f627b5b238e6eec64cffb2acdbd4https://git.blender.org/gitweb/gitweb.cgi/blender.git/commitdiff/33df6aa12ea6f627b5b238e6eec64cffb2acdbd4
Fix T39196, Dynamic Topology Undo Applied to Wrong Mesh
Fix T39196, Dynamic Topology Undo Applied to Wrong Mesh
Undoing nodes that do not belong to the current object will cause the
saved bmesh log entry to be reverted instead. This entry can belong to
another object though.
This is easy to fix by enforcing name matching (this was borrowed by
edit mode but can definitely be improved) between current object name
and undo node name and deleting older entries.
However there are complications. Deleting dyntopo entries in this way
can leave a brush stroke as first dyntopo log entry. This can present
issues if we attempt to delete that entry since it's deleted mesh
elements may now have had their ids (which would still be valid at the
time) cleaned up. This can result in crashing if we attempt to resculpt
on the mesh. To fix this I have disabled releasing the deleted entries.
This entanglement between bm_log and undo is quite volatile but I hope
the system works better now.
Also minor cleanup, fix unneeded check warning

]]>
Fix T39156 part 2: Add support for image paint operations in undoAntony Riakiotakis <kalast@gmail.com>Thu, 13 Mar 2014 20:35:26 +0000https://git.blender.org/gitweb/gitweb.cgi/blender.git/commitdiff/93684d5b5e3dcc6b9f0d4130ff5bdab86d2f7981https://git.blender.org/gitweb/gitweb.cgi/blender.git/commitdiff/93684d5b5e3dcc6b9f0d4130ff5bdab86d2f7981
Fix T39156 part 2: Add support for image paint operations in undo
Fix T39156 part 2: Add support for image paint operations in undo
history operator (Ctrl + Alt + Z).
This will only show paint operations now while in an image paint mode.
The caveat is that user can delete previous paint operations too (even
on images not on the canvas currently) so it needs some care. This is
consistent with regular undo behaviour though.
Sculpting also suffers from lack of Undo history support, this will be
added in a separate commit.

]]>
Fix T37326 inversion of image channels did not do an undo push. Now only do an undo... Antony Riakiotakis <kalast@gmail.com>Thu, 5 Dec 2013 20:28:14 +0000https://git.blender.org/gitweb/gitweb.cgi/blender.git/commitdiff/8e5b02359b8590ac84afe7a61dd9a6dc67cd632ehttps://git.blender.org/gitweb/gitweb.cgi/blender.git/commitdiff/8e5b02359b8590ac84afe7a61dd9a6dc67cd632e
Fix T37326 inversion of image channels did not do an undo push. Now only do an undo...
Fix T37326 inversion of image channels did not do an undo push. Now only do an undo if we are in image paint mode and use the paint undo stack. Also added missing GPU update.:

]]>
code cleanup: use single define for undo string size, was 64 mostly, but 512 in the UI.Campbell Barton <ideasman42@gmail.com>Mon, 10 Sep 2012 01:55:58 +0000https://git.blender.org/gitweb/gitweb.cgi/blender.git/commitdiff/61d40c38e0dd9961223c64c27caf09e8b9c5d488https://git.blender.org/gitweb/gitweb.cgi/blender.git/commitdiff/61d40c38e0dd9961223c64c27caf09e8b9c5d488
code cleanup: use single define for undo string size, was 64 mostly, but 512 in the UI.
code cleanup: use single define for undo string size, was 64 mostly, but 512 in the UI.