Abstraction Concrète : Module Ecran


La construction que nous avons adoptée pour les modules de gestion d'écran en mode texte fait usage du gestionnaire de périphérique ANSI.SYS . La valeur Ansi = "\027\091" correspond à la séquence initiale d'échappement ANSI formée par la chaîne composée du caractère Escape (Echappe, code ASCII 027) et du caractère `[` (code ASCII 091). Les modes d'affichage à l'écran sont définis par les valeurs : gras, normal, inverse, clignotant.

L'écran en mode texte sera défini comme une matrice de caractères de 25 lignes x 80 colonnes.

La fonction mode m sert à redéfinir le mode d'affichage au moyen des valeurs de mode : gras, normal, inverse, clignotant. La fonction ecrit s affiche la chaîne s sur l'unité de sortie standard stdout.
La fonction affiche m s compose une chaîne formée de deux séquences d'échappement ANSI m et s sur l'unité de sortie standard stdout, avec retour au mode normal à la fin de l'affichage. La séquence d'échappement ANSI m sert à indiquer le mode d'affichage au moyen des valeurs de mode : gras, normal, inverse, clignotant.
La fonction vide_ecran efface l'écran.
La fonction vide_ligne efface la ligne à partir de la position du curseur jusqu'à la fin.
La fonction cur_pos (y,x) place le curseur à la position ligne = y, et colonne = x.
La fonction cur_haut n déplace le curseur vers le haut de l'écran de n lignes.
La fonction cur_bas n déplace le curseur vers le bas de l'écran de n lignes.
La fonction cur_droite n déplace le curseur vers la droite de l'écran de n colonnes.
La fonction cur_gauche n déplace le curseur vers la gauche de l'écran de n colonnes.