1234567891011121314151617181920212223242526 |
- using UnityEngine;
- using UnityEditor;
- namespace ARLocation
- {
- [CustomPropertyDrawer(typeof(ConditionalPropertyAttribute))]
- public class ConditionalPropertyDrawer : PropertyDrawer
- {
- public override void OnGUI(Rect position, SerializedProperty property, GUIContent label)
- {
- var conditionalAttribute = (ConditionalPropertyAttribute) attribute;
- var name = conditionalAttribute.Name;
- var path = property.propertyPath;
- var prop = property.serializedObject.FindProperty(path.Replace(property.name, name));
- if (prop != null)
- {
- if (prop.boolValue)
- {
- EditorGUI.PropertyField(position, property);
- }
- }
- }
- }
- }
|