Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoshua Leung <aligorith@gmail.com>2010-09-30 15:27:47 +0400
committerJoshua Leung <aligorith@gmail.com>2010-09-30 15:27:47 +0400
commit8a5c516864da4081222c190381c2e54b6073c69c (patch)
treed14128aec5e49392cd9fef5b83fdd38def9338ca /source/blender/editors/armature
parent81b6d308a771405ef326b1e4cebbc3359e830a6c (diff)
Bugfix #23707: Autokey Available is ignored on a Clear Transform
Second attempt at fixing. Last time, I missed the case where the "Only Insert Available" userpref was enabled, which was why the bugreport was reopened. Hopefully I haven't missed anything else...
Diffstat (limited to 'source/blender/editors/armature')
-rw-r--r--source/blender/editors/armature/editarmature.c6
-rw-r--r--source/blender/editors/armature/poselib.c2
-rw-r--r--source/blender/editors/armature/poseobject.c2
3 files changed, 10 insertions, 0 deletions
diff --git a/source/blender/editors/armature/editarmature.c b/source/blender/editors/armature/editarmature.c
index 930f6e684fc..f5396b7b173 100644
--- a/source/blender/editors/armature/editarmature.c
+++ b/source/blender/editors/armature/editarmature.c
@@ -4956,6 +4956,8 @@ static int pose_clear_scale_exec(bContext *C, wmOperator *op)
*/
if (IS_AUTOKEY_FLAG(ONLYKEYINGSET) && (scene->active_keyingset))
ks = ANIM_scene_get_active_keyingset(scene);
+ else if (IS_AUTOKEY_FLAG(INSERTAVAIL))
+ ks = ANIM_builtin_keyingset_get_named(NULL, "Available");
else
ks = ANIM_builtin_keyingset_get_named(NULL, "Scaling");
@@ -5033,6 +5035,8 @@ static int pose_clear_loc_exec(bContext *C, wmOperator *op)
*/
if (IS_AUTOKEY_FLAG(ONLYKEYINGSET) && (scene->active_keyingset))
ks = ANIM_scene_get_active_keyingset(scene);
+ else if (IS_AUTOKEY_FLAG(INSERTAVAIL))
+ ks = ANIM_builtin_keyingset_get_named(NULL, "Available");
else
ks = ANIM_builtin_keyingset_get_named(NULL, "Location");
@@ -5194,6 +5198,8 @@ static int pose_clear_rot_exec(bContext *C, wmOperator *op)
*/
if (IS_AUTOKEY_FLAG(ONLYKEYINGSET) && (scene->active_keyingset))
ks = ANIM_scene_get_active_keyingset(scene);
+ else if (IS_AUTOKEY_FLAG(INSERTAVAIL))
+ ks = ANIM_builtin_keyingset_get_named(NULL, "Available");
else
ks = ANIM_builtin_keyingset_get_named(NULL, "Rotation");
diff --git a/source/blender/editors/armature/poselib.c b/source/blender/editors/armature/poselib.c
index f490158424c..5ead0d42cd2 100644
--- a/source/blender/editors/armature/poselib.c
+++ b/source/blender/editors/armature/poselib.c
@@ -784,6 +784,8 @@ static void poselib_keytag_pose (bContext *C, Scene *scene, tPoseLib_PreviewData
if (IS_AUTOKEY_FLAG(ONLYKEYINGSET) && (scene->active_keyingset))
ks = ANIM_scene_get_active_keyingset(scene);
+ else if (IS_AUTOKEY_FLAG(INSERTAVAIL))
+ ks = ANIM_builtin_keyingset_get_named(NULL, "Available");
else
ks = ANIM_builtin_keyingset_get_named(NULL, "LocRotScale");
diff --git a/source/blender/editors/armature/poseobject.c b/source/blender/editors/armature/poseobject.c
index b8c945f0d77..e2cf5876b51 100644
--- a/source/blender/editors/armature/poseobject.c
+++ b/source/blender/editors/armature/poseobject.c
@@ -1020,6 +1020,8 @@ static int pose_paste_exec (bContext *C, wmOperator *op)
*/
if (IS_AUTOKEY_FLAG(ONLYKEYINGSET) && (scene->active_keyingset))
ks = ANIM_scene_get_active_keyingset(scene);
+ else if (IS_AUTOKEY_FLAG(INSERTAVAIL))
+ ks = ANIM_builtin_keyingset_get_named(NULL, "Available");
else
ks = ANIM_builtin_keyingset_get_named(NULL, "LocRotScale");