public void SetMouseCursorX(int x, bool force = false) { if (!force && m_MouseCursorX == x) { return; } foreach (var pane in m_Chart.Panes) { pane.Invalidate(new Rectangle(m_MouseCursorX - 1, 0, 2, pane.Height)); } m_MouseCursorX = x; foreach (var pane in m_Chart.Panes) { pane.Invalidate(new Rectangle(m_MouseCursorX - 1, 0, 2, pane.Height)); } var sample = m_Chart.MapXToSample(x); if (sample != null) { var ts = sample.TimeStamp; m_TimeCursor.SetText("{0:D2}/{1:D2}\n{2:D2}:{3:D2}:{4:D2}".Args(ts.Month, ts.Day, ts.Hour, ts.Minute, ts.Second), x); m_TimeCursor.Visible = true; } else { m_TimeCursor.Visible = false; } }
public void SetMouseCursorX(int x, bool force = false) { if (!force && m_MouseCursorX == x) { return; } foreach (var pane in m_Chart.Panes) { pane.Invalidate(new Rectangle(m_MouseCursorX - 1, 0, 2, pane.Height)); } m_MouseCursorX = x; foreach (var pane in m_Chart.Panes) { pane.Invalidate(new Rectangle(m_MouseCursorX - 1, 0, 2, pane.Height)); } var sample = m_Chart.MapXToSample(x); if (sample != null) { m_TimeCursor.SetText(OnTimeLineFormat(sample.TimeStamp, null, true), x); m_TimeCursor.Visible = true; } else { m_TimeCursor.Visible = false; } }