[escher] make an independent class alternate empty view to handle

empty store and add a delegate to the header view controller class

Change-Id: I7c4e8342876e9273270772d4bad0db9424276a98
This commit is contained in:
Émilie Feral
2016-11-17 11:06:42 +01:00
parent 0acd372a74
commit b2da9687f1
17 changed files with 292 additions and 160 deletions

View File

@@ -4,21 +4,29 @@
namespace Graph {
ListController::ListController(Responder * parentResponder, FunctionStore * functionStore) :
HeaderViewController(parentResponder, &m_selectableTableView),
ListController::ListController(Responder * parentResponder, FunctionStore * functionStore, HeaderViewController * header) :
ViewController(parentResponder),
HeaderViewDelegate(header),
m_selectableTableView(SelectableTableView(this, this)),
m_functionStore(functionStore),
m_parameterController(ParameterController(this, functionStore))
{
setVisibleHeader(false);
}
const char * ListController::title() const {
return "Fonctions";
}
View * ListController::view() {
return &m_selectableTableView;
}
Responder * ListController::tabController() const{
return (parentResponder()->parentResponder());
return (parentResponder()->parentResponder()->parentResponder());
}
StackViewController * ListController::stackController() const{
return (StackViewController *)(parentResponder()->parentResponder());
}
int ListController::numberOfRows() {
@@ -106,7 +114,7 @@ void ListController::didBecomeFirstResponder() {
}
void ListController::configureFunction(Function * function) {
StackViewController * stack = ((StackViewController *)parentResponder());
StackViewController * stack = stackController();
m_parameterController.setFunction(function);
stack->push(&m_parameterController);
}