//================================ Public methods ================================= /// <inheritdoc /> public override void OnInspectorGUI() { EditorGUILayout.HelpBox("Ope point mode: Editing a one point.", MessageType.Info); if (_selection < 0) { return; } Spline.Update(); var needToUpdate = SplineGUILayout.PointField(Spline, _selection); var action = SplineGUILayout.PointCreationControls(Spline.GetPointInfo(_selection)); PointInfo info; if (SplineGUILayout.PointTypeControls(Spline.GetPoint(_selection), out info, Spline.Count)) { Spline.SetPointInfo(_selection, info); needToUpdate = true; } if (action != SplineGUILayout.CreationType.None) { //TODO: Add creation methods if (action == SplineGUILayout.CreationType.AddLeft) { Spline.AddLeftPoint(_selection); } needToUpdate = true; } if (!needToUpdate) { return; } Spline.ApplyModifiedProperties(); SceneView.RepaintAll(); }