[apps/sequence/list] Display specific toolbox

Change-Id: I4af4ba588677ca6688b64b10c29c69e16f98fffb
This commit is contained in:
Émilie Feral
2017-02-16 15:51:40 +01:00
parent 5c8b5492e8
commit 0d8629c752
7 changed files with 43 additions and 27 deletions

View File

@@ -15,7 +15,8 @@ ListController::ListController(Responder * parentResponder, SequenceStore * sequ
SequenceTitleCell(FunctionTitleCell::Orientation::VerticalIndicator), SequenceTitleCell(FunctionTitleCell::Orientation::VerticalIndicator)},
m_parameterController(ListParameterController(this, sequenceStore)),
m_typeParameterController(this, sequenceStore),
m_typeStackController(StackViewController(nullptr, &m_typeParameterController, true, KDColorWhite, Palette::PurpleDark, Palette::PurpleDark))
m_typeStackController(StackViewController(nullptr, &m_typeParameterController, true, KDColorWhite, Palette::PurpleDark, Palette::PurpleDark)),
m_sequenceToolbox(SequenceToolbox(m_sequenceStore))
{
}
@@ -23,6 +24,21 @@ const char * ListController::title() const {
return "Suites";
}
Toolbox * ListController::toolboxForTextField(TextField * textField) {
int recurrenceDepth = 0;
int sequenceDefinition = sequenceDefinitionForRow(m_selectableTableView.selectedRow());
Sequence * sequence = m_sequenceStore->functionAtIndex(sequenceIndexForRow(m_selectableTableView.selectedRow()));
if (sequenceDefinition == 0) {
recurrenceDepth = sequence->numberOfElements()-1;
}
m_sequenceToolbox.addCells(recurrenceDepth);
return &m_sequenceToolbox;
}
TextFieldDelegateApp * ListController::textFieldDelegateApp() {
return (App *)app();
}
int ListController::numberOfRows() {
int numberOfRows = 0;
for (int i = 0; i < m_sequenceStore->numberOfFunctions(); i++) {
@@ -116,6 +132,7 @@ void ListController::editExpression(Sequence * sequence, int sequenceDefinition,
}
App * myApp = (App *)app();
InputViewController * inputController = myApp->inputViewController();
inputController->setTextFieldDelegate(this);
if (sequenceDefinition == 0) {
inputController->edit(this, event, sequence, initialText,
[](void * context, void * sender){