Numworks Epsilon  1.4.1
Graphing Calculator Operating System
calculation_controller.h
Go to the documentation of this file.
1 #ifndef STATISTICS_CALCULATION_CONTROLLER_H
2 #define STATISTICS_CALCULATION_CONTROLLER_H
3 
4 #include <escher.h>
5 #include "store.h"
6 #include "../shared/tab_table_controller.h"
7 
8 namespace Statistics {
9 
11 
12 public:
14  const char * title() override;
15  bool handleEvent(Ion::Events::Event event) override;
16  void didBecomeFirstResponder() override;
17 
18  bool isEmpty() const override;
19  I18n::Message emptyMessage() override;
20  Responder * defaultController() override;
21 
22  int numberOfRows() override;
23  int numberOfColumns() override;
24  void willDisplayCellAtLocation(HighlightCell * cell, int i, int j) override;
25  KDCoordinate columnWidth(int i) override;
26  KDCoordinate rowHeight(int j) override;
27  KDCoordinate cumulatedHeightFromIndex(int j) override;
28  int indexFromCumulatedHeight(KDCoordinate offsetY) override;
29  KDCoordinate cumulatedWidthFromIndex(int i) override;
30  int indexFromCumulatedWidth(KDCoordinate offsetX) override;
31  HighlightCell * reusableCell(int index, int type) override;
32  int reusableCellCount(int type) override;
33  int typeAtLocation(int i, int j) override;
34 private:
35  Responder * tabController() const override;
36  View * loadView() override;
37  void unloadView(View * view) override;
38  constexpr static int k_totalNumberOfRows = 14;
39  constexpr static int k_maxNumberOfDisplayableRows = 11;
40  static constexpr KDCoordinate k_cellHeight = 20;
41  static constexpr KDCoordinate k_titleCellWidth = 175;
42  EvenOddMessageTextCell * m_titleCells[k_maxNumberOfDisplayableRows];
43  EvenOddBufferTextCell * m_calculationCells[k_maxNumberOfDisplayableRows];
44  Store * m_store;
45 };
46 
47 }
48 
49 
50 #endif
KDCoordinate cumulatedWidthFromIndex(int i) override
KDCoordinate cumulatedHeightFromIndex(int j) override
int16_t KDCoordinate
Definition: coordinate.h:6
Responder * parentResponder() const
Definition: responder.cpp:12
ButtonRowController * header()
int indexFromCumulatedWidth(KDCoordinate offsetX) override
HighlightCell * reusableCell(int index, int type) override
CalculationController(Responder *parentResponder, ButtonRowController *header, Store *store)
bool handleEvent(Ion::Events::Event event) override
int indexFromCumulatedHeight(KDCoordinate offsetY) override
void willDisplayCellAtLocation(HighlightCell *cell, int i, int j) override
Definition: view.h:23
KDCoordinate columnWidth(int i) override
int typeAtLocation(int i, int j) override
KDCoordinate rowHeight(int j) override