1 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
4 <title>terminal_interface-curses-menus.ads</title>
5 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
6 <style type="text/css">
16 <hr><div style="text-align:center"><h1> File : terminal_interface-curses-menus.ads </h1></div><hr>
18 <span class="comment"><em>------------------------------------------------------------------------------</em></span>
19 <span class="comment"><em>-- --</em></span>
20 <span class="comment"><em>-- <strong>GNAT</strong> ncurses Binding --</em></span>
21 <span class="comment"><em>-- --</em></span>
22 <span class="comment"><em>-- Terminal_Interface.Curses.Menu --</em></span>
23 <span class="comment"><em>-- --</em></span>
24 <span class="comment"><em>-- S P E C --</em></span>
25 <span class="comment"><em>-- --</em></span>
26 <span class="comment"><em>------------------------------------------------------------------------------</em></span>
27 <span class="comment"><em>-- Copyright 2020 Thomas E. Dickey --</em></span>
28 <span class="comment"><em>-- Copyright 1998-2009,2014 Free Software Foundation, Inc. --</em></span>
29 <span class="comment"><em>-- --</em></span>
30 <span class="comment"><em>-- Permission is hereby granted, free of charge, to any person obtaining a --</em></span>
31 <span class="comment"><em>-- copy of this software and associated documentation files (the --</em></span>
32 <span class="comment"><em>-- "Software"), to deal in the Software without restriction, including --</em></span>
33 <span class="comment"><em>-- without limitation the rights to use, copy, modify, merge, publish, --</em></span>
34 <span class="comment"><em>-- distribute, distribute with modifications, sublicense, and/or sell --</em></span>
35 <span class="comment"><em>-- copies of the Software, and to permit persons to whom the Software is --</em></span>
36 <span class="comment"><em>-- furnished to do so, subject to the following conditions: --</em></span>
37 <span class="comment"><em>-- --</em></span>
38 <span class="comment"><em>-- The above copyright notice and this permission notice shall be included --</em></span>
39 <span class="comment"><em>-- in all copies or substantial portions of the Software. --</em></span>
40 <span class="comment"><em>-- --</em></span>
41 <span class="comment"><em>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</em></span>
42 <span class="comment"><em>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</em></span>
43 <span class="comment"><em>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</em></span>
44 <span class="comment"><em>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</em></span>
45 <span class="comment"><em>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</em></span>
46 <span class="comment"><em>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</em></span>
47 <span class="comment"><em>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</em></span>
48 <span class="comment"><em>-- --</em></span>
49 <span class="comment"><em>-- Except as contained in this notice, the name(s) of the above copyright --</em></span>
50 <span class="comment"><em>-- holders shall not be used in advertising or otherwise to promote the --</em></span>
51 <span class="comment"><em>-- sale, use or other dealings in this Software without prior written --</em></span>
52 <span class="comment"><em>-- authorization. --</em></span>
53 <span class="comment"><em>------------------------------------------------------------------------------</em></span>
54 <span class="comment"><em>-- Author: Juergen Pfeifer, 1996</em></span>
55 <span class="comment"><em>-- Version Control:</em></span>
56 <span class="comment"><em>-- @Revision: 1.32 @</em></span>
57 <span class="comment"><em>-- @Date: 2020/02/02 23:34:34 @</em></span>
58 <span class="comment"><em>-- Binding Version 01.00</em></span>
59 <span class="comment"><em>------------------------------------------------------------------------------</em></span>
61 <b>with</b> Ada.Characters.Latin_1;
63 <b>package</b> <a href="terminal_interface__ads.htm#ref_43_9">Terminal_Interface</a>.<a href="terminal_interface-curses__ads.htm#ref_48_28">Curses</a>.<span class="symbol"><a name="ref_46_35" href="terminal_interface-curses-menus__adb.htm#ref_50_40">Menus</a></span> <b>is</b>
64 <b>pragma</b> Preelaborate (<a href="terminal_interface__ads.htm#ref_43_9">Terminal_Interface</a>.<a href="terminal_interface-curses__ads.htm#ref_48_28">Curses</a>.<a href="terminal_interface-curses-menus__ads.htm#ref_46_35">Menus</a>);
65 <b>pragma</b> Linker_Options ("-lmenu" & <a href="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</a>.<a href="terminal_interface-curses_constants__ads.htm#ref_9_4">DFT_ARG_SUFFIX</a>);
67 Space : Character <b>renames</b> Ada.Characters.Latin_1.Space;
69 <b>type</b> <span class="symbol"><a name="ref_52_9">Item</a></span> <b>is</b> <b>private</b>;
70 <b>type</b> <span class="symbol"><a name="ref_53_9">Menu</a></span> <b>is</b> <b>private</b>;
72 <span class="comment"><em>---------------------------</em></span>
73 <span class="comment"><em>-- Interface constants --</em></span>
74 <span class="comment"><em>---------------------------</em></span>
75 <span class="symbol"><a name="ref_58_4">Null_Item</a></span> : <b>constant</b> <a href="terminal_interface-curses-menus__ads.htm#ref_52_9">Item</a>;
76 <span class="symbol"><a name="ref_59_4">Null_Menu</a></span> : <b>constant</b> <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
78 <b>subtype</b> <span class="symbol"><a name="ref_61_12">Menu_Request_Code</a></span> <b>is</b> <a href="terminal_interface-curses__ads.htm#ref_67_9">Key_Code</a>
79 <b>range</b> (<a href="terminal_interface-curses__ads.htm#ref_380_4">Key_Max</a> + 1) .. (<a href="terminal_interface-curses__ads.htm#ref_380_4">Key_Max</a> + 17);
81 <span class="comment"><em>-- The prefix M_ stands for "Menu Request"</em></span>
82 <span class="symbol"><a name="ref_65_4">M_Left_Item</a></span> : <b>constant</b> <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> := <a href="terminal_interface-curses__ads.htm#ref_380_4">Key_Max</a> + 1;
83 <span class="symbol"><a name="ref_66_4">M_Right_Item</a></span> : <b>constant</b> <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> := <a href="terminal_interface-curses__ads.htm#ref_380_4">Key_Max</a> + 2;
84 <span class="symbol"><a name="ref_67_4">M_Up_Item</a></span> : <b>constant</b> <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> := <a href="terminal_interface-curses__ads.htm#ref_380_4">Key_Max</a> + 3;
85 <span class="symbol"><a name="ref_68_4">M_Down_Item</a></span> : <b>constant</b> <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> := <a href="terminal_interface-curses__ads.htm#ref_380_4">Key_Max</a> + 4;
86 <span class="symbol"><a name="ref_69_4">M_ScrollUp_Line</a></span> : <b>constant</b> <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> := <a href="terminal_interface-curses__ads.htm#ref_380_4">Key_Max</a> + 5;
87 <span class="symbol"><a name="ref_70_4">M_ScrollDown_Line</a></span> : <b>constant</b> <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> := <a href="terminal_interface-curses__ads.htm#ref_380_4">Key_Max</a> + 6;
88 <span class="symbol"><a name="ref_71_4">M_ScrollDown_Page</a></span> : <b>constant</b> <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> := <a href="terminal_interface-curses__ads.htm#ref_380_4">Key_Max</a> + 7;
89 <span class="symbol"><a name="ref_72_4">M_ScrollUp_Page</a></span> : <b>constant</b> <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> := <a href="terminal_interface-curses__ads.htm#ref_380_4">Key_Max</a> + 8;
90 <span class="symbol"><a name="ref_73_4">M_First_Item</a></span> : <b>constant</b> <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> := <a href="terminal_interface-curses__ads.htm#ref_380_4">Key_Max</a> + 9;
91 <span class="symbol"><a name="ref_74_4">M_Last_Item</a></span> : <b>constant</b> <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> := <a href="terminal_interface-curses__ads.htm#ref_380_4">Key_Max</a> + 10;
92 <span class="symbol"><a name="ref_75_4">M_Next_Item</a></span> : <b>constant</b> <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> := <a href="terminal_interface-curses__ads.htm#ref_380_4">Key_Max</a> + 11;
93 <span class="symbol"><a name="ref_76_4">M_Previous_Item</a></span> : <b>constant</b> <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> := <a href="terminal_interface-curses__ads.htm#ref_380_4">Key_Max</a> + 12;
94 <span class="symbol"><a name="ref_77_4">M_Toggle_Item</a></span> : <b>constant</b> <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> := <a href="terminal_interface-curses__ads.htm#ref_380_4">Key_Max</a> + 13;
95 <span class="symbol"><a name="ref_78_4">M_Clear_Pattern</a></span> : <b>constant</b> <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> := <a href="terminal_interface-curses__ads.htm#ref_380_4">Key_Max</a> + 14;
96 <span class="symbol"><a name="ref_79_4">M_Back_Pattern</a></span> : <b>constant</b> <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> := <a href="terminal_interface-curses__ads.htm#ref_380_4">Key_Max</a> + 15;
97 <span class="symbol"><a name="ref_80_4">M_Next_Match</a></span> : <b>constant</b> <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> := <a href="terminal_interface-curses__ads.htm#ref_380_4">Key_Max</a> + 16;
98 <span class="symbol"><a name="ref_81_4">M_Previous_Match</a></span> : <b>constant</b> <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> := <a href="terminal_interface-curses__ads.htm#ref_380_4">Key_Max</a> + 17;
100 <span class="comment"><em>-- For those who like the old 'C' names for the request codes</em></span>
101 REQ_LEFT_ITEM : <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> <b>renames</b> <a href="terminal_interface-curses-menus__ads.htm#ref_65_4">M_Left_Item</a>;
102 REQ_RIGHT_ITEM : <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> <b>renames</b> <a href="terminal_interface-curses-menus__ads.htm#ref_66_4">M_Right_Item</a>;
103 REQ_UP_ITEM : <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> <b>renames</b> <a href="terminal_interface-curses-menus__ads.htm#ref_67_4">M_Up_Item</a>;
104 REQ_DOWN_ITEM : <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> <b>renames</b> <a href="terminal_interface-curses-menus__ads.htm#ref_68_4">M_Down_Item</a>;
105 REQ_SCR_ULINE : <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> <b>renames</b> <a href="terminal_interface-curses-menus__ads.htm#ref_69_4">M_ScrollUp_Line</a>;
106 REQ_SCR_DLINE : <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> <b>renames</b> <a href="terminal_interface-curses-menus__ads.htm#ref_70_4">M_ScrollDown_Line</a>;
107 REQ_SCR_DPAGE : <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> <b>renames</b> <a href="terminal_interface-curses-menus__ads.htm#ref_71_4">M_ScrollDown_Page</a>;
108 REQ_SCR_UPAGE : <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> <b>renames</b> <a href="terminal_interface-curses-menus__ads.htm#ref_72_4">M_ScrollUp_Page</a>;
109 REQ_FIRST_ITEM : <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> <b>renames</b> <a href="terminal_interface-curses-menus__ads.htm#ref_73_4">M_First_Item</a>;
110 REQ_LAST_ITEM : <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> <b>renames</b> <a href="terminal_interface-curses-menus__ads.htm#ref_74_4">M_Last_Item</a>;
111 REQ_NEXT_ITEM : <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> <b>renames</b> <a href="terminal_interface-curses-menus__ads.htm#ref_75_4">M_Next_Item</a>;
112 REQ_PREV_ITEM : <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> <b>renames</b> <a href="terminal_interface-curses-menus__ads.htm#ref_76_4">M_Previous_Item</a>;
113 REQ_TOGGLE_ITEM : <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> <b>renames</b> <a href="terminal_interface-curses-menus__ads.htm#ref_77_4">M_Toggle_Item</a>;
114 REQ_CLEAR_PATTERN : <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> <b>renames</b> <a href="terminal_interface-curses-menus__ads.htm#ref_78_4">M_Clear_Pattern</a>;
115 REQ_BACK_PATTERN : <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> <b>renames</b> <a href="terminal_interface-curses-menus__ads.htm#ref_79_4">M_Back_Pattern</a>;
116 REQ_NEXT_MATCH : <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> <b>renames</b> <a href="terminal_interface-curses-menus__ads.htm#ref_80_4">M_Next_Match</a>;
117 REQ_PREV_MATCH : <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a> <b>renames</b> <a href="terminal_interface-curses-menus__ads.htm#ref_81_4">M_Previous_Match</a>;
119 <b>procedure</b> <span class="symbol"><a name="ref_102_14" href="terminal_interface-curses-menus__adb.htm#ref_59_14">Request_Name</a></span> (<span class="symbol"><a name="ref_102_28" href="terminal_interface-curses-menus__adb.htm#ref_59_28">Key</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a>;
120 <span class="symbol"><a name="ref_103_28" href="terminal_interface-curses-menus__adb.htm#ref_60_28">Name</a></span> : <b>out</b> String);
122 <b>function</b> <span class="symbol"><a name="ref_105_14" href="terminal_interface-curses-menus__adb.htm#ref_68_13">Request_Name</a></span> (<span class="symbol"><a name="ref_105_28" href="terminal_interface-curses-menus__adb.htm#ref_68_27">Key</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_61_12">Menu_Request_Code</a>) <b>return</b> String;
123 <span class="comment"><em>-- Same as function</em></span>
125 <span class="comment"><em>------------------</em></span>
126 <span class="comment"><em>-- Exceptions --</em></span>
127 <span class="comment"><em>------------------</em></span>
129 <span class="symbol"><a name="ref_112_4">Menu_Exception</a></span> : <b>exception</b>;
130 <span class="comment"><em>--</em></span>
131 <span class="comment"><em>-- Menu options</em></span>
132 <span class="comment"><em>--</em></span>
133 <b>type</b> <span class="symbol"><a name="ref_116_9">Menu_Option_Set</a></span> <b>is</b>
135 <span class="symbol"><a name="ref_118_10">One_Valued</a></span> : Boolean;
136 <span class="symbol"><a name="ref_119_10">Show_Descriptions</a></span> : Boolean;
137 <span class="symbol"><a name="ref_120_10">Row_Major_Order</a></span> : Boolean;
138 <span class="symbol"><a name="ref_121_10">Ignore_Case</a></span> : Boolean;
139 <span class="symbol"><a name="ref_122_10">Show_Matches</a></span> : Boolean;
140 <span class="symbol"><a name="ref_123_10">Non_Cyclic</a></span> : Boolean;
141 <b>end</b> <b>record</b>;
142 <b>pragma</b> Convention (C_Pass_By_Copy, <a href="terminal_interface-curses-menus__ads.htm#ref_116_9">Menu_Option_Set</a>);
144 <b>for</b> <a href="terminal_interface-curses-menus__ads.htm#ref_116_9">Menu_Option_Set</a> <b>use</b>
146 <a href="terminal_interface-curses-menus__ads.htm#ref_118_10">One_Valued</a> <b>at</b> 0 <b>range</b> <a href="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</a>.<a href="terminal_interface-curses_constants__ads.htm#ref_257_4">O_ONEVALUE_First</a>
147 .. <a href="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</a>.<a href="terminal_interface-curses_constants__ads.htm#ref_258_4">O_ONEVALUE_Last</a>;
148 <a href="terminal_interface-curses-menus__ads.htm#ref_119_10">Show_Descriptions</a> <b>at</b> 0 <b>range</b> <a href="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</a>.<a href="terminal_interface-curses_constants__ads.htm#ref_259_4">O_SHOWDESC_First</a>
149 .. <a href="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</a>.<a href="terminal_interface-curses_constants__ads.htm#ref_260_4">O_SHOWDESC_Last</a>;
150 <a href="terminal_interface-curses-menus__ads.htm#ref_120_10">Row_Major_Order</a> <b>at</b> 0 <b>range</b> <a href="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</a>.<a href="terminal_interface-curses_constants__ads.htm#ref_261_4">O_ROWMAJOR_First</a>
151 .. <a href="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</a>.<a href="terminal_interface-curses_constants__ads.htm#ref_262_4">O_ROWMAJOR_Last</a>;
152 <a href="terminal_interface-curses-menus__ads.htm#ref_121_10">Ignore_Case</a> <b>at</b> 0 <b>range</b> <a href="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</a>.<a href="terminal_interface-curses_constants__ads.htm#ref_263_4">O_IGNORECASE_First</a>
153 .. <a href="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</a>.<a href="terminal_interface-curses_constants__ads.htm#ref_264_4">O_IGNORECASE_Last</a>;
154 <a href="terminal_interface-curses-menus__ads.htm#ref_122_10">Show_Matches</a> <b>at</b> 0 <b>range</b> <a href="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</a>.<a href="terminal_interface-curses_constants__ads.htm#ref_265_4">O_SHOWMATCH_First</a>
155 .. <a href="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</a>.<a href="terminal_interface-curses_constants__ads.htm#ref_266_4">O_SHOWMATCH_Last</a>;
156 <a href="terminal_interface-curses-menus__ads.htm#ref_123_10">Non_Cyclic</a> <b>at</b> 0 <b>range</b> <a href="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</a>.<a href="terminal_interface-curses_constants__ads.htm#ref_267_4">O_NONCYCLIC_First</a>
157 .. <a href="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</a>.<a href="terminal_interface-curses_constants__ads.htm#ref_268_4">O_NONCYCLIC_Last</a>;
158 <b>end</b> <b>record</b>;
159 <b>pragma</b> Warnings (Off);
160 <b>for</b> <a href="terminal_interface-curses-menus__ads.htm#ref_116_9">Menu_Option_Set</a>'Size <b>use</b> <a href="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</a>.<a href="terminal_interface-curses_constants__ads.htm#ref_269_4">Menu_Options_Size</a>;
161 <b>pragma</b> Warnings (On);
163 <b>function</b> <span class="symbol"><a name="ref_146_13" href="terminal_interface-curses-menus__adb.htm#ref_891_13">Default_Menu_Options</a></span> <b>return</b> <a href="terminal_interface-curses-menus__ads.htm#ref_116_9">Menu_Option_Set</a>;
164 <span class="comment"><em>-- Initial default options for a menu.</em></span>
165 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_146_13">Default_Menu_Options</a>);
166 <span class="comment"><em>--</em></span>
167 <span class="comment"><em>-- Item options</em></span>
168 <span class="comment"><em>--</em></span>
169 <b>type</b> <span class="symbol"><a name="ref_152_9">Item_Option_Set</a></span> <b>is</b>
171 <span class="symbol"><a name="ref_154_10">Selectable</a></span> : Boolean;
172 <b>end</b> <b>record</b>;
173 <b>pragma</b> Convention (C_Pass_By_Copy, <a href="terminal_interface-curses-menus__ads.htm#ref_152_9">Item_Option_Set</a>);
175 <b>for</b> <a href="terminal_interface-curses-menus__ads.htm#ref_152_9">Item_Option_Set</a> <b>use</b>
177 <a href="terminal_interface-curses-menus__ads.htm#ref_154_10">Selectable</a> <b>at</b> 0 <b>range</b> <a href="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</a>.<a href="terminal_interface-curses_constants__ads.htm#ref_273_4">O_SELECTABLE_First</a>
178 .. <a href="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</a>.<a href="terminal_interface-curses_constants__ads.htm#ref_274_4">O_SELECTABLE_Last</a>;
179 <b>end</b> <b>record</b>;
180 <b>pragma</b> Warnings (Off);
181 <b>for</b> <a href="terminal_interface-curses-menus__ads.htm#ref_152_9">Item_Option_Set</a>'Size <b>use</b> <a href="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</a>.<a href="terminal_interface-curses_constants__ads.htm#ref_275_4">Item_Options_Size</a>;
182 <b>pragma</b> Warnings (On);
184 <b>function</b> <span class="symbol"><a name="ref_167_13" href="terminal_interface-curses-menus__adb.htm#ref_897_13">Default_Item_Options</a></span> <b>return</b> <a href="terminal_interface-curses-menus__ads.htm#ref_152_9">Item_Option_Set</a>;
185 <span class="comment"><em>-- Initial default options for an item.</em></span>
186 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_167_13">Default_Item_Options</a>);
188 <span class="comment"><em>--</em></span>
189 <span class="comment"><em>-- Item Array</em></span>
190 <span class="comment"><em>--</em></span>
191 <b>type</b> Item_Array <b>is</b> <b>array</b> (Positive <b>range</b> <>) <b>of</b> <b>aliased</b> <a href="terminal_interface-curses-menus__ads.htm#ref_52_9">Item</a>;
192 <b>pragma</b> Convention (C, Item_Array);
194 <b>type</b> <span class="symbol"><a name="ref_177_9">Item_Array_Access</a></span> <b>is</b> <b>access</b> Item_Array;
196 <b>procedure</b> <span class="symbol"><a name="ref_179_14" href="terminal_interface-curses-menus__adb.htm#ref_874_14">Free</a></span> (<span class="symbol"><a name="ref_179_20" href="terminal_interface-curses-menus__adb.htm#ref_874_20">IA</a></span> : <b>in</b> <b>out</b> <a href="terminal_interface-curses-menus__ads.htm#ref_177_9">Item_Array_Access</a>;
197 <span class="symbol"><a name="ref_180_20" href="terminal_interface-curses-menus__adb.htm#ref_875_20">Free_Items</a></span> : Boolean := False);
198 <span class="comment"><em>-- Release the memory for an allocated item array</em></span>
199 <span class="comment"><em>-- If Free_Items is True, call Delete() for all the items in</em></span>
200 <span class="comment"><em>-- the array.</em></span>
202 <span class="comment"><em>-- |=====================================================================</em></span>
203 <span class="comment"><em>-- | Man page <A HREF="../man/mitem_new.3x.html">mitem_new.3x</A></em></span>
204 <span class="comment"><em>-- |=====================================================================</em></span>
206 <span class="comment"><em>-- <A NAME="AFU_1">|</A></em></span>
207 <b>function</b> <span class="symbol"><a name="ref_190_13" href="terminal_interface-curses-menus__adb.htm#ref_76_13">Create</a></span> (<span class="symbol"><a name="ref_190_21" href="terminal_interface-curses-menus__adb.htm#ref_76_21">Name</a></span> : String;
208 <span class="symbol"><a name="ref_191_21" href="terminal_interface-curses-menus__adb.htm#ref_77_21">Description</a></span> : String := "") <b>return</b> <a href="terminal_interface-curses-menus__ads.htm#ref_52_9">Item</a>;
209 <span class="comment"><em>-- AKA: <A HREF="../man/mitem_new.3x.html">new_item()</A></em></span>
210 <span class="comment"><em>-- Not inlined.</em></span>
212 <span class="comment"><em>-- <A NAME="AFU_2">|</A></em></span>
213 <b>function</b> New_Item (<span class="symbol"><a name="ref_196_23">Name</a></span> : String;
214 <span class="symbol"><a name="ref_197_23">Description</a></span> : String := "") <b>return</b> <a href="terminal_interface-curses-menus__ads.htm#ref_52_9">Item</a>
215 <b>renames</b> <a href="terminal_interface-curses-menus__ads.htm#ref_190_13">Create</a>;
216 <span class="comment"><em>-- AKA: <A HREF="../man/mitem_new.3x.html">new_item()</A></em></span>
218 <span class="comment"><em>-- <A NAME="AFU_3">|</A></em></span>
219 <b>procedure</b> <span class="symbol"><a name="ref_202_14" href="terminal_interface-curses-menus__adb.htm#ref_106_14">Delete</a></span> (<span class="symbol"><a name="ref_202_22" href="terminal_interface-curses-menus__adb.htm#ref_106_22">Itm</a></span> : <b>in</b> <b>out</b> <a href="terminal_interface-curses-menus__ads.htm#ref_52_9">Item</a>);
220 <span class="comment"><em>-- AKA: <A HREF="../man/mitem_new.3x.html">free_item()</A></em></span>
221 <span class="comment"><em>-- Resets Itm to Null_Item</em></span>
223 <span class="comment"><em>-- |=====================================================================</em></span>
224 <span class="comment"><em>-- | Man page <A HREF="../man/mitem_value.3x.html">mitem_value.3x</A></em></span>
225 <span class="comment"><em>-- |=====================================================================</em></span>
227 <span class="comment"><em>-- <A NAME="AFU_4">|</A></em></span>
228 <b>procedure</b> <span class="symbol"><a name="ref_211_14" href="terminal_interface-curses-menus__adb.htm#ref_130_14">Set_Value</a></span> (<span class="symbol"><a name="ref_211_25" href="terminal_interface-curses-menus__adb.htm#ref_130_25">Itm</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_52_9">Item</a>;
229 <span class="symbol"><a name="ref_212_25" href="terminal_interface-curses-menus__adb.htm#ref_131_25">Value</a></span> : Boolean := True);
230 <span class="comment"><em>-- AKA: <A HREF="../man/mitem_value.3x.html">set_item_value()</A></em></span>
231 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_211_14">Set_Value</a>);
233 <span class="comment"><em>-- <A NAME="AFU_5">|</A></em></span>
234 <b>function</b> <span class="symbol"><a name="ref_217_13" href="terminal_interface-curses-menus__adb.htm#ref_141_13">Value</a></span> (<span class="symbol"><a name="ref_217_20" href="terminal_interface-curses-menus__adb.htm#ref_141_20">Itm</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_52_9">Item</a>) <b>return</b> Boolean;
235 <span class="comment"><em>-- AKA: <A HREF="../man/mitem_value.3x.html">item_value()</A></em></span>
236 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_217_13">Value</a>);
238 <span class="comment"><em>-- |=====================================================================</em></span>
239 <span class="comment"><em>-- | Man page <A HREF="../man/mitem_visible.3x.html">mitem_visible.3x</A></em></span>
240 <span class="comment"><em>-- |=====================================================================</em></span>
242 <span class="comment"><em>-- <A NAME="AFU_6">|</A></em></span>
243 <b>function</b> <span class="symbol"><a name="ref_226_13" href="terminal_interface-curses-menus__adb.htm#ref_154_13">Visible</a></span> (<span class="symbol"><a name="ref_226_22" href="terminal_interface-curses-menus__adb.htm#ref_154_22">Itm</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_52_9">Item</a>) <b>return</b> Boolean;
244 <span class="comment"><em>-- AKA: <A HREF="../man/mitem_visible.3x.html">item_visible()</A></em></span>
245 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_226_13">Visible</a>);
247 <span class="comment"><em>-- |=====================================================================</em></span>
248 <span class="comment"><em>-- | Man page <A HREF="../man/mitem_opts.3x.html">mitem_opts.3x</A></em></span>
249 <span class="comment"><em>-- |=====================================================================</em></span>
251 <span class="comment"><em>-- <A NAME="AFU_7">|</A></em></span>
252 <b>procedure</b> <span class="symbol"><a name="ref_235_14" href="terminal_interface-curses-menus__adb.htm#ref_166_14">Set_Options</a></span> (<span class="symbol"><a name="ref_235_27" href="terminal_interface-curses-menus__adb.htm#ref_166_27">Itm</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_52_9">Item</a>;
253 <span class="symbol"><a name="ref_236_27" href="terminal_interface-curses-menus__adb.htm#ref_167_27">Options</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_152_9">Item_Option_Set</a>);
254 <span class="comment"><em>-- AKA: <A HREF="../man/mitem_opts.3x.html">set_item_opts()</A></em></span>
255 <span class="comment"><em>-- An overloaded Set_Options is defined later. Pragma Inline appears there</em></span>
257 <span class="comment"><em>-- <A NAME="AFU_8">|</A></em></span>
258 <b>procedure</b> <span class="symbol"><a name="ref_241_14" href="terminal_interface-curses-menus__adb.htm#ref_177_14">Switch_Options</a></span> (<span class="symbol"><a name="ref_241_30" href="terminal_interface-curses-menus__adb.htm#ref_177_30">Itm</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_52_9">Item</a>;
259 <span class="symbol"><a name="ref_242_30" href="terminal_interface-curses-menus__adb.htm#ref_178_30">Options</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_152_9">Item_Option_Set</a>;
260 <span class="symbol"><a name="ref_243_30" href="terminal_interface-curses-menus__adb.htm#ref_179_30">On</a></span> : Boolean := True);
261 <span class="comment"><em>-- AKA: <A HREF="../man/mitem_opts.3x.html">item_opts_on()</A></em></span>
262 <span class="comment"><em>-- AKA: item_opts_off()</em></span>
263 <span class="comment"><em>-- An overloaded Switch_Options is defined later.</em></span>
264 <span class="comment"><em>-- Pragma Inline appears there</em></span>
266 <span class="comment"><em>-- <A NAME="AFU_9">|</A></em></span>
267 <b>procedure</b> <span class="symbol"><a name="ref_250_14" href="terminal_interface-curses-menus__adb.htm#ref_196_14">Get_Options</a></span> (<span class="symbol"><a name="ref_250_27" href="terminal_interface-curses-menus__adb.htm#ref_196_27">Itm</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_52_9">Item</a>;
268 <span class="symbol"><a name="ref_251_27" href="terminal_interface-curses-menus__adb.htm#ref_197_27">Options</a></span> : <b>out</b> <a href="terminal_interface-curses-menus__ads.htm#ref_152_9">Item_Option_Set</a>);
269 <span class="comment"><em>-- AKA: <A HREF="../man/mitem_opts.3x.html">item_opts()</A></em></span>
271 <span class="comment"><em>-- <A NAME="AFU_10">|</A></em></span>
272 <b>function</b> <span class="symbol"><a name="ref_255_13" href="terminal_interface-curses-menus__adb.htm#ref_206_13">Get_Options</a></span> (<span class="symbol"><a name="ref_255_26" href="terminal_interface-curses-menus__adb.htm#ref_206_26">Itm</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_52_9">Item</a> := <a href="terminal_interface-curses-menus__ads.htm#ref_58_4">Null_Item</a>) <b>return</b> <a href="terminal_interface-curses-menus__ads.htm#ref_152_9">Item_Option_Set</a>;
273 <span class="comment"><em>-- AKA: <A HREF="../man/mitem_opts.3x.html">item_opts()</A></em></span>
274 <span class="comment"><em>-- An overloaded Get_Options is defined later. Pragma Inline appears there</em></span>
276 <span class="comment"><em>-- |=====================================================================</em></span>
277 <span class="comment"><em>-- | Man page <A HREF="../man/mitem_name.3x.html">mitem_name.3x</A></em></span>
278 <span class="comment"><em>-- |=====================================================================</em></span>
280 <span class="comment"><em>-- <A NAME="AFU_11">|</A></em></span>
281 <b>procedure</b> <span class="symbol"><a name="ref_264_14" href="terminal_interface-curses-menus__adb.htm#ref_214_14">Name</a></span> (<span class="symbol"><a name="ref_264_20" href="terminal_interface-curses-menus__adb.htm#ref_214_20">Itm</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_52_9">Item</a>;
282 <span class="symbol"><a name="ref_265_20" href="terminal_interface-curses-menus__adb.htm#ref_215_20">Name</a></span> : <b>out</b> String);
283 <span class="comment"><em>-- AKA: <A HREF="../man/mitem_name.3x.html">item_name()</A></em></span>
284 <b>function</b> <span class="symbol"><a name="ref_267_14" href="terminal_interface-curses-menus__adb.htm#ref_223_13">Name</a></span> (<span class="symbol"><a name="ref_267_20" href="terminal_interface-curses-menus__adb.htm#ref_223_19">Itm</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_52_9">Item</a>) <b>return</b> String;
285 <span class="comment"><em>-- AKA: <A HREF="../man/mitem_name.3x.html">item_name()</A></em></span>
286 <span class="comment"><em>-- Implemented as function</em></span>
287 <b>pragma</b> Inline (Name);
289 <span class="comment"><em>-- <A NAME="AFU_12">|</A></em></span>
290 <b>procedure</b> <span class="symbol"><a name="ref_273_14" href="terminal_interface-curses-menus__adb.htm#ref_231_14">Description</a></span> (<span class="symbol"><a name="ref_273_27" href="terminal_interface-curses-menus__adb.htm#ref_231_27">Itm</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_52_9">Item</a>;
291 <span class="symbol"><a name="ref_274_27" href="terminal_interface-curses-menus__adb.htm#ref_232_27">Description</a></span> : <b>out</b> String);
292 <span class="comment"><em>-- AKA: <A HREF="../man/mitem_name.3x.html">item_description();</A></em></span>
294 <b>function</b> <span class="symbol"><a name="ref_277_14" href="terminal_interface-curses-menus__adb.htm#ref_240_13">Description</a></span> (<span class="symbol"><a name="ref_277_27" href="terminal_interface-curses-menus__adb.htm#ref_240_26">Itm</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_52_9">Item</a>) <b>return</b> String;
295 <span class="comment"><em>-- AKA: <A HREF="../man/mitem_name.3x.html">item_description();</A></em></span>
296 <span class="comment"><em>-- Implemented as function</em></span>
297 <b>pragma</b> Inline (Description);
299 <span class="comment"><em>-- |=====================================================================</em></span>
300 <span class="comment"><em>-- | Man page <A HREF="../man/mitem_current.3x.html">mitem_current.3x</A></em></span>
301 <span class="comment"><em>-- |=====================================================================</em></span>
303 <span class="comment"><em>-- <A NAME="AFU_13">|</A></em></span>
304 <b>procedure</b> <span class="symbol"><a name="ref_287_14" href="terminal_interface-curses-menus__adb.htm#ref_248_14">Set_Current</a></span> (<span class="symbol"><a name="ref_287_27" href="terminal_interface-curses-menus__adb.htm#ref_248_27">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
305 <span class="symbol"><a name="ref_288_27" href="terminal_interface-curses-menus__adb.htm#ref_249_27">Itm</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_52_9">Item</a>);
306 <span class="comment"><em>-- AKA: <A HREF="../man/mitem_current.3x.html">set_current_item()</A></em></span>
307 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_287_14">Set_Current</a>);
309 <span class="comment"><em>-- <A NAME="AFU_14">|</A></em></span>
310 <b>function</b> <span class="symbol"><a name="ref_293_13" href="terminal_interface-curses-menus__adb.htm#ref_259_13">Current</a></span> (<span class="symbol"><a name="ref_293_22" href="terminal_interface-curses-menus__adb.htm#ref_259_22">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>) <b>return</b> <a href="terminal_interface-curses-menus__ads.htm#ref_52_9">Item</a>;
311 <span class="comment"><em>-- AKA: <A HREF="../man/mitem_current.3x.html">current_item()</A></em></span>
312 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_293_13">Current</a>);
314 <span class="comment"><em>-- <A NAME="AFU_15">|</A></em></span>
315 <b>procedure</b> <span class="symbol"><a name="ref_298_14" href="terminal_interface-curses-menus__adb.htm#ref_272_14">Set_Top_Row</a></span> (<span class="symbol"><a name="ref_298_27" href="terminal_interface-curses-menus__adb.htm#ref_272_27">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
316 <span class="symbol"><a name="ref_299_27" href="terminal_interface-curses-menus__adb.htm#ref_273_27">Line</a></span> : <a href="terminal_interface-curses__ads.htm#ref_59_9">Line_Position</a>);
317 <span class="comment"><em>-- AKA: <A HREF="../man/mitem_current.3x.html">set_top_row()</A></em></span>
318 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_298_14">Set_Top_Row</a>);
320 <span class="comment"><em>-- <A NAME="AFU_16">|</A></em></span>
321 <b>function</b> <span class="symbol"><a name="ref_304_13" href="terminal_interface-curses-menus__adb.htm#ref_283_13">Top_Row</a></span> (<span class="symbol"><a name="ref_304_22" href="terminal_interface-curses-menus__adb.htm#ref_283_22">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>) <b>return</b> <a href="terminal_interface-curses__ads.htm#ref_59_9">Line_Position</a>;
322 <span class="comment"><em>-- AKA: <A HREF="../man/mitem_current.3x.html">top_row()</A></em></span>
323 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_304_13">Top_Row</a>);
325 <span class="comment"><em>-- <A NAME="AFU_17">|</A></em></span>
326 <b>function</b> <span class="symbol"><a name="ref_309_13" href="terminal_interface-curses-menus__adb.htm#ref_296_13">Get_Index</a></span> (<span class="symbol"><a name="ref_309_24" href="terminal_interface-curses-menus__adb.htm#ref_296_24">Itm</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_52_9">Item</a>) <b>return</b> Positive;
327 <span class="comment"><em>-- AKA: <A HREF="../man/mitem_current.3x.html">item_index()</A></em></span>
328 <span class="comment"><em>-- Please note that in this binding we start the numbering of items</em></span>
329 <span class="comment"><em>-- with 1. So this is number is one more than you get from the low</em></span>
330 <span class="comment"><em>-- level call.</em></span>
331 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_309_13">Get_Index</a>);
333 <span class="comment"><em>-- |=====================================================================</em></span>
334 <span class="comment"><em>-- | Man page <A HREF="../man/menu_post.3x.html">menu_post.3x</A></em></span>
335 <span class="comment"><em>-- |=====================================================================</em></span>
337 <span class="comment"><em>-- <A NAME="AFU_18">|</A></em></span>
338 <b>procedure</b> <span class="symbol"><a name="ref_321_14" href="terminal_interface-curses-menus__adb.htm#ref_309_14">Post</a></span> (<span class="symbol"><a name="ref_321_20" href="terminal_interface-curses-menus__adb.htm#ref_309_20">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
339 <span class="symbol"><a name="ref_322_20" href="terminal_interface-curses-menus__adb.htm#ref_310_20">Post</a></span> : Boolean := True);
340 <span class="comment"><em>-- AKA: <A HREF="../man/menu_post.3x.html">post_menu()</A></em></span>
341 <span class="comment"><em>-- AKA: unpost_menu()</em></span>
342 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_321_14">Post</a>);
344 <span class="comment"><em>-- |=====================================================================</em></span>
345 <span class="comment"><em>-- | Man page <A HREF="../man/menu_opts.3x.html">menu_opts.3x</A></em></span>
346 <span class="comment"><em>-- |=====================================================================</em></span>
348 <span class="comment"><em>-- <A NAME="AFU_19">|</A></em></span>
349 <b>procedure</b> <span class="symbol"><a name="ref_332_14" href="terminal_interface-curses-menus__adb.htm#ref_325_14">Set_Options</a></span> (<span class="symbol"><a name="ref_332_27" href="terminal_interface-curses-menus__adb.htm#ref_325_27">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
350 <span class="symbol"><a name="ref_333_27" href="terminal_interface-curses-menus__adb.htm#ref_326_27">Options</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_116_9">Menu_Option_Set</a>);
351 <span class="comment"><em>-- AKA: <A HREF="../man/menu_opts.3x.html">set_menu_opts()</A></em></span>
352 <b>pragma</b> Inline (Set_Options);
354 <span class="comment"><em>-- <A NAME="AFU_20">|</A></em></span>
355 <b>procedure</b> <span class="symbol"><a name="ref_338_14" href="terminal_interface-curses-menus__adb.htm#ref_336_14">Switch_Options</a></span> (<span class="symbol"><a name="ref_338_30" href="terminal_interface-curses-menus__adb.htm#ref_336_30">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
356 <span class="symbol"><a name="ref_339_30" href="terminal_interface-curses-menus__adb.htm#ref_337_30">Options</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_116_9">Menu_Option_Set</a>;
357 <span class="symbol"><a name="ref_340_30" href="terminal_interface-curses-menus__adb.htm#ref_338_30">On</a></span> : Boolean := True);
358 <span class="comment"><em>-- AKA: <A HREF="../man/menu_opts.3x.html">menu_opts_on()</A></em></span>
359 <span class="comment"><em>-- AKA: menu_opts_off()</em></span>
360 <b>pragma</b> Inline (Switch_Options);
362 <span class="comment"><em>-- <A NAME="AFU_21">|</A></em></span>
363 <b>procedure</b> <span class="symbol"><a name="ref_346_14" href="terminal_interface-curses-menus__adb.htm#ref_355_14">Get_Options</a></span> (<span class="symbol"><a name="ref_346_27" href="terminal_interface-curses-menus__adb.htm#ref_355_27">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
364 <span class="symbol"><a name="ref_347_27" href="terminal_interface-curses-menus__adb.htm#ref_356_27">Options</a></span> : <b>out</b> <a href="terminal_interface-curses-menus__ads.htm#ref_116_9">Menu_Option_Set</a>);
365 <span class="comment"><em>-- AKA: <A HREF="../man/menu_opts.3x.html">menu_opts()</A></em></span>
367 <span class="comment"><em>-- <A NAME="AFU_22">|</A></em></span>
368 <b>function</b> <span class="symbol"><a name="ref_351_13" href="terminal_interface-curses-menus__adb.htm#ref_365_13">Get_Options</a></span> (<span class="symbol"><a name="ref_351_26" href="terminal_interface-curses-menus__adb.htm#ref_365_26">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a> := <a href="terminal_interface-curses-menus__ads.htm#ref_59_4">Null_Menu</a>) <b>return</b> <a href="terminal_interface-curses-menus__ads.htm#ref_116_9">Menu_Option_Set</a>;
369 <span class="comment"><em>-- AKA: <A HREF="../man/menu_opts.3x.html">menu_opts()</A></em></span>
370 <b>pragma</b> Inline (Get_Options);
372 <span class="comment"><em>-- |=====================================================================</em></span>
373 <span class="comment"><em>-- | Man page <A HREF="../man/menu_win.3x.html">menu_win.3x</A></em></span>
374 <span class="comment"><em>-- |=====================================================================</em></span>
376 <span class="comment"><em>-- <A NAME="AFU_23">|</A></em></span>
377 <b>procedure</b> <span class="symbol"><a name="ref_360_14" href="terminal_interface-curses-menus__adb.htm#ref_373_14">Set_Window</a></span> (<span class="symbol"><a name="ref_360_26" href="terminal_interface-curses-menus__adb.htm#ref_373_26">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
378 <span class="symbol"><a name="ref_361_26" href="terminal_interface-curses-menus__adb.htm#ref_374_26">Win</a></span> : <a href="terminal_interface-curses__ads.htm#ref_56_9">Window</a>);
379 <span class="comment"><em>-- AKA: <A HREF="../man/menu_win.3x.html">set_menu_win()</A></em></span>
380 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_360_14">Set_Window</a>);
382 <span class="comment"><em>-- <A NAME="AFU_24">|</A></em></span>
383 <b>function</b> <span class="symbol"><a name="ref_366_13" href="terminal_interface-curses-menus__adb.htm#ref_384_13">Get_Window</a></span> (<span class="symbol"><a name="ref_366_25" href="terminal_interface-curses-menus__adb.htm#ref_384_25">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>) <b>return</b> <a href="terminal_interface-curses__ads.htm#ref_56_9">Window</a>;
384 <span class="comment"><em>-- AKA: <A HREF="../man/menu_win.3x.html">menu_win()</A></em></span>
385 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_366_13">Get_Window</a>);
387 <span class="comment"><em>-- <A NAME="AFU_25">|</A></em></span>
388 <b>procedure</b> <span class="symbol"><a name="ref_371_14" href="terminal_interface-curses-menus__adb.htm#ref_394_14">Set_Sub_Window</a></span> (<span class="symbol"><a name="ref_371_30" href="terminal_interface-curses-menus__adb.htm#ref_394_30">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
389 <span class="symbol"><a name="ref_372_30" href="terminal_interface-curses-menus__adb.htm#ref_395_30">Win</a></span> : <a href="terminal_interface-curses__ads.htm#ref_56_9">Window</a>);
390 <span class="comment"><em>-- AKA: <A HREF="../man/menu_win.3x.html">set_menu_sub()</A></em></span>
391 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_371_14">Set_Sub_Window</a>);
393 <span class="comment"><em>-- <A NAME="AFU_26">|</A></em></span>
394 <b>function</b> <span class="symbol"><a name="ref_377_13" href="terminal_interface-curses-menus__adb.htm#ref_405_13">Get_Sub_Window</a></span> (<span class="symbol"><a name="ref_377_29" href="terminal_interface-curses-menus__adb.htm#ref_405_29">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>) <b>return</b> <a href="terminal_interface-curses__ads.htm#ref_56_9">Window</a>;
395 <span class="comment"><em>-- AKA: <A HREF="../man/menu_win.3x.html">menu_sub()</A></em></span>
396 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_377_13">Get_Sub_Window</a>);
398 <span class="comment"><em>-- <A NAME="AFU_27">|</A></em></span>
399 <b>procedure</b> <span class="symbol"><a name="ref_382_14" href="terminal_interface-curses-menus__adb.htm#ref_415_14">Scale</a></span> (<span class="symbol"><a name="ref_382_21" href="terminal_interface-curses-menus__adb.htm#ref_415_21">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
400 <span class="symbol"><a name="ref_383_21" href="terminal_interface-curses-menus__adb.htm#ref_416_21">Lines</a></span> : <b>out</b> <a href="terminal_interface-curses__ads.htm#ref_62_12">Line_Count</a>;
401 <span class="symbol"><a name="ref_384_21" href="terminal_interface-curses-menus__adb.htm#ref_417_21">Columns</a></span> : <b>out</b> <a href="terminal_interface-curses__ads.htm#ref_64_12">Column_Count</a>);
402 <span class="comment"><em>-- AKA: <A HREF="../man/menu_win.3x.html">scale_menu()</A></em></span>
403 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_382_14">Scale</a>);
405 <span class="comment"><em>-- |=====================================================================</em></span>
406 <span class="comment"><em>-- | Man page <A HREF="../man/menu_cursor.3x.html">menu_cursor.3x</A></em></span>
407 <span class="comment"><em>-- |=====================================================================</em></span>
409 <span class="comment"><em>-- <A NAME="AFU_28">|</A></em></span>
410 <b>procedure</b> <span class="symbol"><a name="ref_393_14" href="terminal_interface-curses-menus__adb.htm#ref_431_14">Position_Cursor</a></span> (<span class="symbol"><a name="ref_393_31" href="terminal_interface-curses-menus__adb.htm#ref_431_31">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>);
411 <span class="comment"><em>-- AKA: <A HREF="../man/menu_cursor.3x.html">pos_menu_cursor()</A></em></span>
412 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_393_14">Position_Cursor</a>);
414 <span class="comment"><em>-- |=====================================================================</em></span>
415 <span class="comment"><em>-- | Man page <A HREF="../man/menu_mark.3x.html">menu_mark.3x</A></em></span>
416 <span class="comment"><em>-- |=====================================================================</em></span>
418 <span class="comment"><em>-- <A NAME="AFU_29">|</A></em></span>
419 <b>procedure</b> <span class="symbol"><a name="ref_402_14" href="terminal_interface-curses-menus__adb.htm#ref_441_14">Set_Mark</a></span> (<span class="symbol"><a name="ref_402_24" href="terminal_interface-curses-menus__adb.htm#ref_441_24">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
420 <span class="symbol"><a name="ref_403_24" href="terminal_interface-curses-menus__adb.htm#ref_442_24">Mark</a></span> : String);
421 <span class="comment"><em>-- AKA: <A HREF="../man/menu_mark.3x.html">set_menu_mark()</A></em></span>
422 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_402_14">Set_Mark</a>);
424 <span class="comment"><em>-- <A NAME="AFU_30">|</A></em></span>
425 <b>procedure</b> <span class="symbol"><a name="ref_408_14" href="terminal_interface-curses-menus__adb.htm#ref_456_14">Mark</a></span> (<span class="symbol"><a name="ref_408_20" href="terminal_interface-curses-menus__adb.htm#ref_456_20">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
426 <span class="symbol"><a name="ref_409_20" href="terminal_interface-curses-menus__adb.htm#ref_457_20">Mark</a></span> : <b>out</b> String);
427 <span class="comment"><em>-- AKA: <A HREF="../man/menu_mark.3x.html">menu_mark()</A></em></span>
429 <b>function</b> <span class="symbol"><a name="ref_412_14" href="terminal_interface-curses-menus__adb.htm#ref_465_13">Mark</a></span> (<span class="symbol"><a name="ref_412_20" href="terminal_interface-curses-menus__adb.htm#ref_465_19">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>) <b>return</b> String;
430 <span class="comment"><em>-- AKA: <A HREF="../man/menu_mark.3x.html">menu_mark()</A></em></span>
431 <span class="comment"><em>-- Implemented as function</em></span>
432 <b>pragma</b> Inline (Mark);
434 <span class="comment"><em>-- |=====================================================================</em></span>
435 <span class="comment"><em>-- | Man page <A HREF="../man/menu_attributes.3x.html">menu_attributes.3x</A></em></span>
436 <span class="comment"><em>-- |=====================================================================</em></span>
438 <span class="comment"><em>-- <A NAME="AFU_31">|</A></em></span>
439 <b>procedure</b> <span class="symbol"><a name="ref_422_14" href="terminal_interface-curses-menus__adb.htm#ref_474_14">Set_Foreground</a></span>
440 (<span class="symbol"><a name="ref_423_7" href="terminal_interface-curses-menus__adb.htm#ref_475_7">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
441 <span class="symbol"><a name="ref_424_7" href="terminal_interface-curses-menus__adb.htm#ref_476_7">Fore</a></span> : <a href="terminal_interface-curses__ads.htm#ref_418_9">Character_Attribute_Set</a> := <a href="terminal_interface-curses__ads.htm#ref_486_4">Normal_Video</a>;
442 <span class="symbol"><a name="ref_425_7" href="terminal_interface-curses-menus__adb.htm#ref_477_7">Color</a></span> : <a href="terminal_interface-curses__ads.htm#ref_410_9">Color_Pair</a> := <a href="terminal_interface-curses__ads.htm#ref_410_9">Color_Pair</a>'First);
443 <span class="comment"><em>-- AKA: <A HREF="../man/menu_attributes.3x.html">set_menu_fore()</A></em></span>
444 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_422_14">Set_Foreground</a>);
446 <span class="comment"><em>-- <A NAME="AFU_32">|</A></em></span>
447 <b>procedure</b> <span class="symbol"><a name="ref_430_14" href="terminal_interface-curses-menus__adb.htm#ref_490_14">Foreground</a></span> (<span class="symbol"><a name="ref_430_26" href="terminal_interface-curses-menus__adb.htm#ref_490_26">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
448 <span class="symbol"><a name="ref_431_26" href="terminal_interface-curses-menus__adb.htm#ref_491_26">Fore</a></span> : <b>out</b> <a href="terminal_interface-curses__ads.htm#ref_418_9">Character_Attribute_Set</a>);
449 <span class="comment"><em>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_fore()</A></em></span>
451 <span class="comment"><em>-- <A NAME="AFU_33">|</A></em></span>
452 <b>procedure</b> <span class="symbol"><a name="ref_435_14" href="terminal_interface-curses-menus__adb.htm#ref_499_14">Foreground</a></span> (<span class="symbol"><a name="ref_435_26" href="terminal_interface-curses-menus__adb.htm#ref_499_26">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
453 <span class="symbol"><a name="ref_436_26" href="terminal_interface-curses-menus__adb.htm#ref_500_26">Fore</a></span> : <b>out</b> <a href="terminal_interface-curses__ads.htm#ref_418_9">Character_Attribute_Set</a>;
454 <span class="symbol"><a name="ref_437_26" href="terminal_interface-curses-menus__adb.htm#ref_501_26">Color</a></span> : <b>out</b> <a href="terminal_interface-curses__ads.htm#ref_410_9">Color_Pair</a>);
455 <span class="comment"><em>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_fore()</A></em></span>
456 <b>pragma</b> Inline (Foreground);
458 <span class="comment"><em>-- <A NAME="AFU_34">|</A></em></span>
459 <b>procedure</b> <span class="symbol"><a name="ref_442_14" href="terminal_interface-curses-menus__adb.htm#ref_510_14">Set_Background</a></span>
460 (<span class="symbol"><a name="ref_443_7" href="terminal_interface-curses-menus__adb.htm#ref_511_7">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
461 <span class="symbol"><a name="ref_444_7" href="terminal_interface-curses-menus__adb.htm#ref_512_7">Back</a></span> : <a href="terminal_interface-curses__ads.htm#ref_418_9">Character_Attribute_Set</a> := <a href="terminal_interface-curses__ads.htm#ref_486_4">Normal_Video</a>;
462 <span class="symbol"><a name="ref_445_7" href="terminal_interface-curses-menus__adb.htm#ref_513_7">Color</a></span> : <a href="terminal_interface-curses__ads.htm#ref_410_9">Color_Pair</a> := <a href="terminal_interface-curses__ads.htm#ref_410_9">Color_Pair</a>'First);
463 <span class="comment"><em>-- AKA: <A HREF="../man/menu_attributes.3x.html">set_menu_back()</A></em></span>
464 <b>pragma</b> Inline (Set_Background);
466 <span class="comment"><em>-- <A NAME="AFU_35">|</A></em></span>
467 <b>procedure</b> <span class="symbol"><a name="ref_450_14" href="terminal_interface-curses-menus__adb.htm#ref_526_14">Background</a></span> (<span class="symbol"><a name="ref_450_26" href="terminal_interface-curses-menus__adb.htm#ref_526_26">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
468 <span class="symbol"><a name="ref_451_26" href="terminal_interface-curses-menus__adb.htm#ref_527_26">Back</a></span> : <b>out</b> <a href="terminal_interface-curses__ads.htm#ref_418_9">Character_Attribute_Set</a>);
469 <span class="comment"><em>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_back()</A></em></span>
470 <span class="comment"><em>-- <A NAME="AFU_36">|</A></em></span>
472 <b>procedure</b> <span class="symbol"><a name="ref_455_14" href="terminal_interface-curses-menus__adb.htm#ref_535_14">Background</a></span> (<span class="symbol"><a name="ref_455_26" href="terminal_interface-curses-menus__adb.htm#ref_535_26">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
473 <span class="symbol"><a name="ref_456_26" href="terminal_interface-curses-menus__adb.htm#ref_536_26">Back</a></span> : <b>out</b> <a href="terminal_interface-curses__ads.htm#ref_418_9">Character_Attribute_Set</a>;
474 <span class="symbol"><a name="ref_457_26" href="terminal_interface-curses-menus__adb.htm#ref_537_26">Color</a></span> : <b>out</b> <a href="terminal_interface-curses__ads.htm#ref_410_9">Color_Pair</a>);
475 <span class="comment"><em>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_back()</A></em></span>
476 <b>pragma</b> Inline (Background);
478 <span class="comment"><em>-- <A NAME="AFU_37">|</A></em></span>
479 <b>procedure</b> <span class="symbol"><a name="ref_462_14" href="terminal_interface-curses-menus__adb.htm#ref_546_14">Set_Grey</a></span>
480 (<span class="symbol"><a name="ref_463_7" href="terminal_interface-curses-menus__adb.htm#ref_546_24">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
481 <span class="symbol"><a name="ref_464_7" href="terminal_interface-curses-menus__adb.htm#ref_547_24">Grey</a></span> : <a href="terminal_interface-curses__ads.htm#ref_418_9">Character_Attribute_Set</a> := <a href="terminal_interface-curses__ads.htm#ref_486_4">Normal_Video</a>;
482 <span class="symbol"><a name="ref_465_7" href="terminal_interface-curses-menus__adb.htm#ref_548_24">Color</a></span> : <a href="terminal_interface-curses__ads.htm#ref_410_9">Color_Pair</a> := <a href="terminal_interface-curses__ads.htm#ref_410_9">Color_Pair</a>'First);
483 <span class="comment"><em>-- AKA: <A HREF="../man/menu_attributes.3x.html">set_menu_grey()</A></em></span>
484 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_462_14">Set_Grey</a>);
486 <span class="comment"><em>-- <A NAME="AFU_38">|</A></em></span>
487 <b>procedure</b> <span class="symbol"><a name="ref_470_14" href="terminal_interface-curses-menus__adb.htm#ref_562_14">Grey</a></span> (<span class="symbol"><a name="ref_470_20" href="terminal_interface-curses-menus__adb.htm#ref_562_20">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
488 <span class="symbol"><a name="ref_471_20" href="terminal_interface-curses-menus__adb.htm#ref_563_20">Grey</a></span> : <b>out</b> <a href="terminal_interface-curses__ads.htm#ref_418_9">Character_Attribute_Set</a>);
489 <span class="comment"><em>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_grey()</A></em></span>
491 <span class="comment"><em>-- <A NAME="AFU_39">|</A></em></span>
492 <b>procedure</b> <span class="symbol"><a name="ref_475_14" href="terminal_interface-curses-menus__adb.htm#ref_571_14">Grey</a></span>
493 (<span class="symbol"><a name="ref_476_7" href="terminal_interface-curses-menus__adb.htm#ref_571_20">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
494 <span class="symbol"><a name="ref_477_7" href="terminal_interface-curses-menus__adb.htm#ref_572_20">Grey</a></span> : <b>out</b> <a href="terminal_interface-curses__ads.htm#ref_418_9">Character_Attribute_Set</a>;
495 <span class="symbol"><a name="ref_478_7" href="terminal_interface-curses-menus__adb.htm#ref_573_20">Color</a></span> : <b>out</b> <a href="terminal_interface-curses__ads.htm#ref_410_9">Color_Pair</a>);
496 <span class="comment"><em>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_grey()</A></em></span>
497 <b>pragma</b> Inline (Grey);
499 <span class="comment"><em>-- <A NAME="AFU_40">|</A></em></span>
500 <b>procedure</b> <span class="symbol"><a name="ref_483_14" href="terminal_interface-curses-menus__adb.htm#ref_582_14">Set_Pad_Character</a></span> (<span class="symbol"><a name="ref_483_33" href="terminal_interface-curses-menus__adb.htm#ref_582_33">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
501 <span class="symbol"><a name="ref_484_33" href="terminal_interface-curses-menus__adb.htm#ref_583_33">Pad</a></span> : Character := Space);
502 <span class="comment"><em>-- AKA: <A HREF="../man/menu_attributes.3x.html">set_menu_pad()</A></em></span>
503 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_483_14">Set_Pad_Character</a>);
505 <span class="comment"><em>-- <A NAME="AFU_41">|</A></em></span>
506 <b>procedure</b> <span class="symbol"><a name="ref_489_14" href="terminal_interface-curses-menus__adb.htm#ref_593_14">Pad_Character</a></span> (<span class="symbol"><a name="ref_489_29" href="terminal_interface-curses-menus__adb.htm#ref_593_29">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
507 <span class="symbol"><a name="ref_490_29" href="terminal_interface-curses-menus__adb.htm#ref_594_29">Pad</a></span> : <b>out</b> Character);
508 <span class="comment"><em>-- AKA: <A HREF="../man/menu_attributes.3x.html">menu_pad()</A></em></span>
509 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_489_14">Pad_Character</a>);
511 <span class="comment"><em>-- |=====================================================================</em></span>
512 <span class="comment"><em>-- | Man page <A HREF="../man/menu_spacing.3x.html">menu_spacing.3x</A></em></span>
513 <span class="comment"><em>-- |=====================================================================</em></span>
515 <span class="comment"><em>-- <A NAME="AFU_42">|</A></em></span>
516 <b>procedure</b> <span class="symbol"><a name="ref_499_14" href="terminal_interface-curses-menus__adb.htm#ref_602_14">Set_Spacing</a></span> (<span class="symbol"><a name="ref_499_27" href="terminal_interface-curses-menus__adb.htm#ref_602_27">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
517 <span class="symbol"><a name="ref_500_27" href="terminal_interface-curses-menus__adb.htm#ref_603_27">Descr</a></span> : <a href="terminal_interface-curses__ads.htm#ref_60_9">Column_Position</a> := 0;
518 <span class="symbol"><a name="ref_501_27" href="terminal_interface-curses-menus__adb.htm#ref_604_27">Row</a></span> : <a href="terminal_interface-curses__ads.htm#ref_59_9">Line_Position</a> := 0;
519 <span class="symbol"><a name="ref_502_27" href="terminal_interface-curses-menus__adb.htm#ref_605_27">Col</a></span> : <a href="terminal_interface-curses__ads.htm#ref_60_9">Column_Position</a> := 0);
520 <span class="comment"><em>-- AKA: <A HREF="../man/menu_spacing.3x.html">set_menu_spacing()</A></em></span>
521 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_499_14">Set_Spacing</a>);
523 <span class="comment"><em>-- <A NAME="AFU_43">|</A></em></span>
524 <b>procedure</b> <span class="symbol"><a name="ref_507_14" href="terminal_interface-curses-menus__adb.htm#ref_618_14">Spacing</a></span> (<span class="symbol"><a name="ref_507_23" href="terminal_interface-curses-menus__adb.htm#ref_618_23">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
525 <span class="symbol"><a name="ref_508_23" href="terminal_interface-curses-menus__adb.htm#ref_619_23">Descr</a></span> : <b>out</b> <a href="terminal_interface-curses__ads.htm#ref_60_9">Column_Position</a>;
526 <span class="symbol"><a name="ref_509_23" href="terminal_interface-curses-menus__adb.htm#ref_620_23">Row</a></span> : <b>out</b> <a href="terminal_interface-curses__ads.htm#ref_59_9">Line_Position</a>;
527 <span class="symbol"><a name="ref_510_23" href="terminal_interface-curses-menus__adb.htm#ref_621_23">Col</a></span> : <b>out</b> <a href="terminal_interface-curses__ads.htm#ref_60_9">Column_Position</a>);
528 <span class="comment"><em>-- AKA: <A HREF="../man/menu_spacing.3x.html">menu_spacing()</A></em></span>
529 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_507_14">Spacing</a>);
531 <span class="comment"><em>-- |=====================================================================</em></span>
532 <span class="comment"><em>-- | Man page <A HREF="../man/menu_pattern.3x.html">menu_pattern.3x</A></em></span>
533 <span class="comment"><em>-- |=====================================================================</em></span>
535 <span class="comment"><em>-- <A NAME="AFU_44">|</A></em></span>
536 <b>function</b> <span class="symbol"><a name="ref_519_13" href="terminal_interface-curses-menus__adb.htm#ref_639_13">Set_Pattern</a></span> (<span class="symbol"><a name="ref_519_26" href="terminal_interface-curses-menus__adb.htm#ref_639_26">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
537 <span class="symbol"><a name="ref_520_26" href="terminal_interface-curses-menus__adb.htm#ref_640_26">Text</a></span> : String) <b>return</b> Boolean;
538 <span class="comment"><em>-- AKA: <A HREF="../man/menu_pattern.3x.html">set_menu_pattern()</A></em></span>
539 <span class="comment"><em>-- Return TRUE if the pattern matches, FALSE otherwise</em></span>
540 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_519_13">Set_Pattern</a>);
542 <span class="comment"><em>-- <A NAME="AFU_45">|</A></em></span>
543 <b>procedure</b> <span class="symbol"><a name="ref_526_14" href="terminal_interface-curses-menus__adb.htm#ref_662_14">Pattern</a></span> (<span class="symbol"><a name="ref_526_23" href="terminal_interface-curses-menus__adb.htm#ref_662_23">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
544 <span class="symbol"><a name="ref_527_23" href="terminal_interface-curses-menus__adb.htm#ref_663_23">Text</a></span> : <b>out</b> String);
545 <span class="comment"><em>-- AKA: <A HREF="../man/menu_pattern.3x.html">menu_pattern()</A></em></span>
546 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_526_14">Pattern</a>);
548 <span class="comment"><em>-- |=====================================================================</em></span>
549 <span class="comment"><em>-- | Man page <A HREF="../man/menu_format.3x.html">menu_format.3x</A></em></span>
550 <span class="comment"><em>-- |=====================================================================</em></span>
552 <span class="comment"><em>-- <A NAME="AFU_46">|</A></em></span>
553 <b>procedure</b> <span class="symbol"><a name="ref_536_14" href="terminal_interface-curses-menus__adb.htm#ref_671_14">Set_Format</a></span> (<span class="symbol"><a name="ref_536_26" href="terminal_interface-curses-menus__adb.htm#ref_671_26">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
554 <span class="symbol"><a name="ref_537_26" href="terminal_interface-curses-menus__adb.htm#ref_672_26">Lines</a></span> : <a href="terminal_interface-curses__ads.htm#ref_62_12">Line_Count</a>;
555 <span class="symbol"><a name="ref_538_26" href="terminal_interface-curses-menus__adb.htm#ref_673_26">Columns</a></span> : <a href="terminal_interface-curses__ads.htm#ref_64_12">Column_Count</a>);
556 <span class="comment"><em>-- Not implemented: 0 argument for Lines or Columns;</em></span>
557 <span class="comment"><em>-- instead use Format to get the current sizes</em></span>
558 <span class="comment"><em>-- The default format is 16 rows, 1 column. Calling</em></span>
559 <span class="comment"><em>-- set_menu_format with a null menu pointer will change this</em></span>
560 <span class="comment"><em>-- default. A zero row or column argument to set_menu_format</em></span>
561 <span class="comment"><em>-- is interpreted as a request not to change the current</em></span>
562 <span class="comment"><em>-- value.</em></span>
563 <span class="comment"><em>-- AKA: <A HREF="../man/menu_format.3x.html">set_menu_format()</A></em></span>
564 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_536_14">Set_Format</a>);
566 <span class="comment"><em>-- <A NAME="AFU_47">|</A></em></span>
567 <b>procedure</b> <span class="symbol"><a name="ref_550_14" href="terminal_interface-curses-menus__adb.htm#ref_687_14">Format</a></span> (<span class="symbol"><a name="ref_550_22" href="terminal_interface-curses-menus__adb.htm#ref_687_22">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
568 <span class="symbol"><a name="ref_551_22" href="terminal_interface-curses-menus__adb.htm#ref_688_22">Lines</a></span> : <b>out</b> <a href="terminal_interface-curses__ads.htm#ref_62_12">Line_Count</a>;
569 <span class="symbol"><a name="ref_552_22" href="terminal_interface-curses-menus__adb.htm#ref_689_22">Columns</a></span> : <b>out</b> <a href="terminal_interface-curses__ads.htm#ref_64_12">Column_Count</a>);
570 <span class="comment"><em>-- AKA: <A HREF="../man/menu_format.3x.html">menu_format()</A></em></span>
571 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_550_14">Format</a>);
573 <span class="comment"><em>-- |=====================================================================</em></span>
574 <span class="comment"><em>-- | Man page <A HREF="../man/menu_hook.3x.html">menu_hook.3x</A></em></span>
575 <span class="comment"><em>-- |=====================================================================</em></span>
577 <b>type</b> <span class="symbol"><a name="ref_560_9">Menu_Hook_Function</a></span> <b>is</b> <b>access</b> <b>procedure</b> (<span class="symbol"><a name="ref_560_49">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>);
578 <b>pragma</b> Convention (C, <a href="terminal_interface-curses-menus__ads.htm#ref_560_9">Menu_Hook_Function</a>);
580 <span class="comment"><em>-- <A NAME="AFU_48">|</A></em></span>
581 <b>procedure</b> <span class="symbol"><a name="ref_564_14" href="terminal_interface-curses-menus__adb.htm#ref_703_14">Set_Item_Init_Hook</a></span> (<span class="symbol"><a name="ref_564_34" href="terminal_interface-curses-menus__adb.htm#ref_703_34">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
582 <span class="symbol"><a name="ref_565_34" href="terminal_interface-curses-menus__adb.htm#ref_704_34">Proc</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_560_9">Menu_Hook_Function</a>);
583 <span class="comment"><em>-- AKA: <A HREF="../man/menu_hook.3x.html">set_item_init()</A></em></span>
584 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_564_14">Set_Item_Init_Hook</a>);
586 <span class="comment"><em>-- <A NAME="AFU_49">|</A></em></span>
587 <b>procedure</b> <span class="symbol"><a name="ref_570_14" href="terminal_interface-curses-menus__adb.htm#ref_714_14">Set_Item_Term_Hook</a></span> (<span class="symbol"><a name="ref_570_34" href="terminal_interface-curses-menus__adb.htm#ref_714_34">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
588 <span class="symbol"><a name="ref_571_34" href="terminal_interface-curses-menus__adb.htm#ref_715_34">Proc</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_560_9">Menu_Hook_Function</a>);
589 <span class="comment"><em>-- AKA: <A HREF="../man/menu_hook.3x.html">set_item_term()</A></em></span>
590 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_570_14">Set_Item_Term_Hook</a>);
592 <span class="comment"><em>-- <A NAME="AFU_50">|</A></em></span>
593 <b>procedure</b> <span class="symbol"><a name="ref_576_14" href="terminal_interface-curses-menus__adb.htm#ref_725_14">Set_Menu_Init_Hook</a></span> (<span class="symbol"><a name="ref_576_34" href="terminal_interface-curses-menus__adb.htm#ref_725_34">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
594 <span class="symbol"><a name="ref_577_34" href="terminal_interface-curses-menus__adb.htm#ref_726_34">Proc</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_560_9">Menu_Hook_Function</a>);
595 <span class="comment"><em>-- AKA: <A HREF="../man/menu_hook.3x.html">set_menu_init()</A></em></span>
596 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_576_14">Set_Menu_Init_Hook</a>);
598 <span class="comment"><em>-- <A NAME="AFU_51">|</A></em></span>
599 <b>procedure</b> <span class="symbol"><a name="ref_582_14" href="terminal_interface-curses-menus__adb.htm#ref_736_14">Set_Menu_Term_Hook</a></span> (<span class="symbol"><a name="ref_582_34" href="terminal_interface-curses-menus__adb.htm#ref_736_34">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
600 <span class="symbol"><a name="ref_583_34" href="terminal_interface-curses-menus__adb.htm#ref_737_34">Proc</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_560_9">Menu_Hook_Function</a>);
601 <span class="comment"><em>-- AKA: <A HREF="../man/menu_hook.3x.html">set_menu_term()</A></em></span>
602 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_582_14">Set_Menu_Term_Hook</a>);
604 <span class="comment"><em>-- <A NAME="AFU_52">|</A></em></span>
605 <b>function</b> <span class="symbol"><a name="ref_588_13" href="terminal_interface-curses-menus__adb.htm#ref_747_13">Get_Item_Init_Hook</a></span> (<span class="symbol"><a name="ref_588_33" href="terminal_interface-curses-menus__adb.htm#ref_747_33">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>) <b>return</b> <a href="terminal_interface-curses-menus__ads.htm#ref_560_9">Menu_Hook_Function</a>;
606 <span class="comment"><em>-- AKA: <A HREF="../man/menu_hook.3x.html">item_init()</A></em></span>
607 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_588_13">Get_Item_Init_Hook</a>);
609 <span class="comment"><em>-- <A NAME="AFU_53">|</A></em></span>
610 <b>function</b> <span class="symbol"><a name="ref_593_13" href="terminal_interface-curses-menus__adb.htm#ref_755_13">Get_Item_Term_Hook</a></span> (<span class="symbol"><a name="ref_593_33" href="terminal_interface-curses-menus__adb.htm#ref_755_33">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>) <b>return</b> <a href="terminal_interface-curses-menus__ads.htm#ref_560_9">Menu_Hook_Function</a>;
611 <span class="comment"><em>-- AKA: <A HREF="../man/menu_hook.3x.html">item_term()</A></em></span>
612 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_593_13">Get_Item_Term_Hook</a>);
614 <span class="comment"><em>-- <A NAME="AFU_54">|</A></em></span>
615 <b>function</b> <span class="symbol"><a name="ref_598_13" href="terminal_interface-curses-menus__adb.htm#ref_763_13">Get_Menu_Init_Hook</a></span> (<span class="symbol"><a name="ref_598_33" href="terminal_interface-curses-menus__adb.htm#ref_763_33">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>) <b>return</b> <a href="terminal_interface-curses-menus__ads.htm#ref_560_9">Menu_Hook_Function</a>;
616 <span class="comment"><em>-- AKA: <A HREF="../man/menu_hook.3x.html">menu_init()</A></em></span>
617 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_598_13">Get_Menu_Init_Hook</a>);
619 <span class="comment"><em>-- <A NAME="AFU_55">|</A></em></span>
620 <b>function</b> <span class="symbol"><a name="ref_603_13" href="terminal_interface-curses-menus__adb.htm#ref_771_13">Get_Menu_Term_Hook</a></span> (<span class="symbol"><a name="ref_603_33" href="terminal_interface-curses-menus__adb.htm#ref_771_33">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>) <b>return</b> <a href="terminal_interface-curses-menus__ads.htm#ref_560_9">Menu_Hook_Function</a>;
621 <span class="comment"><em>-- AKA: <A HREF="../man/menu_hook.3x.html">menu_term()</A></em></span>
622 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_603_13">Get_Menu_Term_Hook</a>);
624 <span class="comment"><em>-- |=====================================================================</em></span>
625 <span class="comment"><em>-- | Man page <A HREF="../man/menu_items.3x.html">menu_items.3x</A></em></span>
626 <span class="comment"><em>-- |=====================================================================</em></span>
628 <span class="comment"><em>-- <A NAME="AFU_56">|</A></em></span>
629 <b>procedure</b> <span class="symbol"><a name="ref_612_14" href="terminal_interface-curses-menus__adb.htm#ref_779_14">Redefine</a></span> (<span class="symbol"><a name="ref_612_24" href="terminal_interface-curses-menus__adb.htm#ref_779_24">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
630 <span class="symbol"><a name="ref_613_24" href="terminal_interface-curses-menus__adb.htm#ref_780_24">Items</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_177_9">Item_Array_Access</a>);
631 <span class="comment"><em>-- AKA: <A HREF="../man/menu_items.3x.html">set_menu_items()</A></em></span>
632 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_612_14">Redefine</a>);
634 <b>procedure</b> <span class="symbol"><a name="ref_617_14">Set_Items</a></span> (<span class="symbol"><a name="ref_617_25">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
635 <span class="symbol"><a name="ref_618_25">Items</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_177_9">Item_Array_Access</a>) <b>renames</b> <a href="terminal_interface-curses-menus__ads.htm#ref_612_14">Redefine</a>;
636 <span class="comment"><em>-- pragma Inline (Set_Items);</em></span>
638 <span class="comment"><em>-- <A NAME="AFU_57">|</A></em></span>
639 <b>function</b> <span class="symbol"><a name="ref_622_13" href="terminal_interface-curses-menus__adb.htm#ref_803_13">Items</a></span> (<span class="symbol"><a name="ref_622_20" href="terminal_interface-curses-menus__adb.htm#ref_803_20">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
640 <span class="symbol"><a name="ref_623_20" href="terminal_interface-curses-menus__adb.htm#ref_804_20">Index</a></span> : Positive) <b>return</b> <a href="terminal_interface-curses-menus__ads.htm#ref_52_9">Item</a>;
641 <span class="comment"><em>-- AKA: <A HREF="../man/menu_items.3x.html">menu_items()</A></em></span>
642 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_622_13">Items</a>);
644 <span class="comment"><em>-- <A NAME="AFU_58">|</A></em></span>
645 <b>function</b> <span class="symbol"><a name="ref_628_13" href="terminal_interface-curses-menus__adb.htm#ref_795_13">Item_Count</a></span> (<span class="symbol"><a name="ref_628_25" href="terminal_interface-curses-menus__adb.htm#ref_795_25">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>) <b>return</b> Natural;
646 <span class="comment"><em>-- AKA: <A HREF="../man/menu_items.3x.html">item_count()</A></em></span>
647 <b>pragma</b> Inline (<a href="terminal_interface-curses-menus__ads.htm#ref_628_13">Item_Count</a>);
649 <span class="comment"><em>-- |=====================================================================</em></span>
650 <span class="comment"><em>-- | Man page <A HREF="../man/menu_new.3x.html">menu_new.3x</A></em></span>
651 <span class="comment"><em>-- |=====================================================================</em></span>
653 <span class="comment"><em>-- <A NAME="AFU_59">|</A></em></span>
654 <b>function</b> <span class="symbol"><a name="ref_637_13" href="terminal_interface-curses-menus__adb.htm#ref_822_13">Create</a></span> (<span class="symbol"><a name="ref_637_21" href="terminal_interface-curses-menus__adb.htm#ref_822_21">Items</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_177_9">Item_Array_Access</a>) <b>return</b> <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
655 <span class="comment"><em>-- AKA: <A HREF="../man/menu_new.3x.html">new_menu()</A></em></span>
656 <span class="comment"><em>-- Not inlined</em></span>
658 <b>function</b> New_Menu (<span class="symbol"><a name="ref_641_23">Items</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_177_9">Item_Array_Access</a>) <b>return</b> <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a> <b>renames</b> <a href="terminal_interface-curses-menus__ads.htm#ref_637_13">Create</a>;
660 <span class="comment"><em>-- <A NAME="AFU_60">|</A></em></span>
661 <b>procedure</b> <span class="symbol"><a name="ref_644_14" href="terminal_interface-curses-menus__adb.htm#ref_841_14">Delete</a></span> (<span class="symbol"><a name="ref_644_22" href="terminal_interface-curses-menus__adb.htm#ref_841_22">Men</a></span> : <b>in</b> <b>out</b> <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>);
662 <span class="comment"><em>-- AKA: <A HREF="../man/menu_new.3x.html">free_menu()</A></em></span>
663 <span class="comment"><em>-- Reset Men to Null_Menu</em></span>
664 <span class="comment"><em>-- Not inlined</em></span>
666 <span class="comment"><em>-- |=====================================================================</em></span>
667 <span class="comment"><em>-- | Man page <A HREF="../man/menu_driver.3x.html">menu_driver.3x</A></em></span>
668 <span class="comment"><em>-- |=====================================================================</em></span>
670 <b>type</b> <span class="symbol"><a name="ref_653_9">Driver_Result</a></span> <b>is</b> (<span class="symbol"><a name="ref_653_27">Menu_Ok</a></span>,
671 <span class="symbol"><a name="ref_654_27">Request_Denied</a></span>,
672 <span class="symbol"><a name="ref_655_27">Unknown_Request</a></span>,
673 <span class="symbol"><a name="ref_656_27">No_Match</a></span>);
675 <span class="comment"><em>-- <A NAME="AFU_61">|</A></em></span>
676 <b>function</b> <span class="symbol"><a name="ref_659_13" href="terminal_interface-curses-menus__adb.htm#ref_852_13">Driver</a></span> (<span class="symbol"><a name="ref_659_21" href="terminal_interface-curses-menus__adb.htm#ref_852_21">Men</a></span> : <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a>;
677 <span class="symbol"><a name="ref_660_21" href="terminal_interface-curses-menus__adb.htm#ref_853_21">Key</a></span> : <a href="terminal_interface-curses__ads.htm#ref_67_9">Key_Code</a>) <b>return</b> <a href="terminal_interface-curses-menus__ads.htm#ref_653_9">Driver_Result</a>;
678 <span class="comment"><em>-- AKA: <A HREF="../man/menu_driver.3x.html">menu_driver()</A></em></span>
679 <span class="comment"><em>-- Driver is not inlined</em></span>
681 <span class="comment"><em>-- <A NAME="AFU_62">|</A></em></span>
682 <span class="comment"><em>-- Not Implemented: menu_request_name, menu_request_by_name</em></span>
683 <span class="comment"><em>-------------------------------------------------------------------------------</em></span>
685 <b>type</b> <a href="terminal_interface-curses-menus__ads.htm#ref_52_9">Item</a> <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address;
686 <b>type</b> <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a> <b>is</b> <b>new</b> System.Storage_Elements.Integer_Address;
688 <a href="terminal_interface-curses-menus__ads.htm#ref_58_4">Null_Item</a> : <b>constant</b> <a href="terminal_interface-curses-menus__ads.htm#ref_52_9">Item</a> := 0;
689 <a href="terminal_interface-curses-menus__ads.htm#ref_59_4">Null_Menu</a> : <b>constant</b> <a href="terminal_interface-curses-menus__ads.htm#ref_53_9">Menu</a> := 0;
691 <b>end</b> <a href="terminal_interface__ads.htm#ref_43_9">Terminal_Interface</a>.<a href="terminal_interface-curses__ads.htm#ref_48_28">Curses</a>.<a href="terminal_interface-curses-menus__ads.htm#ref_46_35">Menus</a>;