mirror of
https://github.com/UpsilonNumworks/Upsilon.git
synced 2026-01-19 00:37:25 +01:00
[xnt] Insert the right XNT char.
Change-Id: Ibc91a2ece310313fb368a68483c5a1b6fe14aad2
This commit is contained in:
@@ -12,6 +12,14 @@ ExpressionFieldDelegateApp::ExpressionFieldDelegateApp(Container * container, Sn
|
||||
{
|
||||
}
|
||||
|
||||
char ExpressionFieldDelegateApp::privateXNT(ExpressionLayoutField * expressionLayoutField) {
|
||||
char xntCharFromLayout = expressionLayoutField->XNTChar();
|
||||
if (xntCharFromLayout != Ion::Charset::Empty) {
|
||||
return xntCharFromLayout;
|
||||
}
|
||||
return XNT()[0];
|
||||
}
|
||||
|
||||
bool ExpressionFieldDelegateApp::expressionLayoutFieldShouldFinishEditing(ExpressionLayoutField * expressionLayoutField, Ion::Events::Event event) {
|
||||
return event == Ion::Events::OK || event == Ion::Events::EXE;
|
||||
}
|
||||
@@ -44,6 +52,13 @@ bool ExpressionFieldDelegateApp::expressionLayoutFieldDidReceiveEvent(Expression
|
||||
expressionLayoutField->app()->displayModalViewController(variableBoxController, 0.f, 0.f, Metric::PopUpTopMargin, Metric::PopUpLeftMargin, 0, Metric::PopUpRightMargin);
|
||||
return true;
|
||||
}
|
||||
if (event == Ion::Events::XNT) {
|
||||
if (!expressionLayoutField->isEditing()) {
|
||||
expressionLayoutField->setEditing(true);
|
||||
}
|
||||
const char xnt[2] = {privateXNT(expressionLayoutField), 0};
|
||||
return expressionLayoutField->handleEventWithText(xnt);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user