Files
Upsilon/apps/calculation/expression_field.cpp
Léa Saviot 22ab94209f [apps/escher] Rename EditableExpressionView -> ExpressionField
Change-Id: Iadfb220ee94e68762305060215f1ead0cac951fb
2018-04-23 09:41:20 +02:00

32 lines
887 B
C++

#include "expression_field.h"
namespace Calculation {
ExpressionField::ExpressionField(Responder * parentResponder, TextFieldDelegate * textFieldDelegate, ExpressionLayoutFieldDelegate * expressionLayoutFieldDelegate) :
::ExpressionField(parentResponder, textFieldDelegate, expressionLayoutFieldDelegate)
{
setEditing(true);
}
bool ExpressionField::handleEvent(Ion::Events::Event event) {
if (event == Ion::Events::Back) {
return false;
}
if (event == Ion::Events::Ans) {
insertText("ans");
return true;
}
if (isEditing() && isEmpty() &&
(event == Ion::Events::Multiplication ||
event == Ion::Events::Plus ||
event == Ion::Events::Power ||
event == Ion::Events::Square ||
event == Ion::Events::Division ||
event == Ion::Events::Sto)) {
insertText("ans");
}
return(::ExpressionField::handleEvent(event));
}
}