How should programmers approach Windows Touch?

Tablet watchers will no doubt have noticed this week’s news of Microsoft cutting the price of its flagship Surface tablet.

Computer Weekly reported details of the 32GB Surface RT dropping from £400 to £279, while the 64GB RT’s price was also cut by 30% to £359.

The full Windows 8 Microsoft’s Surface Pro tablet starting price remains at £719 for 64GB.

Device streams…

What is interesting here is the difference in perception between the two device streams i.e. where the RT might feel like a tablet (certainly in terms of battery life, applications and weight) the Pro looks, feels and works like a PC.

What we need to question now is how software application developers approach Windows Touch technology across devices.

How different an architectural approach is needed to develop software that runs on the Pro, the RT and (if we’re going with the whole “write once, run anywhere” mantra) on Windows Phone 8 devices too.

Have you got a pen please?

The Pro is a lovely machine, make no mistake — but do programmers incorporate for the use of a pen or stylus inside the Windows Touch world? Or do they rely on finger touch only?

Microsoft is trying hard to provide developer resources in this vein (this is bread and butter for the MSDN anyway) and the Windows Dev Center Hardware pages insist that users touch features as “a more intuitive way to compute” today.

The firm is trying to speak to hardware-centric software application developers inside both independent hardware vendors (IHVS) and original equipment manufacturers (OEMs) to certify touch technology for Windows 8 — and also Windows 7.

According to Microsoft, “For Windows 8, things are simplified as you no longer need to create a touch driver for your hardware. Instead, you use the human interface device (HID) driver that is included with Windows 8. This frees you up to focus on creating hardware that delivers fast and fluid user interaction.”

Microsoft Surface with Windows 8 Pro-580-100.jpg

Touchy feely

So are programmers touchy feely yet (i.e. happy and in the zone) on Windows Touch?

QUESTION: Do MSDN coders feel that sufficient levels of advanced gestures have been exposed through the APIs and interfaces provided by Microsoft at this stage? Are desktop emulators providing a satisfactory level of pre-deploy testing and debugging space?

One of the better resources we found was a paper entitled Choosing the Right Approach to Windows Touch.

This piece tells developers that they can enhance applications using Windows Touch features in many ways.

Microsoft says that before you adopt a particular method and approach to touch, you should consider what you want to do with your application.

The following bullets scenarios are typical for Windows Touch:

• You want your application to behave the same as in legacy versions of Windows but want Windows Touch messages to behave consistently.

• You want custom object rotation, translation, panning, or zoom support in your application.

• You want your application to have fine-grained interpretation of Windows Touch gestures or to interpret multiple touches on an application that is specifically optimised for Windows Touch input.

• You have an application that uses the RealTimeStylus object and want to enhance it with Windows Touch capabilities.