//Provides an element based on the percent location
        public int GetEventIndexForTimeScale(float scale)
        {
            int      i;
            DateTime targetValue = TimeStart.AddTicks((long)((TimeEnd - TimeStart).Ticks * scale));

            for (i = events.Count - 1; i > 0; i--)
            {
                if (events[i].Time > targetValue)
                {
                    break;
                }
            }

            return(i);
        }