john daintree chief architect dyalog ltd gestures and desktop scaling in windows

Download John Daintree Chief Architect Dyalog Ltd Gestures and Desktop Scaling in Windows

If you can't read please download the document

Upload: valerie-richard

Post on 16-Dec-2015

220 views

Category:

Documents


0 download

TRANSCRIPT

  • Slide 1
  • Slide 2
  • John Daintree Chief Architect Dyalog Ltd Gestures and Desktop Scaling in Windows
  • Slide 3
  • John Daintree Chief Architect Dyalog Ltd Desktop Scaling in Windows
  • Slide 4
  • Desktop Scaling Bill's solution Windows provides a mechanism for the user to "scale up" the display of their UI elements. This system is set up for Desktop Scaling of 150% New systems may be set to >100% by default
  • Slide 20
  • And Microsoft suggests that developers Test with scaling up to 500% Windows 8.1 update goes up to 250% http://channel9.msdn.com/Events/Build/20 14/2-535http://channel9.msdn.com/Events/Build/20 14/2-535 monitors @ 4 minutes contrast issues @ 9:30 minutes testing suggestion @ 18 minutes Slide 19
  • Slide 21
  • Bill's solution Windows provides a mechanism for the user to "scale up" the display of their UI elements. And an application can determine this "scaling factor" at runtime And make its UI larger as appropriate Desktop Scaling And if doesn't (which by default, yours won't), Windows "helpfully" scales the application "automagically"
  • Slide 22
  • Desktop Scaling And if doesn't, Windows "helpfully" scales the application "automagically" It "bitmap" stretches the application's client areas.
  • Slide 23
  • Desktop Scaling And if doesn't, Windows "helpfully" scales the application "automagically" It "bitmap" stretches the application's client areas.
  • Slide 24
  • Desktop Scaling And if doesn't, Windows "helpfully" scales the application "automagically" It "bitmap" stretches the application's client areas.
  • Slide 25
  • Desktop Scaling And if doesn't, Windows "helpfully" scales the application "automagically" It "bitmap" stretches the application's client areas. Which isn't always pretty. And there can be contrast issues for reading. http://channel9.msdn.com/Events/Build/2014/2-535 contrast issues @ 9:30 minutes
  • Slide 26
  • Slide 25 The solution? Disable the "automagic" and do it all yourself Which you may decide is to do nothing Disable the "automagic" and let the interpreter do it for you. bit of both. New in 14.1!!
  • Slide 27
  • Slide 26 New coordinate types: ScaledPixel RealPixel An option to map 'Pixel' to one of the above Defaults to RealPixel
  • Slide 28
  • ScaledPixel The interpreter will scale (most) UI elements according to the DPI of the system Posn, Size, Points, font sizes, etc etc. NOT: Bitmaps, Icons, line widths. Slide 27
  • Slide 29
  • ScaledPixel The interpreter will scale (most) UI elements according to the DPI of the system Posn, Size, Points, font sizes, etc etc. NOT: Bitmaps, Icons, line widths.
  • Slide 30
  • Slide 29 ScaledPixel The interpreter will scale (most) UI elements according to the DPI of the system Posn, Size, Points, font sizes, etc etc. NOT: Bitmaps, Icons, line widths. Values returned by properties, and coordinates passed to callbacks are "descaled"
  • Slide 31
  • Slide 30 RealPixel Interpreter does NOT scale any coordinates of this object, or its children.
  • Slide 32
  • Slide 31 What's the least I can do? (and still get scaling)
  • Slide 33
  • If you are using Coord 'Proportional' You may have little to do. If you are using Coord 'Pixel' Set DYALOG_PIXEL_TYPE to 'ScaledPixel' See what "just works" Change the Coord of those elements that don't "just work" to 'RealPixel' and tweak the layout. Fix images and other UI elements Slide 32
  • Slide 34
  • Slide 35
  • Slide 34 Desktop Scaling Demo
  • Slide 36
  • Gestures John Daintree Chief Architect Dyalog Ltd
  • Slide 37
  • Slide 36 Pans: 1 or 2 finger "swipe" Or "flick"
  • Slide 38
  • Slide 37 Zoom: 2 finger "stretch"
  • Slide 39
  • Slide 38 Rotate: 2 finger "twist"
  • Slide 40
  • Slide 39 Pan GesturePan event Zoom GestureZoom event Rotate GestureRotate event "Two finger tap" GestureTwoFingerTap event "Press and tap" GesturePressAndTap event
  • Slide 41
  • Slide 40 Gestures Demo