Mega Search
23.2 Million


Sign Up

Make a donation  
Touch guidelines needed from Delphi gurus  
News Group: embarcadero.public.delphi.vcl.components.using

We desperately need "touch" guidelines for desktop applications. I searched but could not find an article that helps. The closest I found was this one but it is just a beginning:

https://software.intel.com/en-us/articles/developing-with-desktop-natural-user-interface-apis-for-developers

What we need are things like the following:
1) How to detect that the app is running on a small screen tablet. This can help an app run full screen by default and scale if necessary for touch.

2) How to give more touch friendly "minimum" menu item heights, respecting the DPI scaling of Windows at the same time.

3) Whether ribbons are better for touch as compared to main menus?

4) What should be the minimum size of toolbar buttons, image heights on toolbars and so on.

5) What better design alternatives are there for right-click menus.

Even Microsoft guidelines are totally geared towards metro apps. There is not much for desktop apps, or is there something I missed? Now that Windows is accommodating the desktop as a prominent citizen, Micrsooft should be giving better APIs and guidelines for touch from the point of view of desktop developers. Either the desktop app should give the option to the user to provide a touch-friendly interface or there need to be two separate versions of the app based on touch or no touch. For example, a touch
 friendly app interface written from a small tablet point of view will look ugly on a big screen.

While there is too much confusion on this issue, it would be very nice if Delphi gurus in this forum can develop some guidelines that help.

Vote for best question.
Score: 0  # Vote:  0
Date Posted: 16-Dec-2014, at 6:22 PM EST
From: Sanjay Kanade
 
Re: Touch guidelines needed from Delphi gurus  
News Group: embarcadero.public.delphi.vcl.components.using
Microsoft has been supporting touch on the desktop since 2002, and
while it had gotten much better since then, the reality is that
desktop apps don't work optimally without desktop peripherals.  My
personal experience/opinion is that a digitizer is a necessity if one
wants to use desktop applications on a tablet.  Even then, the biggest
frustration is that there is just no reliable way for applications to
know when to pop up the virtual keyboard.  Even Office 2013 doesn't do
this well on my tablet.

You can not rely on Windows reporting to you whether or not the user
is "using touch" reliably.  You can check if Windows 8 considers
itself a tablet PC OS but even desktop computers may have that set.
There are API that specifies certain actions are pen-based or touch
and you can handle those specially (I do this), but by the time you
get those messages your app is already being used, so they don't help
in setting up your UI.

If you want to optimize your application for touch, get a touch screen
and use it during development, along with your mouse/keyboard.  There
aren't really any useful guidelines I am aware of, other than using it
yourself as you develop and trying to come up with something that
works for your interface.

The "Metro" UI guidelines are very different from what one would
expect on the desktop for one very good reason: touch and
mouse/keyboard input have very different usage paradigms.

-- 
Brandon Staggs
StudyLamp Software LLC
http://www.studylamp.com

Vote for best answer.
Score: 0  # Vote:  0
Date Posted: 17-Dec-2014, at 5:05 AM EST
From: Brandon Staggs
 
Re: Touch guidelines needed from Delphi gurus  
News Group: embarcadero.public.delphi.vcl.components.using
I think the problem is that VCL is not designed for small screens and touching very small components 
to set focus will be very hard. You can try to detect the screen resolution and scale some components 
but you have see if you can make you whole application user friendly. For this reason
MS started with the Metro interface and Delphi got FireMonkey where you can scale the entire interface.
There are now 8'' tablets with Windows Pro with a resolution of 1920x1200 and whatever you try with VCL
you will not get for example the minimize/close window buttons big enough to make them touch friendly. The
same for scrollbars and other components where you have to set focus by touch, like edits and comboboxes.
For this reason Apple created a different OS for touch devices instead of trying to use OSX.

Vote for best answer.
Score: 0  # Vote:  0
Date Posted: 17-Dec-2014, at 1:16 AM EST
From: Robert Triest