From 89aa0ac302f6fd0e9a9bdba4e9a62340982c0e07 Mon Sep 17 00:00:00 2001 From: Ruben Dashyan Date: Mon, 14 Oct 2019 10:32:27 +0200 Subject: [PATCH] [apps/regression/graph_controller] Clean moveCursorHorizontally --- apps/regression/graph_controller.cpp | 29 +++++++++++++--------------- 1 file changed, 13 insertions(+), 16 deletions(-) diff --git a/apps/regression/graph_controller.cpp b/apps/regression/graph_controller.cpp index 3164fc8be..7c7061fac 100644 --- a/apps/regression/graph_controller.cpp +++ b/apps/regression/graph_controller.cpp @@ -233,27 +233,24 @@ void GraphController::reloadBannerView() { } bool GraphController::moveCursorHorizontally(int direction, bool fast) { + double x; + double y; if (*m_selectedDotIndex >= 0) { int dotSelected = m_store->nextDot(*m_selectedSeriesIndex, direction, *m_selectedDotIndex); if (dotSelected >= 0 && dotSelected < m_store->numberOfPairsOfSeries(*m_selectedSeriesIndex)) { - *m_selectedDotIndex = dotSelected; - double x = m_store->get(*m_selectedSeriesIndex, 0, *m_selectedDotIndex); - double y = m_store->get(*m_selectedSeriesIndex, 1, *m_selectedDotIndex); - m_cursor->moveTo(x, x, y); - return true; + x = m_store->get(*m_selectedSeriesIndex, 0, *m_selectedDotIndex); + y = m_store->get(*m_selectedSeriesIndex, 1, *m_selectedDotIndex); + } else if (dotSelected == m_store->numberOfPairsOfSeries(*m_selectedSeriesIndex)) { + x = m_store->meanOfColumn(*m_selectedSeriesIndex, 0); + y = m_store->meanOfColumn(*m_selectedSeriesIndex, 1); + } else { + return false } - if (dotSelected == m_store->numberOfPairsOfSeries(*m_selectedSeriesIndex)) { - *m_selectedDotIndex = dotSelected; - double x = m_store->meanOfColumn(*m_selectedSeriesIndex, 0); - double y = m_store->meanOfColumn(*m_selectedSeriesIndex, 1); - m_cursor->moveTo(x, x, y); - return true; - } - return false; + *m_selectedDotIndex = dotSelected; + } else { + x = m_cursor->x() + direction * m_store->xGridUnit()/k_numberOfCursorStepsInGradUnit; + y = yValue(*m_selectedSeriesIndex, x, globalContext()); } - double x = direction > 0 ? m_cursor->x() + m_store->xGridUnit()/k_numberOfCursorStepsInGradUnit : - m_cursor->x() - m_store->xGridUnit()/k_numberOfCursorStepsInGradUnit; - double y = yValue(*m_selectedSeriesIndex, x, globalContext()); m_cursor->moveTo(x, x, y); return true; }