diff options
author | Ton Roosendaal <ton@blender.org> | 2004-09-28 16:04:10 +0400 |
---|---|---|
committer | Ton Roosendaal <ton@blender.org> | 2004-09-28 16:04:10 +0400 |
commit | e6cc3c1ee189579cba2b686ec6265c04f233ec2a (patch) | |
tree | 6aeb60b2113fd97bfbdbf10d963de50c993dce9f | |
parent | 84b021e90f266bc31c6c8379ca4804d719e27b93 (diff) |
More maintenance due to new selection code;
- fgons draw correctly again in face selectmode
- on select, fgons dont draw wrong selection dot
-rw-r--r-- | source/blender/src/drawobject.c | 28 | ||||
-rw-r--r-- | source/blender/src/editmesh_mods.c | 2 | ||||
-rw-r--r-- | source/blender/src/space.c | 4 |
3 files changed, 18 insertions, 16 deletions
diff --git a/source/blender/src/drawobject.c b/source/blender/src/drawobject.c index 2a067e6342c..be085f9e770 100644 --- a/source/blender/src/drawobject.c +++ b/source/blender/src/drawobject.c @@ -2487,17 +2487,19 @@ static void drawmeshwire_creases(void) static void glVertex_efa_edges(EditFace *efa) { - - glVertex3fv(efa->v1->co); - glVertex3fv(efa->v2->co); - - glVertex3fv(efa->v2->co); - glVertex3fv(efa->v3->co); - - glVertex3fv(efa->e3->v1->co); - glVertex3fv(efa->e3->v2->co); - - if(efa->e4) { + if(efa->e1->h==0) { + glVertex3fv(efa->v1->co); + glVertex3fv(efa->v2->co); + } + if(efa->e2->h==0) { + glVertex3fv(efa->v2->co); + glVertex3fv(efa->v3->co); + } + if(efa->e3->h==0) { + glVertex3fv(efa->e3->v1->co); + glVertex3fv(efa->e3->v2->co); + } + if(efa->e4 && efa->e4->h==0) { glVertex3fv(efa->e4->v1->co); glVertex3fv(efa->e4->v2->co); } @@ -2600,7 +2602,7 @@ static void drawmeshwire(Object *ob) for (a=0; a<dlm->totedge; a++, medge++) { if(medge->flag & ME_EDGEDRAW) { eed= dlm->editedge[a]; - if(eed) { + if(eed->h==0) { if(eed->f & SELECT) BIF_ThemeColor(TH_EDGE_SELECT); else BIF_ThemeColor(TH_WIRE); glVertex3fv(mvert[medge->v1].co); @@ -4374,7 +4376,7 @@ static int bbs_mesh_wire(Object *ob, int offset) for (b=0; b<dlm->totedge; b++, medge++) { if(medge->flag & ME_EDGEDRAW) { eed= dlm->editedge[b]; - if(eed) { + if(eed && eed->h==0) { index= (int)eed->vn; cpack(index_to_framebuffer(index)); diff --git a/source/blender/src/editmesh_mods.c b/source/blender/src/editmesh_mods.c index 28e5d31235d..f842bacca54 100644 --- a/source/blender/src/editmesh_mods.c +++ b/source/blender/src/editmesh_mods.c @@ -633,7 +633,7 @@ static void unified_select_draw(EditVert *eve, EditEdge *eed, EditFace *efa) } if(G.scene->selectmode & (SCE_SELECT_EDGE|SCE_SELECT_FACE)) { - if(0) {//efa->fgonf==0) { + if(efa->fgonf==0) { if(efa->f & SELECT) BIF_ThemeColor(TH_EDGE_SELECT); else BIF_ThemeColor(TH_WIRE); diff --git a/source/blender/src/space.c b/source/blender/src/space.c index e3ffb6483f4..b940c34580a 100644 --- a/source/blender/src/space.c +++ b/source/blender/src/space.c @@ -913,9 +913,9 @@ void winqreadview3dspace(ScrArea *sa, void *spacedata, BWinEvent *evt) mouse_armature(); } else if((G.obedit) && (G.qual == (LR_CTRLKEY|LR_ALTKEY))) - mouse_mesh(); // edge select + mouse_mesh(); // loop select for 1 mousebutton dudes else if((G.obedit) && (G.qual == (LR_CTRLKEY|LR_ALTKEY|LR_SHIFTKEY))) - mouse_mesh(); // edge select + mouse_mesh(); // loop select for 1 mousebutton dudes else if(G.obpose) { if (G.obpose->type==OB_ARMATURE) mousepose_armature(); |