Cleanup: de-duplicate rotation mode enum
authorCampbell Barton <ideasman42@gmail.com>
Wed, 16 Jan 2019 00:16:15 +0000 (11:16 +1100)
committerCampbell Barton <ideasman42@gmail.com>
Wed, 16 Jan 2019 00:17:13 +0000 (11:17 +1100)
source/blender/editors/armature/pose_edit.c
source/blender/makesrna/RNA_enum_types.h
source/blender/makesrna/intern/rna_object.c
source/blender/makesrna/intern/rna_pose.c

index 71eca30..827dcf5 100644 (file)
@@ -684,7 +684,8 @@ void POSE_OT_rotation_mode_set(wmOperatorType *ot)
        ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
 
        /* properties */
-       ot->prop = RNA_def_enum(ot->srna, "type", rna_enum_posebone_rotmode_items, 0, "Rotation Mode", "");
+       ot->prop = RNA_def_enum(
+               ot->srna, "type", rna_enum_object_rotation_mode_items, 0, "Rotation Mode", "");
 }
 
 /* ********************************************** */
index efc3263..af4f2aa 100644 (file)
@@ -147,6 +147,7 @@ extern const EnumPropertyItem rna_enum_light_type_items[];
 extern const EnumPropertyItem rna_enum_unpack_method_items[];
 
 extern const EnumPropertyItem rna_enum_object_type_items[];
+extern const EnumPropertyItem rna_enum_object_rotation_mode_items[];
 
 extern const EnumPropertyItem rna_enum_object_type_curve_items[];
 
@@ -174,8 +175,6 @@ extern const EnumPropertyItem rna_enum_transform_pivot_items_full[];
 extern const EnumPropertyItem rna_enum_transform_orientation_items[];
 extern const EnumPropertyItem rna_enum_transform_mode_types[];
 
-extern const EnumPropertyItem rna_enum_posebone_rotmode_items[];
-
 extern const EnumPropertyItem rna_enum_property_type_items[];
 extern const EnumPropertyItem rna_enum_property_subtype_items[];
 extern const EnumPropertyItem rna_enum_property_unit_items[];
index 34f7077..e7f603b 100644 (file)
@@ -196,6 +196,19 @@ const EnumPropertyItem rna_enum_object_type_curve_items[] = {
        {0, NULL, 0, NULL, NULL}
 };
 
+const EnumPropertyItem rna_enum_object_rotation_mode_items[] = {
+       {ROT_MODE_QUAT, "QUATERNION", 0, "Quaternion (WXYZ)", "No Gimbal Lock"},
+       {ROT_MODE_XYZ, "XYZ", 0, "XYZ Euler", "XYZ Rotation Order - prone to Gimbal Lock (default)"},
+       {ROT_MODE_XZY, "XZY", 0, "XZY Euler", "XZY Rotation Order - prone to Gimbal Lock"},
+       {ROT_MODE_YXZ, "YXZ", 0, "YXZ Euler", "YXZ Rotation Order - prone to Gimbal Lock"},
+       {ROT_MODE_YZX, "YZX", 0, "YZX Euler", "YZX Rotation Order - prone to Gimbal Lock"},
+       {ROT_MODE_ZXY, "ZXY", 0, "ZXY Euler", "ZXY Rotation Order - prone to Gimbal Lock"},
+       {ROT_MODE_ZYX, "ZYX", 0, "ZYX Euler", "ZYX Rotation Order - prone to Gimbal Lock"},
+       {ROT_MODE_AXISANGLE, "AXIS_ANGLE", 0, "Axis Angle",
+                            "Axis Angle (W+XYZ), defines a rotation around some axis defined by 3D-Vector"},
+       {0, NULL, 0, NULL, NULL}
+};
+
 const EnumPropertyItem rna_enum_object_axis_items[] = {
        {OB_POSX, "POS_X", 0, "+X", ""},
        {OB_POSY, "POS_Y", 0, "+Y", ""},
@@ -2115,22 +2128,6 @@ static void rna_def_object(BlenderRNA *brna)
                {0, NULL, 0, NULL, NULL}
        };
 
-
-       /* XXX: this RNA enum define is currently duplicated for objects,
-        *      since there is some text here which is not applicable */
-       static const EnumPropertyItem prop_rotmode_items[] = {
-               {ROT_MODE_QUAT, "QUATERNION", 0, "Quaternion (WXYZ)", "No Gimbal Lock"},
-               {ROT_MODE_XYZ, "XYZ", 0, "XYZ Euler", "XYZ Rotation Order - prone to Gimbal Lock (default)"},
-               {ROT_MODE_XZY, "XZY", 0, "XZY Euler", "XZY Rotation Order - prone to Gimbal Lock"},
-               {ROT_MODE_YXZ, "YXZ", 0, "YXZ Euler", "YXZ Rotation Order - prone to Gimbal Lock"},
-               {ROT_MODE_YZX, "YZX", 0, "YZX Euler", "YZX Rotation Order - prone to Gimbal Lock"},
-               {ROT_MODE_ZXY, "ZXY", 0, "ZXY Euler", "ZXY Rotation Order - prone to Gimbal Lock"},
-               {ROT_MODE_ZYX, "ZYX", 0, "ZYX Euler", "ZYX Rotation Order - prone to Gimbal Lock"},
-               {ROT_MODE_AXISANGLE, "AXIS_ANGLE", 0, "Axis Angle",
-                                    "Axis Angle (W+XYZ), defines a rotation around some axis defined by 3D-Vector"},
-               {0, NULL, 0, NULL, NULL}
-       };
-
        static float default_quat[4] = {1, 0, 0, 0};    /* default quaternion values */
        static float default_axisAngle[4] = {0, 0, 1, 0};   /* default axis-angle rotation values */
        static float default_scale[3] = {1, 1, 1}; /* default scale values */
@@ -2292,7 +2289,7 @@ static void rna_def_object(BlenderRNA *brna)
 
        prop = RNA_def_property(srna, "rotation_mode", PROP_ENUM, PROP_NONE);
        RNA_def_property_enum_sdna(prop, NULL, "rotmode");
-       RNA_def_property_enum_items(prop, prop_rotmode_items); /* XXX move to using a single define of this someday */
+       RNA_def_property_enum_items(prop, rna_enum_object_rotation_mode_items);
        RNA_def_property_enum_funcs(prop, NULL, "rna_Object_rotation_mode_set", NULL);
        RNA_def_property_ui_text(prop, "Rotation Mode", "");
        RNA_def_property_update(prop, NC_OBJECT | ND_TRANSFORM, "rna_Object_internal_update");
index d86e87f..e08b878 100644 (file)
 
 #include "WM_types.h"
 
-
-
-/* XXX: this RNA enum define is currently duplicated for objects,
- * since there is some text here which is not applicable */
-const EnumPropertyItem rna_enum_posebone_rotmode_items[] = {
-       {ROT_MODE_QUAT, "QUATERNION", 0, "Quaternion (WXYZ)", "No Gimbal Lock (default)"},
-       {ROT_MODE_XYZ, "XYZ", 0, "XYZ Euler", "XYZ Rotation Order (prone to Gimbal Lock)"},
-       {ROT_MODE_XZY, "XZY", 0, "XZY Euler", "XZY Rotation Order (prone to Gimbal Lock)"},
-       {ROT_MODE_YXZ, "YXZ", 0, "YXZ Euler", "YXZ Rotation Order (prone to Gimbal Lock)"},
-       {ROT_MODE_YZX, "YZX", 0, "YZX Euler", "YZX Rotation Order (prone to Gimbal Lock)"},
-       {ROT_MODE_ZXY, "ZXY", 0, "ZXY Euler", "ZXY Rotation Order (prone to Gimbal Lock)"},
-       {ROT_MODE_ZYX, "ZYX", 0, "ZYX Euler", "ZYX Rotation Order (prone to Gimbal Lock)"},
-       {ROT_MODE_AXISANGLE, "AXIS_ANGLE", 0, "Axis Angle",
-                            "Axis Angle (W+XYZ), defines a rotation around some axis defined by 3D-Vector"},
-       {0, NULL, 0, NULL, NULL}
-};
-
 /* Bone and Group Color Sets */
 const EnumPropertyItem rna_enum_color_sets_items[] = {
        {0, "DEFAULT", 0, "Default Colors", ""},
@@ -973,7 +956,7 @@ static void rna_def_pose_channel(BlenderRNA *brna)
 
        prop = RNA_def_property(srna, "rotation_mode", PROP_ENUM, PROP_NONE);
        RNA_def_property_enum_sdna(prop, NULL, "rotmode");
-       RNA_def_property_enum_items(prop, rna_enum_posebone_rotmode_items); /* XXX move to using a single define of this someday */
+       RNA_def_property_enum_items(prop, rna_enum_object_rotation_mode_items);
        RNA_def_property_enum_funcs(prop, NULL, "rna_PoseChannel_rotation_mode_set", NULL);
        /* XXX... disabled, since proxy-locked layers are currently used for ensuring proxy-syncing too */
        RNA_def_property_editable_func(prop, "rna_PoseChannel_proxy_editable");