Tags:
create new tag
view all tags

New GUI Events

This Release introduces some additional GUI events.

Overview:

You can now be notified when a user tabs into, out of, or changes the value in a field. This is controlled by three new attributes on the GUI Attributes screen: Tab In / Tab Out / Value Changed. These are Y/N fields you can set to be notified when these events occur. This will allow you to make your processes much more interactive, you will not have to wait until the user presses Enter to interact with the image.

tabinout.png

Runtime

If you set any of these attributes on a field, then --- OPTION will be set according to what has happened. If the user tabbed into a field, then --- OPTION will be set to TAB IN and --- CURSOR AT FIELD will contain the name of the field the user tabbed into. If the user tabbed out of the field, then --- OPTION will be set to TAB OUT and --- CURSOR AT FIELD will be set to the field they tabbed out of. If the field value changed, then --- OPTION will be set to VALUE CHANGED and ---- CURSOR AT FIELD will contain the name of the field that was changed.

Note that only the Option Intercept event point will be executed for these values of --- OPTION, unlike running an Optional Child, which will normally run Option Intercept, Pre/Post Invocation, and all the frames preceeding the current frame.

The Value Changed event will be triggered under 2 circumstances:

  • if the user changes the field and Tabs out (either manually or via auto tab). If the field also has Tab Out checked, then 2 events will fire, first the VALUE CHANGED event will fire, then the TAB OUT event will fire. If the next field has Tab In checked, then a third event will fire, TAB IN for the next field.
  • If the user changes the field but does not leave the field before valueChangedTimer (in Client Preferences) has expired. For example, if valueChangedTimer is set to 300 ms and the user changes the value in the field, but does not exit the field before 300 ms have passed since they started typing in the field, the VALUE CHANGED event will fire. The timer will reset and will fire again if the user continues to change the field but does not exit before the valueChangedTimer has expired again. If the user does not make any further changes since the last time VALUE CHANGED fired and simply tabs out of the field, the event will not fire again, as they did not change the field since the last time the event fired.
If you have Tab Out set on one field and Tab In set on the next field, then the Option Intercept Event Point will fire twice, once when they tab out of the first field (with OPTION set to TAB OUT and CURSOR AT FIELD set to the first field, then immediately afterwards with OPTION set to TAB IN and CURSOR AT FIELD set to next field).

Since these attributes use --- CURSOR AT FIELD to tell you which field was affected, you can only set these attributes where there is an actual underlying data field. For example, buttons, labels, boxes, etc, do not have these event types.

Modify via ILF

You can set these attributes via ILF code. The fields are:

  • WIDGET SND EV FOC G - Tab In flag.
  • WIDGET SND EV FOC L - Tab Out flag.
  • WIDGET SND EV VAL ADJ - Value Changed flag.

Comments:

Read what other users have said about this page or add your own comments.


-- JeanNeron - 2012-06-19

Edit | Attach | Watch | Print version | History: r4 < r3 < r2 < r1 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r4 - 2012-11-06 - JeanNeron
 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback