next up previous
Next: Fonctions pour la manipulation Up: Manipulation de Palettes de Previous: Manipulation de Palettes de

Les palettes de couleurs sous Xlib

Une palette de couleurs physique est un registre dans lequel l'écran lit les intensités RVBgif qui vont générer les couleurs à lécran. La pluspart des stations n'ont qu'une palette de couleurs physique. Dans ce cas, toutes les fenêtres de l'écran sont interprétées en utilisant la même palette de couleurs. Certaines stations ont plusieurs palettes physiques, dans ce cas plusieurs fenêtres peuvent avoir leur palette indépendente.

Si la palette de couleurs physique ne peut être modifiée, elle est dite immuable. Les systèmes monochromes ont une palette de couleurs immuable. Dans ce cas, aucune application cliente ne peut allouer de couleurs privées et toutes les valeurs RVB sont prédéfinies. Dans ces systèmes, XCreateColormap fonctionnera, mais il donnera seulement une autre copie de la palette par défaut.

Dans la pluspart des stations de travail, on peut écrire de nouvelles valeurs dans la palette de couleurs physique. Ces palettes sont dites modifiables.

X gère de multiples palettes de couleurs en gardant des palettes de couleurs virtuelles en mémoire et en les installant sur instruction du gestionnaire de fenêtres (window manager). L'installation d'une palette de couleurs est l'opération effectuant le passage d'une palette virtuelle dans la palette physique. Seules les palettes installées sont utilisées pour déterminer les couleurs apparaissant à l'écran. Quand il n'y a qu'une seule palette physique et qu'une palette virtuelle est installée, la palette virtuelle qui avait été installée précédemment devient désinstallée.

Sur la pluspart des stations de travail couleurs avec quatre ou huit plans, il est assez fréquent que le client alloue toutes les couleurs de la palette. Les palettes virtuelles sont une solution à ce problême. Quand un client ne peut pas allouer les couleurs dont il a besoin dans la palette installée, il peut créer une nouvelle palette virtuelle. Le window manager installera alors cette palette virtuelle lorsque l'application est utilisée.

Quand une palette de couleurs virtuelle est installée et qu'il n'y a qu'une seule palette de couleurs physique, tous les clients qui utilisaient l'ancienne palette seront affichée en fausses couleurs puisque les valeurs des pixels de leurs fenêtres seront interprétées d'après la nouvelle palette.

Quand une application crée une palette virtuelle, elle doit modifier l'attribut colormap window de sa fenêtre principale (topLevel) pour que le window manager puisse trouver quelle palette il doit installer. Par défaut cet attribut indique la palette par défaut. Si ses sous-fenêtres utilisent différentes palettes de couleurs, une propriété peut être modifiée pour l'indiquer au window manager.


next up previous
Next: Fonctions pour la manipulation Up: Manipulation de Palettes de Previous: Manipulation de Palettes de

Gauthier Lebrun
Fri Apr 18 17:58:46 MET DST 1997