Outre l'allocation de couleurs dans une palette, cette fonction nous permet de superposer des couches graphiques sans les détruire.
Cette méthode permet d'améliorer les performances du programme en réduisant le nombre de graphiques complexes à réafficher.
Elle est donc particulièrement utile lors des sélections.
L'astuce permettant de dessiner sans détruire ce qui a déjà été dessiné repose sur le fait que l'on peut dessiner sur un plan de la zone graphique. Cela est possible en utilisant le composant plane_mask du contexte graphique. Ce sont ces autres plans qui contiennent les informations de ce qui a déjà été dessiné. L'inconvénient de cette méthode est qu'elle nous oblige à allouer plus de couleurs que nous aurions normalement besoin.
XAllocColorCells(display, colormap, contig, plane_masks_return, nplanes, pixels_return,npixels) Display *display; Colormap colormap; Bool contig; unsigned long plane_masks_return[]; unsigned int nplanes; unsigned long pixels_return[]; unsigned int npixels;