/// <summary>
        /// Process PointsNamesView scroll event.
        /// </summary>
        /// <param name="eventData">Event data.</param>
        protected void OnPointsScroll(PointerEventData eventData)
        {
            TracksDataView.OnScroll(eventData);
            TracksNamesView.OnScroll(eventData);

            UpdateViewScroll();
        }
        /// <summary>
        /// Process DataView drag event.
        /// </summary>
        /// <param name="eventData">Event data.</param>
        protected void OnDataDrag(PointerEventData eventData)
        {
            TracksNamesView.OnDrag(eventData);
            PointsNamesView.OnDrag(eventData);

            UpdateViewScroll();
        }
 /// <summary>
 /// Process PointsNamesView drag end event.
 /// </summary>
 /// <param name="eventData">Event data.</param>
 protected void OnPointsDragEnd(PointerEventData eventData)
 {
     TracksDataView.OnEndDrag(eventData);
     TracksNamesView.OnEndDrag(eventData);
 }
 /// <summary>
 /// Process PointsNamesView drag begin event.
 /// </summary>
 /// <param name="eventData">Event data.</param>
 protected void OnPointsDragBegin(PointerEventData eventData)
 {
     TracksDataView.OnBeginDrag(eventData);
     TracksNamesView.OnBeginDrag(eventData);
 }
 /// <summary>
 /// Process PointsNamesView drag init event.
 /// </summary>
 /// <param name="eventData">Event data.</param>
 protected void OnPointsDragInit(PointerEventData eventData)
 {
     TracksDataView.OnInitializePotentialDrag(eventData);
     TracksNamesView.OnInitializePotentialDrag(eventData);
 }