private static List <SimpleCurveDrawInfo> GetFocusedCurves(List <SimpleCurveDrawInfo> curves, Rect screenRect, Rect viewRect)
        {
            if (curves.Count == 0)
            {
                return(null);
            }
            if (!Mouse.IsOver(screenRect))
            {
                return(null);
            }
            GUI.BeginGroup(screenRect);
            Vector2 mousePosition = Event.current.mousePosition;
            Vector2 vector        = default(Vector2);
            Vector2 vector2       = default(Vector2);
            bool    flag          = false;
            List <SimpleCurveDrawInfo> simpleCurveDrawInfos = new List <SimpleCurveDrawInfo>();

            foreach (SimpleCurveDrawInfo simpleCurveDrawInfo2 in curves)
            {
                if (simpleCurveDrawInfo2.curve.PointsCount != 0)
                {
                    Vector2 vector3 = SimpleCurveDrawer.ScreenToCurveCoords(screenRect, viewRect, mousePosition);
                    vector3.y = simpleCurveDrawInfo2.curve.Evaluate(vector3.x);
                    Vector2 vector4 = SimpleCurveDrawer.CurveToScreenCoordsInsideScreenRect(screenRect, viewRect, vector3);
                    if (!flag || Mathf.Approximately(Vector2.Distance(vector4, mousePosition), Vector2.Distance(vector2, mousePosition)))
                    {
                        flag    = true;
                        vector  = vector3;
                        vector2 = vector4;
                        simpleCurveDrawInfos.Add(simpleCurveDrawInfo2);
                    }
                    else if (!flag || Vector2.Distance(vector4, mousePosition) < Vector2.Distance(vector2, mousePosition))
                    {
                        flag    = true;
                        vector  = vector3;
                        vector2 = vector4;
                        simpleCurveDrawInfos.Clear();
                        simpleCurveDrawInfos.Add(simpleCurveDrawInfo2);
                    }
                }
            }
            GUI.EndGroup();
            return(simpleCurveDrawInfos);
        }
 // Token: 0x06001E03 RID: 7683 RVA: 0x000BCB34 File Offset: 0x000BAD34
 private static IEnumerable <int> PointsNearMouse(Rect screenRect, SimpleCurve curve, Vector2 mousePosition)
 {
     GUI.BeginGroup(screenRect);
     try
     {
         int num;
         for (int i = 0; i < curve.PointsCount; i = num + 1)
         {
             if ((SimpleCurveDrawer.CurveToScreenCoordsInsideScreenRect(screenRect, curve.View.rect, curve[i].Loc) - mousePosition).sqrMagnitude < 49f)
             {
                 yield return(i);
             }
             num = i;
         }
     }
     finally
     {
         GUI.EndGroup();
     }
     yield break;
 }