Content-type: text/html
La routine attrset configure l'attribut actuel de la fenêtre à attrs. La routine attroff désactive les attributs nommés, sans activer ou désactiver d'autres attributs. La routine attron active les attributs nommés, sans affecter les autres. La routine standout est la même que attron(A_STANDOUT). La routine standend est la même que attrset(A_NORMAL) ou attrset(0), c'est-à-dire qu'il désactive tous les attributs.
Les routines attrset et celles qui lui sont liées n'affectent pas les attributs utilisés lors de la suppression de portions de la fenêtre. Voir curs_bkgd(3X) pour les fonctions qui modifient les attributs utilisés pour la suppression et l'effacement.
La routine color_set configure la couleur actuelle de la fenêtre à la combinaison 1er plan/arrière-plan décrite par color_pair_number. Le paramètre opts est resérvé pour une utilisation future, les applications doivent contenir un pointeur nul.
La routine wattr_get retourne l'attribut et la paire de couleurs actuelle de la fenêtre ; attr_get retourne l'attribut et la paire de couleurs actuelle pour stdscr. Le reste des fonctions attr_* fait la même chose que les fonctions attr*, excepté qu'il prend des arguments de type attr_t au lieu de int.
La routine chgat change les attributs d'un membre donné de caractères commençant à l'emplacement actuel du curseur de stdscr. Il ne met pas à jour le curseur et n'effectue pas de boucles. Un numéro de caractère de -1 ou plus grand que la largeur de la fenêtre change les attributs tout au long de la ligne actuelle. La fonction wchgat généralise cela à toutes les fenêtres. La fonction mvwchgat fait bouger le curseur avant d'agir. Dans ces fonctions, l'argument de la couleur est un index color-pair (comme dans le premier argument de init_pair, voir curs_color(3X)). L'argument opts n'est pas encore utilisé, mais réservé pour le futur (laissez-le NULL). Notez que changer les attributs n'implique pas un rafraîchissement de l'écran, étant donné que les valeurs des caractères ne sont pas modifiées. Utilisez touchwin pour forcer l'écran à tenir compte des attributs mis à jour.
A_NORMAL | Affichage normal (pas de surlignement) |
A_STANDOUT | Meilleur surlignement |
A_REVERSE | Inverser la vidéo |
A_BLINK | Clignoter |
A_DIM | À moitié brillant |
A_BOLD | Très brillant ou en gras |
A_PROTECT | Mode protégé |
A_INVIS | Mode invisible ou blanc |
A_ALTCHARSET | Jeu de caractères alternés |
A_CHARTEXT | Masque pour extraire un caractère |
COLOR_PAIR(n) | Numéro de paire de couleurs n |
La macro suivante est l'inverse de COLOR_PAIR(n):
PAIR_NUMBER(attrs) Retourne le numéro de paire associé à l'attribut COLOR_PAIR(n).
Les valeurs de retour de la plupart de ces routines n'ont pas de sens (elles sont implémentées pour les macros et retournent simplement leur argument). La page de manuel de SVr4 dit (faussement) que ces routines retournent toujours 1.
Le standard de curses XSI statue que si les fonctions traditionnelles attron/attroff/attrset peuvent manipuler des attributs autres que A_BLINK, A_BOLD, A_DIM, A_REVERSE, A_STANDOUT, ou A_UNDERLINE elles sont « non-spécifiées ». Sous cette implémentation, ces fonctions manipulent les autres fonctions de surlignement aussi bien que les curses SVr4 (spécifiquement, A_ALTCHARSET, A_PROTECT, et A_INVIS).
Les curses XSI ont entré de nouveaux points d'entrée, attr_get, attr_on, attr_off, attr_set, wattr_on, wattr_off, wattr_get, wattr_set. Elles ont pour but de fonctionner avec une nouvelle série de macros de surlignement préfixée par WA_.
WA_NORMAL | Affichage normal (pas de surlignement) |
WA_STANDOUT | Meilleur mode de surlignement du terminal. |
WA_UNDERLINE | Souligner |
WA_REVERSE | Inverser la video |
WA_BLINK | Clignotement |
WA_DIM | A moitié brillant |
WA_BOLD | Très brillant ou gras |
WA_ALTCHARSET | Jeu de caractère alterné |
Les curses XSI standard spécifient que chaque paire de fonctions utilisant A_ et WA_ opère sur la même information de surlignement actuelle.
Le standard XSI de niveau de conformité étendu ajoute les nouveaux surlignements A_HORIZONTAL, A_LEFT, A_LOW, A_RIGHT, A_TOP, A_VERTICAL (et leurs macros WA_ correspondantes pour chacune d'entre elles) que ces curses ne gère pas encore.