1<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"> 2<html> 3<head> 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"> 7*.comment { 8 color: green; 9} 10*.symbol { 11 color: red; 12} 13</style> 14</head> 15<body> 16<hr><div style="text-align:center"><h1> File : terminal_interface-curses-menus.ads </h1></div><hr> 17<pre> 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> 60<b>with</b> System; 61<b>with</b> Ada.Characters.Latin_1; 62 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>); 66 67 Space : Character <b>renames</b> Ada.Characters.Latin_1.Space; 68 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>; 71 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>; 77 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); 80 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; 99 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>; 118 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); 121 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> 124 125 <span class="comment"><em>------------------</em></span> 126 <span class="comment"><em>-- Exceptions --</em></span> 127 <span class="comment"><em>------------------</em></span> 128 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> 134 <b>record</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>); 143 144 <b>for</b> <a href="terminal_interface-curses-menus__ads.htm#ref_116_9">Menu_Option_Set</a> <b>use</b> 145 <b>record</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); 162 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> 170 <b>record</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>); 174 175 <b>for</b> <a href="terminal_interface-curses-menus__ads.htm#ref_152_9">Item_Option_Set</a> <b>use</b> 176 <b>record</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); 183 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>); 187 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); 193 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; 195 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> 201 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> 205 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> 211 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> 217 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> 222 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> 226 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>); 232 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>); 237 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> 241 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>); 246 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> 250 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> 256 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> 265 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> 270 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> 275 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> 279 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); 288 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> 293 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); 298 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> 302 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>); 308 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>); 313 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>); 319 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>); 324 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>); 332 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> 336 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>); 343 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> 347 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); 353 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); 361 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> 366 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); 371 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> 375 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>); 381 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>); 386 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>); 392 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>); 397 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>); 404 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> 408 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>); 413 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> 417 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>); 423 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> 428 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); 433 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> 437 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>); 445 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> 450 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); 457 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); 465 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> 471 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); 477 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>); 485 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> 490 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); 498 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>); 504 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>); 510 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> 514 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>); 522 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>); 530 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> 534 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>); 541 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>); 547 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> 551 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>); 565 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>); 572 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> 576 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>); 579 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>); 585 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>); 591 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>); 597 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>); 603 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>); 608 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>); 613 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>); 618 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>); 623 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> 627 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>); 633 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> 637 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>); 643 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>); 648 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> 652 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> 657 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>; 659 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> 665 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> 669 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>); 674 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> 680 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> 684<b>private</b> 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; 687 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; 690 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>; 692</pre></body></html> 693