[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [42509] trunk/blender/source/blender/ editors/object/object_vgroup.c: Disable redo for some vertex group operators to prevent confusing
Sergey Sharybin
sergey.vfx at gmail.com
Thu Dec 8 12:02:34 CET 2011
Revision: 42509
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=42509
Author: nazgul
Date: 2011-12-08 11:02:29 +0000 (Thu, 08 Dec 2011)
Log Message:
-----------
Disable redo for some vertex group operators to prevent confusing
situation when changing properties in redo panel messes up things.
This should help in cases described in #29527: Vgroup assign, remove and undo
Modified Paths:
--------------
trunk/blender/source/blender/editors/object/object_vgroup.c
Modified: trunk/blender/source/blender/editors/object/object_vgroup.c
===================================================================
--- trunk/blender/source/blender/editors/object/object_vgroup.c 2011-12-08 04:51:03 UTC (rev 42508)
+++ trunk/blender/source/blender/editors/object/object_vgroup.c 2011-12-08 11:02:29 UTC (rev 42509)
@@ -2194,7 +2194,10 @@
ot->exec= vertex_group_remove_exec;
/* flags */
- ot->flag= OPTYPE_REGISTER|OPTYPE_UNDO;
+ /* redo operator will fail in this case because vertex groups aren't stored
+ in local edit mode stack and toggling "all" property will lead to
+ all groups deleted without way to restore them (see [#29527], sergey) */
+ ot->flag= /*OPTYPE_REGISTER|*/OPTYPE_UNDO;
/* properties */
RNA_def_boolean(ot->srna, "all", 0, "All", "Remove from all vertex groups");
@@ -2226,7 +2229,10 @@
ot->exec= vertex_group_assign_exec;
/* flags */
- ot->flag= OPTYPE_REGISTER|OPTYPE_UNDO;
+ /* redo operator will fail in this case because vertex group assignment
+ isn't stored in local edit mode stack and toggling "new" property will
+ lead to creating plenty of new veretx groups (see [#29527], sergey) */
+ ot->flag= /*OPTYPE_REGISTER|*/OPTYPE_UNDO;
/* properties */
RNA_def_boolean(ot->srna, "new", 0, "New", "Assign vertex to new vertex group");
@@ -2265,7 +2271,10 @@
ot->exec= vertex_group_remove_from_exec;
/* flags */
- ot->flag= OPTYPE_REGISTER|OPTYPE_UNDO;
+ /* redo operator will fail in this case because vertex groups ssignment
+ isn't stored in local edit mode stack and toggling "all" property will lead to
+ removing vertices from all groups (see [#29527], sergey) */
+ ot->flag= /*OPTYPE_REGISTER|*/OPTYPE_UNDO;
/* properties */
RNA_def_boolean(ot->srna, "all", 0, "All", "Remove from all vertex groups");
More information about the Bf-blender-cvs
mailing list