Safer Numeric Text Field

We had a recent incident with our operators where they had difficulty using the Numeric Text Field.

The incident was that the operator claims that he partially entered the value and then was waiting for a specific time to press Enter to commit the value. He claims that at some point it automatically committed the value before he pressed Enter. We do have the “Reject Updates During Edit” flag set so I think it is probably that he may have changed focus whether he knew it or not as I could not reproduce.

Anyway, some other HMI products force the user to press Enter to commit values and loss of focus will not commit the value but instead reverts back to original value. After some other testing I also noticed that the Esc key does not abort data entry so if a value is partially entered Esc does nothing.

What we are asking for is that on Text Fields that we have an option to require Enter to be used to change a value and that loss of focus and Esc would abort entry of a value and reset back to value prior to edit. I am using normal Tag binding and know that I could probably script this behavior but would be a major pain re-scripting every place that we use Numeric Text Fields.

Have you tried turning on protected mode? That will get you partially there (it will enable the ESC behavior you’re talking about).

I like the idea of having a requirement to press enter, and having the focus loss revert to the original value. I’ll make a ticket for it.

Hi Carl

Did this get implemented?

Cheers

AlexW

Ok, for 7.3 (beta2+) I’ve implemented this.

There is a new property: “Commit on Focus Loss” which defaults to true - change it to false and losing focus will revert to the previous value, effectively requiring that enter is pressed.

I also made it so that the escape key clears the edit always.

Thanks! Very useful for generator load setpoints!

Is there a way to use the OK button on the pop-up for the Numeric Text Field to commit the value and lose focus from that field?

which pop-up are you referring to?