private void CurveEditorOnGUI(Rect position) { if (Event.current.type == EventType.Repaint) { m_CurveEditor.rect = position; m_CurveEditor.SetTickMarkerRanges(); } Rect noSlidersRect = new Rect(position.xMin, position.yMin, position.width - kSliderThickness, position.height - kSliderThickness); m_CurveEditor.vSlider = m_State.showCurveEditor; m_CurveEditor.hSlider = m_State.showCurveEditor; // Sync animation curves in curve editor. Do it only once per frame. if (Event.current.type == EventType.Layout) { UpdateCurveEditorData(); } m_CurveEditor.BeginViewGUI(); if (!m_State.disabled) { GUI.Box(noSlidersRect, GUIContent.none, AnimationWindowStyles.curveEditorBackground); m_CurveEditor.GridGUI(); } EditorGUI.BeginChangeCheck(); m_CurveEditor.CurveGUI(); if (EditorGUI.EndChangeCheck()) { SaveChangedCurvesFromCurveEditor(); } m_CurveEditor.EndViewGUI(); }