From fc0c2ef2513192f677141dfcd802f2343f7f465e Mon Sep 17 00:00:00 2001 From: Johnny Matthews Date: Thu, 14 Jul 2005 19:44:10 +0000 Subject: [PATCH] Adding CTRL stepping for Edgeslide. Mouse control is still not finished here, this is just a temporary fix until it can be done right. --- source/blender/src/editmesh_tools.c | 33 +++++++++++++++-------------- 1 file changed, 17 insertions(+), 16 deletions(-) diff --git a/source/blender/src/editmesh_tools.c b/source/blender/src/editmesh_tools.c index 27808b37981..19b288fb875 100644 --- a/source/blender/src/editmesh_tools.c +++ b/source/blender/src/editmesh_tools.c @@ -4419,12 +4419,22 @@ void EdgeSlide(short immediate, float imperc){ } if(mval[0] > mvalo[0]){ - if(perc < 0.94) - perc += 0.05; + if(G.qual==LR_CTRLKEY){ + if(perc < 0.91) + perc += 0.1; + } else { + if(perc < 0.99) + perc += 0.01; + } - } else if(mval[0] < mvalo[0]){ - if(perc > -0.94) - perc -= 0.05; + } else if(mval[0] < mvalo[0]){ + if(G.qual==LR_CTRLKEY){ + if(perc > -0.91) + perc -= 0.1; + } else { + if(perc > -0.99) + perc -= 0.01; + } } mvalo[0] = mval[0]; @@ -4433,8 +4443,7 @@ void EdgeSlide(short immediate, float imperc){ while(qtest()) { unsigned short val=0; event= extern_qread(&val); // extern_qread stores important events for the mainloop to handle - - + /* val==0 on key-release event */ if(val && ((event==ESCKEY || event==PADENTER)|| ( event==LEFTMOUSE || event==RETKEY ))){ draw = 0; @@ -4442,15 +4451,7 @@ void EdgeSlide(short immediate, float imperc){ if(val && (event==RIGHTMOUSE || event==ESCKEY || (event==MIDDLEMOUSE) )){ perc = 0; immediate = 1; - } - if(val && (event==UPARROWKEY)){ - if(perc < 0.94) - perc += 0.05; - } - if(val && (event==DOWNARROWKEY)){ - if(perc > -0.94) - perc -= 0.05; - } + } } } else { draw = 0;