1
2
3
4
5
6
7
8 dcl menu_$create entry (
9 (*) char (*) varying,
10 (*) char (*) varying,
11 (*) char (*) varying,
12 pointer,
13 (*) char (1) unal,
14 pointer,
15 pointer,
16 pointer,
17 fixed bin (35)
18 );
19
20 dcl menu_$display entry (
21 pointer,
22 pointer,
23 fixed bin (35)
24 );
25
26 dcl menu_$get_choice entry (
27 pointer,
28 pointer,
29 pointer,
30 bit (1) aligned,
31 fixed bin,
32 fixed bin (35)
33 );
34
35 dcl menu_$describe entry (
36 pointer,
37 pointer,
38 fixed bin (35)
39 );
40
41 dcl menu_$destroy entry (
42 pointer,
43 fixed bin (35)
44 );
45
46 dcl menu_$store entry (
47 character (*),
48 character (*),
49 character (*),
50 bit (1) aligned,
51 pointer,
52 fixed bin (35));
53
54 dcl menu_$retrieve entry (
55 character (*),
56 character (*),
57 character (*),
58 pointer,
59 pointer,
60 fixed bin (35));
61 dcl menu_$delete entry (
62 character (*),
63 character (*),
64 character (*),
65 fixed binary (35));
66
67 dcl menu_$list entry (
68 character (*),
69 character (*),
70 character (*),
71 pointer,
72 fixed bin,
73 pointer,
74 fixed bin (35));
75
76 dcl 1 menu_format aligned based (menu_format_ptr),
77 2 version fixed bin,
78 2 constraints,
79 3 max_width fixed bin,
80 3 max_height fixed bin,
81 2 n_columns fixed bin,
82 2 flags,
83 3 center_headers bit (1) unal,
84 3 center_trailers bit (1) unal,
85 3 pad bit (34) unal,
86 2 pad_char char (1);
87
88 dcl 1 menu_requirements aligned based (menu_requirements_ptr),
89 2 version fixed bin,
90 2 lines_needed fixed bin,
91 2 width_needed fixed bin,
92 2 n_options fixed bin;
93
94 dcl menu_format_ptr pointer;
95 dcl menu_requirements_ptr pointer;
96
97 dcl (menu_format_version_1, menu_requirements_version_1)
98 fixed bin internal static init (1) options (constant);
99
100 dcl MENU_OPTION_KEYS (35) char (1) unal internal static
101 options (constant) init
102 ("1", "2", "3", "4", "5", "6", "7", "8", "9",
103 "A", "B", "C", "D", "E", "F", "G", "H", "I",
104 "J", "K", "L", "M", "N", "O", "P", "Q", "R",
105 "S", "T", "U", "V", "W", "X", "Y", "Z");
106
107