| description |
In addition to the key events described in the previous section, radios with a color touch screen also provide touch events to the widget scripts. |
The following touch events are passed in the event argument to the widget script refresh function (when in full screen mode), just like the key events. The following touch events are provided:
| Touch Event Name |
Description |
| EVT_TOUCH_FIRST |
When the finger touches down on the screen |
| EVT_TOUCH_TAP |
If the finger leaves the screen after a quick tap |
| EVT_TOUCH_BREAK |
If the finger leaves the screen without tap or slide |
| EVT_TOUCH_SLIDE |
Repeats while the finger is sliding on the screen |
In addition to the above touch events a touchState table is passed to refresh with the following addional data fields:
| touchState fields |
Description |
| x, y |
Current touch point |
| startX, startY |
Point where slide started |
| slideX, SlideY |
Movement since previous SLIDE event (or start of slide) |
| swipeUp / swipeDown / swipeLeft / swipeRight |
The field is present and equal to true if a swipe event occurred in that direction |
| tapCount |
Counts the number of consecutive taps |
touchState is nil if event is not a touch event. This can be used to test if we have a touch event or a key event.
- Since Lua evaluates a
nil value to false and everything else to true:
if touchState then we have a touch event.
x, y are present for all touch events.
startX, startY, slideX, slideY are only present with EVT_TOUCH_SLIDE.
swipeUp / swipeDown / swipeLeft / swipeRight may be present only withEVT_TOUCH_SLIDE.
tapCount is zero for anything but EVT_TOUCH_TAP.