Comment fonctionnent les pages
Les deux gabarits de page, les volets intégrés qui enregistrent au fil de la saisie, la barre de commandes et ses deux sortes de refus, les menus contextuels, le verrou d'ingénierie, le runtime arrêté, les confirmations, et l'endroit où chaque résultat arrive.
Les pages de Ganter Lab partagent un petit jeu de conventions, de sorte qu'une fois une chose configurée vous savez configurer la suivante : deux gabarits de page, des volets qui enregistrent au fil de la saisie, une seule façon de placer une commande et deux façons de la refuser, un menu contextuel qui reprend la barre, et un seul endroit où les résultats arrivent. Cette page les énonce une fois ; les pages de chaque domaine ne disent que ce qui leur est propre.
Deux gabarits de page
Les pages liste et détail
Connector, Logic, Process et Utilisateurs sont des pages liste et détail, et View est disposée de la même façon, à la main. Sous l'en-tête de la page (titre, description d'une ligne, un filet) l'écran se partage en une colonne à gauche et une carte de détail à droite.
| Élément | Ce que c'est | Ce que vous pouvez faire |
|---|---|---|
| L'en-tête de la colonne | Le nom de la colonne (Communications, Espace d'adressage, Espace de travail, Accès à la station, Visualisation) et un chevron | Le chevron replie la colonne en une barre étroite qui porte le nom à la verticale ; appuyer sur la barre ramène la colonne. |
| La recherche ou le filtre | Celui de la page, au-dessus de l'arborescence : Connector a un champ de recherche (« Rechercher pilotes, lignes, équipements, tags ») et les pastilles d'état Tous, Sains, Anomalies, Désactivés ; Logic a « Filtrer… » | Les lignes qui ne correspondent pas sont masquées ; les intertitres qui nomment un groupe de racines (« Défini ici », « Depuis d'autres pages ») suivent leurs lignes. |
| L'arborescence | Les nœuds de la page, avec un chevron de dépliage sur chaque ligne qui a des enfants et une mise en évidence sur celle qui est sélectionnée | Un clic sélectionne et ouvre le volet du nœud à droite. Haut et Bas déplacent la sélection, Droite déplie, Gauche replie, Entrée sélectionne. Un double-clic active, dans les sélecteurs qui en emploient un. Une ligne en cours de renommage devient son propre champ de nom : Entrée ou le fait de quitter le champ valide, Échap annule. |
| Le pied | Les commandes de la colonne, dans le même coin sur chaque page : un + (infobulle « Nouveau… »), un groupe de réordonnancement facultatif, et Tout déplier / Tout replier | + ouvre un menu ancré au bouton, qui nomme ce qui peut être créé et où cela arrive. Tout déplier et Tout replier sont grisés tant qu'aucune ligne ne s'ouvre. Le pied entier disparaît quand l'identité ne peut employer aucune de ses commandes. |
| Le séparateur | Un filet entre la colonne et la carte | Faites-le glisser entre 260 et 600 pixels, ou atteignez-le avec la tabulation et déplacez-le au clavier : une flèche le décale de 16 pixels, Page précédente et Page suivante de 96, et Origine et Fin l'amènent aux deux extrémités. La largeur reste où vous l'avez laissée tant que la page est ouverte. |
| La carte de détail | Un en-tête fixe avec l'en-tête du nœud sélectionné (une icône monochrome, le titre, des pastilles facultatives, un sous-titre d'une ligne, parfois une action alignée à droite) et sous lui la barre de commandes ; le corps défile en dessous | Rien de sélectionné laisse l'en-tête vide et un texte d'attente dans le corps. Certains écrans confient le corps à des surfaces qui leur sont propres (les écrans de définition d'un modèle Process), avec leurs propres colonnes et leur propre séparateur déplaçable. |
Les pages à défilement
Paramètres, Compte, Accès agent et Vérification forment une seule colonne à défilement. Sous l'en-tête, un index à gauche intitulé « Sur cette page » liste chaque section sous son surtitre de groupe (GÉNÉRAL, SERVEUR OPC UA, DONNÉES et ainsi de suite) ; un clic fait défiler la section jusqu'à l'écran, l'entrée active suit votre défilement, et un lien peut ouvrir une section directement (/settings#sec-updates). Chaque section porte son titre et, pour la première d'un groupe, le surtitre du groupe. Vérification prend toute la largeur, parce que ses lignes sont des phrases. Événements est la seule page à onglets : Alarmes, Occurrences, Verrouillages et Console, chacun avec une adresse propre (/events?view=…).
Volets intégrés et enregistrement automatique
Il n'y a ni bouton OK, ni Enregistrer, ni Appliquer sur un volet : la chose sélectionnée se modifie sur place et chaque changement est enregistré au moment où vous le faites. Une valeur que le volet ne peut pas accepter est refusée là où vous l'avez tapée, dans une note sous le champ, et n'est jamais enregistrée.
| Contrôle | Enregistre | Remarques |
|---|---|---|
| Interrupteur | Au basculement | Un interrupteur grisé conserve son état et dit dans son infobulle pourquoi il ne peut pas changer. |
| Case à cocher | À la coche | |
| Champ de texte | À chaque frappe | Les champs de nom, d'adresse et de connexion font exception : ils valident quand vous quittez le champ ou appuyez sur Entrée, et Entrée valide une seule fois. Un champ de nom montre, sous lui-même, ce que la validation emporte avec elle (les références qu'elle réécrit) avant que vous validiez. |
| Champ numérique | Quand vous quittez le champ | Une valeur qui n'est pas un nombre, ou qui sort de la plage du champ, est refusée par une note (« « abc » n'est pas un nombre. », « Saisissez un nombre compris entre 1 et 65535. ») et la case revient à la valeur en vigueur. Une valeur écrite autrement (« 007 », « 7,0 ») est acceptée et réécrite sous sa forme canonique. |
| Liste déroulante | À la sélection | Une liste déroulante modifiable valide ce qu'elle contient, que la liste l'ait proposé ou non (une adresse Logic, par exemple). |
| Cellule de grille | Quand la cellule est modifiée | Cocher des lignes d'abord applique la modification à chaque ligne cochée (la grille Tags). |
| Éditeur de code | Selon la validation propre à l'éditeur | Expressions, scripts et conditions ; voir Expressions. |
Deux autres choses qu'un champ porte :
- Sous un champ, une légende qui ne change jamais explique ce que le champ décide, et une ligne d'effet distincte (son propre retrait, sa propre marque) énonce ce que la valeur en cours produit. Une légende à laquelle on peut se fier comme explication est celle qui ne se réécrit pas quand vous choisissez.
- Là où une option change ce que l'application dessine (un préréglage de cadran, une forme de graphique, une fenêtre de critère, un outil de graphique), le sélecteur montre une marque du résultat à côté du nom de l'option, dérivée du code même qui dessine la chose réelle. Là où le dessin ne peut pas distinguer deux options à cette taille, aucune des deux n'en reçoit.
Le résultat d'un enregistrement arrive dans le journal des actions de la barre d'état, pas sur le volet (voir Où arrivent les résultats).
La barre de commandes
Un verbe appartient à ce sur quoi il agit, et l'endroit où il vit se lit sur sa cible, jamais sur son degré de danger. Trois cibles, trois emplacements :
| Cible | Emplacement | Ordre |
|---|---|---|
| Le nœud que la colonne a sélectionné | La barre sous l'en-tête fixe de la carte | Le groupe de tête (à gauche) crée, copie, modifie, dérive et démarre. Le groupe de queue (à droite) termine : Supprimer, Retirer, en encre de danger, pour que le groupe dangereux se lise comme un avertissement. Une barre qui n'a rien à terminer ne laisse pas le coin vide : elle prend les verbes dont la cible est la fenêtre, Agrandir et Plein écran, pour que la place accordée à la surface ouverte se trouve dans le même coin sur chaque scène. |
| Tout le tableau que porte une carte | L'en-tête propre à la carte, au-dessus des lignes qu'il touche | Ce qui agrandit la liste d'abord, ce qui la relit ensuite, et en dernier, en encre de danger, ce qui termine la ligne que la page a sélectionnée. Le verbe qui termine nomme ce sur quoi il agit et dit pourquoi il est refusé plutôt que de disparaître quand rien n'est choisi. |
| Une seule ligne et rien d'autre | Le groupe d'actions en queue de la ligne : des boutons à glyphe, l'encre de danger pour celui qui termine | Appuyer sur l'un d'eux ne change jamais la sélection. Une carte termine ses propres lignes soit dans son en-tête, soit sur ses lignes, jamais des deux façons pour le même tableau. |
Une zone encadrée d'un écran partagé est une carte. L'en-tête de volet partagé garde son icône, son titre, son sous-titre et ses pastilles et ne porte jamais de verbe ; une action à l'intérieur d'un avis intégré est la réponse de cet avis, pas un verbe d'en-tête.
Un contrôle sur une barre n'est pas un verbe : un interrupteur d'état pour une décision dont la cible est la surface ouverte elle-même et qui n'a ni carte ni champ commun à toutes les surfaces qui y répondent (« Afficher dans View » sur un tableau de bord d'un modèle Process). C'est l'interrupteur étiqueté propre à l'application, donc l'état se lit sur le contrôle plutôt que sur un verbe qui a l'air enfoncé ; son infobulle dit ce que l'état en vigueur signifie. Un verbe qui est un mode (Modifier, Terminer les modifications ; un outil de graphique) apparaît enfoncé tant qu'il est actif.
Deux sortes de refus
Chaque barre, chaque menu et chaque interrupteur distingue deux refus de la même façon :
| Refus | Comment il se montre | Pourquoi |
|---|---|---|
| Le rôle connecté ne sera jamais autorisé à l'exécuter | La commande n'est pas dessinée du tout | Aucun appui ne gagne la permission, et une rangée de verbes grisés que le rôle ne pourra jamais atteindre ne fait que prendre de la place et suggérer que le produit est cassé. Un rôle en consultation lit une barre à la taille de ce qu'il peut faire. |
| La commande est refusée en ce moment | La commande reste dessinée et grisée ; l'infobulle dit ce qui manque : rien de sélectionné, la station verrouillée pendant qu'une unité fonctionne, un essai en cours, « Runtime arrêté » | Cela change, et vous devez savoir que la commande existe et ce qui la ramène. |
Le verbe qui termine quelque chose ne fait pas exception quand la raison est une situation : il reste en place, grisé, en nommant toujours ce qu'il termine. Les menus disent la même raison au survol, l'interrupteur d'état met la raison avant la phrase qui dit ce que l'état signifie, et le + du pied ainsi que ses Tout déplier / Tout replier sont grisés de la même façon.
Le clic droit reprend la barre d'outils
Un clic droit sur une ligne d'arborescence sélectionne d'abord cette ligne puis ouvre un menu au curseur avec les mêmes verbes, dans la même encre de danger et sous les mêmes refus que la barre, de sorte que le menu agit toujours sur la ligne sous le curseur. Une ligne qui ouvre une liste de destinations (Déplacer vers un dossier, les pilotes sous lesquels un équipement peut être ajouté) l'ouvre à côté d'elle, sur un seul niveau, au survol ou à l'appui ; appuyer sur une feuille l'exécute et ferme le menu. Un clic à l'extérieur, un redimensionnement, ou la ligne qui défile hors de vue ferment le menu sans rien exécuter. Le + de la colonne ouvre le même genre de menu contre le bouton, pour un appui fait au clavier autant qu'à la souris.
Le verrou d'ingénierie
La configuration et les essais en direct partagent la station. Tant qu'au moins une unité exécute une procédure, la configuration est en lecture seule : la page montre le bandeau Ingénierie verrouillée, « Une opération d'unité est en cours. La configuration reste en lecture seule jusqu'à la fin de toutes les unités ; les commandes d'essai et les autres actions de l'opérateur restent disponibles. », et la carte de détail, son en-tête fixe compris, devient inerte. Les verbes de la barre continuent chacun de dire leur propre disponibilité, car plusieurs restent ouverts sous le verrou : ce qui exécute, suspend, reprend, arrête ou interrompt un essai, acquitte une alarme ou écrit une valeur continue de fonctionner. La modification reprend d'elle-même quand la dernière unité a fini. Voir Essais.
Le runtime arrêté
Une station sans licence dont la fenêtre de mode gratuit est écoulée arrête le runtime : toutes les pages sauf Compte cèdent la place à un seul avis de mise en pause, et toute commande qui modifierait la station, y compris celles qu'un essai laisserait ouvertes, est refusée par « Runtime arrêté ». Le bandeau, la page en pause et le redémarrage sont décrits sous La fenêtre ; les fenêtres elles-mêmes sous Mode gratuit et licence.
Confirmations et boîtes de dialogue
Modifier n'ouvre jamais de fenêtre ; une boîte de dialogue est faite pour ce qui est passager ou destructeur.
| Boîte de dialogue | Quand | Comment elle se comporte |
|---|---|---|
| Confirmation | Avant une suppression ou une restauration : « Supprimer « nom » ? Ce qui disparaît. Cette action est irréversible. » | Deux boutons, celui qui refuse ayant le focus : Entrée, Échap et un clic à l'extérieur répondent tous Non ; confirmer demande une tabulation ou un clic délibéré. Rien de destructeur ne se poursuit sans un Oui explicite. |
| Message | La clé de récupération à usage unique de l'administrateur principal, quand ce code PIN est défini ou changé. C'est le seul usage que la station fait de cette fenêtre : la clé n'est à l'écran qu'une fois et nulle part ailleurs, elle doit donc y rester le temps d'être notée. | Un seul OK. La fenêtre prend le focus en s'ouvrant, pour que ce qu'elle dit soit annoncé ; Échap ou un clic à côté la referme, et la tabulation reste à l'intérieur. Jamais un résultat : une commande qui s'est exécutée le dit dans le journal des actions. |
| Éditeur passager | La boîte de connexion, la boîte du rapport d'incident, un client en cours d'ajout au serveur OPC UA | Échap ou un clic à l'extérieur annule ; Entrée valide quand la boîte a une action par défaut ; la tabulation reste à l'intérieur de la boîte. |
Les avis intégrés, sur la page plutôt qu'au-dessus d'elle, sont des bandeaux : un titre, un corps et parfois une action, avec un filet fin dans la teinte de leur gravité (information, prudence, critique, succès). Un bandeau n'occupe tout le champ coloré que pour une condition dont la conséquence est déjà en cours, comme un arrêt externe en direct ; tout le reste est une observation d'état.
Où arrivent les résultats
Ce que vous venez de faire rapporte son résultat dans le journal des actions de la barre d'état et nulle part ailleurs : un enregistrement, une suppression, un renommage, un import, une impression, une nouvelle analyse, une connexion. Les deux issues sont rapportées, et un échec reste jusqu'à ce que vous le masquiez. La seule exception est une commande déclenchée depuis un composant de tableau de bord, qui répond sous ce composant. Les notifications (les bandeaux passagers) sont faites pour ce qui interrompt, jamais pour la réponse à un appui. Voir Le journal des actions.
Thème et couleur
La couleur est réservée au sens. Un point d'état est gris quand il est neutre, vert quand tout va bien, orangé en cas de dégradation ou de démarrage, rouge en cas de défaut ou de mise hors ligne, et de la couleur d'accentuation quand la chose est notable sans être dégradée (une alarme de priorité moyenne, par exemple). L'encre de danger marque ce qui termine quelque chose ; une note de prudence marque ce qui est refusé ou suspendu. L'apparence claire ou sombre se choisit avec les touches de thème de la barre de titre ou sous Paramètres, Apparence, et elle appartient à la station : chaque vue, y compris les vues distantes, affiche la préférence de la station.
Ce qu'aucune page ne fait
- Aucune page n'ouvre d'éditeur modal pour un équipement, un tag, une variable, un modèle, un utilisateur ou un rôle ; chacun se modifie dans son volet.
- Aucune page ne montre un éclair « Enregistré », une ligne d'état ou une notification qui lui serait propre.
- Aucune page ne grise un verbe que le rôle ne pourra jamais exécuter, et aucune page ne masque un verbe qui n'est refusé qu'en ce moment.
- Aucune page ne gèle contrôle par contrôle quand le runtime est arrêté ; le shell remplace la page entière.
- Aucun verbe ne siège sur un en-tête de volet, et aucune page ne réordonne les groupes de sa barre.