public override void OnGUI(Rect rect, SerializedProperty property, GUIContent label)
        {
            SerializedProperty jointTypeProp = property.FindPropertyRelative("jointType");
            JointType          jointType     = (JointType)jointTypeProp.intValue;

            if (jointType == JointType.CharacterJoint)
            {
                ClingyEditorUtils.DrawProperties(property, characterJointProps, rect);
            }
            else if (jointType == JointType.ConfigurableJoint)
            {
                ClingyEditorUtils.DrawProperties(property, configurableJointProps, rect);
            }
            else if (jointType == JointType.HingeJoint)
            {
                ClingyEditorUtils.DrawProperties(property, hingeJointProps, rect);
            }
            else if (jointType == JointType.SpringJoint)
            {
                ClingyEditorUtils.DrawProperties(property, springJointProps, rect);
            }
            else if (jointType == JointType.FixedJoint)
            {
                ClingyEditorUtils.DrawProperties(property, fixedJointProps, rect);
            }
            else
            {
                throw new System.NotImplementedException("Clingy: Unrecognized joint type");
            }
        }
        public override void OnGUI(Rect rect, SerializedProperty property, GUIContent label)
        {
            SerializedProperty jointTypeProp = property.FindPropertyRelative("jointType");
            JointType2D        jointType     = (JointType2D)jointTypeProp.intValue;

            if (jointType == JointType2D.DistanceJoint2D)
            {
                ClingyEditorUtils.DrawProperties(property, distanceJoint2DProps, rect);
            }
            else if (jointType == JointType2D.FrictionJoint2D)
            {
                ClingyEditorUtils.DrawProperties(property, frictionJoint2DProps, rect);
            }
            else if (jointType == JointType2D.HingeJoint2D)
            {
                ClingyEditorUtils.DrawProperties(property, hingeJoint2DProps, rect);
            }
            else if (jointType == JointType2D.RelativeJoint2D)
            {
                ClingyEditorUtils.DrawProperties(property, relativeJoint2DProps, rect);
            }
            else if (jointType == JointType2D.TargetJoint2D)
            {
                ClingyEditorUtils.DrawProperties(property, targetJoint2DProps, rect);
            }
            else if (jointType == JointType2D.SpringJoint2D)
            {
                ClingyEditorUtils.DrawProperties(property, springJoint2DProps, rect);
            }
            else if (jointType == JointType2D.FixedJoint2D)
            {
                ClingyEditorUtils.DrawProperties(property, fixedJoint2DProps, rect);
            }
            else if (jointType == JointType2D.WheelJoint2D)
            {
                ClingyEditorUtils.DrawProperties(property, wheelJoint2DProps, rect);
            }
            else if (jointType == JointType2D.SliderJoint2D)
            {
                ClingyEditorUtils.DrawProperties(property, sliderJoint2DProps, rect);
            }
            else
            {
                throw new System.NotImplementedException("Clingy: Unrecognized joint type");
            }
        }