private void OnTouch(object sender, SKTouchEventArgs e) { if (e.ActionType != SKTouchAction.Released) { return; } if (e.MouseButton == SKMouseButton.Right) { MenuButton_OnClicked(this, new EventArgs()); return; } if (e.MouseButton != SKMouseButton.Left) { return; } var mouseClickLocationX = e.Location.X; var relativeMouseClickLocationX = mouseClickLocationX / _canvasWidth; ITimeSeriesViewer viewer = (ITimeSeriesViewer)Viewers[0]; var span = viewer.GetCurrentData <float>(); int lenTimeVec = span.X.Length; int relevantIndex = (int)(relativeMouseClickLocationX * lenTimeVec); long timeOffset = span.X.ToArray()[relevantIndex]; double timeOffsetSec = -timeOffset / 1000000; _pointSyncPage.AdjustOffset(this, new ValueChangedEventArgs(0, timeOffsetSec)); }
public DataReader(ITimeSeriesViewer viewer) { Viewer = viewer; }