diff options
author | Martin Poirier <theeth@yahoo.com> | 2010-01-12 22:44:23 +0300 |
---|---|---|
committer | Martin Poirier <theeth@yahoo.com> | 2010-01-12 22:44:23 +0300 |
commit | 000dcc7ad767511baec0e88b4e88b24c5667ef7e (patch) | |
tree | a872471fc34d348b8017b778b567801ff4616cbf /source/blender/editors/transform | |
parent | b58a14fe93a38c51231dd9f4df008480520430bc (diff) |
[#19960] When Loop Cutting, no Edge Sliding in Face Select Mode, but works in other Select Modes
Force edge select (internally) when running edge slide.
Diffstat (limited to 'source/blender/editors/transform')
-rw-r--r-- | source/blender/editors/transform/transform_conversions.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/source/blender/editors/transform/transform_conversions.c b/source/blender/editors/transform/transform_conversions.c index 5484e3cd8bf..49e7f040390 100644 --- a/source/blender/editors/transform/transform_conversions.c +++ b/source/blender/editors/transform/transform_conversions.c @@ -2139,14 +2139,20 @@ static void createTransEditVerts(bContext *C, TransInfo *t) int count=0, countsel=0, a, totleft; int propmode = t->flag & T_PROP_EDIT; int mirror = 0; + short selectmode = ts->selectmode; if (t->flag & T_MIRROR) { mirror = 1; } + /* edge slide forces edge select */ + if (t->mode == TFM_EDGE_SLIDE) { + selectmode = SCE_SELECT_EDGE; + } + // transform now requires awareness for select mode, so we tag the f1 flags in verts - if(ts->selectmode & SCE_SELECT_VERTEX) { + if(selectmode & SCE_SELECT_VERTEX) { for(eve= em->verts.first; eve; eve= eve->next) { if(eve->h==0 && (eve->f & SELECT)) eve->f1= SELECT; @@ -2154,7 +2160,7 @@ static void createTransEditVerts(bContext *C, TransInfo *t) eve->f1= 0; } } - else if(ts->selectmode & SCE_SELECT_EDGE) { + else if(selectmode & SCE_SELECT_EDGE) { EditEdge *eed; for(eve= em->verts.first; eve; eve= eve->next) eve->f1= 0; for(eed= em->edges.first; eed; eed= eed->next) { |