Dégradation harmonieuse d'interfaces utilisateur - UsiXML
Dégradation harmonieuse d'interfaces utilisateur - UsiXML
Dégradation harmonieuse d'interfaces utilisateur - UsiXML
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Ensuite, nous comparons la taille obtenue avec les limites autorisées pour chacune des tâches<br />
dans l’ordre fraîchement déterminé lors de la création de la liste décroissante. Si la taille est<br />
inférieure, nous changeons le statut de la tâche à ‘non redimensionnable’, ou laissons cela<br />
comme tel dans le cas contraire.<br />
Dans la pratique malheureusement, cette opération ne fonctionne pas. En effet, bien que le<br />
principe soit acceptable, la récupération des tailles ne se fait pas de manière correcte. Ceci<br />
serait apparemment lié à un problème situé sur une couche inférieure à QTk.<br />
Concrètement, plutôt que de renvoyer la taille correcte des objets, la méthode QTk de<br />
récupération des dimensions renvoie la plupart du temps la taille 1 pixel sur 1 pixel, ce qui est<br />
assez ennuyeux puisque notre méthode croit alors que l’objet interactif est trop petit et change<br />
son statut à ‘non redimensionnable’. Même en utilisant {QTk.flush} censée bloquer les<br />
opérations jusqu’à ce que toutes les modifications opérées sur une fenêtre aient été réalisées,<br />
les résultats sont incorrects. En effet, en temps normal, tous les appels sur une fenêtre sont<br />
appliqués en les combinant tous en un seul lot pour des raisons d’efficacité. Aussi, les valeurs<br />
renvoyées pourraient être de 1 pixel sur 1 pixel et cette dernière méthode a donc pour objectif<br />
d’empêcher cela et récupérer les bonnes dimensions. Or, ceci n’est pas toujours le cas.<br />
L’inconvénient supplémentaire est qu’il n’existe pas, à notre connaissance, d’autres<br />
techniques pour effectuer le redimensionnement d’objets interactifs sans avoir la possibilité de<br />
récupérer la taille des objets interactifs.<br />
Le module Graphics Resizing Helper<br />
La méthode de choix d’images contenue dans ce module a un fonctionnement en deux étapes.<br />
La première consiste à choisir la taille des images pour les éléments de présentation purs (qui<br />
ne se réfèrent à aucune tâche). Si ce choix permet d’atteindre les limites autorisées, nous<br />
arrêtons le traitement à cet endroit. Sinon, nous continuons en choisissant la taille des<br />
éléments graphiques du domaine qui sont manipulés par des tâches à représenter.<br />
La première étape se déroule de la manière suivante : nous déterminons tout d’abord le<br />
nombre maximal d’images disponibles pour l’entièreté des éléments spécifiques de<br />
présentation. Ensuite, nous commençons la réduction du nombre d’images disponibles.<br />
Nous vérifions la taille de la présentation. Si celle-ci n’est pas valable, nous prenons, pour<br />
tous les éléments, une image de format réduit (lors de la déclaration du modèle unique et des<br />
éléments spécifiques de présentation, la liste des images disponibles est déjà organisée de<br />
manière décroissante en fonction de la taille de l’image). Et nous continuons la réduction<br />
jusqu’à ce qu’il n’y ait plus de possibilité de le faire ou que la résolution cible soit atteinte<br />
(remarque : certains éléments spécifiques de présentation peuvent être optionnels. Ceci<br />
implique que certaines images peuvent être carrément supprimées).<br />
Si la première étape n’a pas mené à un résultat concluant, nous passons à la deuxième étape.<br />
Nous générons une liste croissante de tâches en fonction de leur importance relative (coût).<br />
Ensuite, nous appliquons la réduction dans l’ordre obtenu jusqu’à ce que la résolution cible<br />
soit atteinte ou qu’il n’y ait plus de possibilité de choix d’images dans un format réduit.<br />
92