Le GC est un des paramètres obligatoire de toutes les fonctions de dessin de la Xlib.
Utilisation : créer un GC par type d'opération graphique, par exemple un pour chaque fonte de caractères utilisée. On se servira des différents GCs selon que l'on désire écrire les textes à l'écran en italique, en gras, en gros, en petit, etc....
Pour créer un GC il faut utiliser la fonction XCreateGC() qui accepte 4 paramètres :
Le masque est initialisé en utilisant des valeurs comme GCForeground, GCBackground, GCLineStyle, etc...
Parmi les plus souvent utilisées BlackPixel() et WhitePixel() renvoient la valeur par défaut des couleurs noir et blanc pour un Display et un Screen donnés. Ces valeurs sont prises dans la table de couleur (colormap) par défaut.
GC gc; XGCValues values; unsigned long valuemask; . . . /* Ouvrir le display, créer les fenêtres, etc... */ . . . values.foreground = BlackPixel(display, screen); values.background = WhitePixel(display, screen); gc = XCreateGC(display, RootWindow(display, screen), (GVForeground | GCBackground), &values); /* maintenant on peut utiliser ce GC dans avec les fonctions de dessin */ . . .
![]()
GC gc; . . . /* Ouvrir le display, créer les fenêtres, etc... */ . . . gc = XCreateGC(display, RootWindow(display, screen), 0, NULL); XSetForeground(display, gc, BlackPixel(display, screen)); XSetBackground(display, gc, WhitePixel(display, screen)); /* maintenant on peut utiliser ce GC dans avec les fonctions de dessin */ . . .
![]()