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
path: root/source
diff options
context:
space:
mode:
authorJohnny Matthews <johnny.matthews@gmail.com>2005-08-01 23:12:29 +0400
committerJohnny Matthews <johnny.matthews@gmail.com>2005-08-01 23:12:29 +0400
commitbc865d6d2098d82f9a00655b8aa89a326244db0a (patch)
treef6d871c5253c28028feb4002efec9d4190a21728 /source
parent6116b36f4e14e38b180e89793eb6304200e854c8 (diff)
Make Loopcut in Faceselect mode able to enter Edgeslide and not get 'loop crosses itself' message. Still need to work on selection out of this condition
Diffstat (limited to 'source')
-rw-r--r--source/blender/src/editmesh_loop.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/source/blender/src/editmesh_loop.c b/source/blender/src/editmesh_loop.c
index 33a3c5806e9..f5aa923de73 100644
--- a/source/blender/src/editmesh_loop.c
+++ b/source/blender/src/editmesh_loop.c
@@ -206,11 +206,19 @@ void CutEdgeloop(int numcuts)
{
EditMesh *em = G.editMesh;
EditEdge *nearest=NULL, *eed;
- int keys = 0, holdnum=0;
+ int keys = 0, holdnum=0, selectmode;
short mvalo[2] = {0,0}, mval[2];
short event,val,choosing=1,cancel=0,dist,cuthalf = 0;
char msg[128];
+ selectmode = G.scene->selectmode;
+
+ if(G.scene->selectmode & SCE_SELECT_FACE){
+ G.scene->selectmode = SCE_SELECT_EDGE;
+ EM_selectmode_set();
+ }
+
+
BIF_undo_push("Loopcut Begin");
while(choosing){
if(cancel){
@@ -364,6 +372,12 @@ void CutEdgeloop(int numcuts)
}
}
}
+
+ if(G.scene->selectmode != selectmode){
+ G.scene->selectmode = selectmode;
+ EM_selectmode_set();
+ }
+
//force_draw(0);
DAG_object_flush_update(G.scene, G.obedit, OB_RECALC_DATA);
scrarea_queue_winredraw(curarea);