diff --git a/apps/probability/Makefile b/apps/probability/Makefile index 740562e88..2c5be0113 100644 --- a/apps/probability/Makefile +++ b/apps/probability/Makefile @@ -2,4 +2,5 @@ app_objs += $(addprefix apps/probability/,\ app.o\ law/law_cell.o\ law/law_controller.o\ + parameters/parameters_controller.o\ ) diff --git a/apps/probability/app.cpp b/apps/probability/app.cpp index 7ac189ae6..834e24e58 100644 --- a/apps/probability/app.cpp +++ b/apps/probability/app.cpp @@ -3,11 +3,17 @@ Probability::App::App() : ::App(), m_lawController(LawController(nullptr)), + m_parametersController(ParametersController(nullptr)), m_stackViewController(this) { m_stackViewController.push(&m_lawController); } +void Probability::App::setLaw(Law l) { + //m_parametersController.setLaw(thePickedLaw); + m_stackViewController.push(&m_parametersController); +} + ViewController * Probability::App::rootViewController() { return &m_stackViewController; } diff --git a/apps/probability/app.h b/apps/probability/app.h index a29e542d9..0f1076bb9 100644 --- a/apps/probability/app.h +++ b/apps/probability/app.h @@ -3,18 +3,23 @@ #include #include "law/law_controller.h" +#include "parameters/parameters_controller.h" namespace Probability { class App : public ::App { public: + enum class Law { + Normal, + Student + }; App(); + void setLaw(Law l); protected: ViewController * rootViewController() override; private: LawController m_lawController; - //ListController m_listController; - //GraphController m_graphController; + ParametersController m_parametersController; StackViewController m_stackViewController; }; diff --git a/apps/probability/law/law_controller.cpp b/apps/probability/law/law_controller.cpp index aa135587b..6bea972b8 100644 --- a/apps/probability/law/law_controller.cpp +++ b/apps/probability/law/law_controller.cpp @@ -1,5 +1,6 @@ #include "law_controller.h" #include +#include "../app.h" static const char * sMessages[] = { "Loi Normale", @@ -49,8 +50,7 @@ bool Probability::LawController::handleEvent(ion_event_t event) { setActiveCell(m_activeCell-1); return true; case ENTER: - m_manualScrolling += 10; - m_tableView.setContentOffset({0, m_manualScrolling}); + ((Probability::App *)app())->setLaw(App::Law::Normal); return true; default: return false; diff --git a/apps/probability/parameters/parameters_controller.cpp b/apps/probability/parameters/parameters_controller.cpp new file mode 100644 index 000000000..ff619268c --- /dev/null +++ b/apps/probability/parameters/parameters_controller.cpp @@ -0,0 +1,19 @@ +#include "parameters_controller.h" + +Probability::ParametersController::ParametersController(Responder * parentResponder) : + ViewController(parentResponder), + m_view(SolidColorView(KDColor(0xF3619B))) +{ +} + +View * Probability::ParametersController::view() { + return &m_view; +} + +const char * Probability::ParametersController::title() const { + return "Parameters"; +} + +bool Probability::ParametersController::handleEvent(ion_event_t event) { + return false; +} diff --git a/apps/probability/parameters/parameters_controller.h b/apps/probability/parameters/parameters_controller.h new file mode 100644 index 000000000..3de7bb261 --- /dev/null +++ b/apps/probability/parameters/parameters_controller.h @@ -0,0 +1,21 @@ +#ifndef PROBABILITY_PARAMETERS_CONTROLLER_H +#define PROBABILITY_PARAMETERS_CONTROLLER_H + +#include + +namespace Probability { + +class ParametersController : public ViewController { +public: + ParametersController(Responder * parentResponder); + + View * view() override; + const char * title() const override; + bool handleEvent(ion_event_t event) override; +private: + SolidColorView m_view; +}; + +} + +#endif