diff options
author | Campbell Barton <ideasman42@gmail.com> | 2012-12-22 17:42:06 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2012-12-22 17:42:06 +0400 |
commit | 634be5992d8f3b76b510ff7cf19a1b43a18d1a21 (patch) | |
tree | 670208dd198c1237ee2b705f4c06286461e9ef8b /source/blender/makesrna/intern/rna_mesh.c | |
parent | c5cb2c8b33c8684754c2054b3ad73a72267b8b2e (diff) |
flush selection when switching weight paint vertex/face selection modes.
Diffstat (limited to 'source/blender/makesrna/intern/rna_mesh.c')
-rw-r--r-- | source/blender/makesrna/intern/rna_mesh.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/source/blender/makesrna/intern/rna_mesh.c b/source/blender/makesrna/intern/rna_mesh.c index cdf8d6614f3..c0294212821 100644 --- a/source/blender/makesrna/intern/rna_mesh.c +++ b/source/blender/makesrna/intern/rna_mesh.c @@ -153,7 +153,11 @@ static void rna_Mesh_update_vertmask(Main *bmain, Scene *scene, PointerRNA *ptr) { Mesh *me = ptr->data; if ((me->editflag & ME_EDIT_VERT_SEL) && (me->editflag & ME_EDIT_PAINT_MASK)) { - me->editflag ^= ME_EDIT_PAINT_MASK; + me->editflag &= ~ME_EDIT_PAINT_MASK; + BKE_mesh_flush_select_from_polys(me->mvert, me->totvert, + me->mloop, + me->medge, me->totedge, + me->mpoly, me->totpoly); } rna_Mesh_update_draw(bmain, scene, ptr); } @@ -162,7 +166,11 @@ static void rna_Mesh_update_facemask(Main *bmain, Scene *scene, PointerRNA *ptr) { Mesh *me = ptr->data; if ((me->editflag & ME_EDIT_VERT_SEL) && (me->editflag & ME_EDIT_PAINT_MASK)) { - me->editflag ^= ME_EDIT_VERT_SEL; + me->editflag &= ~ME_EDIT_VERT_SEL; + BKE_mesh_flush_select_from_verts(me->mvert, me->totvert, + me->mloop, + me->medge, me->totedge, + me->mpoly, me->totpoly); } rna_Mesh_update_draw(bmain, scene, ptr); } |