Introduction
Cet article est le premier d’une série d’articles consacrés
au développement d’applications pour Tablet PC. L’environnement de développement
utilisé sera Visual Studio .NET et les exemples présentés en C#. Par la suite,
le fil conducteur sera la réalisation d’une application permettant d'indexer et
de gérer les notes prises par exemple lors d’une réunion par plusieurs
collaborateurs. Ces notes pourront être de deux types : notes
dactylographiées (fichiers .txt et .doc) ou notes manuscrites (fichiers d’encre
numérique).
Présentation des Tablet PC
Disponibles depuis plusieurs mois, les Tablet PC présentent
de nombreux intérêts, quant à leurs multiples fonctionnalités (reconnaissance
de caractères, stockage et utilisation brute de fichiers encre numérique) et
leur ergonomie (différents modes d’utilisation, rapidité de prise de notes
grâce au stylet).

http://www.microsoft.com/windowsxp/tabletpc/evaluation/tours/mmtour/HardwareShowcase.html
Pour une description complète des Tablet PC, nous vous
renvoyons au dossier disponible à cette adresse :
http://www.laboratoire-microsoft.org/articles/web/tabletpc/.
Les Tablet PC sont livrés avec une version spécifique de
Windows XP (Microsoft Windows XP Edition Tablet PC). Cette version apporte des
solutions aux nouveaux problèmes posés par les fonctionnalités propres au Tablet
PC : l’utilisation du stylet en lieu et place de la souris, basculement
entre modes paysage et portrait… Voici une liste des problèmes les plus
parlants résolus par Windows XP Edition Tablet PC :
·
Visée précise d’une zone de l’écran :
l’utilisation du stylet du Tablet PC ne permet pas une précision aussi grande
qu’avec une souris. Cliquer sur une icône ou agrandir une fenêtre deviennent
des opérations délicates lorsque les zones sensibles ne font que 3 pixels de
côtés, comme c’est souvent le cas. C’est pourquoi, sur un Tablet PC, ces zones
ont été agrandies.
·
Double-clic : habituellement, les deux clics
doivent, pour être considérés comme un double-clic, agir sur le même pixel.
Cela paraît impossible pour l’utilisateur d’un stylet. Les zones de double-clic
ont donc été élargies à quelques pixels.
·
Cliquer sans glisser : en raison de
l’utilisation du stylet et du revêtement lisse de l’écran, il peut arriver
qu’en voulant cliquer, l’utilisateur fasse glisser la pointe et déplace un
objet ou réalise une sélection fâcheuse. Il faut donc rendre les clics plus
permissifs.
·
ToolTip : l’affichage des bulles
d’information se fait habituellement lorsque le pointeur de la souris est
parfaitement immobile au dessus d’une icône. Là encore, le stylet pose
problème. Il faut dire que le déplacement du curseur se fait par survol de la
surface de l’écran par le stylet : le ToolTip doit maintenant
apparaître si l’on reste assez longtemps dans la ‘zone aérienne’ de l’icône.
·
Menu déroulant : lorsque l’utilisateur
développe un menu déroulant avec le stylet, le menu risque d’être caché par sa
propre main. Il faut donc faire apparaître le menu à gauche pour un droitier et
inversement.
|

|

|
|
L’utilisateur cache le menu sous sa main
|
Le menu apparaît à gauche : plus de problème !
|
Grâce à toutes ces modifications de Windows, toutes les
applications traditionnelles (non dédiées aux Tablet PC : Office, IE…)
fonctionneront sans problème sur un Tablet PC.
Nouveaux problèmes de conception d'applications
Si Windows Edition Tablet PC gère la plupart des problèmes
intrinsèques aux Tablet PC, il incombe au développeur de respecter certaines
règles pour le design de ses applications.
Problèmes relatifs au stylet
Comme vu précédemment, la taille des contrôles
est un réel problème face à l’utilisation du stylet. Non seulement, un bouton
ne doit pas être trop petit pour ne pas rendre le clic impossible, mais les
zones telles les InkEdit Control (régions manuscrites) doivent permettre
une écriture aisée. Les InkEdit sont des TextBox dans lesquelles la
saisie peut être réalisée au moyen du stylet, la reconnaissance se faisant
automatiquement après un court délai.
De plus, certaines régions manuscrites risquent
d’être confondues avec des zones de texte classiques (saisie clavier).
C’est pourquoi il convient de bien les différencier au moyen
de signes divers et laissés à l’appréciation du développeur (couleur,
astérisque…).
Réutilisabilité des anciennes applications
Comme nous l’avons vu, Windows XP Edition Tablet
PC gère de façon différente certains événements (double-clic par exemple). Ces
différences de gestion peuvent poser des problèmes dans le cas du portage d’une
application développée sans les messages standard.
Dans le cas du double-clic, Windows envoie le
message WM_LBUTTONDBLCLK à l’application. Dans la version Tablet PC de Windows
XP, les messages restent identiques, même si les traitements antérieurs à
l’envoi du message diffèrent. Reste le problème des applications qui
utilisaient leur propre détection du double-clic.
Le problème est identique pour les menus
déroulant. Les applications implémentant leur propre système de menu devront
être modifiées.
L’essentiel reste de développer vos applications
Tablet PC en gardant à l’esprit ce problème de compatibilité descendante.
Problèmes d’édition de l’ ‘encre numérique’
Via le Journal de Windows (application intégrée
permettant de saisir des notes manuscrites), l’utilisateur peut générer des
fichiers d’encre numérique. Ces fichiers contiennent, entre autres choses, la
représentation graphique des caractères manuscrits. Lors de l’édition de ces
fichiers, la sélection se fait par objet en deux dimensions. En effet, il est
impossible d’associer un ordre au texte. Il faut donc utiliser une sélection
bidimensionnelle par lasso. On veut également éviter de ne sélectionner qu’une
partie des caractères. La sélection se fait donc par objet. Voilà comment ceci
est réalisé :
|

|

|
|
Objets en cours de sélection
|
Objets sélectionnés
|
On remarque que la zone ne contient pas
obligatoirement la totalité de l’objet sélectionné. On voit également qu’une
fois sélectionnés, les traits apparaissent dédoublés.
Mais qu’appelle-t-on au juste un objet ? Il
s’agit d’un stroke, c’est-à-dire un trait continu tracé d’un seul geste.
Au niveau programmation, le développeur n’a pas
à gérer le déplacement et l’agrandissement des stroke : cette
gestion est automatiquement faite par l’API Tablet PC.
Enfin, deux modes d’effacement sont
disponibles : par objet ou par points. L’effacement par points produit de
nouveaux stroke à partir d’un seul.
Au niveau développement, tous ces outils se
paramètrent aisément via les propriétés des objets Ink :
l’application présentée ci-dessus ne nécessite que quelques lignes de code. Un
exemple de code détaillé sera donné dans le prochain article.
Problème d’inaccessibilité des raccourcis clavier
Pour palier à l’absence du clavier, les
développeurs de Windows Edition Tablet PC ont introduit le concept de mouvements
du stylet. Il s’agit d’un mouvement effectué stylet en contact avec l’écran, en
maintenant le bouton clic-droit du stylet enfoncé. Lorsque ce mouvement
est reconnu comme un mouvement licite (préenregistré), il lance l’action
programmée. On peut imaginer qu’en dessinant un e à l’écran, Outlook
Express se lance automatiquement. Une multitude d’actions est possible :
copier, coller, supprimer, sauver…
Ceci n’est pas à négliger lorsque vous développez vos
propres applications.
Autres problèmes
Puisque les Tablet PC autorisent le basculement
entre les deux orientations portrait et paysage, il convient de prendre garde à
la taille des fenêtres et de leurs éléments (icônes, barre d’outils, barre
d’états, boîte de dialogue…).
De plus, deux problèmes au niveau du hardware
viennent compliquer les choses :
·
Le basculement entre les deux modes entraîne
parfois un ralentissement de l’affichage (surtout si l’application manipule des
images).
·
La faible taille et la haute résolution des écrans
équipant les Tablet PC peuvent rendre une application inutilisable. Il faut
tester son application sur un petit écran avec haute résolution.
Cependant, ces problèmes restent mineurs et le
premier notamment sera rapidement résolu par le hardware.
Conclusion
Nous avons vu que les nombreux problèmes
obligent le développeur à soigner beaucoup plus l’interface. Il doit pour cela
régulièrement tester l’application. Cependant, cela ne l’oblige pas, comme l’on
pourrait si attendre, à utiliser un Tablet PC pour le développement. La SDK
Tablet PC permet de développer des applications Tablet PC sur un ordinateur de
bureau. Le prochain article présentera l’installation de cette SDK, puis
proposera des exemples constituant les premiers pas dans la programmation pour
Tablet PC. Par la suite, nous détailleront plusieurs problèmes (et leurs
solutions !) rencontrés lors du développement d’une application Tablet PC.