N° | Fonction | Catégorie | Version |
---|---|---|---|
BIN 02 | BiN_Reset | Gestion de Fonction | 1.0 - Janvier 2007 |
But | Réinitialise les modes aux valeurs actives avant le programme |
Prototype | (BiN_Reset) |
Argument | Néant |
Retours | Néant |
Var. globales | $MLST |
Description | Replace les anciennes valeurs des modes en fonction avant le début du programme. |
Notes | Si changé, réactive le calque (plan) qui était courant avant le programme. Le programme lit dans la variable globale $MLST quels sont les modes et leurs valeurs correspondantes qui ont été stockés et leur affecte ces valeurs. Cette fonction doit se placer en fin de programme. BiN_Init doit obligatoirement avoir été lancé en début de programme. |
Exemples | (Bin_Init '("blipmode" "clayer")) ; 1ère ligne du programme : dans ce cas les modes "blipmode" et ; "Cmdecho" ainsi que le calque courant sont conservés) (... ...) (... ...) (BiN_Reset) ; dernière ligne du programme A la sortie, le calque courant et les modes conservés sont redéfinis tels qu'ils étaient à l'entrée du programme. Autre exemple : (Bin_Init '()) ; si aucun mode à conserver autre que Cmdecho (... ...) (BiN_Reset) ; dernière ligne du programme |
1- (defun BiN_Reset () 2- (setvar "cmdecho" 0) 3- (repeat (length $MLST) 4- (if (= (caar $MLST) "CLAYER") 5- (command "._LAYER" "_s" (cadar $MLST) "") 6- (setvar (caar $MLST) (cadar $MLST)) 7- ) . 8- (setq $MLST (cdr $MLST)) 9- ) 10- (princ) 11- )
Ligne 2 : Suppression de l'affichage de message pendant la commande Calque (ou Plan selon la version),si CLAYER existe dans la liste $MLST Ligne 3 : Boucle à répéter autant de fois qu'il y a d'éléments dans la variable globale $MLST. Ligne 4 : Si le 1er élément de la 1ère liste est 'CLAYER' Ligne 5 : Alors active le calque correspondant conservé dans $MLST. Ligne 6 : Sinon restitue au 1er élément de la 1ère liste, la valeur du second élément de la 1ère liste Ligne 7 : Fin du If ligne 4 Ligne 8 : Supprime la 1ère liste de $MLST Ligne 9 : Fin de boucle repeat Ligne 10 : Pour une sortie 'propre', sans retour parasite. Exemple de liste $MLST : ((orthomode 0) (clayer MURS) (blipmode 1) (cmdecho 1))