[apps] Get rid of DynamicViewController in FloatParameterController

This commit is contained in:
Émilie Feral
2018-09-11 10:16:36 +02:00
parent 5cb4258af6
commit 6d9f0c0f0b
15 changed files with 89 additions and 227 deletions

View File

@@ -8,6 +8,11 @@ IntervalParameterController::IntervalParameterController(Responder * parentRespo
m_interval(interval),
m_intervalCells{}
{
for (int i = 0; i < k_totalNumberOfCell; i++) {
m_intervalCells[i].setParentResponder(&m_selectableTableView);
m_intervalCells[i].textField()->setDelegate(this);
m_intervalCells[i].textField()->setDraftTextBuffer(m_draftTextBuffer);
}
}
const char * IntervalParameterController::title() {
@@ -60,7 +65,7 @@ bool IntervalParameterController::setParameterAtIndex(int parameterIndex, double
HighlightCell * IntervalParameterController::reusableParameterCell(int index, int type) {
assert(index >= 0);
assert(index < k_totalNumberOfCell);
return m_intervalCells[index];
return &m_intervalCells[index];
}
bool IntervalParameterController::handleEvent(Ion::Events::Event event) {
@@ -83,20 +88,4 @@ void IntervalParameterController::buttonAction() {
}
}
View * IntervalParameterController::loadView() {
SelectableTableView * tableView = (SelectableTableView *)FloatParameterController::loadView();
for (int i = 0; i < k_totalNumberOfCell; i++) {
m_intervalCells[i] = new MessageTableCellWithEditableText(tableView, this, m_draftTextBuffer, I18n::Message::Default);
}
return tableView;
}
void IntervalParameterController::unloadView(View * view) {
for (int i = 0; i < k_totalNumberOfCell; i++) {
delete m_intervalCells[i];
m_intervalCells[i] = nullptr;
}
FloatParameterController::unloadView(view);
}
}