Files
Upsilon/apps/graph/values/values_parameter_controller.h
Émilie Feral a643969ee5 [apps/graph/values] Enable to overwrite interval parameters by typing
numerical values

Change-Id: I2c19dde8f7e01cec1d0b31ec320209b77a97c43e
2016-10-19 09:40:26 +02:00

41 lines
1.2 KiB
C++

#ifndef GRAPH_VALUES_PARAM_CONTROLLER_H
#define GRAPH_VALUES_PARAM_CONTROLLER_H
#include <escher.h>
#include "interval.h"
namespace Graph {
class ValuesParameterController : public ViewController, public ListViewDataSource {
public:
ValuesParameterController(Responder * parentResponder, Interval * interval);
Interval * interval();
TextListViewCell * ListViewCellAtIndex(int index);
int activeCell();
void editInterval(bool overwrite, char initialDigit = 0);
void setIntervalParameterAtIndex(int parameterIndex, float f);
View * view() override;
const char * title() const override;
bool handleEvent(Ion::Events::Event event) override;
void didBecomeFirstResponder() override;
void setActiveCell(int index);
int numberOfRows() override;
KDCoordinate cellHeight() override;
View * reusableCell(int index) override;
int reusableCellCount() override;
void willDisplayCellForIndex(View * cell, int index) override;
private:
constexpr static int k_totalNumberOfCell = 3;
Interval * m_interval;
TextListViewCell m_intervalStartCell;
TextListViewCell m_intervalEndCell;
TextListViewCell m_intervalStepCell;
ListView m_listView;
int m_activeCell;
};
}
#endif