5 <BODY BGCOLOR="#99ccbb" TEXT="#000000" LINK="#4060b0" VLINK="#000080" ALINK="#ff4040">
8 <I>------------------------------------------------------------------------------</I>
10 <I>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</I>
12 <I>-- Terminal_Interface.Curses.Form --</I>
16 <I>------------------------------------------------------------------------------</I>
17 <I>-- Copyright (c) 1998 Free Software Foundation, Inc. --</I>
19 <I>-- Permission is hereby granted, free of charge, to any person obtaining a --</I>
20 <I>-- copy of this software and associated documentation files (the --</I>
21 <I>-- "Software"), to deal in the Software without restriction, including --</I>
22 <I>-- without limitation the rights to use, copy, modify, merge, publish, --</I>
23 <I>-- distribute, distribute with modifications, sublicense, and/or sell --</I>
24 <I>-- copies of the Software, and to permit persons to whom the Software is --</I>
25 <I>-- furnished to do so, subject to the following conditions: --</I>
27 <I>-- The above copyright notice and this permission notice shall be included --</I>
28 <I>-- in all copies or substantial portions of the Software. --</I>
30 <I>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</I>
31 <I>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</I>
32 <I>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</I>
33 <I>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</I>
34 <I>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</I>
35 <I>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</I>
36 <I>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</I>
38 <I>-- Except as contained in this notice, the name(s) of the above copyright --</I>
39 <I>-- holders shall not be used in advertising or otherwise to promote the --</I>
40 <I>-- sale, use or other dealings in this Software without prior written --</I>
41 <I>-- authorization. --</I>
42 <I>------------------------------------------------------------------------------</I>
43 <I>-- <A HREF="http://home.t-online.de/home/Juergen.Pfeifer">Jürgen Pfeifer</A>, Email: <A HREF="mailto:Juergen.Pfeifer@T-Online.de">Juergen.Pfeifer@T-Online.de</A> --</I>
44 <I>-- Version Control:</I>
45 <I>-- @Revision: 1.10 @</I>
46 <I>------------------------------------------------------------------------------</I>
47 <I>-- form binding.</I>
48 <I>-- This module is generated. Please don't change it manually!</I>
49 <I>-- Run the generator instead.</I>
52 <B>with</B> Ada.Characters.Latin_1;
53 <B>with</B> Interfaces.C;
55 <B>package</B> Terminal_Interface.Curses.Forms <B>is</B>
57 <B>pragma</B> Linker_Options ("-lform");
60 Space : Character <B>renames</B> Ada.Characters.Latin_1.Space;
62 type Field <B>is</B> <B>private</B>;
63 type Form <B>is</B> <B>private</B>;
65 Null_Field : <B>constant</B> Field;
66 Null_Form : <B>constant</B> Form;
68 type Field_Justification <B>is</B> (None,
73 type Field_Option_Set <B>is</B>
86 <B>end</B> <B>record</B>;
87 <B>pragma</B> Pack (Field_Option_Set);
88 <B>pragma</B> Convention (C, Field_Option_Set);
90 <B>for</B> Field_Option_Set <B>use</B>
92 Visible <B>at</B> 0 <B>range</B> 0 .. 0;
93 Active <B>at</B> 0 <B>range</B> 1 .. 1;
94 Public <B>at</B> 0 <B>range</B> 2 .. 2;
95 Edit <B>at</B> 0 <B>range</B> 3 .. 3;
96 Wrap <B>at</B> 0 <B>range</B> 4 .. 4;
97 Blank <B>at</B> 0 <B>range</B> 5 .. 5;
98 Auto_Skip <B>at</B> 0 <B>range</B> 6 .. 6;
99 Null_Ok <B>at</B> 0 <B>range</B> 7 .. 7;
100 Pass_Ok <B>at</B> 0 <B>range</B> 8 .. 8;
101 Static <B>at</B> 0 <B>range</B> 9 .. 9;
102 Reserved <B>at</B> 0 <B>range</B> 31 .. 31;
103 <B>end</B> <B>record</B>;
104 <B>for</B> Field_Option_Set'Size <B>use</B> Interfaces.C.int'Size;
105 <I>-- Please note: this rep. clause is generated and may be</I>
106 <I>-- different on your system.</I>
108 Default_Field_Options : Field_Option_Set;
109 <I>-- The initial defaults for the field options.</I>
111 type Form_Option_Set <B>is</B>
113 NL_Overload : Boolean;
114 BS_Overload : Boolean;
116 <B>end</B> <B>record</B>;
117 <B>pragma</B> Pack (Form_Option_Set);
118 <B>pragma</B> Convention (C, Form_Option_Set);
120 <B>for</B> Form_Option_Set <B>use</B>
122 NL_Overload <B>at</B> 0 <B>range</B> 0 .. 0;
123 BS_Overload <B>at</B> 0 <B>range</B> 1 .. 1;
124 Reserved <B>at</B> 0 <B>range</B> 31 .. 31;
125 <B>end</B> <B>record</B>;
126 <B>for</B> Form_Option_Set'Size <B>use</B> Interfaces.C.int'Size;
127 <I>-- Please note: this rep. clause is generated and may be</I>
128 <I>-- different on your system.</I>
130 Default_Form_Options : Form_Option_Set;
131 <I>-- The initial defaults for the form options.</I>
133 type Buffer_Number <B>is</B> <B>new</B> Natural;
135 type Field_Array <B>is</B> <B>array</B> (Positive <B>range</B> <>) <B>of</B> <B>aliased</B> Field;
136 <B>pragma</B> Convention (C, Field_Array);
138 type Field_Array_Access <B>is</B> <B>access</B> Field_Array;
140 <B>procedure</B> Free (FA : <B>in</B> <B>out</B> Field_Array_Access;
141 Free_Fields : <B>in</B> Boolean := False);
142 <I>-- Release the memory for an allocated field array</I>
143 <I>-- If Free_Fields is True, call Delete() for all the fields in</I>
146 <B>subtype</B> Form_Request_Code <B>is</B> Key_Code <B>range</B> (Key_Max + 1) .. (Key_Max + 57);
148 <I>-- The prefix F_ stands for "Form Request"</I>
149 F_Next_Page : <B>constant</B> Form_Request_Code := Key_Max + 1;
150 F_Previous_Page : <B>constant</B> Form_Request_Code := Key_Max + 2;
151 F_First_Page : <B>constant</B> Form_Request_Code := Key_Max + 3;
152 F_Last_Page : <B>constant</B> Form_Request_Code := Key_Max + 4;
154 F_Next_Field : <B>constant</B> Form_Request_Code := Key_Max + 5;
155 F_Previous_Field : <B>constant</B> Form_Request_Code := Key_Max + 6;
156 F_First_Field : <B>constant</B> Form_Request_Code := Key_Max + 7;
157 F_Last_Field : <B>constant</B> Form_Request_Code := Key_Max + 8;
158 F_Sorted_Next_Field : <B>constant</B> Form_Request_Code := Key_Max + 9;
159 F_Sorted_Previous_Field : <B>constant</B> Form_Request_Code := Key_Max + 10;
160 F_Sorted_First_Field : <B>constant</B> Form_Request_Code := Key_Max + 11;
161 F_Sorted_Last_Field : <B>constant</B> Form_Request_Code := Key_Max + 12;
162 F_Left_Field : <B>constant</B> Form_Request_Code := Key_Max + 13;
163 F_Right_Field : <B>constant</B> Form_Request_Code := Key_Max + 14;
164 F_Up_Field : <B>constant</B> Form_Request_Code := Key_Max + 15;
165 F_Down_Field : <B>constant</B> Form_Request_Code := Key_Max + 16;
167 F_Next_Char : <B>constant</B> Form_Request_Code := Key_Max + 17;
168 F_Previous_Char : <B>constant</B> Form_Request_Code := Key_Max + 18;
169 F_Next_Line : <B>constant</B> Form_Request_Code := Key_Max + 19;
170 F_Previous_Line : <B>constant</B> Form_Request_Code := Key_Max + 20;
171 F_Next_Word : <B>constant</B> Form_Request_Code := Key_Max + 21;
172 F_Previous_Word : <B>constant</B> Form_Request_Code := Key_Max + 22;
173 F_Begin_Field : <B>constant</B> Form_Request_Code := Key_Max + 23;
174 F_End_Field : <B>constant</B> Form_Request_Code := Key_Max + 24;
175 F_Begin_Line : <B>constant</B> Form_Request_Code := Key_Max + 25;
176 F_End_Line : <B>constant</B> Form_Request_Code := Key_Max + 26;
177 F_Left_Char : <B>constant</B> Form_Request_Code := Key_Max + 27;
178 F_Right_Char : <B>constant</B> Form_Request_Code := Key_Max + 28;
179 F_Up_Char : <B>constant</B> Form_Request_Code := Key_Max + 29;
180 F_Down_Char : <B>constant</B> Form_Request_Code := Key_Max + 30;
182 F_New_Line : <B>constant</B> Form_Request_Code := Key_Max + 31;
183 F_Insert_Char : <B>constant</B> Form_Request_Code := Key_Max + 32;
184 F_Insert_Line : <B>constant</B> Form_Request_Code := Key_Max + 33;
185 F_Delete_Char : <B>constant</B> Form_Request_Code := Key_Max + 34;
186 F_Delete_Previous : <B>constant</B> Form_Request_Code := Key_Max + 35;
187 F_Delete_Line : <B>constant</B> Form_Request_Code := Key_Max + 36;
188 F_Delete_Word : <B>constant</B> Form_Request_Code := Key_Max + 37;
189 F_Clear_EOL : <B>constant</B> Form_Request_Code := Key_Max + 38;
190 F_Clear_EOF : <B>constant</B> Form_Request_Code := Key_Max + 39;
191 F_Clear_Field : <B>constant</B> Form_Request_Code := Key_Max + 40;
192 F_Overlay_Mode : <B>constant</B> Form_Request_Code := Key_Max + 41;
193 F_Insert_Mode : <B>constant</B> Form_Request_Code := Key_Max + 42;
195 <I>-- Vertical Scrolling</I>
196 F_ScrollForward_Line : <B>constant</B> Form_Request_Code := Key_Max + 43;
197 F_ScrollBackward_Line : <B>constant</B> Form_Request_Code := Key_Max + 44;
198 F_ScrollForward_Page : <B>constant</B> Form_Request_Code := Key_Max + 45;
199 F_ScrollBackward_Page : <B>constant</B> Form_Request_Code := Key_Max + 46;
200 F_ScrollForward_HalfPage : <B>constant</B> Form_Request_Code := Key_Max + 47;
201 F_ScrollBackward_HalfPage : <B>constant</B> Form_Request_Code := Key_Max + 48;
203 <I>-- Horizontal Scrolling</I>
204 F_HScrollForward_Char : <B>constant</B> Form_Request_Code := Key_Max + 49;
205 F_HScrollBackward_Char : <B>constant</B> Form_Request_Code := Key_Max + 50;
206 F_HScrollForward_Line : <B>constant</B> Form_Request_Code := Key_Max + 51;
207 F_HScrollBackward_Line : <B>constant</B> Form_Request_Code := Key_Max + 52;
208 F_HScrollForward_HalfLine : <B>constant</B> Form_Request_Code := Key_Max + 53;
209 F_HScrollBackward_HalfLine : <B>constant</B> Form_Request_Code := Key_Max + 54;
211 F_Validate_Field : <B>constant</B> Form_Request_Code := Key_Max + 55;
212 F_Next_Choice : <B>constant</B> Form_Request_Code := Key_Max + 56;
213 F_Previous_Choice : <B>constant</B> Form_Request_Code := Key_Max + 57;
215 <I>-- For those who like the old 'C' style request names</I>
216 REQ_NEXT_PAGE : Form_Request_Code <B>renames</B> F_Next_Page;
217 REQ_PREV_PAGE : Form_Request_Code <B>renames</B> F_Previous_Page;
218 REQ_FIRST_PAGE : Form_Request_Code <B>renames</B> F_First_Page;
219 REQ_LAST_PAGE : Form_Request_Code <B>renames</B> F_Last_Page;
221 REQ_NEXT_FIELD : Form_Request_Code <B>renames</B> F_Next_Field;
222 REQ_PREV_FIELD : Form_Request_Code <B>renames</B> F_Previous_Field;
223 REQ_FIRST_FIELD : Form_Request_Code <B>renames</B> F_First_Field;
224 REQ_LAST_FIELD : Form_Request_Code <B>renames</B> F_Last_Field;
225 REQ_SNEXT_FIELD : Form_Request_Code <B>renames</B> F_Sorted_Next_Field;
226 REQ_SPREV_FIELD : Form_Request_Code <B>renames</B> F_Sorted_Previous_Field;
227 REQ_SFIRST_FIELD : Form_Request_Code <B>renames</B> F_Sorted_First_Field;
228 REQ_SLAST_FIELD : Form_Request_Code <B>renames</B> F_Sorted_Last_Field;
229 REQ_LEFT_FIELD : Form_Request_Code <B>renames</B> F_Left_Field;
230 REQ_RIGHT_FIELD : Form_Request_Code <B>renames</B> F_Right_Field;
231 REQ_UP_FIELD : Form_Request_Code <B>renames</B> F_Up_Field;
232 REQ_DOWN_FIELD : Form_Request_Code <B>renames</B> F_Down_Field;
234 REQ_NEXT_CHAR : Form_Request_Code <B>renames</B> F_Next_Char;
235 REQ_PREV_CHAR : Form_Request_Code <B>renames</B> F_Previous_Char;
236 REQ_NEXT_LINE : Form_Request_Code <B>renames</B> F_Next_Line;
237 REQ_PREV_LINE : Form_Request_Code <B>renames</B> F_Previous_Line;
238 REQ_NEXT_WORD : Form_Request_Code <B>renames</B> F_Next_Word;
239 REQ_PREV_WORD : Form_Request_Code <B>renames</B> F_Previous_Word;
240 REQ_BEG_FIELD : Form_Request_Code <B>renames</B> F_Begin_Field;
241 REQ_END_FIELD : Form_Request_Code <B>renames</B> F_End_Field;
242 REQ_BEG_LINE : Form_Request_Code <B>renames</B> F_Begin_Line;
243 REQ_END_LINE : Form_Request_Code <B>renames</B> F_End_Line;
244 REQ_LEFT_CHAR : Form_Request_Code <B>renames</B> F_Left_Char;
245 REQ_RIGHT_CHAR : Form_Request_Code <B>renames</B> F_Right_Char;
246 REQ_UP_CHAR : Form_Request_Code <B>renames</B> F_Up_Char;
247 REQ_DOWN_CHAR : Form_Request_Code <B>renames</B> F_Down_Char;
249 REQ_NEW_LINE : Form_Request_Code <B>renames</B> F_New_Line;
250 REQ_INS_CHAR : Form_Request_Code <B>renames</B> F_Insert_Char;
251 REQ_INS_LINE : Form_Request_Code <B>renames</B> F_Insert_Line;
252 REQ_DEL_CHAR : Form_Request_Code <B>renames</B> F_Delete_Char;
253 REQ_DEL_PREV : Form_Request_Code <B>renames</B> F_Delete_Previous;
254 REQ_DEL_LINE : Form_Request_Code <B>renames</B> F_Delete_Line;
255 REQ_DEL_WORD : Form_Request_Code <B>renames</B> F_Delete_Word;
256 REQ_CLR_EOL : Form_Request_Code <B>renames</B> F_Clear_EOL;
257 REQ_CLR_EOF : Form_Request_Code <B>renames</B> F_Clear_EOF;
258 REQ_CLR_FIELD : Form_Request_Code <B>renames</B> F_Clear_Field;
259 REQ_OVL_MODE : Form_Request_Code <B>renames</B> F_Overlay_Mode;
260 REQ_INS_MODE : Form_Request_Code <B>renames</B> F_Insert_Mode;
262 REQ_SCR_FLINE : Form_Request_Code <B>renames</B> F_ScrollForward_Line;
263 REQ_SCR_BLINE : Form_Request_Code <B>renames</B> F_ScrollBackward_Line;
264 REQ_SCR_FPAGE : Form_Request_Code <B>renames</B> F_ScrollForward_Page;
265 REQ_SCR_BPAGE : Form_Request_Code <B>renames</B> F_ScrollBackward_Page;
266 REQ_SCR_FHPAGE : Form_Request_Code <B>renames</B> F_ScrollForward_HalfPage;
267 REQ_SCR_BHPAGE : Form_Request_Code <B>renames</B> F_ScrollBackward_HalfPage;
269 REQ_SCR_FCHAR : Form_Request_Code <B>renames</B> F_HScrollForward_Char;
270 REQ_SCR_BCHAR : Form_Request_Code <B>renames</B> F_HScrollBackward_Char;
271 REQ_SCR_HFLINE : Form_Request_Code <B>renames</B> F_HScrollForward_Line;
272 REQ_SCR_HBLINE : Form_Request_Code <B>renames</B> F_HScrollBackward_Line;
273 REQ_SCR_HFHALF : Form_Request_Code <B>renames</B> F_HScrollForward_HalfLine;
274 REQ_SCR_HBHALF : Form_Request_Code <B>renames</B> F_HScrollBackward_HalfLine;
276 REQ_VALIDATION : Form_Request_Code <B>renames</B> F_Validate_Field;
277 REQ_NEXT_CHOICE : Form_Request_Code <B>renames</B> F_Next_Choice;
278 REQ_PREV_CHOICE : Form_Request_Code <B>renames</B> F_Previous_Choice;
281 <B>procedure</B> Request_Name (Key : <B>in</B> Form_Request_Code;
282 Name : <B>out</B> String);
284 <B>function</B> Request_Name (Key : Form_Request_Code) <B>return</B> String;
285 <I>-- Same as function</I>
286 <B>pragma</B> Inline (Request_Name);
288 <I>------------------</I>
289 <I>-- Exceptions --</I>
290 <I>------------------</I>
291 Form_Exception : <B>exception</B>;
293 <I>-- |=====================================================================</I>
294 <I>-- | Man page <A HREF="form_field_new.3x.html">form_field_new.3x</A></I>
295 <I>-- |=====================================================================</I>
297 <I>-- <A NAME="AFU_1">|</I>
298 <B>function</B> Create (Height : Line_Count;
299 Width : Column_Count;
301 Left : Column_Position;
302 Off_Screen : Natural := 0;
303 More_Buffers : Buffer_Number := Buffer_Number'First)
305 <I>-- AKA: <A HREF="form_field_new.3x.html">new_field()</A></I>
307 <I>-- <A NAME="AFU_2">|</I>
308 <B>function</B> New_Field (Height : Line_Count;
309 Width : Column_Count;
311 Left : Column_Position;
312 Off_Screen : Natural := 0;
313 More_Buffers : Buffer_Number := Buffer_Number'First)
314 <B>return</B> Field <B>renames</B> Create;
315 <I>-- AKA: <A HREF="form_field_new.3x.html">new_field()</A></I>
317 <I>-- <A NAME="AFU_3">|</I>
318 <B>procedure</B> Delete (Fld : <B>in</B> <B>out</B> Field);
319 <I>-- AKA: <A HREF="form_field_new.3x.html">free_field()</A></I>
320 <I>-- Reset Fld to Null_Field</I>
322 <I>-- <A NAME="AFU_4">|</I>
323 <B>function</B> Duplicate (Fld : Field;
325 Left : Column_Position) <B>return</B> Field;
326 <I>-- AKA: <A HREF="form_field_new.3x.html">dup_field()</A></I>
328 <I>-- <A NAME="AFU_5">|</I>
329 <B>function</B> Link (Fld : Field;
331 Left : Column_Position) <B>return</B> Field;
332 <I>-- AKA: <A HREF="form_field_new.3x.html">link_field()</A></I>
334 <I>-- |=====================================================================</I>
335 <I>-- | Man page <A HREF="form_field_just.3x.html">form_field_just.3x</A></I>
336 <I>-- |=====================================================================</I>
338 <I>-- <A NAME="AFU_6">|</I>
339 <B>procedure</B> Set_Justification (Fld : <B>in</B> Field;
340 Just : <B>in</B> Field_Justification := None);
341 <I>-- AKA: <A HREF="form_field_just.3x.html">set_field_just()</A></I>
343 <I>-- <A NAME="AFU_7">|</I>
344 <B>function</B> Get_Justification (Fld : Field) <B>return</B> Field_Justification;
345 <I>-- AKA: <A HREF="form_field_just.3x.html">field_just()</A></I>
347 <I>-- |=====================================================================</I>
348 <I>-- | Man page <A HREF="form_field_buffer.3x.html">form_field_buffer.3x</A></I>
349 <I>-- |=====================================================================</I>
351 <I>-- <A NAME="AFU_8">|</I>
352 <B>procedure</B> Set_Buffer
353 (Fld : <B>in</B> Field;
354 Buffer : <B>in</B> Buffer_Number := Buffer_Number'First;
355 Str : <B>in</B> String);
356 <I>-- AKA: <A HREF="form_field_buffer.3x.html">set_field_buffer()</A></I>
358 <I>-- <A NAME="AFU_9">|</I>
359 <B>procedure</B> Get_Buffer
360 (Fld : <B>in</B> Field;
361 Buffer : <B>in</B> Buffer_Number := Buffer_Number'First;
362 Str : <B>out</B> String);
363 <I>-- AKA: <A HREF="form_field_buffer.3x.html">field_buffer()</A></I>
365 <B>function</B> Get_Buffer
366 (Fld : <B>in</B> Field;
367 Buffer : <B>in</B> Buffer_Number := Buffer_Number'First) <B>return</B> String;
368 <I>-- AKA: <A HREF="form_field_buffer.3x.html">field_buffer()</A></I>
369 <I>-- Same but as function</I>
371 <I>-- <A NAME="AFU_10">|</I>
372 <B>procedure</B> Set_Status (Fld : <B>in</B> Field;
373 Status : <B>in</B> Boolean := True);
374 <I>-- AKA: <A HREF="form_field_buffer.3x.html">set_field_status()</A></I>
376 <I>-- <A NAME="AFU_11">|</I>
377 <B>function</B> Changed (Fld : Field) <B>return</B> Boolean;
378 <I>-- AKA: <A HREF="form_field_buffer.3x.html">field_status()</A></I>
380 <I>-- <A NAME="AFU_12">|</I>
381 <B>procedure</B> Set_Maximum_Size (Fld : <B>in</B> Field;
382 Max : <B>in</B> Natural := 0);
383 <I>-- AKA: <A HREF="form_field_buffer.3x.html">set_field_max()</A></I>
385 <I>-- |=====================================================================</I>
386 <I>-- | Man page <A HREF="form_field_opts.3x.html">form_field_opts.3x</A></I>
387 <I>-- |=====================================================================</I>
389 <I>-- <A NAME="AFU_13">|</I>
390 <B>procedure</B> Set_Options (Fld : <B>in</B> Field;
391 Options : <B>in</B> Field_Option_Set);
392 <I>-- AKA: <A HREF="form_field_opts.3x.html">set_field_opts()</A></I>
394 <I>-- <A NAME="AFU_14">|</I>
395 <B>procedure</B> Switch_Options (Fld : <B>in</B> Field;
396 Options : <B>in</B> Field_Option_Set;
397 On : Boolean := True);
398 <I>-- AKA: <A HREF="form_field_opts.3x.html">field_opts_on()</A></I>
399 <I>-- AKA: field_opts_off()</I>
401 <I>-- <A NAME="AFU_15">|</I>
402 <B>procedure</B> Get_Options (Fld : <B>in</B> Field;
403 Options : <B>out</B> Field_Option_Set);
404 <I>-- AKA: <A HREF="form_field_opts.3x.html">field_opts()</A></I>
406 <I>-- <A NAME="AFU_16">|</I>
407 <B>function</B> Get_Options (Fld : Field := Null_Field)
408 <B>return</B> Field_Option_Set;
409 <I>-- AKA: <A HREF="form_field_opts.3x.html">field_opts()</A></I>
411 <I>-- |=====================================================================</I>
412 <I>-- | Man page <A HREF="form_field_attributes.3x.html">form_field_attributes.3x</A></I>
413 <I>-- |=====================================================================</I>
415 <I>-- <A NAME="AFU_17">|</I>
416 <B>procedure</B> Set_Foreground
417 (Fld : <B>in</B> Field;
418 Fore : <B>in</B> Character_Attribute_Set := Normal_Video;
419 Color : <B>in</B> Color_Pair := Color_Pair'First);
420 <I>-- AKA: <A HREF="form_field_attributes.3x.html">set_field_fore()</A></I>
422 <I>-- <A NAME="AFU_18">|</I>
423 <B>procedure</B> Foreground (Fld : <B>in</B> Field;
424 Fore : <B>out</B> Character_Attribute_Set);
425 <I>-- AKA: <A HREF="form_field_attributes.3x.html">field_fore()</A></I>
427 <I>-- <A NAME="AFU_19">|</I>
428 <B>procedure</B> Foreground (Fld : <B>in</B> Field;
429 Fore : <B>out</B> Character_Attribute_Set;
430 Color : <B>out</B> Color_Pair);
431 <I>-- AKA: <A HREF="form_field_attributes.3x.html">field_fore()</A></I>
433 <I>-- <A NAME="AFU_20">|</I>
434 <B>procedure</B> Set_Background
435 (Fld : <B>in</B> Field;
436 Back : <B>in</B> Character_Attribute_Set := Normal_Video;
437 Color : <B>in</B> Color_Pair := Color_Pair'First);
438 <I>-- AKA: <A HREF="form_field_attributes.3x.html">set_field_back()</A></I>
440 <I>-- <A NAME="AFU_21">|</I>
441 <B>procedure</B> Background (Fld : <B>in</B> Field;
442 Back : <B>out</B> Character_Attribute_Set);
443 <I>-- AKA: <A HREF="form_field_attributes.3x.html">field_back()</A></I>
445 <I>-- <A NAME="AFU_22">|</I>
446 <B>procedure</B> Background (Fld : <B>in</B> Field;
447 Back : <B>out</B> Character_Attribute_Set;
448 Color : <B>out</B> Color_Pair);
449 <I>-- AKA: <A HREF="form_field_attributes.3x.html">field_back()</A></I>
451 <I>-- <A NAME="AFU_23">|</I>
452 <B>procedure</B> Set_Pad_Character (Fld : <B>in</B> Field;
453 Pad : <B>in</B> Character := Space);
454 <I>-- AKA: <A HREF="form_field_attributes.3x.html">set_field_pad()</A></I>
456 <I>-- <A NAME="AFU_24">|</I>
457 <B>procedure</B> Pad_Character (Fld : <B>in</B> Field;
458 Pad : <B>out</B> Character);
459 <I>-- AKA: <A HREF="form_field_attributes.3x.html">field_pad()</A></I>
461 <I>-- |=====================================================================</I>
462 <I>-- | Man page <A HREF="form_field_info.3x.html">form_field_info.3x</A></I>
463 <I>-- |=====================================================================</I>
465 <I>-- <A NAME="AFU_25">|</I>
466 <B>procedure</B> Info (Fld : <B>in</B> Field;
467 Lines : <B>out</B> Line_Count;
468 Columns : <B>out</B> Column_Count;
469 First_Row : <B>out</B> Line_Position;
470 First_Column : <B>out</B> Column_Position;
471 Off_Screen : <B>out</B> Natural;
472 Additional_Buffers : <B>out</B> Buffer_Number);
473 <I>-- AKA: <A HREF="form_field_info.3x.html">field_info()</A></I>
475 <I>-- <A NAME="AFU_26">|</I>
476 <B>procedure</B> Dynamic_Info (Fld : <B>in</B> Field;
477 Lines : <B>out</B> Line_Count;
478 Columns : <B>out</B> Column_Count;
479 Max : <B>out</B> Natural);
480 <I>-- AKA: <A HREF="form_field_info.3x.html">dynamic_field_info()</A></I>
482 <I>-- |=====================================================================</I>
483 <I>-- | Man page <A HREF="form_win.3x.html">form_win.3x</A></I>
484 <I>-- |=====================================================================</I>
486 <I>-- <A NAME="AFU_27">|</I>
487 <B>procedure</B> Set_Window (Frm : <B>in</B> Form;
488 Win : <B>in</B> Window);
489 <I>-- AKA: <A HREF="form_win.3x.html">set_form_win()</A></I>
491 <I>-- <A NAME="AFU_28">|</I>
492 <B>function</B> Get_Window (Frm : Form) <B>return</B> Window;
493 <I>-- AKA: <A HREF="form_win.3x.html">form_win()</A></I>
495 <I>-- <A NAME="AFU_29">|</I>
496 <B>procedure</B> Set_Sub_Window (Frm : <B>in</B> Form;
497 Win : <B>in</B> Window);
498 <I>-- AKA: <A HREF="form_win.3x.html">set_form_sub()</A></I>
500 <I>-- <A NAME="AFU_30">|</I>
501 <B>function</B> Get_Sub_Window (Frm : Form) <B>return</B> Window;
502 <I>-- AKA: <A HREF="form_win.3x.html">form_sub()</A></I>
504 <I>-- <A NAME="AFU_31">|</I>
505 <B>procedure</B> Scale (Frm : <B>in</B> Form;
506 Lines : <B>out</B> Line_Count;
507 Columns : <B>out</B> Column_Count);
508 <I>-- AKA: <A HREF="form_win.3x.html">scale_form()</A></I>
510 <I>-- |=====================================================================</I>
511 <I>-- | Man page <A HREF="form_hook.3x.html">form_hook.3x</A></I>
512 <I>-- |=====================================================================</I>
514 type Form_Hook_Function <B>is</B> <B>access</B> <B>procedure</B> (Frm : <B>in</B> Form);
515 <B>pragma</B> Convention (C, Form_Hook_Function);
517 <I>-- <A NAME="AFU_32">|</I>
518 <B>procedure</B> Set_Field_Init_Hook (Frm : <B>in</B> Form;
519 Proc : <B>in</B> Form_Hook_Function);
520 <I>-- AKA: <A HREF="form_hook.3x.html">set_field_init()</A></I>
522 <I>-- <A NAME="AFU_33">|</I>
523 <B>procedure</B> Set_Field_Term_Hook (Frm : <B>in</B> Form;
524 Proc : <B>in</B> Form_Hook_Function);
525 <I>-- AKA: <A HREF="form_hook.3x.html">set_field_term()</A></I>
527 <I>-- <A NAME="AFU_34">|</I>
528 <B>procedure</B> Set_Form_Init_Hook (Frm : <B>in</B> Form;
529 Proc : <B>in</B> Form_Hook_Function);
530 <I>-- AKA: <A HREF="form_hook.3x.html">set_form_init()</A></I>
532 <I>-- <A NAME="AFU_35">|</I>
533 <B>procedure</B> Set_Form_Term_Hook (Frm : <B>in</B> Form;
534 Proc : <B>in</B> Form_Hook_Function);
535 <I>-- AKA: <A HREF="form_hook.3x.html">set_form_term()</A></I>
537 <I>-- <A NAME="AFU_36">|</I>
538 <B>function</B> Get_Field_Init_Hook (Frm : Form) <B>return</B> Form_Hook_Function;
539 <I>-- AKA: <A HREF="form_hook.3x.html">field_init()</A></I>
540 <B>pragma</B> Import (C, Get_Field_Init_Hook, "field_init");
542 <I>-- <A NAME="AFU_37">|</I>
543 <B>function</B> Get_Field_Term_Hook (Frm : Form) <B>return</B> Form_Hook_Function;
544 <I>-- AKA: <A HREF="form_hook.3x.html">field_term()</A></I>
545 <B>pragma</B> Import (C, Get_Field_Term_Hook, "field_term");
547 <I>-- <A NAME="AFU_38">|</I>
548 <B>function</B> Get_Form_Init_Hook (Frm : Form) <B>return</B> Form_Hook_Function;
549 <I>-- AKA: <A HREF="form_hook.3x.html">form_init()</A></I>
550 <B>pragma</B> Import (C, Get_Form_Init_Hook, "form_init");
552 <I>-- <A NAME="AFU_39">|</I>
553 <B>function</B> Get_Form_Term_Hook (Frm : Form) <B>return</B> Form_Hook_Function;
554 <I>-- AKA: <A HREF="form_hook.3x.html">form_term()</A></I>
555 <B>pragma</B> Import (C, Get_Form_Term_Hook, "form_term");
557 <I>-- |=====================================================================</I>
558 <I>-- | Man page <A HREF="form_field.3x.html">form_field.3x</A></I>
559 <I>-- |=====================================================================</I>
561 <I>-- <A NAME="AFU_40">|</I>
562 <B>procedure</B> Redefine (Frm : <B>in</B> Form;
563 Flds : <B>in</B> Field_Array_Access);
564 <I>-- AKA: <A HREF="form_field.3x.html">set_form_fields()</A></I>
566 <I>-- <A NAME="AFU_41">|</I>
567 <B>procedure</B> Set_Fields (Frm : <B>in</B> Form;
568 Flds : <B>in</B> Field_Array_Access) <B>renames</B> Redefine;
569 <I>-- AKA: <A HREF="form_field.3x.html">set_form_fields()</A></I>
571 <I>-- <A NAME="AFU_42">|</I>
572 <B>function</B> Fields (Frm : Form;
573 Index : Positive) <B>return</B> Field;
574 <I>-- AKA: <A HREF="form_field.3x.html">form_fields()</A></I>
576 <I>-- <A NAME="AFU_43">|</I>
577 <B>function</B> Field_Count (Frm : Form) <B>return</B> Natural;
578 <I>-- AKA: <A HREF="form_field.3x.html">field_count()</A></I>
580 <I>-- <A NAME="AFU_44">|</I>
581 <B>procedure</B> Move (Fld : <B>in</B> Field;
582 Line : <B>in</B> Line_Position;
583 Column : <B>in</B> Column_Position);
584 <I>-- AKA: <A HREF="form_field.3x.html">move_field()</A></I>
586 <I>-- |=====================================================================</I>
587 <I>-- | Man page <A HREF="form_new.3x.html">form_new.3x</A></I>
588 <I>-- |=====================================================================</I>
590 <I>-- <A NAME="AFU_45">|</I>
591 <B>function</B> Create (Fields : Field_Array_Access) <B>return</B> Form;
592 <I>-- AKA: <A HREF="form_new.3x.html">new_form()</A></I>
594 <I>-- <A NAME="AFU_46">|</I>
595 <B>function</B> New_Form (Fields : Field_Array_Access) <B>return</B> Form
596 <B>renames</B> Create;
597 <I>-- AKA: <A HREF="form_new.3x.html">new_form()</A></I>
599 <I>-- <A NAME="AFU_47">|</I>
600 <B>procedure</B> Delete (Frm : <B>in</B> <B>out</B> Form);
601 <I>-- AKA: <A HREF="form_new.3x.html">free_form()</A></I>
602 <I>-- Reset Frm to Null_Form</I>
604 <I>-- |=====================================================================</I>
605 <I>-- | Man page <A HREF="form_opts.3x.html">form_opts.3x</A></I>
606 <I>-- |=====================================================================</I>
608 <I>-- <A NAME="AFU_48">|</I>
609 <B>procedure</B> Set_Options (Frm : <B>in</B> Form;
610 Options : <B>in</B> Form_Option_Set);
611 <I>-- AKA: <A HREF="form_opts.3x.html">set_form_opts()</A></I>
613 <I>-- <A NAME="AFU_49">|</I>
614 <B>procedure</B> Switch_Options (Frm : <B>in</B> Form;
615 Options : <B>in</B> Form_Option_Set;
616 On : Boolean := True);
617 <I>-- AKA: <A HREF="form_opts.3x.html">form_opts_on()</A></I>
618 <I>-- AKA: form_opts_off()</I>
620 <I>-- <A NAME="AFU_50">|</I>
621 <B>procedure</B> Get_Options (Frm : <B>in</B> Form;
622 Options : <B>out</B> Form_Option_Set);
623 <I>-- AKA: <A HREF="form_opts.3x.html">form_opts()</A></I>
625 <I>-- <A NAME="AFU_51">|</I>
626 <B>function</B> Get_Options (Frm : Form := Null_Form) <B>return</B> Form_Option_Set;
627 <I>-- AKA: <A HREF="form_opts.3x.html">form_opts()</A></I>
629 <I>-- |=====================================================================</I>
630 <I>-- | Man page <A HREF="form_post.3x.html">form_post.3x</A></I>
631 <I>-- |=====================================================================</I>
633 <I>-- <A NAME="AFU_52">|</I>
634 <B>procedure</B> Post (Frm : <B>in</B> Form;
635 Post : <B>in</B> Boolean := True);
636 <I>-- AKA: <A HREF="form_post.3x.html">post_form()</A></I>
637 <I>-- AKA: unpost_form()</I>
639 <I>-- |=====================================================================</I>
640 <I>-- | Man page <A HREF="form_cursor.3x.html">form_cursor.3x</A></I>
641 <I>-- |=====================================================================</I>
643 <I>-- <A NAME="AFU_53">|</I>
644 <B>procedure</B> Position_Cursor (Frm : Form);
645 <I>-- AKA: <A HREF="form_cursor.3x.html">pos_form_cursor()</A></I>
647 <I>-- |=====================================================================</I>
648 <I>-- | Man page <A HREF="form_data.3x.html">form_data.3x</A></I>
649 <I>-- |=====================================================================</I>
651 <I>-- <A NAME="AFU_54">|</I>
652 <B>function</B> Data_Ahead (Frm : Form) <B>return</B> Boolean;
653 <I>-- AKA: <A HREF="form_data.3x.html">data_ahead()</A></I>
655 <I>-- <A NAME="AFU_55">|</I>
656 <B>function</B> Data_Behind (Frm : Form) <B>return</B> Boolean;
657 <I>-- AKA: <A HREF="form_data.3x.html">data_behind()</A></I>
659 <I>-- |=====================================================================</I>
660 <I>-- | Man page <A HREF="form_driver.3x.html">form_driver.3x</A></I>
661 <I>-- |=====================================================================</I>
663 type Driver_Result <B>is</B> (Form_Ok,
668 <I>-- <A NAME="AFU_56">|</I>
669 <B>function</B> Driver (Frm : Form;
670 Key : Key_Code) <B>return</B> Driver_Result;
671 <I>-- AKA: <A HREF="form_driver.3x.html">form_driver()</A></I>
673 <I>-- |=====================================================================</I>
674 <I>-- | Man page <A HREF="form_page.3x.html">form_page.3x</A></I>
675 <I>-- |=====================================================================</I>
677 type Page_Number <B>is</B> <B>new</B> Natural;
679 <I>-- <A NAME="AFU_57">|</I>
680 <B>procedure</B> Set_Current (Frm : <B>in</B> Form;
681 Fld : <B>in</B> Field);
682 <I>-- AKA: <A HREF="form_page.3x.html">set_current_field()</A></I>
684 <I>-- <A NAME="AFU_58">|</I>
685 <B>function</B> Current (Frm : <B>in</B> Form) <B>return</B> Field;
686 <I>-- AKA: <A HREF="form_page.3x.html">current_field()</A></I>
688 <I>-- <A NAME="AFU_59">|</I>
689 <B>procedure</B> Set_Page (Frm : <B>in</B> Form;
690 Page : <B>in</B> Page_Number := Page_Number'First);
691 <I>-- AKA: <A HREF="form_page.3x.html">set_form_page()</A></I>
693 <I>-- <A NAME="AFU_60">|</I>
694 <B>function</B> Page (Frm : Form) <B>return</B> Page_Number;
695 <I>-- AKA: <A HREF="form_page.3x.html">form_page()</A></I>
697 <I>-- <A NAME="AFU_61">|</I>
698 <B>function</B> Get_Index (Fld : Field) <B>return</B> Positive;
699 <I>-- AKA: <A HREF="form_page.3x.html">field_index()</A></I>
700 <I>-- Please note that in this binding we start the numbering of fields</I>
701 <I>-- with 1. So this is number is one more than you get from the low</I>
702 <I>-- level call.</I>
704 <I>-- |=====================================================================</I>
705 <I>-- | Man page <A HREF="form_new_page.3x.html">form_new_page.3x</A></I>
706 <I>-- |=====================================================================</I>
708 <I>-- <A NAME="AFU_62">|</I>
709 <B>procedure</B> Set_New_Page (Fld : <B>in</B> Field;
710 New_Page : <B>in</B> Boolean := True);
711 <I>-- AKA: <A HREF="form_new_page.3x.html">set_new_page()</A></I>
713 <I>-- <A NAME="AFU_63">|</I>
714 <B>function</B> Is_New_Page (Fld : Field) <B>return</B> Boolean;
715 <I>-- AKA: <A HREF="form_new_page.3x.html">new_page()</A></I>
718 <I>------------------------------------------------------------------------------</I>
721 type Field <B>is</B> <B>new</B> System.Address;
722 type Form <B>is</B> <B>new</B> System.Address;
724 Null_Field : <B>constant</B> Field := Field (System.Null_Address);
725 Null_Form : <B>constant</B> Form := Form (System.Null_Address);
727 Generation_Bit_Order : <B>constant</B> System.Bit_Order := System.Low_Order_First;
728 <I>-- This constant may be different on your system.</I>
730 <B>end</B> Terminal_Interface.Curses.Forms;
736 This is BETA software. The interface is subject to change without notice.<P>
737 <!-- Do NOT delete my name or the tool name from below; -->
738 <!-- giving me credit is a condition of use of ada2html -->
739 <P><I>This hypertext format was generated by <A HREF="http://www.adahome.com/Tutorials/Lovelace/dwheeler.htm">David A. Wheeler</A>'s <A HREF="http://www.adahome.com/Resources/Tools/ada2html/ada2html.htm">ada2html</A></I>