protected override void OnGUI(Rect position, GUIContent label) { position = BeginBlock(metadata, position, label); Vector2 newValue; if (adaptiveWidth) { newValue = LudiqGUI.AdaptiveVector2Field(position, GUIContent.none, (Vector2)metadata.value); } else if (position.width <= Styles.compactThreshold) { newValue = LudiqGUI.CompactVector2Field(position, GUIContent.none, (Vector2)metadata.value); } else { newValue = EditorGUI.Vector2Field(position, GUIContent.none, (Vector2)metadata.value); } if (EndBlock(metadata)) { metadata.RecordUndo(); metadata.value = newValue; } }
protected override void OnControlGUI(Rect position) { EditorGUI.BeginChangeCheck(); Vector2 newValue; if (adaptiveWidth) { newValue = LudiqGUI.AdaptiveVector2Field(position, GUIContent.none, (Vector2)accessor.value); } else if (position.width <= Styles.compactThreshold) { newValue = LudiqGUI.CompactVector2Field(position, GUIContent.none, (Vector2)accessor.value); } else { newValue = EditorGUI.Vector2Field(position, GUIContent.none, (Vector2)accessor.value); } if (EditorGUI.EndChangeCheck()) { accessor.RecordUndo(); accessor.value = newValue; } }
protected override void OnControlGUI(Rect position) { EditorGUI.BeginChangeCheck(); var originPosition = new Rect ( position.x, position.y, position.width, EditorGUIUtility.singleLineHeight ); var directionPosition = new Rect ( position.x, originPosition.yMax + EditorGUIUtility.standardVerticalSpacing, position.width, EditorGUIUtility.singleLineHeight ); using (LudiqGUIUtility.labelWidth.Override(16)) { originPosition = PrefixLabel(originPosition, new GUIContent("O", "Origin")); directionPosition = PrefixLabel(directionPosition, new GUIContent("D", "Direction")); } Vector2 newOrigin; Vector2 newDirection; if (wideMode) { newOrigin = EditorGUI.Vector2Field(originPosition, GUIContent.none, (Vector2)originAccessor.value); newDirection = EditorGUI.Vector2Field(directionPosition, GUIContent.none, (Vector2)directionAccessor.value); } else { newOrigin = LudiqGUI.CompactVector2Field(originPosition, GUIContent.none, (Vector2)originAccessor.value); newDirection = LudiqGUI.CompactVector2Field(directionPosition, GUIContent.none, (Vector2)directionAccessor.value); } if (EditorGUI.EndChangeCheck()) { accessor.RecordUndo(); accessor.value = new Ray2D(newOrigin, newDirection); } }