Re: how to find out which menu option is currently highlighted
Mike Aubury <[email protected]> Sun, 4 Jun 2023 12:06:44 +0100
| Newsgroups | gmane.comp.lang.4gl.aubit.general |
|---|---|
| Message-ID | <CAGAq4WFvstwHqZiT3K9az6igh+1PH37Jki=nZNbE-97Uhq0WVw@mail.gmail.com> |
--===============6857231883253401064==
Content-Type: multipart/alternative; boundary="000000000000bb608105fd4bc837"
--000000000000bb608105fd4bc837
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
How would you trigger finding the value ?
You can't just use arrows - they might press "Z" .
I think for this particular use case - you're probably going to have to
hand hack a sort of menu in 4gl (displays with REVERSE etc) without doing
it all in a "MENU"..
Something like :
DEFINE lv_opt INTEGER
DEFINE lv_txt ARRAY[26] OF CHAR(10)
MAIN
LET lv_opt=3D1
LET lv_txt[1]=3D"A"
LET lv_txt[2]=3D"B"
LET lv_txt[3]=3D"C"
LET lv_txt[4]=3D"D"
LET lv_txt[5]=3D"E"
LET lv_txt[6]=3D"F"
LET lv_txt[7]=3D"G"
LET lv_txt[8]=3D"H"
LET lv_txt[9]=3D"I"
LET lv_txt[10]=3D"J"
LET lv_txt[11]=3D"K"
LET lv_txt[12]=3D"L"
LET lv_txt[13]=3D"M"
LET lv_txt[14]=3D"N"
LET lv_txt[15]=3D"O"
LET lv_txt[16]=3D"P"
LET lv_txt[17]=3D"Q"
LET lv_txt[18]=3D"R"
LET lv_txt[19]=3D"S"
LET lv_txt[20]=3D"T"
LET lv_txt[21]=3D"U"
LET lv_txt[22]=3D"V"
LET lv_txt[23]=3D"W"
LET lv_txt[24]=3D"X"
LET lv_txt[25]=3D"Y"
LET lv_txt[26]=3D"Exit"
OPTIONS MENU LINE FIRST
MENU ""
BEFORE MENU
CALL display_menu()
COMMAND KEY ("RIGHT")
IF lv_opt<26 THEN
LET lv_opt=3Dlv_opt+1
ELSE
LET lv_opt=3D1
END IF
CALL display_menu()
CONTINUE MENU
COMMAND KEY ("LEFT")
IF lv_opt>1 THEN
LET lv_opt=3Dlv_opt-1
ELSE
LET lv_opt=3D26
END IF
CALL display_menu()
CONTINUE MENU
COMMAND KEY ("enter")
DISPLAY "You clicked ",lv_txt[lv_opt]
SLEEP 1
IF lv_opt=3D26 THEN
EXIT MENU
ELSE
CONTINUE MENU
END IF
ON ACTION fgl_exit_menu
EXIT MENU
END MENU
END MAIN
FUNCTION display_menu ()
DEFINE a INTEGER
DEFINE x INTEGER
LET x=3D10
FOR a=3D1 TO 26
IF lv_opt=3Da THEN
# Must be on a different line because the menu
# blanks the width of the window
# could try putting the menu in a window
# or a prompt or something
# but - for a quick demo...
DISPLAY lv_txt[a] CLIPPED AT 2,x ATTRIBUTES(REVERSE)
ELSE
DISPLAY lv_txt[a] CLIPPED AT 2,x
END IF
IF lv_opt<=3D13 THEN
DISPLAY "DISPLAY FORM 1" AT 10,10
ELSE
DISPLAY "DISPLAY FORM 2" AT 10,10
END IF
LET x=3Dx+length(lv_txt[a])+1
END FOR
END FUNCTION
On Sun, 4 Jun 2023 at 11:22, Iwan AB <[email protected]> wrote:
> Thanks for the quick response.
> Here the use case. I would like to split a list of options that don't fit
> into one form into two forms, as follows:
>
> Form form1 with the following list of options
> A. OPTION A
> B. OPTION B
> C. OPTION C
> D. OPTION D
> E. OPTION E
> F. OPTION F
> G. OPTION G
> H. OPTION H
> I. OPTION I
> J. OPTION J
> K. OPTION K
> L. OPTION L
> M. OPTION M
>
> Form form2 with the following list of options
> N. OPTION N
> O. OPTION O
> P. OPTION P
> Q. OPTION Q
> R. OPTION R
> S. OPTION S
> T. OPTION T
> U. OPTION U
> V. OPTION V
> W. OPTION W
> X. OPTION X
> Y. OPTION Y
> Z. OPTION Z
>
> here is the code:
>
> OPEN FORM form2 WITH FORM "form2"
> OPEN FORM form1 WITH FORM "form1"
> DISPLAY FORM form1
>
> MENU "MENU"
> COMMAND "A" "OPTION A"
> COMMAND "B" "OPTION B"
> COMMAND "C" "OPTION C"
> COMMAND "D" "OPTION D"
> COMMAND "E" "OPTION E"
> COMMAND "F" "OPTION F"
> COMMAND "G" "OPTION G"
> COMMAND "H" "OPTION H"
> COMMAND "I" "OPTION I"
> COMMAND "J" "OPTION J"
> COMMAND "K" "OPTION K"
> COMMAND "L" "OPTION L"
> COMMAND "M" "OPTION M"
> COMMAND "N" "OPTION N"
> COMMAND "O" "OPTION O"
> COMMAND "P" "OPTION P"
> COMMAND "Q" "OPTION Q"
> COMMAND "R" "OPTION R"
> COMMAND "S" "OPTION S"
> COMMAND "T" "OPTION T"
> COMMAND "U" "OPTION U"
> COMMAND "V" "OPTION V"
> COMMAND "W" "OPTION W"
> COMMAND "X" "OPTION X"
> COMMAND "Y" "OPTION Y"
> COMMAND "Z" "OPTION Z"
> END MENU
>
> when option N is highlighted, I want to display form2, and when option A
> or option M is highlighted,
> I want to display form1 again.
>
> Best regards,
>
> Iwan
>
> On Sun, Jun 4, 2023 at 2:21=E2=80=AFPM Mike Aubury <[email protected]> wrote=
:
>
>> I don't think so, what's the use case?
>>
>> On Sun, 4 Jun 2023, 08:17 Iwan AB, <[email protected]> wrote:
>>
>>> Dear Mike,
>>>
>>> Is there a way to find out which menu option is currently highlighted?
>>>
>>> Best regards,
>>>
>>> Iwan
>>> _______________________________________________
>>> Aubit4gl-discuss mailing list
>>> [email protected]
>>> https://lists.sourceforge.net/lists/listinfo/aubit4gl-discuss
>>>
>> _______________________________________________
> Aubit4gl-discuss mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/aubit4gl-discuss
>
--000000000000bb608105fd4bc837
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr">How would you trigger finding the value ?=C2=A0<div>You ca=
n't=C2=A0just use arrows - they might press "Z" .</div><div><=
br></div><div>I think for this particular use case - you're probably go=
ing to have to hand hack a sort of menu in 4gl (displays with REVERSE etc) =
without doing it all in a "MENU"..<br><br><br>Something like :=C2=
=A0<br><br>DEFINE lv_opt =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 INTEGER<=
br>DEFINE lv_txt =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 ARRAY[26] OF CHA=
R(10)<br><br><br><br>MAIN<br><br>=C2=A0 =C2=A0 LET lv_opt=3D1<br>=C2=A0 =C2=
=A0 LET lv_txt[1]=3D"A"<br>=C2=A0 =C2=A0 LET lv_txt[2]=3D"B&=
quot;<br>=C2=A0 =C2=A0 LET lv_txt[3]=3D"C"<br>=C2=A0 =C2=A0 LET l=
v_txt[4]=3D"D"<br>=C2=A0 =C2=A0 LET lv_txt[5]=3D"E"<br>=
=C2=A0 =C2=A0 LET lv_txt[6]=3D"F"<br>=C2=A0 =C2=A0 LET lv_txt[7]=
=3D"G"<br>=C2=A0 =C2=A0 LET lv_txt[8]=3D"H"<br>=C2=A0 =
=C2=A0 LET lv_txt[9]=3D"I"<br>=C2=A0 =C2=A0 LET lv_txt[10]=3D&quo=
t;J"<br>=C2=A0 =C2=A0 LET lv_txt[11]=3D"K"<br>=C2=A0 =C2=A0 =
LET lv_txt[12]=3D"L"<br>=C2=A0 =C2=A0 LET lv_txt[13]=3D"M&qu=
ot;<br>=C2=A0 =C2=A0 LET lv_txt[14]=3D"N"<br>=C2=A0 =C2=A0 LET lv=
_txt[15]=3D"O"<br>=C2=A0 =C2=A0 LET lv_txt[16]=3D"P"<br=
>=C2=A0 =C2=A0 LET lv_txt[17]=3D"Q"<br>=C2=A0 =C2=A0 LET lv_txt[1=
8]=3D"R"<br>=C2=A0 =C2=A0 LET lv_txt[19]=3D"S"<br>=C2=
=A0 =C2=A0 LET lv_txt[20]=3D"T"<br>=C2=A0 =C2=A0 LET lv_txt[21]=
=3D"U"<br>=C2=A0 =C2=A0 LET lv_txt[22]=3D"V"<br>=C2=A0 =
=C2=A0 LET lv_txt[23]=3D"W"<br>=C2=A0 =C2=A0 LET lv_txt[24]=3D&qu=
ot;X"<br>=C2=A0 =C2=A0 LET lv_txt[25]=3D"Y"<br>=C2=A0 =C2=A0=
LET lv_txt[26]=3D"Exit"<br><br>=C2=A0 =C2=A0 OPTIONS MENU LINE F=
IRST<br><br>=C2=A0 =C2=A0 MENU ""<br><br>=C2=A0 =C2=A0 =C2=A0 =C2=
=A0 BEFORE MENU<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 CALL display_m=
enu()<br><br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 COMMAND KEY ("RIGHT")<br=
><br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 IF lv_opt<26 THEN<br>=C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 LET lv_opt=3Dlv_opt+1<=
br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 ELSE<br>=C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 LET lv_opt=3D1<br>=C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 END IF<br><br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 CALL display_menu()<br><br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 CO=
NTINUE MENU<br><br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 COMMAND KEY ("LEFT"=
;)<br><br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 IF lv_opt>1 THEN<br>=
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 LET lv_opt=3Dlv_opt=
-1<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 ELSE<br>=C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 LET lv_opt=3D26<br>=C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 END IF<br><br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 CALL display_menu()<br><br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0=
CONTINUE MENU<br><br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 COMMAND KEY ("enter&=
quot;)<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 DISPLAY "You click=
ed ",lv_txt[lv_opt]<br><br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 S=
LEEP 1<br><br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 IF lv_opt=3D26 THEN=
<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 EXIT MENU<br>=
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 ELSE<br>=C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 CONTINUE MENU<br>=C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 END IF<br><br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0ON ACTION=
fgl_exit_menu<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 EXIT MENU<br><b=
r>=C2=A0 =C2=A0 END MENU<br><br>END MAIN<br><br><br><br>FUNCTION display_me=
nu ()<br>DEFINE a =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0INTEGER<br>DEFINE x =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0INTEGER<br><br>=C2=A0 =C2=A0 LET x=3D10<br><br>=C2=A0 =C2=A0 F=
OR a=3D1 TO 26<br><br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 IF lv_opt=3Da THEN<br><br=
>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 # Must be on a different line be=
cause the menu<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 # blanks the wi=
dth of the window<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 # could try =
putting the menu in a window<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 #=
or a prompt or something<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 # bu=
t - for a quick demo...<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 DISPLA=
Y lv_txt[a] CLIPPED AT 2,x ATTRIBUTES(REVERSE)<br>=C2=A0 =C2=A0 =C2=A0 =C2=
=A0 ELSE<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 DISPLAY lv_txt[a] CLI=
PPED AT 2,x<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 END IF<br><br>=C2=A0 =C2=A0 =C2=
=A0 =C2=A0 IF lv_opt<=3D13 THEN<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 DISPLAY "DISPLAY FORM 1" AT 10,10<br>=C2=A0 =C2=A0 =C2=A0 =
=C2=A0 ELSE<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 DISPLAY "DISP=
LAY FORM 2" AT 10,10<br>=C2=A0 =C2=A0 =C2=A0 =C2=A0 END IF<br><br>=C2=
=A0 =C2=A0 =C2=A0 =C2=A0 LET x=3Dx+length(lv_txt[a])+1<br>=C2=A0 =C2=A0 END=
FOR<br><br>END FUNCTION<br><br></div></div><br><div class=3D"gmail_quote">=
<div dir=3D"ltr" class=3D"gmail_attr">On Sun, 4 Jun 2023 at 11:22, Iwan AB =
<<a href=3D"mailto:[email protected]">[email protected]</a>> wrote:<br>=
</div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;b=
order-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr"><d=
iv>Thanks for the quick response.</div>Here the use case. I would like to s=
plit a list of options that don't fit into one form into two forms, as =
follows:<br><br>Form form1 with the following list of options<br>=C2=A0 =C2=
=A0 A. OPTION A<br>=C2=A0 =C2=A0 B. OPTION B<br>=C2=A0 =C2=A0 C. OPTION C<b=
r>=C2=A0 =C2=A0 D. OPTION D <br>=C2=A0 =C2=A0 E. OPTION E<br>=C2=A0 =C2=A0 =
F. OPTION F<br>=C2=A0 =C2=A0 G. OPTION G<br>=C2=A0 =C2=A0 H. OPTION H<br>=
=C2=A0 =C2=A0 I. OPTION I<br>=C2=A0 =C2=A0 J. OPTION J<br>=C2=A0 =C2=A0 K. =
OPTION K<br>=C2=A0 =C2=A0 L. OPTION L<br>=C2=A0 =C2=A0 M. OPTION M<br>=C2=
=A0 =C2=A0 <br>Form form2 with the following list of options<br>=C2=A0 =C2=
=A0 N. OPTION N<br>=C2=A0 =C2=A0 O. OPTION O<br>=C2=A0 =C2=A0 P. OPTION P<b=
r>=C2=A0 =C2=A0 Q. OPTION Q <br>=C2=A0 =C2=A0 R. OPTION R<br>=C2=A0 =C2=A0 =
S. OPTION S<br>=C2=A0 =C2=A0 T. OPTION T<br>=C2=A0 =C2=A0 U. OPTION U<br>=
=C2=A0 =C2=A0 V. OPTION V<br>=C2=A0 =C2=A0 W. OPTION W<br>=C2=A0 =C2=A0 X. =
OPTION X<br>=C2=A0 =C2=A0 Y. OPTION Y<br>=C2=A0 =C2=A0 Z. OPTION Z<br><br>h=
ere is the code:<br><br>OPEN FORM form2 WITH FORM "form2"=C2=A0 =
=C2=A0=C2=A0<br>OPEN FORM form1 WITH FORM "form1" =C2=A0 =C2=A0 <=
br>DISPLAY FORM form1<br><br>MENU "MENU"<br>=C2=A0 =C2=A0COMMAND =
"A" "OPTION A"<br>=C2=A0 =C2=A0COMMAND "B" &q=
uot;OPTION B"<br>=C2=A0 =C2=A0COMMAND "C" "OPTION C&quo=
t;<br>=C2=A0 =C2=A0COMMAND "D" "OPTION D"<br>=C2=A0 =C2=
=A0COMMAND "E" "OPTION E" =C2=A0 <br>=C2=A0 =C2=A0COMMA=
ND "F" "OPTION F"<br>=C2=A0 =C2=A0COMMAND "G"=
"OPTION G"<br>=C2=A0 =C2=A0COMMAND "H" "OPTION H&=
quot;<br>=C2=A0 =C2=A0COMMAND "I" "OPTION I"<br>=C2=A0 =
=C2=A0COMMAND "J" "OPTION J"<br>=C2=A0 =C2=A0COMMAND &q=
uot;K" "OPTION K"<br>=C2=A0 =C2=A0COMMAND "L" &quo=
t;OPTION L"<br>=C2=A0 =C2=A0COMMAND "M" "OPTION M"=
=C2=A0 <br>=C2=A0 =C2=A0COMMAND "N" "OPTION N"<br>=C2=
=A0 =C2=A0COMMAND "O" "OPTION O"<br>=C2=A0 =C2=A0COMMAN=
D "P" "OPTION P"<br>=C2=A0 =C2=A0COMMAND "Q" =
"OPTION Q"<br>=C2=A0 =C2=A0COMMAND "R" "OPTION R&q=
uot;<br>=C2=A0 =C2=A0COMMAND "S" "OPTION S"<br>=C2=A0 =
=C2=A0COMMAND "T" "OPTION T"<br>=C2=A0 =C2=A0COMMAND &q=
uot;U" "OPTION U" =C2=A0 <br>=C2=A0 =C2=A0COMMAND "V&qu=
ot; "OPTION V"<br>=C2=A0 =C2=A0COMMAND "W" "OPTION=
W"<br>=C2=A0 =C2=A0COMMAND "X" "OPTION X" =C2=A0 =
<br>=C2=A0 =C2=A0COMMAND "Y" "OPTION Y"<br>=C2=A0 =C2=
=A0COMMAND "Z" "OPTION Z" =C2=A0 =C2=A0<br>END MENU<br>=
<br>when option N is highlighted, I want to display form2, and when option =
A or option M is highlighted, <br>I want to display form1 again.<br><div><b=
r></div><div>Best regards,</div><div><br></div><div>Iwan</div></div><br><di=
v class=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Sun, Jun 4=
, 2023 at 2:21=E2=80=AFPM Mike Aubury <<a href=3D"mailto:[email protected]"=
target=3D"_blank">[email protected]</a>> wrote:<br></div><blockquote class=
=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rg=
b(204,204,204);padding-left:1ex"><div dir=3D"auto">I don't think so, wh=
at's the use case?=C2=A0</div><br><div class=3D"gmail_quote"><div dir=
=3D"ltr" class=3D"gmail_attr">On Sun, 4 Jun 2023, 08:17 Iwan AB, <<a hre=
f=3D"mailto:[email protected]" target=3D"_blank">[email protected]</a>> wr=
ote:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px=
0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir=3D=
"ltr">Dear Mike,<div><br></div><div>Is there a way to find out which menu o=
ption is currently highlighted?<br></div><div><br></div><div>Best regards,<=
/div><div><br></div><div>Iwan</div></div>
_______________________________________________<br>
Aubit4gl-discuss mailing list<br>
<a href=3D"mailto:[email protected]" rel=3D"noreferrer=
" target=3D"_blank">[email protected]</a><br>
<a href=3D"https://lists.sourceforge.net/lists/listinfo/aubit4gl-discuss" r=
el=3D"noreferrer noreferrer" target=3D"_blank">https://lists.sourceforge.ne=
t/lists/listinfo/aubit4gl-discuss</a><br>
</blockquote></div>
</blockquote></div>
_______________________________________________<br>
Aubit4gl-discuss mailing list<br>
<a href=3D"mailto:[email protected]" target=3D"_blank"=
>[email protected]</a><br>
<a href=3D"https://lists.sourceforge.net/lists/listinfo/aubit4gl-discuss" r=
el=3D"noreferrer" target=3D"_blank">https://lists.sourceforge.net/lists/lis=
tinfo/aubit4gl-discuss</a><br>
</blockquote></div>
--000000000000bb608105fd4bc837--
--===============6857231883253401064==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
--===============6857231883253401064==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
_______________________________________________
Aubit4gl-discuss mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/aubit4gl-discuss
--===============6857231883253401064==--