Gestion du tactile sous windows 8
-
Upload
intel-developer-zone-community -
Category
Documents
-
view
252 -
download
0
description
Transcript of Gestion du tactile sous windows 8
Gestion du tactile sous Windows 8
David Rousset, Developer Evangelist, Microsoft
Xavier Hallade, Technical Marketing Engineer
29 Novembre 2012
Copyright© 2012, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners.
Legal Disclaimer & Optimization Notice INFORMATION IN THIS DOCUMENT IS PROVIDED IN CONNECTION WITH INTEL® PRODUCTS. EXCEPT AS PROVIDED IN INTEL’S TERMS AND CONDITIONS OF SALE FOR SUCH PRODUCTS, INTEL ASSUMES NO LIABILITY WHATSOEVER, AND INTEL IS CLAIMS ANY EXPRESS OR IMPLIED WARRANTY RELATING TO SALE AND/OR USE OF INTEL PRODUCTS, INCLUDING LIABILITY OR WARRANTIES RELATING TO FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR INFRINGEMENT OF ANY PATENT, COPYRIGHT, OR OTHER INTELLECTUAL PROPERTY RIGHT. Intel products are not intended for use in medical, life-saving, life sustaining, critical control or safety systems, or in nuclear facility applications.
• Intel products may contain design defects or errors known as errata which may cause the product to deviate from published specifications. Current characterized errata are available on request.
• Intel may make changes to dates, specifications, product descriptions, and plans referenced in this document at any time, without notice.
• This document may contain information on products in the design phase of development. The information here is subject to change without notice. Do not finalize a design with this information.
• Designers must not rely on the absence or characteristics of any features or instructions marked "reserved" or "undefined." Intel reserves these for future definition and shall have no responsibility whatsoever for conflicts or incompatibilities arising from future changes to them.
• Intel Corporation may have patents or pending patent applications, trademarks, copyrights, or other intellectual property rights that relate to the presented subject matter. The furnishing of documents and other materials and information does not provide any license, express or implied, by estoppel or otherwise, to any such patents, trademarks, copyrights, or other intellectual property rights.
• Wireless connectivity and some features may require you to purchase additional software, services or external hardware.
• Performance tests and ratings are measured using specific computer systems and/or components and reflect the approximate performance of Intel products as measured by those tests. Any difference in system hardware or software design or configuration may affect actual performance. Buyers should consult other sources of information to evaluate the performance of systems or components they are considering purchasing. For more information on performance tests and on the performance of Intel products, visit Intel Performance Benchmark Limitations
• Intel, the Intel logo are trademarks or registered trademarks of Intel Corporation or its subsidiaries in the United States and other countries.
2
Optimization Notice
Intel’s compilers may or may not optimize to the same degree for non-Intel microprocessors for optimizations that are not unique to Intel microprocessors. These optimizations include SSE2®, SSE3, and SSSE3 instruction sets and other optimizations. Intel does not guarantee the availability, functionality, or effectiveness of any optimization on microprocessors not manufactured by Intel. Microprocessor-dependent optimizations in this product are intended for use with Intel microprocessors. Certain optimizations not specific to Intel microarchitecture are reserved for Intel microprocessors. Please refer to the applicable product User and Reference Guides for more information regarding the specific instruction sets covered by this notice.
Notice revision #20110804
Copyright© 2012, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners.
Agenda
Les gestes de base
Considérations au niveau de l’UI/UX
Fonctionnement global du tactile sous Windows 8* et les différents types d’applications
Mise en application et démonstrations
3
Les gestes de base
4
Copyright© 2012, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners.
Les gestes de base
Intel Confidential 5
Considérations au niveau de l’UI/UX
6
Copyright© 2012, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners.
Placement des contrôles
7
Copyright© 2012, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners.
Conseils de base
Utilisez les contrôles mis à disposition par Windows 8
Prennez en compte les utilisations hybrides (souris+touch+stylet)
Dimensionnez et espacez vos contrôles pour qu’il soient utilisables par des humains.
8
Copyright© 2012, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners.
Conseils par rapport à l’UI/UX
Donnez un retour visuel à l’utilisateur
Pour réaliser des applications de bureau, utilisez des éléments de design modernes.
Exemples:
• Fluent Ribbon : fluent.codeplex.com
• MahApps.Metro : mahapps.com
Fonctionnement du tactile sous Windows 8*
10
Copyright© 2012, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners.
“Pointeur”
Les intéractions dans une application Windows 8 reposent sur la notion abstraite de pointeur
souris, tactile, stylet -> pointeur
Les événements sont plus ou moins disponibles : Down, Move, Up, Over, Out…
Windows.Devices.Input.PointerDevice.GetPointerDevices()
Pointer.PointerDeviceType
Copyright© 2012, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners.
Méthodes d’accès aux événements de la couche tactile
Intel Confidential 12
Win32/WinRT APIs
Évévements
(Pointeurs et gestes)
Templates et Contrôles Windows 8
Copyright© 2012, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners.
Méthodes d’accès aux événements de la couche tactile
Intel Confidential 13
Type d’application objet méthode
Win32 Fenêtre Messages WM_POINTER WM_TOUCHHITTESTING
JS/HTML (Windows Store ou non)
Élément HTML Événements MSPointerXXX
Windows Store – C#/C++
ICoreWindow Événements PointerXXX TouchHitTesting
Windows Store - XAML
UIElement
Événements PointerXXX ManipulationXXX XXXTappedYYY
Windows Store – XAML
Control Delegates OnPointerXXX() OnManipulationXXX() OnXXXTappedYYY()
Windows Store & JS/HTML
ListView, FlipView, ScrollViewer, etc
Pas besoin
Copyright© 2012, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners.
Que faire avec un événement Pointeur ?
S’il est global (appli hors XAML/HTML) :
Le transmettre à un élément de l’interface déterminé lors de l’événement PointerPressed
Puis, les utiliser directement…
ou les envoyer à un :
• GestureRecognizer : Reconnaissance de gestes
• InkRecognizer : Reconnaissance d’écriture
Intel Confidential 14
Copyright© 2012, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners.
Événements de Manipulation
Copyright© 2012, Intel Corporation. All rights reserved.
*Other brands and names are the property of their respective owners
15
Manipulation Starting
Manipulation Delta
Manipulation Inertia Starting
Manipulation Delta
w/ Inertia
ManipulationCompleted
Début du geste
Contact en cours avec
l’écran
Fin du contact
Copyright© 2012, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners.
GestureRecognizer
Détection de gestes à partir des événements pointeurs
Configurable : Tap, Hold, RightTap…
ManipulationTranslateX… ManipulationTranslateInertia… ManipulationTranslateRailsY… CrossSlide…
Renvoi des événements classiques/manipulations : Holding, RightTapped, Tapped, ManipulationXXX, CrossSliding
Copyright© 2012, Intel Corporation. All rights reserved. *Other brands and names are the property of their respective owners.
Quelques spécificités côté Desktop
Touch injection API
Identification de la source d’un événement souris “legacy” : appeller GetMessageExtraInfo() masquer la valeur retournée avec 0xFFFFFF80 0xFF515780 -> touch 0xFF515700 -> pen
Avoir l’interface unifiée WM_POINTER : EnableMouseInPointer()
Mise en application, Démos
18