Files
Upsilon/apps/settings/sub_menu/datetime_controller.h
2020-08-16 15:49:40 +02:00

31 lines
1.2 KiB
C++

#ifndef SETTINGS_DATETIME_CONTROLLER_H
#define SETTINGS_DATETIME_CONTROLLER_H
#include "generic_sub_controller.h"
namespace Settings {
class DateTimeController : public GenericSubController, public TextFieldDelegate {
public:
DateTimeController(Responder * parentResponder);
bool handleEvent(Ion::Events::Event event) override;
HighlightCell * reusableCell(int index, int type) override;
int reusableCellCount(int type) override;
void willDisplayCellForIndex(HighlightCell * cell, int index) override;
int typeAtLocation(int i, int j) override;
bool textFieldShouldFinishEditing(TextField * textField, Ion::Events::Event event) override;
bool textFieldDidReceiveEvent(TextField * textField, Ion::Events::Event event) override;
bool textFieldDidFinishEditing(TextField * view, const char * text, Ion::Events::Event event) override;
private:
constexpr static int k_totalNumberOfSwitchCells = 1;
constexpr static int k_totalNumberOfTextCells = 2;
MessageTableCellWithEditableText m_textCells[k_totalNumberOfTextCells];
MessageTableCellWithSwitch m_switchCells[k_totalNumberOfSwitchCells];
char m_timeBuffer[9];
char m_dateBuffer[11];
};
}
#endif