La gestion des couleurs dans Xspect se trouve essentiellement dans le module color.c. On y définit les couleurs à utiliser 
dans le programme, et si nécessaire la palette privée de Xspect.
 
Une des premières tâches du  programme principal (fonction main de xspect.c) est d'appeler la fonction 
initColors(...). Cette fonction essaie d'allouer les couleurs dans la palette de couleurs par défaut. Si cette allocation
échoue alors on crée une nouvelle palette virtuelle propre à Xspect grâce à la fonction XCopyColormapAndFree().
Si une palette virtuelle est créée, l'utilisateur a alors la possibilité de l'activé ou de la dsactivée dans le menu
Context|Option, par le champ privateColormap.
L'allocation des couleurs s'effectue par l'appel à la fonction getcolors(). Celle-ci crée une table des couleurs et essaie de l'allouer par un appel à XAllocColorCells().