Bugfix [#32501] Protected layer bones transform buttons are greyed out/inactive
authorJoshua Leung <aligorith@gmail.com>
Sun, 16 Sep 2012 07:27:43 +0000 (07:27 +0000)
committerJoshua Leung <aligorith@gmail.com>
Sun, 16 Sep 2012 07:27:43 +0000 (07:27 +0000)
Since the transform values for bones in protected layers can be animated again
using many of the common tools, it makes sense that the transform properties for
these are allowed to be edited too.

I've left the rotation mode setting as a "proxy locked" value for now, since
this seems more like something that's defined as part of the rig creation (and
best left alone by animators).

source/blender/makesrna/intern/rna_pose.c

index 739f302fcbe7556de172108611abf80de6bd1570..06f0210d0b09da6f99fc79593f41fdbc6514978f 100644 (file)
@@ -788,8 +788,6 @@ static void rna_def_pose_channel(BlenderRNA *brna)
        RNA_def_property_editable_array_func(prop, "rna_PoseChannel_location_editable");
        RNA_def_property_ui_text(prop, "Location", "");
        RNA_def_property_ui_range(prop, -FLT_MAX, FLT_MAX, 1, RNA_TRANSLATION_PREC_DEFAULT);
-       /* XXX... disabled, since proxy-locked layers are currently used for ensuring proxy-syncing too */
-       RNA_def_property_editable_func(prop, "rna_PoseChannel_proxy_editable");
        RNA_def_property_update(prop, NC_OBJECT | ND_POSE, "rna_Pose_update");
 
        prop = RNA_def_property(srna, "scale", PROP_FLOAT, PROP_XYZ);
@@ -797,8 +795,6 @@ static void rna_def_pose_channel(BlenderRNA *brna)
        RNA_def_property_editable_array_func(prop, "rna_PoseChannel_scale_editable");
        RNA_def_property_float_array_default(prop, default_scale);
        RNA_def_property_ui_text(prop, "Scale", "");
-       /* XXX... disabled, since proxy-locked layers are currently used for ensuring proxy-syncing too */
-       RNA_def_property_editable_func(prop, "rna_PoseChannel_proxy_editable");
        RNA_def_property_update(prop, NC_OBJECT | ND_POSE, "rna_Pose_update");
 
        prop = RNA_def_property(srna, "rotation_quaternion", PROP_FLOAT, PROP_QUATERNION);
@@ -806,8 +802,6 @@ static void rna_def_pose_channel(BlenderRNA *brna)
        RNA_def_property_editable_array_func(prop, "rna_PoseChannel_rotation_4d_editable");
        RNA_def_property_float_array_default(prop, default_quat);
        RNA_def_property_ui_text(prop, "Quaternion Rotation", "Rotation in Quaternions");
-       /* XXX... disabled, since proxy-locked layers are currently used for ensuring proxy-syncing too */
-       RNA_def_property_editable_func(prop, "rna_PoseChannel_proxy_editable");
        RNA_def_property_update(prop, NC_OBJECT | ND_POSE, "rna_Pose_update");
        
        /* XXX: for axis-angle, it would have been nice to have 2 separate fields for UI purposes, but
@@ -820,15 +814,11 @@ static void rna_def_pose_channel(BlenderRNA *brna)
        RNA_def_property_editable_array_func(prop, "rna_PoseChannel_rotation_4d_editable");
        RNA_def_property_float_array_default(prop, default_axisAngle);
        RNA_def_property_ui_text(prop, "Axis-Angle Rotation", "Angle of Rotation for Axis-Angle rotation representation");
-       /* XXX... disabled, since proxy-locked layers are currently used for ensuring proxy-syncing too */
-       RNA_def_property_editable_func(prop, "rna_PoseChannel_proxy_editable");
        RNA_def_property_update(prop, NC_OBJECT | ND_POSE, "rna_Pose_update");
        
        prop = RNA_def_property(srna, "rotation_euler", PROP_FLOAT, PROP_EULER);
        RNA_def_property_float_sdna(prop, NULL, "eul");
        RNA_def_property_editable_array_func(prop, "rna_PoseChannel_rotation_euler_editable");
-       /* XXX... disabled, since proxy-locked layers are currently used for ensuring proxy-syncing too */
-       RNA_def_property_editable_func(prop, "rna_PoseChannel_proxy_editable");
        RNA_def_property_ui_text(prop, "Euler Rotation", "Rotation in Eulers");
        RNA_def_property_update(prop, NC_OBJECT | ND_POSE, "rna_Pose_update");