Lexique informatique › Programmation › Navigation au clavier (Motif)

Navigation au clavier (Motif)

Programmation Svenska → Mis à jour: 2026-10-10

Le modèle de Motif pour atteindre chaque bouton et chaque champ sans souris : les widgets sont regroupés en groupes de tabulation, Tab saute d'un groupe à l'autre, les flèches se déplacent à l'intérieur, et un cadre de surbrillance montre où se trouve le focus.

Le guide de style de l'OSF exigeait que tout programme Motif soit entièrement accessible au clavier, ambition inhabituelle dans un monde Unix où le focus suivait le pointeur et où Tab était un caractère. La solution donne à chaque widget la ressource XmNnavigationType : XmTAB_GROUP en fait un groupe à part entière, XmNONE un membre du groupe de son parent, et XmEXCLUSIVE_TAB_GROUP un groupe qui gère lui-même les flèches. Tab et Maj+Tab passent d'un groupe à l'autre, les touches virtuelles osfUp, osfDown, osfLeft et osfRight se déplacent à l'intérieur, de sorte qu'une rangée de boutons radio dans un XmRowColumn se parcourt aux flèches. Ce qui détient le focus est entouré d'un cadre dont l'épaisseur est XmNhighlightThickness, le « curseur de localisation » de Motif.

Tout dépend de la XmNkeyboardFocusPolicy du shell : XmEXPLICIT, la valeur par défaut, donne focus au clic et navigation ; XmPOINTER laisse le focus au pointeur et désactive l'essentiel. Les programmes déplacent le focus avec XmProcessTraversal, et XmNtraversalOn retire un champ précis de la rotation. Dans Motif 1.0 et 1.1, le programmeur devait appeler XmAddTabGroup pour chaque groupe ; la 1.2, en 1992, a fourni des valeurs par défaut raisonnables, si bien que les conteneurs sont devenus des groupes et les champs de texte et listes des groupes à part entière sans effort. Il en résulte l'un des traits que les utilisateurs de Windows et de Mac reconnaissaient dans CDE : Tab fait ce qu'on attend de lui.

← Retour au lexique