Friday, 2 October 2009

Windows Embedded CE 6.0 R3 (“Cashmere”): Touch Gestures

Hi folks,

As previously posted Windows Embedded CE 6.0 R3 now supports Touch Gestures; single-touch gestures to be precise.

You need to include the following catalog item to your OSDesign to include Touch Gestures:

Now let’s have a closer look at which gestures are actually supported:
  • Flick: press, move then lift your finger to initiate scrolling that continues for a short time after the screen contact ends. The gesture recognizer sends a single GID_SCROLL

  • Pan: press, then drag your finger; this represents a mouse move event. The gesture recognizer sends at least one GID_PAN followed by a GID_END after lifting the finger.

  • Tap: corresponds to a left mouse click

  • Double-Tap: corresponds to a left mouse double-click

  • Hold: press and don’t lift your finger; this represents a right mouse click

But how does your system know that you just performed a Touch Gesture? Upon a touch event the touch driver passes an array of touch points through the gesture engine to each registered gesture recognizer. When a recognizer identifies a gesture, it adds the corresponding gesture event into the same message queue that receives the touch events.

However, to allow the window procedure to process a gesture and if desired cancel actions normally executed upon a finger-up touch event, the gesture engine always delivers gesture events before any final finger-up event.

The Touch Gesture support also comes with a central physics engine enabling you to create animation which can be consistent across your system. Therefore the central physics engine calculates well-defined animation points in response to touch gestures. The physics engine API handles:
  • One- and two-dimensional scrolling

  • Boundary animations which can be of type Rubber Band, Bounce or None

  • Animation stopping points to avoid truncated controls

In addition, you can also use the window auto gesture API set in any standard scrollable Win32 window that is created with the WS_HSCROLL or WS_VSCROLL styles to enable automatic handling for pan and flick gestures with the help of the central physics engine.

Now, I bet, you would like to know if there is some sort of demo that you can simply use. Well there is: you can use the new sample Internet Explorer (IESAMPLE_EXR) which in addition to supporting Touch Gestures also uses the new Silverlight for Windows Embedded.

Have fun!

1 comment:

businesstips said...

I have nk.bin file which is a compiled image for a custom device i have, i need my programmer to test and develop applications for this device using an emulator, how do i install this os image in the emulator list of visual studio so i can deploy my apps to the emulator?