NodeGraph GetExternalGraph()
        {
            FlexibleType type = EnumUtility.GetValueFromIndex <FlexibleType>(_ExternalBTProperty.type.enumValueIndex);

            if (type == FlexibleType.Constant)
            {
                return(_ExternalBTProperty.value.objectReferenceValue as NodeGraph);
            }

            return(null);
        }
        public override void OnInspectorGUI()
        {
            serializedObject.Update();

            EditorGUILayout.PropertyField(serializedObject.FindProperty("_Text"));

            SerializedProperty stringProperty = serializedObject.FindProperty("_String");

            EditorGUILayout.PropertyField(stringProperty);

            SerializedProperty typeProperty = stringProperty.FindPropertyRelative("_Type");
            FlexibleType       type         = EnumUtility.GetValueFromIndex <FlexibleType>(typeProperty.enumValueIndex);

            if (type == FlexibleType.Parameter)
            {
                EditorGUILayout.PropertyField(serializedObject.FindProperty("_ChangeTimingUpdate"));
            }

            serializedObject.ApplyModifiedProperties();
        }