mirror of
https://github.com/UpsilonNumworks/Upsilon.git
synced 2026-01-19 00:37:25 +01:00
[solver] If the user adds an equation which is not an equality,
automatically add =0
This commit is contained in:
@@ -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;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user