MESBOX

Contents


"Mesbox" is used to declare a full page box based on a main screen, with optional declaration of folders, left-most lists and buttons.

Syntax

[Local]Mesbox Mask mask
   Buttonlist_buttonWith list_shortcut Codedlist_status
   [ Titledtitle_box ]
   [ Atposition ]
   [ list_folder ]
   Asabrev

 

Parameters

Element

Description

Restrictions

mask

Identification of the main mask in one of the following forms
- name of the mask [ class0 ]
- class0
- '=' expr_c [ class0 ]

class0 indicates a mask.
When given alone,
the mask must be open.

expr_c

Alphanumeric expression whose result is a mask name in the form of an identifier or an absolute or relative path.

list_button

List of alphanumeric expressions, giving the text of each button separated by the character ','.

list_shortcut

List of one-character expressions separated by the character ','.

the character must be part of the text of the button

list_status

List of integer expressions separated by the character ','.

For standard buttons, use global variables

title_box

Alphanumeric expression for the title of the box

position

Position of pick box on screen in the form:
'(' exp_lig ',' exp_col ')' '

This position must be within the screen.

exp_lig

Numerical expression of the number of the line on screen, from which the pick box will be displayed.
expressed in 1/8 of a line.

exp_col

Numerical expression of the number of the column on screen, from which the pick box will be displayed.
expressed in 1/4 of a column.

list_folder

List of folders separated by the character ','.
A folder definition is expressed in the form:
Foldermaskmask1 [ Titled title_folder ]

Max 8 folders

mask1

Identifier of a folder in one of the following forms
- name of mask [ class1 ]
- class1
- '=' expr_c [ class1 ]

class1 indicates a mask.
When given alone,
the mask must be open.

title_folder

Alphanumeric expression for the title of the folder

abrev

abbreviation indicating the box

 

Examples

# display of a window with 4 buttons at the bottom:

# definition of input box
# with mask opened
Local MesboxMask ZMOTSA00 [ZM00]
& Button "Button A", "Button B", "Button C", "END"
& With "A","B","C","F"
& Coded 1901,1902,1903,1904
& Titled "Title box"
& As [BOI1]

# opening of mask
Local Mask ZMOTSA00 [ZM00]
# definition of input box
# with use of mask abbreviation
Local MesboxMask [ZM00]
& Button "Button A", "Button B", "Button C", "END"
& With "A","B","C","F"
& Coded 1901,1902,1903,1904
& Titled "Title box"
& As [BOI1]

# opening of mask
Local Mask ZMOTSA00 [ZM00]
Local Char WMASK
WMASK ="ZMOTSA00"
# definition of input box
Local MesboxMask = WMASK
& Button "Button A", "Button B", "Button C", "END"
& With "A","B","C","F"
& Coded 1901,1902,1903,1904
& Titled "Test Mesbox"
& As [BOI1]

 

# display of a window with OK button and 6 folders:

# opening of header mask and of 6 folders
Local Mask ZMOTSA00 [ZM00]
Local Mask ZMOTSA01 [ZM01]
Local Mask ZMOTSA02 [ZM02]
Local Mask ZMOTSA03 [ZM03]
Local Mask ZMOTSA04 [ZM04]
Local Mask ZMOTSA05 [ZM05]
Local Mask ZMOTSA06 [ZM06]
# definition of input box
# with use of mask abbreviation
Local MesboxMask [ZM00]
& Button "END" With "E" Coded 1901
& Titled "Title box"
& Folder Mask [ZM01] Titled "Folder 1"
& Folder Mask [ZM02] Titled "Folder 2"
& Folder Mask [ZM03] Titled "Folder 3"
& Folder Mask [ZM04] Titled "Folder 4"
& Folder Mask [ZM05] Titled "Folder 5"
& Folder Mask [ZM06] Titled "Folder 6"
& As [BOI1]

 

# entry in a window :

# variable recovering selected button
Local Integer RESU

# definition of input box
# with mask opened
Local MesboxMask ZMOTSA00 [ZM00]
& Button "END"
& With "E"
& Coded 1901
& Titled "Title box"
& As [BOI1]

$MENU
# display of window
Boxact [BOI1]

# entry in window :
Boxinp [BOI1] using RESU

# action according to button activated
Case RESU
when 1901       Goto FIN
when Default    Goto FIN
Endcase
Goto MENU

# closing box and mask
Close Local Mesbox[BOI1]
Close Local Mask [ZM00]

Description and comments

"Mesbox" is used to declare a full page box based on a main screen. This box is identified by an abbreviation that will be used to display the box, enter or delete from it on screen or remove it from memory using the instructions Boxact, Mesbox, Boxclr and Close Mesbox.

In this type of box, there is no left-hand list or menu bar. Moreover, it is impossible to make tunnels.

A single mask, or a main mask and folders (max 8) may be displayed in this box.
In defining a folder, the keyword Folder is used.

Buttons may be defined for this box.
For definition of all buttons, the keyword Button will be used once.
For each button, a text, a shortcut and a status must be entered, that will be tested in the input instruction Boxinp via a variable.

The statuses used by the supervisor are stored in global variables. It is normally these global variables that will be entered in the key word Coded.

Example:

Global

Variables

Status

Usage

GSTAOK

1029

used for an "OK" button

GSTAFIN

1792

used for an "END" button

GSTACRE

93

used for a "CREATION" button

 

Status ranges to be observed:

Status

Usage

1120 .. 1199

statuses reserved for standard
(initiate checks)

1220 .. 1239

statuses reserved for specific
(initiate checks)

1901 .. 1999

statuses reserved for standard
(no checks)

2220 .. 2229

statuses reserved for specific
(no checks)

 

Comments

No more than 25 screen OBJects may be opened at any one time. Screen-OBJects are boxes opened by Selbox, Mesbox, Inpbox, Dlgbox, Listbox, Treebox, Pickbox (including left hand lists). This number must also include the "working window" opened when an application is started.

Declaring a screen-OBJect with an abbreviation already in use by another screen-OBJect closes the latter.

The instruction Close [Local]Mesbox deletes from memory boxed opened by [Local]Mesbox. If the abbreviation is not specified, all locally opened windows are deleted.

When a sub-programme ends, boxes opened by Local Mesbox in this sub-programme are closed as if by CLose Mesbox.

 

Associated errors

 

Error

Description

ERCLAS(7)

Class is not an abbreviation

ERMABR(37)

2 masks with the same abbreviation

ERMODE(10)

a title is not alphanumeric

 

Associated key words

Dlgbox - Inpbox - Boxact - Boxinp - Boxclr - Status

 


Contents


Copyright © Sage 1999 - 2007