DefGI Menu
Declarations
TYPE DECISON
SYMBOL {Menu, menu}
SUBGI Fim
Behaviour
EVSEQ (GInit + GinsPal + GRemPal + ViewConsPal)* + Fim
SubGI
DefGI Fim
Declarations
TYPE DECISION
Behaviour
EndGI
EndGI
DefGI GInit
Declarations
TYPE SYNTH
Behaviour
EXEC INIT()
EndGI
DefGI GInsPal
Declarations
TYPE SYNTH
SYMBOL {GInsPal, inspal}
ARGS pal: Pal;
sig: Sig
Behaviour
INIT pal = "";
sig = ""
EVSEQ input(pal).input(sig)
TRANS input(pal): (pal != "") && not(EXISTPAL(pal)) =>
EXCEP pal=="" -> out("Palavra nula!");
pal!="" -> out("Erro!")
OK:
CANCEL:
EXEC INSPAL(pal, sig)
EndGI
DefGI GRemPal
Declarations
TYPE SYNTH
SYMBOL {GRemPal, rempal}
ARGS pal: Pal
VAR-UI sig: Sig
Behaviour
CONTEXT not(EMPTYDIC())
INIT pal = "";
sig = ""
EVSEQ input(pal)
TRANS input(pal): EXISTPAL(pal) => sig = CONSPAL(pal)
EXCEP out("Erro!")
OK:
CANCEL:
EXEC REMPAL(pal)
EndGI
DefGI ViewConsPal
Declarations
TYPE SYNTH
SYMBOL {ViewConsPal, conspal}
SUBGI DoConsPal
VAR-UI sig: Sig
Behaviour
CONTEXT not(EMPTYDIC())
INIT sig = ""
EVSEQ DoConsPal(sig)
TRANS OK:
SubGI
DefGI DoConsPal: Sig
Declarations
TYPE VALSYNTH
SYMBOL {DoConsPal}
ARGS pal: Pal
Behaviour
CONTEXT not(EMPTYDIC())
INIT pal = ""
EVSEQ input(pal)
TRANS input(pal): EXISTPAL(pal) => EXCEP out("Erro!")
OK:
CANCEL:
EXEC CONSPAL(pal)
EndGI
EndGI