Posemode: you can get a situation of an active object, in posemode, which
is not selected. That is very invisible, and gives issues for tools like
'clear rotation', because it checks for selected objects.

Als fixed clear (alt+g,r,s) options to only work on posemode for the active
object.
This commit is contained in:
2007-04-04 10:37:28 +00:00
parent 083afdfb74
commit ead26625c1
2 changed files with 6 additions and 4 deletions

View File

@@ -999,7 +999,7 @@ void clear_object(char mode)
if TESTBASELIB(base) {
ob= base->object;
if(ob->flag & OB_POSEMODE) {
if( (ob->flag & OB_POSEMODE) && ob==OBACT) {
clear_armature(ob, mode);
armature_clear= 1; /* silly system to prevent another dag update, so no action applied */
}

View File

@@ -1409,11 +1409,13 @@ void mouse_select(void)
if(has_bones && basact) {
if( do_pose_selectbuffer(basact, buffer, hits) ) { /* then bone is found */
/* we make the armature selected:
not-selected active object in posemode won't work well for tools */
basact->flag|= SELECT;
basact->object->flag= basact->flag;
/* in weightpaint, we use selected bone to select vertexgroup, so no switch to new active object */
if(G.f & G_WEIGHTPAINT) {
/* we make the armature selected */
basact->flag|= SELECT;
basact->object->flag= basact->flag;
/* prevent activating */
basact= NULL;
}