12 m_selectableTableView(this),
14 m_tangentGraphController(nullptr, graphView, bannerView, range, cursor),
15 m_integralGraphController(nullptr, graphView, range, cursor),
16 m_minimumGraphController(nullptr, graphView, bannerView, range, cursor),
17 m_maximumGraphController(nullptr, graphView, bannerView, range, cursor),
18 m_rootGraphController(nullptr, graphView, bannerView, range, cursor),
19 m_intersectionGraphController(nullptr, graphView, bannerView, range, cursor, functionStore)
28 return &m_selectableTableView;
41 m_intersectionGraphController.
setFunction(m_function);
42 controller = &m_intersectionGraphController;
46 controller = &m_maximumGraphController;
50 controller = &m_minimumGraphController;
54 controller = &m_rootGraphController;
58 controller = &m_tangentGraphController;
62 controller = &m_integralGraphController;
70 stack->
push(controller);
82 return k_totalNumberOfCells;
88 assert(index < k_totalNumberOfCells);
89 return &m_cells[index];
93 return k_totalNumberOfCells;
107 m_function =
function;
int reusableCellCount() override
void setFunction(CartesianFunction *function)
void push(ViewController *vc, KDColor textColor=Palette::SubTab, KDColor backgroundColor=KDColorWhite, KDColor separatorColor=Palette::GreyBright)
Responder * parentResponder() const
bool selectCellAtLocation(int i, int j, bool setFirstResponder=true)
void setFunction(CartesianFunction *function)
HighlightCell * reusableCell(int index) override
enum Message uint16_t enum Language uint16_t const char * translate(Message m, Language l=(Language) 0)
const char * title() override
KDCoordinate cellHeight() override
bool handleEvent(Ion::Events::Event event) override
int numberOfRows() override
void setMessage(I18n::Message message)
static constexpr KDCoordinate ParameterCellHeight
void setFirstResponder(Responder *responder)
void setFunction(Function *function)
void didBecomeFirstResponder() override
void setFunction(CartesianFunction *function)
void willDisplayCellForIndex(HighlightCell *cell, int index) override