was missing depgraph update for centering objects in editmode if they were unselected.
ctrl+num keys for switching subsurf didnt work in editmode if the object wasnt selected. changed this to only operate on the editmode object. also disallow ctrl+num to change layers for values above 4.
This commit is contained in:
@@ -1887,6 +1887,7 @@ void docenter(int centermode)
|
||||
|
||||
recalc_editnormals();
|
||||
tot_change++;
|
||||
DAG_object_flush_update(G.scene, G.obedit, OB_RECALC_DATA);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3133,9 +3134,15 @@ void flip_subdivison(int level)
|
||||
mode= eModifierMode_Render|eModifierMode_Realtime;
|
||||
|
||||
if(level == -1) {
|
||||
for(base= G.scene->base.first; base; base= base->next)
|
||||
if(((level==-1) && (TESTBASE(base))) || (TESTBASELIB(base)))
|
||||
object_has_subdivision_particles(base->object, &havesubdiv, &havepart, 0);
|
||||
if (G.obedit) {
|
||||
object_has_subdivision_particles(G.obedit, &havesubdiv, &havepart, 0);
|
||||
} else {
|
||||
for(base= G.scene->base.first; base; base= base->next) {
|
||||
if(((level==-1) && (TESTBASE(base))) || (TESTBASELIB(base))) {
|
||||
object_has_subdivision_particles(base->object, &havesubdiv, &havepart, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
havesubdiv= 1;
|
||||
@@ -3149,10 +3156,16 @@ void flip_subdivison(int level)
|
||||
}
|
||||
else if(havepart)
|
||||
particles= 1;
|
||||
|
||||
for(base= G.scene->base.first; base; base= base->next)
|
||||
if(((level==-1) && (TESTBASE(base))) || (TESTBASELIB(base)))
|
||||
object_flip_subdivison_particles(base->object, &set, level, mode, particles, 0);
|
||||
|
||||
if (G.obedit) {
|
||||
object_flip_subdivison_particles(G.obedit, &set, level, mode, particles, 0);
|
||||
} else {
|
||||
for(base= G.scene->base.first; base; base= base->next) {
|
||||
if(((level==-1) && (TESTBASE(base))) || (TESTBASELIB(base))) {
|
||||
object_flip_subdivison_particles(base->object, &set, level, mode, particles, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
countall();
|
||||
allqueue(REDRAWVIEW3D, 0);
|
||||
|
||||
@@ -1745,25 +1745,42 @@ static void winqreadview3dspace(ScrArea *sa, void *spacedata, BWinEvent *evt)
|
||||
if ( (G.obedit) && (G.obedit->type==OB_MESH) )
|
||||
select_faces_by_numverts(5);
|
||||
}
|
||||
|
||||
else if(G.qual==LR_CTRLKEY) {}
|
||||
else do_layer_buttons(4);
|
||||
break;
|
||||
|
||||
case SIXKEY:
|
||||
do_layer_buttons(5); break;
|
||||
if(G.qual==LR_CTRLKEY) {}
|
||||
else do_layer_buttons(5);
|
||||
break;
|
||||
case SEVENKEY:
|
||||
do_layer_buttons(6); break;
|
||||
if(G.qual==LR_CTRLKEY) {}
|
||||
else do_layer_buttons(6);
|
||||
break;
|
||||
case EIGHTKEY:
|
||||
do_layer_buttons(7); break;
|
||||
if(G.qual==LR_CTRLKEY) {}
|
||||
else do_layer_buttons(7);
|
||||
break;
|
||||
case NINEKEY:
|
||||
do_layer_buttons(8); break;
|
||||
if(G.qual==LR_CTRLKEY) {}
|
||||
else do_layer_buttons(8);
|
||||
break;
|
||||
case ZEROKEY:
|
||||
do_layer_buttons(9); break;
|
||||
if(G.qual==LR_CTRLKEY) {}
|
||||
else do_layer_buttons(9);
|
||||
break;
|
||||
case MINUSKEY:
|
||||
do_layer_buttons(10); break;
|
||||
if(G.qual==LR_CTRLKEY) {}
|
||||
else do_layer_buttons(10);
|
||||
break;
|
||||
case EQUALKEY:
|
||||
do_layer_buttons(11); break;
|
||||
if(G.qual==LR_CTRLKEY) {}
|
||||
else do_layer_buttons(11);
|
||||
break;
|
||||
case ACCENTGRAVEKEY:
|
||||
do_layer_buttons(-1); break;
|
||||
do_layer_buttons(-1);
|
||||
break;
|
||||
|
||||
case SPACEKEY:
|
||||
if(G.qual == LR_CTRLKEY) {
|
||||
|
||||
Reference in New Issue
Block a user