Three bugfixes, thnx to irc testing! :)

- separate crashed
- wrong button for 'face dot' theme
- deselect vertex on mouseclick didnt work
This commit is contained in:
Ton Roosendaal 2004-09-23 22:17:52 +00:00
parent 16593b506a
commit 404f4d7a01
3 changed files with 22 additions and 3 deletions

@ -480,6 +480,8 @@ static void editMesh_set_hash(void)
{
EditEdge *eed;
G.editMesh->hashedgetab= NULL;
for(eed=G.editMesh->edges.first; eed; eed= eed->next) {
if( findedgelist(eed->v1, eed->v2)==NULL )
insert_hashedge(eed);
@ -1267,6 +1269,7 @@ void separatemenu(void)
void separate_mesh(void)
{
EditMesh *em = G.editMesh;
EditMesh emcopy;
EditVert *eve, *v1;
EditEdge *eed, *e1;
EditFace *efa, *vl1;
@ -1374,7 +1377,13 @@ void separate_mesh(void)
BASACT->flag &= ~SELECT;
makeDispList(G.obedit);
free_editMesh(G.editMesh);
/* we cannot free the original buffer... */
emcopy= *G.editMesh;
emcopy.allverts= NULL;
emcopy.alledges= NULL;
emcopy.allfaces= NULL;
free_editMesh(&emcopy);
em->verts= edve;
em->edges= eded;
@ -1398,6 +1407,7 @@ void separate_mesh(void)
void separate_mesh_loose(void)
{
EditMesh *em = G.editMesh;
EditMesh emcopy;
EditVert *eve, *v1;
EditEdge *eed, *e1;
EditFace *efa, *vl1;
@ -1553,7 +1563,13 @@ void separate_mesh_loose(void)
BASACT->flag &= ~SELECT;
makeDispList(G.obedit);
free_editMesh(G.editMesh);
/* we cannot free the original buffer... */
emcopy= *G.editMesh;
emcopy.allverts= NULL;
emcopy.alledges= NULL;
emcopy.allfaces= NULL;
free_editMesh(&emcopy);
em->verts= edve;
em->edges= eded;

@ -425,7 +425,7 @@ void mouse_mesh(void)
}
else if(eve) {
if((eve->f & SELECT)==0) eve->f |= SELECT;
else if(G.qual & LR_SHIFTKEY) eve->f |= ~SELECT;
else if(G.qual & LR_SHIFTKEY) eve->f &= ~SELECT;
}
/* frontbuffer draw of last selected only */

@ -2081,6 +2081,9 @@ void info_user_themebuts(uiBlock *block, short y1, short y2, short y3)
if(th_curcol==TH_VERTEX_SIZE) {
uiDefButC(block, NUMSLI, B_UPDATE_THEME,"Vertex size ", 465,y3,200,20, col, 1.0, 10.0, 0, 0, "");
}
else if(th_curcol==TH_FACEDOT_SIZE) {
uiDefButC(block, NUMSLI, B_UPDATE_THEME,"Face dot size ", 465,y3,200,20, col, 1.0, 10.0, 0, 0, "");
}
else if(th_curcol==TH_BUT_DRAWTYPE) {
uiBlockBeginAlign(block);
uiDefButC(block, ROW, B_UPDATE_THEME, "Minimal", 465,y3,100,20, col, 2.0, 0.0, 0, 0, "");