Les icônes (4) : Les images propres au système Avant propos
Cette section contient des tableaux avec des images, qu'il m'aurait été trop long de reproduire tels quels. Ce qui compte pour moi est l'efficacité de la communication plutôt que le côté esthétique de la présentation. C'est pourquoi les images ont été séparées des tableaux, mais j'ai fait en sorte que les choses soient claires et visibles. Vous devriez vous y retrouver quand même.
Partout dans Mac OS X, il y a une quantité de petites images en noir, dans des contrôles de style rectangulaire, des boutons de gradient, des boutons de cible. Quelques une des plus familières sont utilisées dans la barre d'outils du Finder, comme le montre la figure 1.
Fig. 1 : Les images standard utilisées dans la barre d'outils du Finder.
En plus de ces images, beaucoup d'applications de Mac OS X affichent des images standard, comme les icônes qui représentent le panneau de couleurs, .Mac, ou un dossier intelligent (voir figure 6).
Dans Mac OS 10.5 et ultérieur, beaucoup d'images standard des deux types sont disponibles ; leur utilisation fournit des avantages significatifs :
• Un temps de développement plus court, et moins d'effort consacré à la création d'icônes personnalisés
• Une mise à jour automatique des images, si leur apparence se modifie
• La familiarité des utilisateurs avec la signification de ces images.
Pour matérialiser ces avantages, il est essentiel d'utiliser ces images correctement, c'est à dire conformément à leur documentation et à leur usage recommandé. Ne jamais les utiliser pour autre chose ; si vous modifiez la signification d'une image, vous introduisez les utilisateurs en erreur, puisqu'ils savent déjà à quoi elle sert. Et si une mise à jour modifie l'aspect de l'image, vous confondrez encore vos utilisateurs puisque la nouvelle image n'aura pas de sens dans votre application.
Comme exemple d'école, imaginez que l'image "aller à droite" (ou en avant, actuellement un triangle pointé vers la droite) soit modifiée pour ressembler à la lettre "F" (pour Forward). Si vous avez correctement utilisé cette image pour aller à l'avant, la modification de l'image ne changera rien ; mais si vous avez utilisé cette image pour dire "Lire", le F ne veut plus rien dire.
Si vous ne pouvez pas trouver une image système qui a une signification convenable pour les besoins de votre application, il vaut mieux dessiner la vôtre plutôt que d'utiliser mal une image du système.
Note : chaque image décrite dans les tableaux qui suivent est listée avec son nom de constante figurant dans l'interface de programmation NSImage. Mais la valeur de la chaîne de caractères est dépourvue du mot "ImageName". Par exemple, pour la constante NSImageNameAddTemplate, la valeur de la chaîne est NSAddTemplate. Utilisez cette valeur plutôt que le nom de la constante pour trouver les images par leur nom dans Interface Builder.
Mac OS X 10.5 et supérieur fournit des images noir et blanc très petites pour être utilisées dans un contrôle rectangulaire de barre d'outils. Ces images, dont quelques une sont montrées dans le tableau qui suit, sont appelées "template images" (modèles) dans l'Application Kit, parce qu'elles doivent recevoir une action complémentaire de l'objet NSButtonCell avant d'être affichées. L'action en question peut, par exemple, faire paraître l'image différemment si un contrôle est pressé. Comme ces images nécessitent la présence d'une d'une boîte (qui est fournie par le contrôle), elles ne sont pas pratiques pour des boutons ou des icônes séparés dans une barre d'outils. Voyez les paragraphes suivants pour ces cas-là.
Comme pour toutes les images fournies par le système, ne les utilisez que pour les actions qui leur sont propres. Ces images standard sont représentées dans le tableau 1.
| Image | Signification | Nom de la constante |
|---|---|---|
| 1 | Vue dans Quick Look | NSImageNameQuickLookTemplate |
| 2 | Connexion Bluetooth | NSImageNameBluetoothTemplate |
| 3 | Ouvrir le théatre iChat | NSImageNameIChatTheaterTemplate |
| 4 | Voir un diaporama | NSImageNameSlideshowTemplate |
| 5 | Menu pop-up d'action | NSImageNameActionTemplate |
| 6 | Créer un item intelligent | NSImageNameSmartBadgeTemplate |
| 7 | Voir les objets en icônes | NSImageNameIconViewTemplate |
| 8 | Voir les objets en liste | NSImageNameListViewTemplate |
| 9 | Voir les objets en colonnes | NSImageNameColumnViewTemplate |
| 10 | Voir en mode Cover Flow | NSImageNameFlowViewTemplate |
| 11 | Visualiser le chemin de l'objet | NSImageNamePathTemplate |
| 12 | Déverrouiller l'objet (il est verrouillé) | NSImageNameLockLockedTemplate |
| 13 | Verrouiller l'objet (il est déverrouillé) | NSImageNameLockUnlockedTemplate |
| 14 | Aller à droite ou en avant | NSImageNameGoRightTemplate |
| 15 | Aller à gauche ou en arrière | NSImageNameGoLeftTemplate |
| 16 | Ajouter un item (à une liste, par exemple) | NSImageNameAddTemplate |
| 17 | Retirer un item (d'une liste par exemple) | NSImageNameRemoveTemplate |
| 18 | Passer en mode plein écran | NSImageNameEnterFullScreenTemplate |
| 19 | Quitter le mode plein écran | NSImageNameExitFullScreenTemplate |
| 20 | Arrêter le processus courant | NSImageNameStopProgressTemplate |
| 21 | Rafraichir la vue courante, ou redémarrer le processus | NSImageNameRefreshTemplate |
Mac OS X 10.5 et supérieur fournit une gamme d'images isolées qu'on peut utiliser comme boutons. Ces images ne nécessitent pas d'action complémentaire à l'aide d'un objet NSButtonCell.
Deux de ces images sont des versions indépendantes des images modèles (template images) du paragraphe précédent. Pour comprendre l'utilisation de ces deux versions différentes, voyez comment Safari propose une méthode d'arrêt : dans la fenêtre de téléchargement, Safari utilise l'image indépendante NSImageNameStopProgressFreestandingTemplate dans le prolongement de l'indicateur de progression pour permettre à l'utilisateur d'interrompre le chargement. Comme cette fenêtre peut afficher plusieurs actions de téléchargement en même temps, il faut afficher un contrôle d'interruption pour chacun. Comparez avec le modèle NSImageNameStopProgressTemplate que Safari utilise dans le champ d'URL pendant un chargement : dans ce cas, les utilisateurs peuvent avoir envie d'interrompre le chargement, si bien qu'il est utile de le permettre à l'aide d'un bouton de la barre d'outils.
Ces images indépendantes sont représentées sur le tableau 2 ; comme pour toutes les images-système, elles doivent être utilisées conformément à leur vocation.
| Image | Signification | Nom de la constante |
|---|---|---|
| 1 | Les données à gauche sont invalides | NSImageNameInvalidDataFreestandingTemplate |
| 2 | Révèle le contenu ou les détails d'un objet | NSImageNameRevealFreestandingTemplate |
| 3 | Ouvre le lien dans une nouvelle fenêtre | NSImageNameFollowLinkFreestandingTemplate |
| 4 | Arrête l'action en cours' | NSImageNameStopProgressFreestandingTemplate |
| 5 | Rafraîchit la vue courante, ou redémarre le processus | NSImageNameRefreshFreestandingTemplate |
Mac OS X 10.5 et supérieur fournit plusieurs images utilisables comme icônes indépendantes dans les barres d'outils. Ces images représentent trois types d'items :
• des éléments ou des entités du système
• des catégories de préférences
• des items standard courants
Utilisez le premier ensemble d'images (tableau 3) pour permettre aux utilisateurs l'accès à des entités du système, comme DotMac ou le réseau. Pour la plupart, ces images représentent des entités du système, pas des actions. mais si vous voulez représenter une action, comme "créer un nouveau dossier intelligent", vous pouvez rajouter un signe plus à l'icône du dossier intelligent.
| Image | Elément du système | Nom de la constante |
|---|---|---|
| 1 | Bonjour | NSImageNameBonjour |
| 2 | DotMac | NSImageNameDotMac |
| 3 | Le Macintosh en fonctionnement | NSImageNameComputer |
| 4 | Un dossier de sauvegarde sur CD | NSImageNameFolderBurnable |
| 5 | Un dossier intelligent | NSImageNameFolderSmart |
| 6 | Le réseau, ou Internet | NSImageNameNetwork |
Le second ensemble d'images (tableau 4) représente des icônes indépendantes pour les barres d'outils des fenêtres. Utilisez ces images pour accéder aux catégories de préférences comme la mise en place d'un acompte utilisateur, ou des réglages élaborés.
| Image | Catégorie de Préférences | Nom de la constante |
|---|---|---|
| 1 | Avancé | NSImageNameAdvanced |
| 2 | Général | NSImageNamePreferencesGeneral |
| 3 | Comptes utilisateurs | NSImageNameUserAccounts |
Le troisième ensemble peut servir dans les barres d'outils de fenêtres autres que les fenêtres de préférences. Vous pouvez utiliser ces images comme icônes indépendantes dans une fenêtre ou un panneau d'outils, pour permettre l'accès au panneau de couleurs, au polices, ou à une fenêtre d'information ou à un inspecteur. Voyez le tableau 5.
| Image | Item de la barre d'outils | Nom de la constante |
|---|---|---|
| 1 | Montrer/cacher l'information | NSImageNameAdvanced |
| 2 | Montrer/cacher la fenêtre des polices | NSImageNameFontPanel |
| 3 | Montrer/cacher le panneau des couleurs | NSImageNameColorPanel |
Mac OS X 10.5 et supérieur fournit des images pour représenter les groupes standards "Utilisateurs", "Groupe", et "Tous" pour les permissions et les privilèges; y compris l'accès aux ACLs (access control lists). Le tableau 5 montre ces images. Utilisez les pour préciser quels utilisateurs ont les permissions lire, écrire et exécuter.Ces images évitent d'utiliser les indicateurs de permissions de type Unix comme rwxr-xrw- utilisés par les experts.
Notez que l'image des permissions du "user group" ressemble à celle des "comptes utilisateurs" des catégories de Préférences du tableau 4. Mais une similitude d'image ne signifie pas que c'est la même chose ; utilisez ces images correctement.
| Image | Catégorie de permission | Nom de la constante |
|---|---|---|
| 1 | Utilisateur | NSImageNameUser |
| 2 | Groupe | NSImageNameUserGroup |
| 3 | Tout le monde | NSImageNameEveryone |
Mac OS 10.5 et supérieur dispose d'une image pour montrer quand un utilisateur glisse des documents ou des items multiples. Vous devez l'utiliser pour cette action uniquement. Le nom de constante correspondant est NSImageNameMultipleDocuments.
Nous les connaissons tous, ces images du système, pour les pratiquer tous les jours sans y prêter attention. Vous avez pour une fois l'occasion de faire leur découverte d'une façon un peu plus détaillée (et organisée), et d'apprendre leur nom.
Cette section n'a pas été mise à jour, et continue de parler de DotMac pour MobileMe.