From 3e74503e2276b456edca329efd2a59a67efe6c0f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89milie=20Feral?= Date: Mon, 2 Jan 2017 15:58:36 +0100 Subject: [PATCH] [apps/regression] In graph tab, display the window parameter page when clicking on the window button Change-Id: Ieea50d5eae0bc998cb0d2df51a4e961a573bd1cd --- apps/regression/graph_controller.cpp | 15 ++++++++++++++- apps/regression/graph_controller.h | 5 +++++ 2 files changed, 19 insertions(+), 1 deletion(-) diff --git a/apps/regression/graph_controller.cpp b/apps/regression/graph_controller.cpp index 0720412c3..c5ddc37de 100644 --- a/apps/regression/graph_controller.cpp +++ b/apps/regression/graph_controller.cpp @@ -6,7 +6,12 @@ GraphController::GraphController(Responder * parentResponder, HeaderViewControll ViewController(parentResponder), HeaderViewDelegate(headerViewController), m_view(GraphView(data)), - m_windowButton(this, "Axes", Invocation([](void * context, void * sender) {}, this)), + m_windowParameterController(WindowParameterController(this, data)), + m_windowButton(this, "Axes", Invocation([](void * context, void * sender) { + GraphController * graphController = (GraphController *) context; + StackViewController * stack = graphController->stackController(); + stack->push(graphController->windowParameterController()); + }, this)), m_zoomButton(this, "Zoom", Invocation([](void * context, void * sender) {}, this)), m_defaultInitialisationButton(this, "Initialisation", Invocation([](void * context, void * sender) {}, this)), m_data(data) @@ -101,9 +106,17 @@ Responder * GraphController::defaultController() { return tabController(); } +ViewController * GraphController::windowParameterController() { + return &m_windowParameterController; +} + Responder * GraphController::tabController() const { return (parentResponder()->parentResponder()->parentResponder()->parentResponder()); } +StackViewController * GraphController::stackController() const{ + return (StackViewController *)(parentResponder()->parentResponder()->parentResponder()); +} + } diff --git a/apps/regression/graph_controller.h b/apps/regression/graph_controller.h index a40dcdd0b..2a106fde5 100644 --- a/apps/regression/graph_controller.h +++ b/apps/regression/graph_controller.h @@ -4,6 +4,7 @@ #include #include "data.h" #include "graph_view.h" +#include "../window_parameter_controller.h" namespace Regression { @@ -22,9 +23,13 @@ public: bool isEmpty() override; const char * emptyMessage() override; Responder * defaultController() override; + + ViewController * windowParameterController(); private: Responder * tabController() const; + StackViewController * stackController() const; GraphView m_view; + WindowParameterController m_windowParameterController; Button m_windowButton; Button m_zoomButton; Button m_defaultInitialisationButton;