@@ -110,6 +110,38 @@ public override VisualElement CreatePropertyGUI(SerializedProperty property)
110
110
}
111
111
}
112
112
113
+ [ CustomPropertyDrawer ( typeof ( Vector2Parameter ) ) ]
114
+ public class Vector2ParameterDrawer : ExposedParameterDrawer
115
+ {
116
+ public override VisualElement CreatePropertyGUI ( SerializedProperty property )
117
+ {
118
+ var container = new VisualElement ( ) ;
119
+ var val = GetValProperty ( property ) ;
120
+ var name = GetNameProperty ( property ) ;
121
+
122
+ var settings = GetSettingsProperty ( property ) ;
123
+ var mode = settings . FindPropertyRelative ( nameof ( Vector2Parameter . Vector2Settings . mode ) ) ;
124
+ var min = settings . FindPropertyRelative ( nameof ( Vector2Parameter . Vector2Settings . min ) ) ;
125
+ var max = settings . FindPropertyRelative ( nameof ( Vector2Parameter . Vector2Settings . max ) ) ;
126
+ container . Add ( new IMGUIContainer ( ( ) => {
127
+ EditorGUI . BeginChangeCheck ( ) ;
128
+ if ( ( Vector2Parameter . Vector2Mode ) mode . enumValueIndex == Vector2Parameter . Vector2Mode . MinMaxSlider )
129
+ {
130
+ float x = val . vector2Value . x ;
131
+ float y = val . vector2Value . y ;
132
+ EditorGUILayout . MinMaxSlider ( name . stringValue , ref x , ref y , min . floatValue , max . floatValue ) ;
133
+ val . vector2Value = new Vector2 ( x , y ) ;
134
+ }
135
+ else
136
+ val . vector2Value = EditorGUILayout . Vector2Field ( name . stringValue , val . vector2Value ) ;
137
+ if ( EditorGUI . EndChangeCheck ( ) )
138
+ ApplyModifiedProperties ( property ) ;
139
+ } ) ) ;
140
+
141
+ return container ;
142
+ }
143
+ }
144
+
113
145
[ CustomPropertyDrawer ( typeof ( GradientParameter ) ) ]
114
146
public class GradientParameterDrawer : ExposedParameterDrawer
115
147
{
@@ -289,6 +321,8 @@ public override VisualElement CreatePropertyGUI(SerializedProperty settingsPrope
289
321
290
322
settings . Add ( CreateHideInInspectorField ( settingsProperty ) ) ;
291
323
settings . Add ( CreateSettingsField ( settingsProperty , nameof ( Vector2Parameter . Vector2Settings . mode ) , "Mode" ) ) ;
324
+ settings . Add ( CreateSettingsField ( settingsProperty , nameof ( Vector2Parameter . Vector2Settings . min ) , "Min" ) ) ;
325
+ settings . Add ( CreateSettingsField ( settingsProperty , nameof ( Vector2Parameter . Vector2Settings . max ) , "Max" ) ) ;
292
326
293
327
return settings ;
294
328
}
0 commit comments