Présentation
Documentation
L'équipe
Sérialisation
 
Programmes
Objets
Libs Utilitaires
Libs Internes
   
 
Editeur
Syntaxes
Windows
Versions
   

SCR/AL1 - TOME II. Les Objets

8. MENU

8.3 Définition d'une OPTION

Les options des MENUS sont pricipalement composés de deux éléments : le texte qui doit être affiché et l'ACTION qui doit s'exécuter lorsque l'OPTION est sélectionnée par la touche ENTER.

"string"

Il s'agit du texte de l'option. Ce texte peut contenir des caractères semi-graphiques qui seront redessinnés à l'aide d'un REDRAW (voir DRAW des PAGES) de façon à rencontrer correctement les bords du cadre du MENU.

ACTION

L'ACTION d'une OPTION s'exécute quand cette option est sélectionnée par la touche ENTER. Elle ne doit pas être nécessairement précédée du mot ACTION, mais peut directement commencer par une acollade.

Exemple

    OPTION "Impression des clients" ACTION {C_FN PrintClients();}

est équivalent à

    OPTION "Impression des clients" {C_FN PrintClients();}

UNDISPLAY

Ce mot-clé indique que le MENU doit disparaître et son édition abandonnée avant que l'ACTION associée à l'OPTION ne s'exécute. Elle est utilisée lorsque l'ACTION entraîne des modifications dans l'écran, y compris dans les positions qu'occupe le MENU : ces modifications seraient perdues lors de l'effacement du MENU.

TOGGLE

Ce mot-clé indique que l'OPTION courante indique un choix qui peut être sélectionné ou non. Lorsque la touche ENTER est pressée sur ce type d'OPTION, un caractère de sélection apparaît à droite de l'OPTION. Le ENTER suivant fait disparaître ce caractère de sélection.

Une OPTION TOGGLE ne doit pas avoir d'ACTION asociée : celle-ci ne pourrait être exécutée.

ABORT

Ce mot-clé indique que le MENU doit disparaître et son édition abandonnée après l'exécution de l'ACTION associée à l'OPTION.

ON ou OFF

Une OPTION peut être active ou inactive. Certaines OPTIONS sont toujours inactives comme une ligne de séparation entre des OPTIONS concernant des sujets différents. Lorsque l'OPTION est inactive, on l'indiquera par le mot-clé OFF.

Par défaut une option est toujours active (ON).

Exemple

    MENU maintenance {
Auto Back Reverse
Begin_FN {C_FN return(CheckPerms());}
OPTION "Suppression d'une impression"
OPTION "Relancer une imprimante"
OPTION "Liste des impressions"
OPTION "----------------------------" OFF
OPTION "Créer un utilisateur"
OPTION "Liste des utilisateurs"
}

Caractère de positionnement direct

Un caractère peut être associé à une OPTION. Lorsqu'il sera pressé en cours d'édition du MENU, cette option deviendra l'OPTION courante et se mettra en video reverse. Elle ne s'exécutera cependant pas.

Par défaut la première lettre du texte de l'OPTION est sélectionnée à cet effet. Si plusieurs OPTIONS ont la même lettre de positionnement direct, la première option suivant l'option courante et ayant même lettre de positionnement direct est sélectionnée, ensuite la suivante, etc.

Dans l'exemple précédent, la lettre L placera le MENU sur l'option "Liste de impressions", ensuite sur "Liste des utilisateurs", à nouveau sur "Liste des impressions" et ainsi de suite.

fnkey

Une touche fonction peut être associée à une OPTION. Le fait de presser cette touche pendant l'édition du MENU positionne le MENU sur cette OPTION et exécute l'ACTION associée.

Dans le cas d'un sous-menu d'une OPTION d'A_BAR, ces touches de fonctions sont globales à l'application. Où que l'on soit dans l'application, le fait de presser la touche fonction quitte les éditions en cours pour revenir se positionner dans le MENU sur cette OPTION et exécuter l'ACTION associée.

Exemple

A_BAR lab_main {
LINE 1 COL 2
OPTION "Impressions" ALT_I {
OPTION "Fichier clients" {C_FN PrintClient();}
OPTION "Fichier fournisseurs" {C_FN PrintFourn();}
OPTION "Fichier produits" {C_FN PrintProd();}
}

...

OPTION "Misc" ALT_M {
OPTION "Aide F1" {Record {ALT_H}}
OPTION "Calendrier " {C_FN DT_calendar(SCR_current_date(),2,2);}
OPTION "Exit ALT-X" ALT_X {ASK "Quitter(O/N) ?" APPL_QUIT}
}
}

La touche ALT_X quitte toute édition en cours, se positionne sur l'OPTION "Exit" et exécute l'ACTION ASK "...". La touche ALT_I fait de même en affichant le MENU des impressions.

HELP

Le mot-clé HELP doit être suivi du nom d'un sujet contenu dans le fichier d'aide actif (voir ACTION HELPFILE "filename").

Exemple

    HELP "Impressions"

Ce sujet sera affiché si, lors de l'édition du MENU, la touche HELP est appuyée par l'utilisateur sur cette OPTION.

Valeur par défaut

Par défaut, un sujet dont le nom est celui du texte de l'option du MENU est recheché dans le fichier d'aide. S'il n'est pas trouvé, le sujet associé au MENU est sélectionné. S'il n'y en a pas, le premier sujet du fichier d'aide est affiché.

COMMENT

Les COMMENTS sont des textes (d'une ligne maximum) qui sont associés à des objets ou à des champs. Ils sont affichés automatiquement dans la fenêtre COMMENT définie dans l'application SCR/AL1. La syntaxe de définition de ces fenêtres se trouve dans le chapitre intitulé "Structure d'un fichier SCR/AL1".

Dès le début de l'édition de l'OPTION, le texte acollé au mot-clé COMMENT est affiché dans la fenêtre. Il disparaît automatiquement au passage à l'OPTION suivante.

PROT "class;..."

Il est possible de supprimer l'accès à une option d'un menu en spécifiant la liste des classes d'utilisateurs ayant accès à la fonction. Le séparateur se trouve

Le MENU scr_mnprot doit être défini et contient comme texte des options les classes d'utilisateurs.

La fonction SCR_check_prot(char *class) doit être écrite par l'utilisateur pour déterminer si les droits sont accordés dans le cas de l'utilisateur courant.

Si la fonction SCR_check_prot() retourne -1, les droits ne sont pas accordés. Dans ce cas, l'option ne s'affiche pas.

Copyright © 1998-2015 Jean-Marc Paul and Bernard PAUL - Envoyez vos remarques ou commentaires à bernard@xon.be