diff --git a/apps/regression/Makefile b/apps/regression/Makefile index a0be3b700..f8f395eaf 100644 --- a/apps/regression/Makefile +++ b/apps/regression/Makefile @@ -7,6 +7,7 @@ app_objs += $(addprefix apps/regression/,\ graph_controller.o\ graph_view.o\ initialisation_parameter_controller.o\ + prediction_parameter_controller.o\ ) app_images += apps/regression/regression_icon.png diff --git a/apps/regression/prediction_parameter_controller.cpp b/apps/regression/prediction_parameter_controller.cpp new file mode 100644 index 000000000..6d91f3d76 --- /dev/null +++ b/apps/regression/prediction_parameter_controller.cpp @@ -0,0 +1,57 @@ +#include "prediction_parameter_controller.h" +#include + +namespace Regression { + +PredictionParameterController::PredictionParameterController(Responder * parentResponder, Data * data) : + ViewController(parentResponder), + m_selectableTableView(SelectableTableView(this, this, Metric::TopMargin, Metric::RightMargin, + Metric::BottomMargin, Metric::LeftMargin)) +{ +} + +const char * PredictionParameterController::title() const { + return "Droite de regression"; +} + +View * PredictionParameterController::view() { + return &m_selectableTableView; +} + +void PredictionParameterController::didBecomeFirstResponder() { + m_selectableTableView.selectCellAtLocation(0, 0); + app()->setFirstResponder(&m_selectableTableView); +} + +bool PredictionParameterController::handleEvent(Ion::Events::Event event) { + if (event == Ion::Events::OK) { + return false; + } + return false; +} + +int PredictionParameterController::numberOfRows() { + return k_totalNumberOfCells; +}; + +TableViewCell * PredictionParameterController::reusableCell(int index) { + assert(index >= 0); + assert(index < k_totalNumberOfCells); + return &m_cells[index]; +} + +int PredictionParameterController::reusableCellCount() { + return k_totalNumberOfCells; +} + +KDCoordinate PredictionParameterController::cellHeight() { + return 35; +} + +void PredictionParameterController::willDisplayCellForIndex(TableViewCell * cell, int index) { + ChevronMenuListCell * myCell = (ChevronMenuListCell *)cell; + const char * titles[3] = {"Prediction sachant x", "Prediction sachant y"}; + myCell->setText(titles[index]); +} + +} diff --git a/apps/regression/prediction_parameter_controller.h b/apps/regression/prediction_parameter_controller.h new file mode 100644 index 000000000..c57cfa5b2 --- /dev/null +++ b/apps/regression/prediction_parameter_controller.h @@ -0,0 +1,29 @@ +#ifndef REGRESSION_PREDICTION_PARAMETER_CONTROLLER_H +#define REGRESSION_PREDICTION_PARAMETER_CONTROLLER_H + +#include +#include "data.h" + +namespace Regression { + +class PredictionParameterController : public ViewController, public SimpleListViewDataSource { +public: + PredictionParameterController(Responder * parentResponder, Data * data); + View * view() override; + const char * title() const override; + bool handleEvent(Ion::Events::Event event) override; + void didBecomeFirstResponder() override; + int numberOfRows() override; + KDCoordinate cellHeight() override; + TableViewCell * reusableCell(int index) override; + int reusableCellCount() override; + void willDisplayCellForIndex(TableViewCell * cell, int index) override; +private: + constexpr static int k_totalNumberOfCells = 2; + ChevronMenuListCell m_cells[2]; + SelectableTableView m_selectableTableView; +}; + +} + +#endif