Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatt Ebb <matt@mke3.net>2010-01-16 03:59:59 +0300
committerMatt Ebb <matt@mke3.net>2010-01-16 03:59:59 +0300
commit61acdb61cb79a34889fca09e640613317c06698a (patch)
tree77e4f0f81569e7291e126185834ce4adcbf3c1f5 /source/blender/editors/mesh
parent5272991e8b91c527fbe3923d75ae2c5148dd7177 (diff)
Fix [#20418] ring select in face mode selects edges not faces
Diffstat (limited to 'source/blender/editors/mesh')
-rw-r--r--source/blender/editors/mesh/loopcut.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/source/blender/editors/mesh/loopcut.c b/source/blender/editors/mesh/loopcut.c
index 9510e40c6ac..089ac1a300c 100644
--- a/source/blender/editors/mesh/loopcut.c
+++ b/source/blender/editors/mesh/loopcut.c
@@ -332,16 +332,23 @@ static int ringsel_invoke (bContext *C, wmOperator *op, wmEvent *evt)
tringselOpData *lcd;
EditEdge *edge;
int dist = 75;
-
+
view3d_operator_needs_opengl(C);
if (!ringsel_init(C, op, 0))
return OPERATOR_CANCELLED;
+ lcd = op->customdata;
+
+ if (lcd->em->selectmode == SCE_SELECT_FACE) {
+ ringsel_exit(C, op);
+ WM_operator_name_call(C, "MESH_OT_loop_select", WM_OP_INVOKE_REGION_WIN, NULL);
+ return OPERATOR_CANCELLED;
+ }
+
/* add a modal handler for this operator - handles loop selection */
WM_event_add_modal_handler(C, op);
- lcd = op->customdata;
lcd->vc.mval[0] = evt->mval[0];
lcd->vc.mval[1] = evt->mval[1];