[solver] If the user adds an equation which is not an equality,

automatically add =0
This commit is contained in:
Émilie Feral
2018-06-08 15:46:38 +02:00
parent f4b87f8680
commit e3bfec9aa2
6 changed files with 8 additions and 15 deletions

View File

@@ -3,7 +3,6 @@ SolverAppCapital = "EQUATION"
AddEquation = "Ajouter une équation"
ResolveEquation = "Résoudre l'équation"
ResolveSystem = "Résoudre le système"
RequireEquation = "L'entrée doit être une équation"
UseEquationModel = "Utiliser le modèle d'équation"
UndefinedEquation = "Une equation est indéfinie"
TooManyVariables = "Le système a trop d'inconnus"

View File

@@ -3,7 +3,6 @@ SolverAppCapital = "EQUATION"
AddEquation = "Ajouter une équation"
ResolveEquation = "Résoudre l'équation"
ResolveSystem = "Résoudre le système"
RequireEquation = "L'entrée doit être une équation"
UseEquationModel = "Utiliser le modèle d'équation"
UndefinedEquation = "Une equation est indéfinie"
TooManyVariables = "Le système a trop d'inconnus"

View File

@@ -3,7 +3,6 @@ SolverAppCapital = "EQUATION"
AddEquation = "Ajouter une équation"
ResolveEquation = "Résoudre l'équation"
ResolveSystem = "Résoudre le système"
RequireEquation = "L'entrée doit être une équation"
UseEquationModel = "Utiliser le modèle d'équation"
UndefinedEquation = "Une equation est indéfinie"
TooManyVariables = "Le système a trop d'inconnus"

View File

@@ -3,7 +3,6 @@ SolverAppCapital = "EQUATION"
AddEquation = "Ajouter une équation"
ResolveEquation = "Résoudre l'équation"
ResolveSystem = "Résoudre le système"
RequireEquation = "L'entrée doit être une équation"
UseEquationModel = "Utiliser le modèle d'équation"
UndefinedEquation = "Une equation est indéfinie"
TooManyVariables = "Le système a trop d'inconnus"

View File

@@ -3,7 +3,6 @@ SolverAppCapital = "EQUATION"
AddEquation = "Ajouter une équation"
ResolveEquation = "Résoudre l'équation"
ResolveSystem = "Résoudre le système"
RequireEquation = "L'entrée doit être une équation"
UseEquationModel = "Utiliser le modèle d'équation"
UndefinedEquation = "Une equation est indéfinie"
TooManyVariables = "Le système a trop d'inconnus"

View File

@@ -113,30 +113,28 @@ bool textRepresentsAnEquality(const char * text) {
}
bool ListController::textFieldDidReceiveEvent(TextField * textField, Ion::Events::Event event) {
if (Shared::TextFieldDelegate::textFieldDidReceiveEvent(textField, event)) {
return true;
}
if (textField->isEditing() && textField->textFieldShouldFinishEditing(event)) {
if (!textRepresentsAnEquality(textField->text())) {
app()->displayWarning(I18n::Message::RequireEquation);
return true;
textField->handleEventWithText("=0");
}
}
if (Shared::TextFieldDelegate::textFieldDidReceiveEvent(textField, event)) {
return true;
}
return false;
}
bool ListController::expressionLayoutFieldDidReceiveEvent(ExpressionLayoutField * expressionLayoutField, Ion::Events::Event event) {
if (Shared::ExpressionLayoutFieldDelegate::expressionLayoutFieldDidReceiveEvent(expressionLayoutField, event)) {
return true;
}
if (expressionLayoutField->isEditing() && expressionLayoutField->expressionLayoutFieldShouldFinishEditing(event)) {
char buffer[TextField::maxBufferSize()];
expressionLayoutField->writeTextInBuffer(buffer, TextField::maxBufferSize());
if (!textRepresentsAnEquality(buffer)) {
app()->displayWarning(I18n::Message::RequireEquation);
return true;
expressionLayoutField->handleEventWithText("=0");
}
}
if (Shared::ExpressionLayoutFieldDelegate::expressionLayoutFieldDidReceiveEvent(expressionLayoutField, event)) {
return true;
}
return false;
}