diff options
author | Campbell Barton <ideasman42@gmail.com> | 2008-10-22 08:42:00 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2008-10-22 08:42:00 +0400 |
commit | 18f2d484d9f76ce8e932a1b27b4b7b2f3fbcdb0d (patch) | |
tree | d43d52b74d8c7f9371bea3896c94a3b4327c82b0 /source/blender | |
parent | 59a30d822fe5ecfafbb5676b2058b7ff8d3760ed (diff) |
missing undo for vgroup operations, countall was running twice from select/deselect and DAG_object_flush_update isnt needed for changed selections.
Diffstat (limited to 'source/blender')
-rw-r--r-- | source/blender/src/buttons_editing.c | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/source/blender/src/buttons_editing.c b/source/blender/src/buttons_editing.c index b586302053b..3d60e9a8eea 100644 --- a/source/blender/src/buttons_editing.c +++ b/source/blender/src/buttons_editing.c @@ -4760,7 +4760,7 @@ void do_vgroupbuts(unsigned short event) DAG_object_flush_update(G.scene, ob, OB_RECALC_DATA); scrarea_queue_winredraw(curarea); allqueue(REDRAWOOPS, 0); - + BIF_undo_push("New vertex group"); break; case B_DELVGROUP: if ((G.obedit) && (G.obedit == ob)) { @@ -4776,35 +4776,40 @@ void do_vgroupbuts(unsigned short event) break; case B_ASSIGNVGROUP: assign_verts_defgroup (); + DAG_object_flush_update(G.scene, ob, OB_RECALC_DATA); allqueue (REDRAWVIEW3D, 1); BIF_undo_push("Assign to vertex group"); break; case B_REMOVEVGROUP: remove_verts_defgroup (0); + DAG_object_flush_update(G.scene, ob, OB_RECALC_DATA); allqueue (REDRAWVIEW3D, 1); allqueue(REDRAWOOPS, 0); BIF_undo_push("Remove from vertex group"); break; case B_SELVGROUP: - sel_verts_defgroup(1); + sel_verts_defgroup(1); /* runs countall() */ allqueue (REDRAWVIEW3D, 1); allqueue(REDRAWOOPS, 0); - countall(); + BIF_undo_push("Select vertex group"); break; case B_DESELVGROUP: - sel_verts_defgroup(0); - DAG_object_flush_update(G.scene, ob, OB_RECALC_DATA); + sel_verts_defgroup(0); /* runs countall() */ allqueue (REDRAWVIEW3D, 1); allqueue(REDRAWOOPS, 0); - countall(); + BIF_undo_push("DeSelect vertex group"); break; case B_LINKEDVGROUP: copy_linked_vgroup_channels(ob); + allqueue (REDRAWVIEW3D, 1); + allqueue(REDRAWOOPS, 0); + BIF_undo_push("Copy vertex group to linked obdata"); break; case B_COPYVGROUP: duplicate_defgroup (ob); scrarea_queue_winredraw (curarea); allqueue (REDRAWOOPS, 0); + BIF_undo_push("Copy vertex group"); break; } } |