From 0bd32f3ac60393fca5af17534c8ee90e20664cbd Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Mon, 10 Sep 2007 19:32:44 +0000 Subject: Changes to "Face Select" mode * Does not indicate that UV's exist, nor does it add UV's when used. * Only accessible for texturepaint, vertexpaint and weightpaint from a button in the header (Paint Selection Mask) * Not accessible from the mode menu, this is only an option that applies to paint modes. This dosnt effect DNA, face select (G_FACESELECT) can be enabled at any time but is only used when paint modes are enabled. Other changes * UKey is uv unwrap in editmode, Ukey for undo was editmode only anyway. * UVCalc in editmode adds a UV Layer if there is not one alredy. * texture draw in editmode does not draw the face dots (they are get in the way of texturing) * some missing updates were added. * removed manipulator from when paint modes are enabled since the manipulator is not drawn in the 3d view. --- source/blender/src/editview.c | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) (limited to 'source/blender/src/editview.c') diff --git a/source/blender/src/editview.c b/source/blender/src/editview.c index 80bebf0ec68..176821e0cc9 100644 --- a/source/blender/src/editview.c +++ b/source/blender/src/editview.c @@ -575,7 +575,7 @@ static void do_lasso_select_facemode(short mcords[][2], short moves, short selec static void do_lasso_select(short mcords[][2], short moves, short select) { if(G.obedit==NULL) { - if(G.f & G_FACESELECT) + if(FACESEL_PAINT_TEST) do_lasso_select_facemode(mcords, moves, select); else if(G.f & (G_VERTEXPAINT|G_TEXTUREPAINT|G_WEIGHTPAINT)) ; @@ -1102,10 +1102,6 @@ void set_active_base(Base *base) if(G.f & G_TEXTUREPAINT) set_texturepaint(); /* Switch off tex paint */ } - /* always end this */ - if(G.f & G_FACESELECT) { - set_faceselect(); /* toggle */ - } } /* sets scene->basact */ @@ -1670,7 +1666,7 @@ void borderselect(void) int a, index; short hits, val; - if(G.obedit==NULL && (G.f & G_FACESELECT)) { + if(G.obedit==NULL && (FACESEL_PAINT_TEST)) { face_borderselect(); return; } @@ -1683,8 +1679,11 @@ void borderselect(void) val= get_border(&rect, 3); if (!a) setlinestyle(0); - if(val==0) + if(val==0) { + if (EM_texFaceCheck()) + allqueue(REDRAWIMAGE, 0); return; + } if(G.obedit) { if(G.obedit->type==OB_MESH) { @@ -1919,7 +1918,7 @@ static void mesh_selectionCB(int selecting, Object *editobj, short *mval, float EditMesh *em = G.editMesh; int bbsel; - if(!G.obedit && (G.f&G_FACESELECT)) { + if(!G.obedit && (FACESEL_PAINT_TEST)) { Mesh *me = get_mesh(OBACT); if (me) { -- cgit v1.2.3