Files
Upsilon/apps/code/script_parameter_controller.h
Léa Saviot 57633829a9 [code] Split the Menu Controller in two columns.
The scripts names are on the right and open the script edition.
The left cells open the script options.

Change-Id: I3fbab8c3861f3395c3206775c92cda3470963b26
2017-11-17 14:05:23 +01:00

50 lines
1.5 KiB
C++

#ifndef CODE_SCRIPT_PARAMETER_CONTROLLER_H
#define CODE_SCRIPT_PARAMETER_CONTROLLER_H
#include <escher.h>
#include "../i18n.h"
#include "script_store.h"
namespace Code {
class MenuController;
class ScriptParameterController : public ViewController, public SimpleListViewDataSource, public SelectableTableViewDataSource {
public:
ScriptParameterController(Responder * parentResponder, I18n::Message title, ScriptStore * scriptStore, MenuController * menuController);
void setScript(int i);
void dismissScriptParameterController();
/* ViewController */
View * view() override;
const char * title() override;
bool handleEvent(Ion::Events::Event event) override;
void viewWillAppear() override;
void didBecomeFirstResponder() override;
/* SimpleListViewDataSource */
KDCoordinate cellHeight() override;
HighlightCell * reusableCell(int index) override;
int reusableCellCount() override;
int numberOfRows() override;
void willDisplayCellForIndex(HighlightCell * cell, int index) override;
private:
constexpr static int k_totalNumberOfCell = 4;
StackViewController * stackViewController();
I18n::Message m_pageTitle;
MessageTableCell m_editScript; //TODO rename execute script
MessageTableCell m_renameScript;
MessageTableCellWithSwitch m_autoImportScript;
MessageTableCell m_deleteScript;
SelectableTableView m_selectableTableView;
ScriptStore * m_scriptStore;
MenuController * m_menuController;
bool m_autoImport;
int m_currentScriptIndex;
};
}
#endif