blob: 727cc8316d9f8132912e1ba5f71b61560a13e463 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN">
<HTML>
<HEAD>
<TITLE>terminal_interface-curses.ads</TITLE>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
*.comment {
color: green;
}
*.symbol {
color: red;
}
</style>
</HEAD>
<BODY>
<HR><DIV style="text-align:center"><H1> File : terminal_interface-curses.ads </H1></DIV><HR>
<PRE>
<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
<span class="comment"><EM>-- --</EM></span>
<span class="comment"><EM>-- <A HREF="http://www.gnat.com">GNAT</A> ncurses Binding --</EM></span>
<span class="comment"><EM>-- --</EM></span>
<span class="comment"><EM>-- Terminal_Interface.Curses --</EM></span>
<span class="comment"><EM>-- --</EM></span>
<span class="comment"><EM>-- S P E C --</EM></span>
<span class="comment"><EM>-- --</EM></span>
<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
<span class="comment"><EM>-- Copyright (c) 1998-2011,2014 Free Software Foundation, Inc. --</EM></span>
<span class="comment"><EM>-- --</EM></span>
<span class="comment"><EM>-- Permission is hereby granted, free of charge, to any person obtaining a --</EM></span>
<span class="comment"><EM>-- copy of this software and associated documentation files (the --</EM></span>
<span class="comment"><EM>-- "Software"), to deal in the Software without restriction, including --</EM></span>
<span class="comment"><EM>-- without limitation the rights to use, copy, modify, merge, publish, --</EM></span>
<span class="comment"><EM>-- distribute, distribute with modifications, sublicense, and/or sell --</EM></span>
<span class="comment"><EM>-- copies of the Software, and to permit persons to whom the Software is --</EM></span>
<span class="comment"><EM>-- furnished to do so, subject to the following conditions: --</EM></span>
<span class="comment"><EM>-- --</EM></span>
<span class="comment"><EM>-- The above copyright notice and this permission notice shall be included --</EM></span>
<span class="comment"><EM>-- in all copies or substantial portions of the Software. --</EM></span>
<span class="comment"><EM>-- --</EM></span>
<span class="comment"><EM>-- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS --</EM></span>
<span class="comment"><EM>-- OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF --</EM></span>
<span class="comment"><EM>-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. --</EM></span>
<span class="comment"><EM>-- IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, --</EM></span>
<span class="comment"><EM>-- DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR --</EM></span>
<span class="comment"><EM>-- OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR --</EM></span>
<span class="comment"><EM>-- THE USE OR OTHER DEALINGS IN THE SOFTWARE. --</EM></span>
<span class="comment"><EM>-- --</EM></span>
<span class="comment"><EM>-- Except as contained in this notice, the name(s) of the above copyright --</EM></span>
<span class="comment"><EM>-- holders shall not be used in advertising or otherwise to promote the --</EM></span>
<span class="comment"><EM>-- sale, use or other dealings in this Software without prior written --</EM></span>
<span class="comment"><EM>-- authorization. --</EM></span>
<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
<span class="comment"><EM>-- Author: Juergen Pfeifer, 1996</EM></span>
<span class="comment"><EM>-- Version Control:</EM></span>
<span class="comment"><EM>-- @Revision: 1.47 @</EM></span>
<span class="comment"><EM>-- @Date: 2014/05/24 21:31:57 @</EM></span>
<span class="comment"><EM>-- Binding Version 01.00</EM></span>
<span class="comment"><EM>------------------------------------------------------------------------------</EM></span>
<b>with</b> System.Storage_Elements;
<b>with</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C; <span class="comment"><EM>-- We need this for some assertions.</EM></span>
<b>with</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>;
<b>package</b> <A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<span class="symbol"><A NAME="ref_47_28" HREF="terminal_interface-curses__adb.htm#ref_50_33">Curses</A></span> <b>is</b>
<b>pragma</b> Preelaborate (<A HREF="terminal_interface__ads.htm#ref_42_9">Terminal_Interface</A>.<A HREF="terminal_interface-curses__ads.htm#ref_47_28">Curses</A>);
<b>pragma</b> Linker_Options ("-lncurses" &amp; <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>);
<span class="symbol"><A NAME="ref_51_4">Major_Version</A></span> : <b>constant</b> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_21_4">NCURSES_VERSION_MAJOR</A>;
<span class="symbol"><A NAME="ref_52_4">Minor_Version</A></span> : <b>constant</b> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_22_4">NCURSES_VERSION_MINOR</A>;
NC_Version : String <b>renames</b> <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_23_4">Version</A>;
<b>type</b> <span class="symbol"><A NAME="ref_55_9">Window</A></span> <b>is</b> <b>private</b>;
<span class="symbol"><A NAME="ref_56_4">Null_Window</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
<b>type</b> <span class="symbol"><A NAME="ref_58_9">Line_Position</A></span> <b>is</b> <b>new</b> Integer; <span class="comment"><EM>-- line coordinate</EM></span>
<b>type</b> <span class="symbol"><A NAME="ref_59_9">Column_Position</A></span> <b>is</b> <b>new</b> Integer; <span class="comment"><EM>-- column coordinate</EM></span>
<b>subtype</b> <span class="symbol"><A NAME="ref_61_12">Line_Count</A></span> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A> <b>range</b> 1 .. <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>'Last;
<span class="comment"><EM>-- Type to count lines. We do not allow null windows, so must be positive</EM></span>
<b>subtype</b> <span class="symbol"><A NAME="ref_63_12">Column_Count</A></span> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A> <b>range</b> 1 .. <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>'Last;
<span class="comment"><EM>-- Type to count columns. We do not allow null windows, so must be positive</EM></span>
<b>type</b> <span class="symbol"><A NAME="ref_66_9">Key_Code</A></span> <b>is</b> <b>new</b> Integer;
<span class="comment"><EM>-- That is anything including real characters, special keys and logical</EM></span>
<span class="comment"><EM>-- request codes.</EM></span>
<span class="comment"><EM>-- FIXME: The "-1" should be Curses_Err</EM></span>
<b>subtype</b> <span class="symbol"><A NAME="ref_71_12">Real_Key_Code</A></span> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_66_9">Key_Code</A> <b>range</b> -1 .. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_99_4">KEY_MAX</A>;
<span class="comment"><EM>-- This are the codes that potentially represent a real keystroke.</EM></span>
<span class="comment"><EM>-- Not all codes may be possible on a specific terminal. To check the</EM></span>
<span class="comment"><EM>-- availability of a special key, the Has_Key function is provided.</EM></span>
<b>subtype</b> <span class="symbol"><A NAME="ref_76_12">Special_Key_Code</A></span> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_71_12">Real_Key_Code</A>
<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_98_4">KEY_MIN</A> - 1 .. <A HREF="terminal_interface-curses__ads.htm#ref_71_12">Real_Key_Code</A>'Last;
<span class="comment"><EM>-- Type for a function- or special key number</EM></span>
<b>subtype</b> <span class="symbol"><A NAME="ref_80_12">Normal_Key_Code</A></span> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_71_12">Real_Key_Code</A> <b>range</b>
Character'Pos (Character'First) .. Character'Pos (Character'Last);
<span class="comment"><EM>-- This are the codes for regular (incl. non-graphical) characters.</EM></span>
<span class="comment"><EM>-- For those who like to use the original key names we produce them were</EM></span>
<span class="comment"><EM>-- they differ from the original.</EM></span>
<span class="comment"><EM>-- Constants for function- and special keys</EM></span>
<span class="symbol"><A NAME="ref_88_4">Key_None</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_98_4">KEY_MIN</A> - 1;
<span class="symbol"><A NAME="ref_90_4">Key_Min</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_98_4">KEY_MIN</A>;
<span class="symbol"><A NAME="ref_92_4">Key_Break</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_104_4">KEY_BREAK</A>;
<span class="symbol"><A NAME="ref_94_4">KEY_DOWN</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_105_4">KEY_DOWN</A>;
Key_Cursor_Down : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_94_4">KEY_DOWN</A>;
<span class="symbol"><A NAME="ref_97_4">KEY_UP</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_106_4">KEY_UP</A>;
Key_Cursor_Up : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_97_4">KEY_UP</A>;
<span class="symbol"><A NAME="ref_100_4">KEY_LEFT</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_107_4">KEY_LEFT</A>;
Key_Cursor_Left : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_100_4">KEY_LEFT</A>;
<span class="symbol"><A NAME="ref_103_4">KEY_RIGHT</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_108_4">KEY_RIGHT</A>;
Key_Cursor_Right : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_103_4">KEY_RIGHT</A>;
<span class="symbol"><A NAME="ref_106_4">Key_Home</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_109_4">KEY_HOME</A>;
<span class="symbol"><A NAME="ref_108_4">Key_Backspace</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_110_4">KEY_BACKSPACE</A>;
<span class="symbol"><A NAME="ref_110_4">Key_F0</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_111_4">KEY_F0</A>;
<span class="symbol"><A NAME="ref_112_4">Key_F1</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_112_4">KEY_F1</A>;
<span class="symbol"><A NAME="ref_114_4">Key_F2</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_113_4">KEY_F2</A>;
<span class="symbol"><A NAME="ref_116_4">Key_F3</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_114_4">KEY_F3</A>;
<span class="symbol"><A NAME="ref_118_4">Key_F4</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_115_4">KEY_F4</A>;
<span class="symbol"><A NAME="ref_120_4">Key_F5</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_116_4">KEY_F5</A>;
<span class="symbol"><A NAME="ref_122_4">Key_F6</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_117_4">KEY_F6</A>;
<span class="symbol"><A NAME="ref_124_4">Key_F7</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_118_4">KEY_F7</A>;
<span class="symbol"><A NAME="ref_126_4">Key_F8</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_119_4">KEY_F8</A>;
<span class="symbol"><A NAME="ref_128_4">Key_F9</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_120_4">KEY_F9</A>;
<span class="symbol"><A NAME="ref_130_4">Key_F10</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_121_4">KEY_F10</A>;
<span class="symbol"><A NAME="ref_132_4">Key_F11</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_122_4">KEY_F11</A>;
<span class="symbol"><A NAME="ref_134_4">Key_F12</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_123_4">KEY_F12</A>;
<span class="symbol"><A NAME="ref_136_4">Key_F13</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_124_4">KEY_F13</A>;
<span class="symbol"><A NAME="ref_138_4">Key_F14</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_125_4">KEY_F14</A>;
<span class="symbol"><A NAME="ref_140_4">Key_F15</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_126_4">KEY_F15</A>;
<span class="symbol"><A NAME="ref_142_4">Key_F16</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_127_4">KEY_F16</A>;
<span class="symbol"><A NAME="ref_144_4">Key_F17</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_128_4">KEY_F17</A>;
<span class="symbol"><A NAME="ref_146_4">Key_F18</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_129_4">KEY_F18</A>;
<span class="symbol"><A NAME="ref_148_4">Key_F19</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_130_4">KEY_F19</A>;
<span class="symbol"><A NAME="ref_150_4">Key_F20</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_131_4">KEY_F20</A>;
<span class="symbol"><A NAME="ref_152_4">Key_F21</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_132_4">KEY_F21</A>;
<span class="symbol"><A NAME="ref_154_4">Key_F22</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_133_4">KEY_F22</A>;
<span class="symbol"><A NAME="ref_156_4">Key_F23</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_134_4">KEY_F23</A>;
<span class="symbol"><A NAME="ref_158_4">Key_F24</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_135_4">KEY_F24</A>;
<span class="symbol"><A NAME="ref_160_4">KEY_DL</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_136_4">KEY_DL</A>;
Key_Delete_Line : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_160_4">KEY_DL</A>;
<span class="symbol"><A NAME="ref_163_4">KEY_IL</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_137_4">KEY_IL</A>;
Key_Insert_Line : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_163_4">KEY_IL</A>;
<span class="symbol"><A NAME="ref_166_4">KEY_DC</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_138_4">KEY_DC</A>;
Key_Delete_Char : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_166_4">KEY_DC</A>;
<span class="symbol"><A NAME="ref_169_4">KEY_IC</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_139_4">KEY_IC</A>;
Key_Insert_Char : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_169_4">KEY_IC</A>;
<span class="symbol"><A NAME="ref_172_4">KEY_EIC</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_140_4">KEY_EIC</A>;
Key_Exit_Insert_Mode : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_172_4">KEY_EIC</A>;
<span class="symbol"><A NAME="ref_175_4">KEY_CLEAR</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_141_4">KEY_CLEAR</A>;
Key_Clear_Screen : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_175_4">KEY_CLEAR</A>;
<span class="symbol"><A NAME="ref_178_4">KEY_EOS</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_142_4">KEY_EOS</A>;
Key_Clear_End_Of_Screen : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_178_4">KEY_EOS</A>;
<span class="symbol"><A NAME="ref_181_4">KEY_EOL</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_143_4">KEY_EOL</A>;
Key_Clear_End_Of_Line : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_181_4">KEY_EOL</A>;
<span class="symbol"><A NAME="ref_184_4">KEY_SF</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_144_4">KEY_SF</A>;
Key_Scroll_1_Forward : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_184_4">KEY_SF</A>;
<span class="symbol"><A NAME="ref_187_4">KEY_SR</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_145_4">KEY_SR</A>;
Key_Scroll_1_Backward : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_187_4">KEY_SR</A>;
<span class="symbol"><A NAME="ref_190_4">KEY_NPAGE</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_146_4">KEY_NPAGE</A>;
Key_Next_Page : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_190_4">KEY_NPAGE</A>;
<span class="symbol"><A NAME="ref_193_4">KEY_PPAGE</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_147_4">KEY_PPAGE</A>;
Key_Previous_Page : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_193_4">KEY_PPAGE</A>;
<span class="symbol"><A NAME="ref_196_4">KEY_STAB</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_148_4">KEY_STAB</A>;
Key_Set_Tab : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_196_4">KEY_STAB</A>;
<span class="symbol"><A NAME="ref_199_4">KEY_CTAB</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_149_4">KEY_CTAB</A>;
Key_Clear_Tab : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_199_4">KEY_CTAB</A>;
<span class="symbol"><A NAME="ref_202_4">KEY_CATAB</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_150_4">KEY_CATAB</A>;
Key_Clear_All_Tabs : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_202_4">KEY_CATAB</A>;
<span class="symbol"><A NAME="ref_205_4">KEY_ENTER</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_151_4">KEY_ENTER</A>;
Key_Enter_Or_Send : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_205_4">KEY_ENTER</A>;
<span class="symbol"><A NAME="ref_208_4">KEY_SRESET</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_152_4">KEY_SRESET</A>;
Key_Soft_Reset : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_208_4">KEY_SRESET</A>;
<span class="symbol"><A NAME="ref_211_4">Key_Reset</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_153_4">KEY_RESET</A>;
<span class="symbol"><A NAME="ref_213_4">Key_Print</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_154_4">KEY_PRINT</A>;
<span class="symbol"><A NAME="ref_215_4">KEY_LL</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_155_4">KEY_LL</A>;
Key_Bottom : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_215_4">KEY_LL</A>;
<span class="symbol"><A NAME="ref_218_4">KEY_A1</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_156_4">KEY_A1</A>;
Key_Upper_Left_Of_Keypad : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_218_4">KEY_A1</A>;
<span class="symbol"><A NAME="ref_221_4">KEY_A3</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_157_4">KEY_A3</A>;
Key_Upper_Right_Of_Keypad : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_221_4">KEY_A3</A>;
<span class="symbol"><A NAME="ref_224_4">KEY_B2</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_158_4">KEY_B2</A>;
Key_Center_Of_Keypad : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_224_4">KEY_B2</A>;
<span class="symbol"><A NAME="ref_227_4">KEY_C1</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_159_4">KEY_C1</A>;
Key_Lower_Left_Of_Keypad : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_227_4">KEY_C1</A>;
<span class="symbol"><A NAME="ref_230_4">KEY_C3</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_160_4">KEY_C3</A>;
Key_Lower_Right_Of_Keypad : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_230_4">KEY_C3</A>;
<span class="symbol"><A NAME="ref_233_4">KEY_BTAB</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_161_4">KEY_BTAB</A>;
Key_Back_Tab : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_233_4">KEY_BTAB</A>;
<span class="symbol"><A NAME="ref_236_4">KEY_BEG</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_162_4">KEY_BEG</A>;
Key_Beginning : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_236_4">KEY_BEG</A>;
<span class="symbol"><A NAME="ref_239_4">Key_Cancel</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_163_4">KEY_CANCEL</A>;
<span class="symbol"><A NAME="ref_241_4">Key_Close</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_164_4">KEY_CLOSE</A>;
<span class="symbol"><A NAME="ref_243_4">Key_Command</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_165_4">KEY_COMMAND</A>;
<span class="symbol"><A NAME="ref_245_4">Key_Copy</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_166_4">KEY_COPY</A>;
<span class="symbol"><A NAME="ref_247_4">Key_Create</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_167_4">KEY_CREATE</A>;
<span class="symbol"><A NAME="ref_249_4">Key_End</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_168_4">KEY_END</A>;
<span class="symbol"><A NAME="ref_251_4">Key_Exit</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_169_4">KEY_EXIT</A>;
<span class="symbol"><A NAME="ref_253_4">Key_Find</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_170_4">KEY_FIND</A>;
<span class="symbol"><A NAME="ref_255_4">Key_Help</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_171_4">KEY_HELP</A>;
<span class="symbol"><A NAME="ref_257_4">Key_Mark</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_172_4">KEY_MARK</A>;
<span class="symbol"><A NAME="ref_259_4">Key_Message</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_173_4">KEY_MESSAGE</A>;
<span class="symbol"><A NAME="ref_261_4">Key_Move</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_174_4">KEY_MOVE</A>;
<span class="symbol"><A NAME="ref_263_4">Key_Next</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_175_4">KEY_NEXT</A>;
<span class="symbol"><A NAME="ref_265_4">Key_Open</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_176_4">KEY_OPEN</A>;
<span class="symbol"><A NAME="ref_267_4">Key_Options</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_177_4">KEY_OPTIONS</A>;
<span class="symbol"><A NAME="ref_269_4">Key_Previous</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_178_4">KEY_PREVIOUS</A>;
<span class="symbol"><A NAME="ref_271_4">Key_Redo</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_179_4">KEY_REDO</A>;
<span class="symbol"><A NAME="ref_273_4">Key_Reference</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_180_4">KEY_REFERENCE</A>;
<span class="symbol"><A NAME="ref_275_4">Key_Refresh</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_181_4">KEY_REFRESH</A>;
<span class="symbol"><A NAME="ref_277_4">Key_Replace</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_182_4">KEY_REPLACE</A>;
<span class="symbol"><A NAME="ref_279_4">Key_Restart</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_183_4">KEY_RESTART</A>;
<span class="symbol"><A NAME="ref_281_4">Key_Resume</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_184_4">KEY_RESUME</A>;
<span class="symbol"><A NAME="ref_283_4">Key_Save</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_185_4">KEY_SAVE</A>;
<span class="symbol"><A NAME="ref_285_4">KEY_SBEG</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_186_4">KEY_SBEG</A>;
Key_Shift_Begin : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_285_4">KEY_SBEG</A>;
<span class="symbol"><A NAME="ref_288_4">KEY_SCANCEL</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_187_4">KEY_SCANCEL</A>;
Key_Shift_Cancel : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_288_4">KEY_SCANCEL</A>;
<span class="symbol"><A NAME="ref_291_4">KEY_SCOMMAND</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_188_4">KEY_SCOMMAND</A>;
Key_Shift_Command : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_291_4">KEY_SCOMMAND</A>;
<span class="symbol"><A NAME="ref_294_4">KEY_SCOPY</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_189_4">KEY_SCOPY</A>;
Key_Shift_Copy : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_294_4">KEY_SCOPY</A>;
<span class="symbol"><A NAME="ref_297_4">KEY_SCREATE</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_190_4">KEY_SCREATE</A>;
Key_Shift_Create : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_297_4">KEY_SCREATE</A>;
<span class="symbol"><A NAME="ref_300_4">KEY_SDC</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_191_4">KEY_SDC</A>;
Key_Shift_Delete_Char : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_300_4">KEY_SDC</A>;
<span class="symbol"><A NAME="ref_303_4">KEY_SDL</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_192_4">KEY_SDL</A>;
Key_Shift_Delete_Line : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_303_4">KEY_SDL</A>;
<span class="symbol"><A NAME="ref_306_4">Key_Select</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_193_4">KEY_SELECT</A>;
<span class="symbol"><A NAME="ref_308_4">KEY_SEND</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_194_4">KEY_SEND</A>;
Key_Shift_End : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_308_4">KEY_SEND</A>;
<span class="symbol"><A NAME="ref_311_4">KEY_SEOL</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_195_4">KEY_SEOL</A>;
Key_Shift_Clear_End_Of_Line : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_311_4">KEY_SEOL</A>;
<span class="symbol"><A NAME="ref_314_4">KEY_SEXIT</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_196_4">KEY_SEXIT</A>;
Key_Shift_Exit : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_314_4">KEY_SEXIT</A>;
<span class="symbol"><A NAME="ref_317_4">KEY_SFIND</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_197_4">KEY_SFIND</A>;
Key_Shift_Find : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_317_4">KEY_SFIND</A>;
<span class="symbol"><A NAME="ref_320_4">KEY_SHELP</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_198_4">KEY_SHELP</A>;
Key_Shift_Help : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_320_4">KEY_SHELP</A>;
<span class="symbol"><A NAME="ref_323_4">KEY_SHOME</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_199_4">KEY_SHOME</A>;
Key_Shift_Home : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_323_4">KEY_SHOME</A>;
<span class="symbol"><A NAME="ref_326_4">KEY_SIC</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_200_4">KEY_SIC</A>;
Key_Shift_Insert_Char : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_326_4">KEY_SIC</A>;
<span class="symbol"><A NAME="ref_329_4">KEY_SLEFT</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_201_4">KEY_SLEFT</A>;
Key_Shift_Cursor_Left : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_329_4">KEY_SLEFT</A>;
<span class="symbol"><A NAME="ref_332_4">KEY_SMESSAGE</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_202_4">KEY_SMESSAGE</A>;
Key_Shift_Message : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_332_4">KEY_SMESSAGE</A>;
<span class="symbol"><A NAME="ref_335_4">KEY_SMOVE</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_203_4">KEY_SMOVE</A>;
Key_Shift_Move : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_335_4">KEY_SMOVE</A>;
<span class="symbol"><A NAME="ref_338_4">KEY_SNEXT</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_204_4">KEY_SNEXT</A>;
Key_Shift_Next_Page : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_338_4">KEY_SNEXT</A>;
<span class="symbol"><A NAME="ref_341_4">KEY_SOPTIONS</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_205_4">KEY_SOPTIONS</A>;
Key_Shift_Options : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_341_4">KEY_SOPTIONS</A>;
<span class="symbol"><A NAME="ref_344_4">KEY_SPREVIOUS</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_206_4">KEY_SPREVIOUS</A>;
Key_Shift_Previous_Page : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_344_4">KEY_SPREVIOUS</A>;
<span class="symbol"><A NAME="ref_347_4">KEY_SPRINT</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_207_4">KEY_SPRINT</A>;
Key_Shift_Print : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_347_4">KEY_SPRINT</A>;
<span class="symbol"><A NAME="ref_350_4">KEY_SREDO</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_208_4">KEY_SREDO</A>;
Key_Shift_Redo : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_350_4">KEY_SREDO</A>;
<span class="symbol"><A NAME="ref_353_4">KEY_SREPLACE</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_209_4">KEY_SREPLACE</A>;
Key_Shift_Replace : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_353_4">KEY_SREPLACE</A>;
<span class="symbol"><A NAME="ref_356_4">KEY_SRIGHT</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_210_4">KEY_SRIGHT</A>;
Key_Shift_Cursor_Right : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_356_4">KEY_SRIGHT</A>;
<span class="symbol"><A NAME="ref_359_4">KEY_SRSUME</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_211_4">KEY_SRSUME</A>;
Key_Shift_Resume : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_359_4">KEY_SRSUME</A>;
<span class="symbol"><A NAME="ref_362_4">KEY_SSAVE</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_212_4">KEY_SSAVE</A>;
Key_Shift_Save : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_362_4">KEY_SSAVE</A>;
<span class="symbol"><A NAME="ref_365_4">KEY_SSUSPEND</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_213_4">KEY_SSUSPEND</A>;
Key_Shift_Suspend : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_365_4">KEY_SSUSPEND</A>;
<span class="symbol"><A NAME="ref_368_4">KEY_SUNDO</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_214_4">KEY_SUNDO</A>;
Key_Shift_Undo : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_368_4">KEY_SUNDO</A>;
<span class="symbol"><A NAME="ref_371_4">Key_Suspend</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_215_4">KEY_SUSPEND</A>;
<span class="symbol"><A NAME="ref_373_4">Key_Undo</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_216_4">KEY_UNDO</A>;
<span class="symbol"><A NAME="ref_375_4">Key_Mouse</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_217_4">KEY_MOUSE</A>;
<span class="symbol"><A NAME="ref_377_4">Key_Resize</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_218_4">KEY_RESIZE</A>;
<span class="symbol"><A NAME="ref_379_4">Key_Max</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>
:= <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>'Last;
<b>subtype</b> <span class="symbol"><A NAME="ref_382_12">User_Key_Code</A></span> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_66_9">Key_Code</A>
<b>range</b> (<A HREF="terminal_interface-curses__ads.htm#ref_379_4">Key_Max</A> + 129) .. <A HREF="terminal_interface-curses__ads.htm#ref_66_9">Key_Code</A>'Last;
<span class="comment"><EM>-- This is reserved for user defined key codes. The range between Key_Max</EM></span>
<span class="comment"><EM>-- and the first user code is reserved for subsystems like menu and forms.</EM></span>
<span class="comment"><EM>--------------------------------------------------------------------------</EM></span>
<b>type</b> <span class="symbol"><A NAME="ref_389_9">Color_Number</A></span> <b>is</b> <b>range</b> -1 .. Integer (<A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.short'Last);
<b>for</b> <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A>'Size <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.short'Size;
<span class="comment"><EM>-- (n)curses uses a short for the color index</EM></span>
<span class="comment"><EM>-- The model is, that a Color_Number is an index into an array of</EM></span>
<span class="comment"><EM>-- (potentially) definable colors. Some of those indices are</EM></span>
<span class="comment"><EM>-- predefined (see below), although they may not really exist.</EM></span>
<span class="symbol"><A NAME="ref_396_4">Black</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_69_4">COLOR_BLACK</A>;
<span class="symbol"><A NAME="ref_397_4">Red</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_70_4">COLOR_RED</A>;
<span class="symbol"><A NAME="ref_398_4">Green</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_71_4">COLOR_GREEN</A>;
<span class="symbol"><A NAME="ref_399_4">Yellow</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_72_4">COLOR_YELLOW</A>;
<span class="symbol"><A NAME="ref_400_4">Blue</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_73_4">COLOR_BLUE</A>;
<span class="symbol"><A NAME="ref_401_4">Magenta</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_74_4">COLOR_MAGENTA</A>;
<span class="symbol"><A NAME="ref_402_4">Cyan</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_75_4">COLOR_CYAN</A>;
<span class="symbol"><A NAME="ref_403_4">White</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_389_9">Color_Number</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_76_4">COLOR_WHITE</A>;
<b>type</b> <span class="symbol"><A NAME="ref_405_9">RGB_Value</A></span> <b>is</b> <b>range</b> 0 .. Integer (<A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.short'Last);
<b>for</b> <A HREF="terminal_interface-curses__ads.htm#ref_405_9">RGB_Value</A>'Size <b>use</b> <A HREF="interfac__ads.htm#ref_36_9">Interfaces</A>.C.short'Size;
<span class="comment"><EM>-- Some system may allow to redefine a color by setting RGB values.</EM></span>
<b>type</b> <span class="symbol"><A NAME="ref_409_9">Color_Pair</A></span> <b>is</b> <b>range</b> 0 .. 255;
<b>for</b> <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'Size <b>use</b> 8;
<b>subtype</b> <span class="symbol"><A NAME="ref_411_12">Redefinable_Color_Pair</A></span> <b>is</b> <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A> <b>range</b> 1 .. 255;
<span class="comment"><EM>-- (n)curses reserves 1 Byte for the color-pair number. Color Pair 0</EM></span>
<span class="comment"><EM>-- is fixed (Black &amp; White). A color pair is simply a combination of</EM></span>
<span class="comment"><EM>-- two colors described by Color_Numbers, one for the foreground and</EM></span>
<span class="comment"><EM>-- the other for the background</EM></span>
<b>type</b> <span class="symbol"><A NAME="ref_417_9">Character_Attribute_Set</A></span> <b>is</b>
<b>record</b>
<span class="symbol"><A NAME="ref_419_10">Stand_Out</A></span> : Boolean;
<span class="symbol"><A NAME="ref_420_10">Under_Line</A></span> : Boolean;
<span class="symbol"><A NAME="ref_421_10">Reverse_Video</A></span> : Boolean;
<span class="symbol"><A NAME="ref_422_10">Blink</A></span> : Boolean;
<span class="symbol"><A NAME="ref_423_10">Dim_Character</A></span> : Boolean;
<span class="symbol"><A NAME="ref_424_10">Bold_Character</A></span> : Boolean;
<span class="symbol"><A NAME="ref_425_10">Protected_Character</A></span> : Boolean;
<span class="symbol"><A NAME="ref_426_10">Invisible_Character</A></span> : Boolean;
<span class="symbol"><A NAME="ref_427_10">Alternate_Character_Set</A></span> : Boolean;
<span class="symbol"><A NAME="ref_428_10">Horizontal</A></span> : Boolean;
<span class="symbol"><A NAME="ref_429_10">Left</A></span> : Boolean;
<span class="symbol"><A NAME="ref_430_10">Low</A></span> : Boolean;
<span class="symbol"><A NAME="ref_431_10">Right</A></span> : Boolean;
<span class="symbol"><A NAME="ref_432_10">Top</A></span> : Boolean;
<span class="symbol"><A NAME="ref_433_10">Vertical</A></span> : Boolean;
<b>end</b> <b>record</b>;
<b>for</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A> <b>use</b>
<b>record</b>
<A HREF="terminal_interface-curses__ads.htm#ref_419_10">Stand_Out</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_35_4">A_STANDOUT_First</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
.. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_36_4">A_STANDOUT_Last</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>;
<A HREF="terminal_interface-curses__ads.htm#ref_420_10">Under_Line</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_37_4">A_UNDERLINE_First</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
.. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_38_4">A_UNDERLINE_Last</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>;
<A HREF="terminal_interface-curses__ads.htm#ref_421_10">Reverse_Video</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_39_4">A_REVERSE_First</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
.. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_40_4">A_REVERSE_Last</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>;
<A HREF="terminal_interface-curses__ads.htm#ref_422_10">Blink</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_41_4">A_BLINK_First</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
.. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_42_4">A_BLINK_Last</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>;
<A HREF="terminal_interface-curses__ads.htm#ref_423_10">Dim_Character</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_43_4">A_DIM_First</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
.. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_44_4">A_DIM_Last</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>;
<A HREF="terminal_interface-curses__ads.htm#ref_424_10">Bold_Character</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_45_4">A_BOLD_First</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
.. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_46_4">A_BOLD_Last</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>;
<A HREF="terminal_interface-curses__ads.htm#ref_425_10">Protected_Character</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_47_4">A_PROTECT_First</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
.. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_48_4">A_PROTECT_Last</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>;
<A HREF="terminal_interface-curses__ads.htm#ref_426_10">Invisible_Character</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_49_4">A_INVIS_First</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
.. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_50_4">A_INVIS_Last</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>;
<A HREF="terminal_interface-curses__ads.htm#ref_427_10">Alternate_Character_Set</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_51_4">A_ALTCHARSET_First</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
.. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_52_4">A_ALTCHARSET_Last</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>;
<A HREF="terminal_interface-curses__ads.htm#ref_428_10">Horizontal</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_53_4">A_HORIZONTAL_First</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
.. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_54_4">A_HORIZONTAL_Last</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>;
<A HREF="terminal_interface-curses__ads.htm#ref_429_10">Left</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_55_4">A_LEFT_First</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
.. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_56_4">A_LEFT_Last</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>;
<A HREF="terminal_interface-curses__ads.htm#ref_430_10">Low</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_57_4">A_LOW_First</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
.. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_58_4">A_LOW_Last</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>;
<A HREF="terminal_interface-curses__ads.htm#ref_431_10">Right</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_59_4">A_RIGHT_First</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
.. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_60_4">A_RIGHT_Last</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>;
<A HREF="terminal_interface-curses__ads.htm#ref_432_10">Top</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_61_4">A_TOP_First</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
.. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_62_4">A_TOP_Last</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>;
<A HREF="terminal_interface-curses__ads.htm#ref_433_10">Vertical</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_63_4">A_VERTICAL_First</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>
.. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_64_4">A_VERTICAL_Last</A> - <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_33_4">Attr_First</A>;
<b>end</b> <b>record</b>;
<span class="symbol"><A NAME="ref_485_4">Normal_Video</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A> := (<b>others</b> =&gt; False);
<b>type</b> <span class="symbol"><A NAME="ref_487_9">Attributed_Character</A></span> <b>is</b>
<b>record</b>
<span class="symbol"><A NAME="ref_489_10">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>;
<span class="symbol"><A NAME="ref_490_10">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>;
<span class="symbol"><A NAME="ref_491_10">Ch</A></span> : Character;
<b>end</b> <b>record</b>;
<b>pragma</b> Convention (C_Pass_By_Copy, <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>);
<span class="comment"><EM>-- This is the counterpart for the chtype in C.</EM></span>
<b>for</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> <b>use</b>
<b>record</b>
<A HREF="terminal_interface-curses__ads.htm#ref_491_10">Ch</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_29_4">A_CHARTEXT_First</A>
.. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_30_4">A_CHARTEXT_Last</A>;
<A HREF="terminal_interface-curses__ads.htm#ref_490_10">Color</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_31_4">A_COLOR_First</A>
.. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_32_4">A_COLOR_Last</A>;
<b>pragma</b> Warnings (Off);
<A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</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_33_4">Attr_First</A>
.. <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_34_4">Attr_Last</A>;
<b>pragma</b> Warnings (On);
<b>end</b> <b>record</b>;
<b>for</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</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_65_4">chtype_Size</A>;
<span class="symbol"><A NAME="ref_509_4">Default_Character</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>
:= (<A HREF="terminal_interface-curses__ads.htm#ref_491_10">Ch</A> =&gt; Character'First,
<A HREF="terminal_interface-curses__ads.htm#ref_490_10">Color</A> =&gt; <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First,
<A HREF="terminal_interface-curses__ads.htm#ref_489_10">Attr</A> =&gt; (<b>others</b> =&gt; False)); <span class="comment"><EM>-- preelaboratable Normal_Video</EM></span>
<b>type</b> Attributed_String <b>is</b> <b>array</b> (Positive <b>range</b> &lt;&gt;) <b>of</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
<b>pragma</b> Convention (C, Attributed_String);
<span class="comment"><EM>-- In this binding we allow strings of attributed characters.</EM></span>
<span class="comment"><EM>------------------</EM></span>
<span class="comment"><EM>-- Exceptions --</EM></span>
<span class="comment"><EM>------------------</EM></span>
<span class="symbol"><A NAME="ref_521_4">Curses_Exception</A></span> : <b>exception</b>;
<span class="symbol"><A NAME="ref_522_4">Wrong_Curses_Version</A></span> : <b>exception</b>;
<span class="comment"><EM>-- Those exceptions are raised by the ETI (Extended Terminal Interface)</EM></span>
<span class="comment"><EM>-- subpackets for Menu and Forms handling.</EM></span>
<span class="comment"><EM>--</EM></span>
<span class="symbol"><A NAME="ref_527_4">Eti_System_Error</A></span> : <b>exception</b>;
<span class="symbol"><A NAME="ref_528_4">Eti_Bad_Argument</A></span> : <b>exception</b>;
<span class="symbol"><A NAME="ref_529_4">Eti_Posted</A></span> : <b>exception</b>;
<span class="symbol"><A NAME="ref_530_4">Eti_Connected</A></span> : <b>exception</b>;
<span class="symbol"><A NAME="ref_531_4">Eti_Bad_State</A></span> : <b>exception</b>;
<span class="symbol"><A NAME="ref_532_4">Eti_No_Room</A></span> : <b>exception</b>;
<span class="symbol"><A NAME="ref_533_4">Eti_Not_Posted</A></span> : <b>exception</b>;
<span class="symbol"><A NAME="ref_534_4">Eti_Unknown_Command</A></span> : <b>exception</b>;
<span class="symbol"><A NAME="ref_535_4">Eti_No_Match</A></span> : <b>exception</b>;
<span class="symbol"><A NAME="ref_536_4">Eti_Not_Selectable</A></span> : <b>exception</b>;
<span class="symbol"><A NAME="ref_537_4">Eti_Not_Connected</A></span> : <b>exception</b>;
<span class="symbol"><A NAME="ref_538_4">Eti_Request_Denied</A></span> : <b>exception</b>;
<span class="symbol"><A NAME="ref_539_4">Eti_Invalid_Field</A></span> : <b>exception</b>;
<span class="symbol"><A NAME="ref_540_4">Eti_Current</A></span> : <b>exception</b>;
<span class="comment"><EM>--------------------------------------------------------------------------</EM></span>
<span class="comment"><EM>-- External C variables</EM></span>
<span class="comment"><EM>-- Conceptually even in C this are kind of constants, but they are</EM></span>
<span class="comment"><EM>-- initialized and sometimes changed by the library routines at runtime</EM></span>
<span class="comment"><EM>-- depending on the type of terminal. I believe the best way to model</EM></span>
<span class="comment"><EM>-- this is to use functions.</EM></span>
<span class="comment"><EM>--------------------------------------------------------------------------</EM></span>
<b>function</b> <span class="symbol"><A NAME="ref_550_13" HREF="terminal_interface-curses__adb.htm#ref_2355_13">Lines</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_550_13">Lines</A>);
<b>function</b> <span class="symbol"><A NAME="ref_553_13" HREF="terminal_interface-curses__adb.htm#ref_2363_13">Columns</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>;
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_553_13">Columns</A>);
<b>function</b> <span class="symbol"><A NAME="ref_556_13" HREF="terminal_interface-curses__adb.htm#ref_2371_13">Tab_Size</A></span> <b>return</b> Natural;
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_556_13">Tab_Size</A>);
<b>function</b> <span class="symbol"><A NAME="ref_559_13" HREF="terminal_interface-curses__adb.htm#ref_2380_13">Number_Of_Colors</A></span> <b>return</b> Natural;
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_559_13">Number_Of_Colors</A>);
<b>function</b> <span class="symbol"><A NAME="ref_562_13" HREF="terminal_interface-curses__adb.htm#ref_2388_13">Number_Of_Color_Pairs</A></span> <b>return</b> Natural;
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_562_13">Number_Of_Color_Pairs</A>);
<b>subtype</b> <span class="symbol"><A NAME="ref_565_12">ACS_Index</A></span> <b>is</b> Character <b>range</b>
Character'Val (0) .. Character'Val (127);
<b>function</b> <span class="symbol"><A NAME="ref_567_13">ACS_Map</A></span> (<span class="symbol"><A NAME="ref_567_22" HREF="terminal_interface-curses__ads.htm#ref_567_13">Index</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>;
<b>pragma</b> Import (C, ACS_Map, "acs_map_as_function");
<span class="comment"><EM>-- Constants for several characters from the Alternate Character Set</EM></span>
<span class="comment"><EM>-- You must use these constants as indices into the ACS_Map function</EM></span>
<span class="comment"><EM>-- to get the corresponding attributed character at runtime</EM></span>
<span class="symbol"><A NAME="ref_573_4">ACS_Upper_Left_Corner</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_222_4">ACS_ULCORNER</A>);
<span class="symbol"><A NAME="ref_575_4">ACS_Lower_Left_Corner</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_223_4">ACS_LLCORNER</A>);
<span class="symbol"><A NAME="ref_577_4">ACS_Upper_Right_Corner</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_224_4">ACS_URCORNER</A>);
<span class="symbol"><A NAME="ref_579_4">ACS_Lower_Right_Corner</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_225_4">ACS_LRCORNER</A>);
<span class="symbol"><A NAME="ref_581_4">ACS_Left_Tee</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_226_4">ACS_LTEE</A>);
<span class="symbol"><A NAME="ref_583_4">ACS_Right_Tee</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_227_4">ACS_RTEE</A>);
<span class="symbol"><A NAME="ref_585_4">ACS_Bottom_Tee</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_228_4">ACS_BTEE</A>);
<span class="symbol"><A NAME="ref_587_4">ACS_Top_Tee</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_229_4">ACS_TTEE</A>);
<span class="symbol"><A NAME="ref_589_4">ACS_Horizontal_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_230_4">ACS_HLINE</A>);
<span class="symbol"><A NAME="ref_591_4">ACS_Vertical_Line</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_231_4">ACS_VLINE</A>);
<span class="symbol"><A NAME="ref_593_4">ACS_Plus_Symbol</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_232_4">ACS_PLUS</A>);
<span class="symbol"><A NAME="ref_595_4">ACS_Scan_Line_1</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_233_4">ACS_S1</A>);
<span class="symbol"><A NAME="ref_597_4">ACS_Scan_Line_9</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_234_4">ACS_S9</A>);
<span class="symbol"><A NAME="ref_599_4">ACS_Diamond</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_235_4">ACS_DIAMOND</A>);
<span class="symbol"><A NAME="ref_601_4">ACS_Checker_Board</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_236_4">ACS_CKBOARD</A>);
<span class="symbol"><A NAME="ref_603_4">ACS_Degree</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_237_4">ACS_DEGREE</A>);
<span class="symbol"><A NAME="ref_605_4">ACS_Plus_Minus</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_238_4">ACS_PLMINUS</A>);
<span class="symbol"><A NAME="ref_607_4">ACS_Bullet</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_239_4">ACS_BULLET</A>);
<span class="symbol"><A NAME="ref_609_4">ACS_Left_Arrow</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_240_4">ACS_LARROW</A>);
<span class="symbol"><A NAME="ref_611_4">ACS_Right_Arrow</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_241_4">ACS_RARROW</A>);
<span class="symbol"><A NAME="ref_613_4">ACS_Down_Arrow</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_242_4">ACS_DARROW</A>);
<span class="symbol"><A NAME="ref_615_4">ACS_Up_Arrow</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_243_4">ACS_UARROW</A>);
<span class="symbol"><A NAME="ref_617_4">ACS_Board_Of_Squares</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_244_4">ACS_BOARD</A>);
<span class="symbol"><A NAME="ref_619_4">ACS_Lantern</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_245_4">ACS_LANTERN</A>);
<span class="symbol"><A NAME="ref_621_4">ACS_Solid_Block</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_246_4">ACS_BLOCK</A>);
<span class="symbol"><A NAME="ref_623_4">ACS_Scan_Line_3</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_247_4">ACS_S3</A>);
<span class="symbol"><A NAME="ref_625_4">ACS_Scan_Line_7</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_248_4">ACS_S7</A>);
<span class="symbol"><A NAME="ref_627_4">ACS_Less_Or_Equal</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_249_4">ACS_LEQUAL</A>);
<span class="symbol"><A NAME="ref_629_4">ACS_Greater_Or_Equal</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_250_4">ACS_GEQUAL</A>);
<span class="symbol"><A NAME="ref_631_4">ACS_PI</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_251_4">ACS_PI</A>);
<span class="symbol"><A NAME="ref_633_4">ACS_Not_Equal</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_252_4">ACS_NEQUAL</A>);
<span class="symbol"><A NAME="ref_635_4">ACS_Sterling</A></span> : <b>constant</b> <A HREF="terminal_interface-curses__ads.htm#ref_565_12">ACS_Index</A>
:= Character'Val (<A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_253_4">ACS_STERLING</A>);
<span class="comment"><EM>-- |=====================================================================</EM></span>
<span class="comment"><EM>-- | Man page <A HREF="../man/curs_initscr.3x.html">curs_initscr.3x</A></EM></span>
<span class="comment"><EM>-- |=====================================================================</EM></span>
<span class="comment"><EM>-- | Not implemented: newterm, set_term, delscreen</EM></span>
<span class="comment"><EM>-- #1A NAME="AFU_1"#2|</EM></span>
<b>function</b> <span class="symbol"><A NAME="ref_644_13">Standard_Window</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_initscr.3x.html">stdscr</A></EM></span>
<b>pragma</b> Import (C, Standard_Window, "stdscr_as_function");
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>);
<span class="comment"><EM>-- #1A NAME="AFU_2"#2|</EM></span>
<b>function</b> <span class="symbol"><A NAME="ref_650_13">Current_Window</A></span> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_initscr.3x.html">curscr</A></EM></span>
<b>pragma</b> Import (C, Current_Window, "curscr_as_function");
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_650_13">Current_Window</A>);
<span class="comment"><EM>-- #1A NAME="AFU_3"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_656_14" HREF="terminal_interface-curses__adb.htm#ref_98_14">Init_Screen</A></span>;
<span class="comment"><EM>-- #1A NAME="AFU_4"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_659_14">Init_Windows</A></span> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_656_14">Init_Screen</A>;
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_initscr.3x.html">initscr()</A></EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_656_14">Init_Screen</A>);
<span class="comment"><EM>-- pragma Inline (Init_Windows);</EM></span>
<span class="comment"><EM>-- #1A NAME="AFU_5"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_665_14" HREF="terminal_interface-curses__adb.htm#ref_111_14">End_Windows</A></span>;
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_initscr.3x.html">endwin()</A></EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_667_14">End_Screen</A></span> <b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_665_14">End_Windows</A>;
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_665_14">End_Windows</A>);
<span class="comment"><EM>-- pragma Inline (End_Screen);</EM></span>
<span class="comment"><EM>-- #1A NAME="AFU_6"#2|</EM></span>
<b>function</b> <span class="symbol"><A NAME="ref_672_13" HREF="terminal_interface-curses__adb.htm#ref_121_13">Is_End_Window</A></span> <b>return</b> Boolean;
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_initscr.3x.html">isendwin()</A></EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_672_13">Is_End_Window</A>);
<span class="comment"><EM>-- |=====================================================================</EM></span>
<span class="comment"><EM>-- | Man page <A HREF="../man/curs_move.3x.html">curs_move.3x</A></EM></span>
<span class="comment"><EM>-- |=====================================================================</EM></span>
<span class="comment"><EM>-- #1A NAME="AFU_7"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_681_14" HREF="terminal_interface-curses__adb.htm#ref_133_14">Move_Cursor</A></span> (<span class="symbol"><A NAME="ref_681_27" HREF="terminal_interface-curses__adb.htm#ref_133_27">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_682_27" HREF="terminal_interface-curses__adb.htm#ref_134_27">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
<span class="symbol"><A NAME="ref_683_27" HREF="terminal_interface-curses__adb.htm#ref_135_27">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_move.3x.html">wmove()</A></EM></span>
<span class="comment"><EM>-- AKA: move()</EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_681_14">Move_Cursor</A>);
<span class="comment"><EM>-- |=====================================================================</EM></span>
<span class="comment"><EM>-- | Man page <A HREF="../man/curs_addch.3x.html">curs_addch.3x</A></EM></span>
<span class="comment"><EM>-- |=====================================================================</EM></span>
<span class="comment"><EM>-- #1A NAME="AFU_8"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_693_14" HREF="terminal_interface-curses__adb.htm#ref_148_14">Add</A></span> (<span class="symbol"><A NAME="ref_693_19" HREF="terminal_interface-curses__adb.htm#ref_148_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_694_19" HREF="terminal_interface-curses__adb.htm#ref_149_19">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_addch.3x.html">waddch()</A></EM></span>
<span class="comment"><EM>-- AKA: addch()</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_698_14" HREF="terminal_interface-curses__adb.htm#ref_160_14">Add</A></span> (<span class="symbol"><A NAME="ref_698_19" HREF="terminal_interface-curses__adb.htm#ref_160_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_699_19" HREF="terminal_interface-curses__adb.htm#ref_161_19">Ch</A></span> : Character);
<span class="comment"><EM>-- Add a single character at the current logical cursor position to</EM></span>
<span class="comment"><EM>-- the window. Use the current windows attributes.</EM></span>
<span class="comment"><EM>-- #1A NAME="AFU_9"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_704_14" HREF="terminal_interface-curses__adb.htm#ref_170_14">Add</A></span>
(<span class="symbol"><A NAME="ref_705_7" HREF="terminal_interface-curses__adb.htm#ref_171_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_706_7" HREF="terminal_interface-curses__adb.htm#ref_172_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
<span class="symbol"><A NAME="ref_707_7" HREF="terminal_interface-curses__adb.htm#ref_173_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
<span class="symbol"><A NAME="ref_708_7" HREF="terminal_interface-curses__adb.htm#ref_174_7">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_addch.3x.html">mvwaddch()</A></EM></span>
<span class="comment"><EM>-- AKA: mvaddch()</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_712_14" HREF="terminal_interface-curses__adb.htm#ref_190_14">Add</A></span>
(<span class="symbol"><A NAME="ref_713_7" HREF="terminal_interface-curses__adb.htm#ref_191_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_714_7" HREF="terminal_interface-curses__adb.htm#ref_192_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
<span class="symbol"><A NAME="ref_715_7" HREF="terminal_interface-curses__adb.htm#ref_193_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
<span class="symbol"><A NAME="ref_716_7" HREF="terminal_interface-curses__adb.htm#ref_194_7">Ch</A></span> : Character);
<span class="comment"><EM>-- Move to the position and add a single character into the window</EM></span>
<span class="comment"><EM>-- There are more Add routines, so the Inline pragma follows later</EM></span>
<span class="comment"><EM>-- #1A NAME="AFU_10"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_721_14" HREF="terminal_interface-curses__adb.htm#ref_205_14">Add_With_Immediate_Echo</A></span>
(<span class="symbol"><A NAME="ref_722_7" HREF="terminal_interface-curses__adb.htm#ref_206_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_723_7" HREF="terminal_interface-curses__adb.htm#ref_207_7">Ch</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A>);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_addch.3x.html">wechochar()</A></EM></span>
<span class="comment"><EM>-- AKA: echochar()</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_727_14" HREF="terminal_interface-curses__adb.htm#ref_218_14">Add_With_Immediate_Echo</A></span>
(<span class="symbol"><A NAME="ref_728_7" HREF="terminal_interface-curses__adb.htm#ref_219_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_729_7" HREF="terminal_interface-curses__adb.htm#ref_220_7">Ch</A></span> : Character);
<span class="comment"><EM>-- Add a character and do an immediate refresh of the screen.</EM></span>
<b>pragma</b> Inline (Add_With_Immediate_Echo);
<span class="comment"><EM>-- |=====================================================================</EM></span>
<span class="comment"><EM>-- | Man page <A HREF="../man/curs_window.3x.html">curs_window.3x</A></EM></span>
<span class="comment"><EM>-- |=====================================================================</EM></span>
<span class="comment"><EM>-- Not Implemented: wcursyncup</EM></span>
<span class="comment"><EM>-- #1A NAME="AFU_11"#2|</EM></span>
<b>function</b> <span class="symbol"><A NAME="ref_739_13" HREF="terminal_interface-curses__adb.htm#ref_230_13">Create</A></span>
(<span class="symbol"><A NAME="ref_740_7" HREF="terminal_interface-curses__adb.htm#ref_230_21">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
<span class="symbol"><A NAME="ref_741_7" HREF="terminal_interface-curses__adb.htm#ref_231_21">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>;
<span class="symbol"><A NAME="ref_742_7" HREF="terminal_interface-curses__adb.htm#ref_232_21">First_Line_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
<span class="symbol"><A NAME="ref_743_7" HREF="terminal_interface-curses__adb.htm#ref_233_21">First_Column_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
<span class="comment"><EM>-- Not Implemented: Default Number_Of_Lines, Number_Of_Columns</EM></span>
<span class="comment"><EM>-- the C version lets them be 0, see the man page.</EM></span>
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_window.3x.html">newwin()</A></EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_739_13">Create</A>);
<b>function</b> New_Window
(<span class="symbol"><A NAME="ref_750_7">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
<span class="symbol"><A NAME="ref_751_7">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>;
<span class="symbol"><A NAME="ref_752_7">First_Line_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
<span class="symbol"><A NAME="ref_753_7">First_Column_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>
<b>renames</b> <A HREF="terminal_interface-curses__ads.htm#ref_739_13">Create</A>;
<span class="comment"><EM>-- pragma Inline (New_Window);</EM></span>
<span class="comment"><EM>-- #1A NAME="AFU_12"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_758_14" HREF="terminal_interface-curses__adb.htm#ref_253_14">Delete</A></span> (<span class="symbol"><A NAME="ref_758_22" HREF="terminal_interface-curses__adb.htm#ref_253_22">Win</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_window.3x.html">delwin()</A></EM></span>
<span class="comment"><EM>-- Reset Win to Null_Window</EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_758_14">Delete</A>);
<span class="comment"><EM>-- #1A NAME="AFU_13"#2|</EM></span>
<b>function</b> <span class="symbol"><A NAME="ref_764_13" HREF="terminal_interface-curses__adb.htm#ref_264_13">Sub_Window</A></span>
(<span class="symbol"><A NAME="ref_765_7" HREF="terminal_interface-curses__adb.htm#ref_265_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_766_7" HREF="terminal_interface-curses__adb.htm#ref_266_7">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
<span class="symbol"><A NAME="ref_767_7" HREF="terminal_interface-curses__adb.htm#ref_267_7">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>;
<span class="symbol"><A NAME="ref_768_7" HREF="terminal_interface-curses__adb.htm#ref_268_7">First_Line_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
<span class="symbol"><A NAME="ref_769_7" HREF="terminal_interface-curses__adb.htm#ref_269_7">First_Column_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_window.3x.html">subwin()</A></EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_764_13">Sub_Window</A>);
<span class="comment"><EM>-- #1A NAME="AFU_14"#2|</EM></span>
<b>function</b> <span class="symbol"><A NAME="ref_774_13" HREF="terminal_interface-curses__adb.htm#ref_292_13">Derived_Window</A></span>
(<span class="symbol"><A NAME="ref_775_7" HREF="terminal_interface-curses__adb.htm#ref_293_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_776_7" HREF="terminal_interface-curses__adb.htm#ref_294_7">Number_Of_Lines</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_61_12">Line_Count</A>;
<span class="symbol"><A NAME="ref_777_7" HREF="terminal_interface-curses__adb.htm#ref_295_7">Number_Of_Columns</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_63_12">Column_Count</A>;
<span class="symbol"><A NAME="ref_778_7" HREF="terminal_interface-curses__adb.htm#ref_296_7">First_Line_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
<span class="symbol"><A NAME="ref_779_7" HREF="terminal_interface-curses__adb.htm#ref_297_7">First_Column_Position</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_window.3x.html">derwin()</A></EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_774_13">Derived_Window</A>);
<span class="comment"><EM>-- #1A NAME="AFU_15"#2|</EM></span>
<b>function</b> <span class="symbol"><A NAME="ref_784_13" HREF="terminal_interface-curses__adb.htm#ref_320_13">Duplicate</A></span> (<span class="symbol"><A NAME="ref_784_24" HREF="terminal_interface-curses__adb.htm#ref_320_24">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_window.3x.html">dupwin()</A></EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_784_13">Duplicate</A>);
<span class="comment"><EM>-- #1A NAME="AFU_16"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_789_14" HREF="terminal_interface-curses__adb.htm#ref_333_14">Move_Window</A></span> (<span class="symbol"><A NAME="ref_789_27" HREF="terminal_interface-curses__adb.htm#ref_333_27">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
<span class="symbol"><A NAME="ref_790_27" HREF="terminal_interface-curses__adb.htm#ref_334_27">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
<span class="symbol"><A NAME="ref_791_27" HREF="terminal_interface-curses__adb.htm#ref_335_27">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_window.3x.html">mvwin()</A></EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_789_14">Move_Window</A>);
<span class="comment"><EM>-- #1A NAME="AFU_17"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_796_14" HREF="terminal_interface-curses__adb.htm#ref_347_14">Move_Derived_Window</A></span> (<span class="symbol"><A NAME="ref_796_35" HREF="terminal_interface-curses__adb.htm#ref_347_35">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>;
<span class="symbol"><A NAME="ref_797_35" HREF="terminal_interface-curses__adb.htm#ref_348_35">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
<span class="symbol"><A NAME="ref_798_35" HREF="terminal_interface-curses__adb.htm#ref_349_35">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_window.3x.html">mvderwin()</A></EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_796_14">Move_Derived_Window</A>);
<span class="comment"><EM>-- #1A NAME="AFU_18"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_803_14">Synchronize_Upwards</A></span> (<span class="symbol"><A NAME="ref_803_35" HREF="terminal_interface-curses__ads.htm#ref_803_14">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_window.3x.html">wsyncup()</A></EM></span>
<b>pragma</b> Import (C, Synchronize_Upwards, "wsyncup");
<span class="comment"><EM>-- #1A NAME="AFU_19"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_808_14">Synchronize_Downwards</A></span> (<span class="symbol"><A NAME="ref_808_37" HREF="terminal_interface-curses__ads.htm#ref_808_14">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A>);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_window.3x.html">wsyncdown()</A></EM></span>
<b>pragma</b> Import (C, Synchronize_Downwards, "wsyncdown");
<span class="comment"><EM>-- #1A NAME="AFU_20"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_813_14" HREF="terminal_interface-curses__adb.htm#ref_361_14">Set_Synch_Mode</A></span> (<span class="symbol"><A NAME="ref_813_30" HREF="terminal_interface-curses__adb.htm#ref_361_30">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_814_30" HREF="terminal_interface-curses__adb.htm#ref_362_30">Mode</A></span> : Boolean := False);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_window.3x.html">syncok()</A></EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_813_14">Set_Synch_Mode</A>);
<span class="comment"><EM>-- |=====================================================================</EM></span>
<span class="comment"><EM>-- | Man page <A HREF="../man/curs_addstr.3x.html">curs_addstr.3x</A></EM></span>
<span class="comment"><EM>-- |=====================================================================</EM></span>
<span class="comment"><EM>-- #1A NAME="AFU_21"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_823_14" HREF="terminal_interface-curses__adb.htm#ref_373_14">Add</A></span> (<span class="symbol"><A NAME="ref_823_19" HREF="terminal_interface-curses__adb.htm#ref_373_19">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_824_19" HREF="terminal_interface-curses__adb.htm#ref_374_19">Str</A></span> : String;
<span class="symbol"><A NAME="ref_825_19" HREF="terminal_interface-curses__adb.htm#ref_375_19">Len</A></span> : Integer := -1);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_addstr.3x.html">waddnstr()</A></EM></span>
<span class="comment"><EM>-- AKA: waddstr()</EM></span>
<span class="comment"><EM>-- AKA: addnstr()</EM></span>
<span class="comment"><EM>-- AKA: addstr()</EM></span>
<span class="comment"><EM>-- #1A NAME="AFU_22"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_832_14" HREF="terminal_interface-curses__adb.htm#ref_391_14">Add</A></span> (<span class="symbol"><A NAME="ref_832_19" HREF="terminal_interface-curses__adb.htm#ref_392_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_833_19" HREF="terminal_interface-curses__adb.htm#ref_393_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
<span class="symbol"><A NAME="ref_834_19" HREF="terminal_interface-curses__adb.htm#ref_394_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
<span class="symbol"><A NAME="ref_835_19" HREF="terminal_interface-curses__adb.htm#ref_395_7">Str</A></span> : String;
<span class="symbol"><A NAME="ref_836_19" HREF="terminal_interface-curses__adb.htm#ref_396_7">Len</A></span> : Integer := -1);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_addstr.3x.html">mvwaddnstr()</A></EM></span>
<span class="comment"><EM>-- AKA: mvwaddstr()</EM></span>
<span class="comment"><EM>-- AKA: mvaddnstr()</EM></span>
<span class="comment"><EM>-- AKA: mvaddstr()</EM></span>
<span class="comment"><EM>-- |=====================================================================</EM></span>
<span class="comment"><EM>-- | Man page <A HREF="../man/curs_addchstr.3x.html">curs_addchstr.3x</A></EM></span>
<span class="comment"><EM>-- |=====================================================================</EM></span>
<span class="comment"><EM>-- #1A NAME="AFU_23"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_847_14" HREF="terminal_interface-curses__adb.htm#ref_403_14">Add</A></span> (<span class="symbol"><A NAME="ref_847_19" HREF="terminal_interface-curses__adb.htm#ref_404_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_848_19" HREF="terminal_interface-curses__adb.htm#ref_405_7">Str</A></span> : Attributed_String;
<span class="symbol"><A NAME="ref_849_19" HREF="terminal_interface-curses__adb.htm#ref_406_7">Len</A></span> : Integer := -1);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_addchstr.3x.html">waddchnstr()</A></EM></span>
<span class="comment"><EM>-- AKA: waddchstr()</EM></span>
<span class="comment"><EM>-- AKA: addchnstr()</EM></span>
<span class="comment"><EM>-- AKA: addchstr()</EM></span>
<span class="comment"><EM>-- #1A NAME="AFU_24"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_856_14" HREF="terminal_interface-curses__adb.htm#ref_427_14">Add</A></span> (<span class="symbol"><A NAME="ref_856_19" HREF="terminal_interface-curses__adb.htm#ref_428_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_857_19" HREF="terminal_interface-curses__adb.htm#ref_429_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
<span class="symbol"><A NAME="ref_858_19" HREF="terminal_interface-curses__adb.htm#ref_430_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
<span class="symbol"><A NAME="ref_859_19" HREF="terminal_interface-curses__adb.htm#ref_431_7">Str</A></span> : Attributed_String;
<span class="symbol"><A NAME="ref_860_19" HREF="terminal_interface-curses__adb.htm#ref_432_7">Len</A></span> : Integer := -1);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_addchstr.3x.html">mvwaddchnstr()</A></EM></span>
<span class="comment"><EM>-- AKA: mvwaddchstr()</EM></span>
<span class="comment"><EM>-- AKA: mvaddchnstr()</EM></span>
<span class="comment"><EM>-- AKA: mvaddchstr()</EM></span>
<b>pragma</b> Inline (Add);
<span class="comment"><EM>-- |=====================================================================</EM></span>
<span class="comment"><EM>-- | Man page <A HREF="../man/curs_border.3x.html">curs_border.3x</A></EM></span>
<span class="comment"><EM>-- |=====================================================================</EM></span>
<span class="comment"><EM>-- | Not implemented: mvhline, mvwhline, mvvline, mvwvline</EM></span>
<span class="comment"><EM>-- | use Move_Cursor then Horizontal_Line or Vertical_Line</EM></span>
<span class="comment"><EM>-- #1A NAME="AFU_25"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_874_14" HREF="terminal_interface-curses__adb.htm#ref_439_14">Border</A></span>
(<span class="symbol"><A NAME="ref_875_7" HREF="terminal_interface-curses__adb.htm#ref_440_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_876_7" HREF="terminal_interface-curses__adb.htm#ref_441_7">Left_Side_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>;
<span class="symbol"><A NAME="ref_877_7" HREF="terminal_interface-curses__adb.htm#ref_442_7">Right_Side_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>;
<span class="symbol"><A NAME="ref_878_7" HREF="terminal_interface-curses__adb.htm#ref_443_7">Top_Side_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>;
<span class="symbol"><A NAME="ref_879_7" HREF="terminal_interface-curses__adb.htm#ref_444_7">Bottom_Side_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>;
<span class="symbol"><A NAME="ref_880_7" HREF="terminal_interface-curses__adb.htm#ref_445_7">Upper_Left_Corner_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>;
<span class="symbol"><A NAME="ref_881_7" HREF="terminal_interface-curses__adb.htm#ref_446_7">Upper_Right_Corner_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>;
<span class="symbol"><A NAME="ref_882_7" HREF="terminal_interface-curses__adb.htm#ref_447_7">Lower_Left_Corner_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>;
<span class="symbol"><A NAME="ref_883_7" HREF="terminal_interface-curses__adb.htm#ref_448_7">Lower_Right_Corner_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>
);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_border.3x.html">wborder()</A></EM></span>
<span class="comment"><EM>-- AKA: border()</EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_874_14">Border</A>);
<span class="comment"><EM>-- #1A NAME="AFU_26"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_890_14" HREF="terminal_interface-curses__adb.htm#ref_475_14">Box</A></span>
(<span class="symbol"><A NAME="ref_891_7" HREF="terminal_interface-curses__adb.htm#ref_476_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_892_7" HREF="terminal_interface-curses__adb.htm#ref_477_7">Vertical_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>;
<span class="symbol"><A NAME="ref_893_7" HREF="terminal_interface-curses__adb.htm#ref_478_7">Horizontal_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_border.3x.html">box()</A></EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_890_14">Box</A>);
<span class="comment"><EM>-- #1A NAME="AFU_27"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_898_14" HREF="terminal_interface-curses__adb.htm#ref_486_14">Horizontal_Line</A></span>
(<span class="symbol"><A NAME="ref_899_7" HREF="terminal_interface-curses__adb.htm#ref_487_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_900_7" HREF="terminal_interface-curses__adb.htm#ref_488_7">Line_Size</A></span> : Natural;
<span class="symbol"><A NAME="ref_901_7" HREF="terminal_interface-curses__adb.htm#ref_489_7">Line_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_border.3x.html">whline()</A></EM></span>
<span class="comment"><EM>-- AKA: hline()</EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_898_14">Horizontal_Line</A>);
<span class="comment"><EM>-- #1A NAME="AFU_28"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_907_14" HREF="terminal_interface-curses__adb.htm#ref_504_14">Vertical_Line</A></span>
(<span class="symbol"><A NAME="ref_908_7" HREF="terminal_interface-curses__adb.htm#ref_505_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_909_7" HREF="terminal_interface-curses__adb.htm#ref_506_7">Line_Size</A></span> : Natural;
<span class="symbol"><A NAME="ref_910_7" HREF="terminal_interface-curses__adb.htm#ref_507_7">Line_Symbol</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_487_9">Attributed_Character</A> := <A HREF="terminal_interface-curses__ads.htm#ref_509_4">Default_Character</A>);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_border.3x.html">wvline()</A></EM></span>
<span class="comment"><EM>-- AKA: vline()</EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_907_14">Vertical_Line</A>);
<span class="comment"><EM>-- |=====================================================================</EM></span>
<span class="comment"><EM>-- | Man page <A HREF="../man/curs_getch.3x.html">curs_getch.3x</A></EM></span>
<span class="comment"><EM>-- |=====================================================================</EM></span>
<span class="comment"><EM>-- Not implemented: mvgetch, mvwgetch</EM></span>
<span class="comment"><EM>-- #1A NAME="AFU_29"#2|</EM></span>
<b>function</b> <span class="symbol"><A NAME="ref_921_13" HREF="terminal_interface-curses__adb.htm#ref_523_13">Get_Keystroke</A></span> (<span class="symbol"><A NAME="ref_921_28" HREF="terminal_interface-curses__adb.htm#ref_523_28">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>)
<b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_71_12">Real_Key_Code</A>;
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_getch.3x.html">wgetch()</A></EM></span>
<span class="comment"><EM>-- AKA: getch()</EM></span>
<span class="comment"><EM>-- Get a character from the keyboard and echo it - if enabled - to the</EM></span>
<span class="comment"><EM>-- window.</EM></span>
<span class="comment"><EM>-- If for any reason (i.e. a timeout) we could not get a character the</EM></span>
<span class="comment"><EM>-- returned keycode is Key_None.</EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_921_13">Get_Keystroke</A>);
<span class="comment"><EM>-- #1A NAME="AFU_30"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_932_14" HREF="terminal_interface-curses__adb.htm#ref_538_14">Undo_Keystroke</A></span> (<span class="symbol"><A NAME="ref_932_30" HREF="terminal_interface-curses__adb.htm#ref_538_30">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_71_12">Real_Key_Code</A>);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_getch.3x.html">ungetch()</A></EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_932_14">Undo_Keystroke</A>);
<span class="comment"><EM>-- #1A NAME="AFU_31"#2|</EM></span>
<b>function</b> <span class="symbol"><A NAME="ref_937_13" HREF="terminal_interface-curses__adb.htm#ref_548_13">Has_Key</A></span> (<span class="symbol"><A NAME="ref_937_22" HREF="terminal_interface-curses__adb.htm#ref_548_22">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>) <b>return</b> Boolean;
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_getch.3x.html">has_key()</A></EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_937_13">Has_Key</A>);
<span class="comment"><EM>-- |</EM></span>
<span class="comment"><EM>-- | Some helper functions</EM></span>
<span class="comment"><EM>-- |</EM></span>
<b>function</b> <span class="symbol"><A NAME="ref_944_13" HREF="terminal_interface-curses__adb.htm#ref_560_13">Is_Function_Key</A></span> (<span class="symbol"><A NAME="ref_944_30" HREF="terminal_interface-curses__adb.htm#ref_560_30">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_76_12">Special_Key_Code</A>) <b>return</b> Boolean;
<span class="comment"><EM>-- Return True if the Key is a function key (i.e. one of F0 .. F63)</EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_944_13">Is_Function_Key</A>);
<b>subtype</b> <span class="symbol"><A NAME="ref_948_12">Function_Key_Number</A></span> <b>is</b> Integer <b>range</b> 0 .. 63;
<span class="comment"><EM>-- (n)curses allows for 64 function keys.</EM></span>
<b>function</b> <span class="symbol"><A NAME="ref_951_13" HREF="terminal_interface-curses__adb.htm#ref_572_13">Function_Key</A></span> (<span class="symbol"><A NAME="ref_951_27" HREF="terminal_interface-curses__adb.htm#ref_572_27">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_71_12">Real_Key_Code</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_948_12">Function_Key_Number</A>;
<span class="comment"><EM>-- Return the number of the function key. If the code is not a</EM></span>
<span class="comment"><EM>-- function key, a CONSTRAINT_ERROR will be raised.</EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_951_13">Function_Key</A>);
<b>function</b> <span class="symbol"><A NAME="ref_956_13" HREF="terminal_interface-curses__adb.htm#ref_583_13">Function_Key_Code</A></span> (<span class="symbol"><A NAME="ref_956_32" HREF="terminal_interface-curses__adb.htm#ref_583_32">Key</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_948_12">Function_Key_Number</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_71_12">Real_Key_Code</A>;
<span class="comment"><EM>-- Return the key code for a given function-key number.</EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_956_13">Function_Key_Code</A>);
<span class="comment"><EM>-- |=====================================================================</EM></span>
<span class="comment"><EM>-- | Man page <A HREF="../man/curs_attr.3x.html">curs_attr.3x</A></EM></span>
<span class="comment"><EM>-- |=====================================================================</EM></span>
<span class="comment"><EM>-- | Not implemented attr_off, wattr_off,</EM></span>
<span class="comment"><EM>-- | attr_on, wattr_on, attr_set, wattr_set</EM></span>
<span class="comment"><EM>-- PAIR_NUMBER</EM></span>
<span class="comment"><EM>-- PAIR_NUMBER(c) is the same as c.Color</EM></span>
<span class="comment"><EM>-- #1A NAME="AFU_32"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_970_14" HREF="terminal_interface-curses__adb.htm#ref_589_14">Standout</A></span> (<span class="symbol"><A NAME="ref_970_24" HREF="terminal_interface-curses__adb.htm#ref_589_24">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_971_24" HREF="terminal_interface-curses__adb.htm#ref_590_24">On</A></span> : Boolean := True);
<span class="comment"><EM>-- AKA: wstandout()</EM></span>
<span class="comment"><EM>-- AKA: wstandend()</EM></span>
<span class="comment"><EM>-- #1A NAME="AFU_33"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_976_14" HREF="terminal_interface-curses__adb.htm#ref_609_14">Switch_Character_Attribute</A></span>
(<span class="symbol"><A NAME="ref_977_7" HREF="terminal_interface-curses__adb.htm#ref_610_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_978_7" HREF="terminal_interface-curses__adb.htm#ref_611_7">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_485_4">Normal_Video</A>;
<span class="symbol"><A NAME="ref_979_7" HREF="terminal_interface-curses__adb.htm#ref_612_7">On</A></span> : Boolean := True); <span class="comment"><EM>-- if False we switch Off.</EM></span>
<span class="comment"><EM>-- Switches those Attributes set to true in the list.</EM></span>
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">wattron()</A></EM></span>
<span class="comment"><EM>-- AKA: wattroff()</EM></span>
<span class="comment"><EM>-- AKA: attron()</EM></span>
<span class="comment"><EM>-- AKA: attroff()</EM></span>
<span class="comment"><EM>-- #1A NAME="AFU_34"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_987_14" HREF="terminal_interface-curses__adb.htm#ref_637_14">Set_Character_Attributes</A></span>
(<span class="symbol"><A NAME="ref_988_7" HREF="terminal_interface-curses__adb.htm#ref_638_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_989_7" HREF="terminal_interface-curses__adb.htm#ref_639_7">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_485_4">Normal_Video</A>;
<span class="symbol"><A NAME="ref_990_7" HREF="terminal_interface-curses__adb.htm#ref_640_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">wattrset()</A></EM></span>
<span class="comment"><EM>-- AKA: attrset()</EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_987_14">Set_Character_Attributes</A>);
<span class="comment"><EM>-- #1A NAME="AFU_35"#2|</EM></span>
<b>function</b> <span class="symbol"><A NAME="ref_996_13" HREF="terminal_interface-curses__adb.htm#ref_654_13">Get_Character_Attribute</A></span>
(<span class="symbol"><A NAME="ref_997_7" HREF="terminal_interface-curses__adb.htm#ref_654_38">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A>;
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">wattr_get()</A></EM></span>
<span class="comment"><EM>-- AKA: attr_get()</EM></span>
<span class="comment"><EM>-- #1A NAME="AFU_36"#2|</EM></span>
<b>function</b> <span class="symbol"><A NAME="ref_1002_13" HREF="terminal_interface-curses__adb.htm#ref_675_13">Get_Character_Attribute</A></span>
(<span class="symbol"><A NAME="ref_1003_7" HREF="terminal_interface-curses__adb.htm#ref_675_38">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>) <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>;
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">wattr_get()</A></EM></span>
<b>pragma</b> Inline (Get_Character_Attribute);
<span class="comment"><EM>-- #1A NAME="AFU_37"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_1008_14" HREF="terminal_interface-curses__adb.htm#ref_696_14">Set_Color</A></span> (<span class="symbol"><A NAME="ref_1008_25" HREF="terminal_interface-curses__adb.htm#ref_696_25">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_1009_25" HREF="terminal_interface-curses__adb.htm#ref_697_25">Pair</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">wcolor_set()</A></EM></span>
<span class="comment"><EM>-- AKA: color_set()</EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1008_14">Set_Color</A>);
<span class="comment"><EM>-- #1A NAME="AFU_38"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_1015_14" HREF="terminal_interface-curses__adb.htm#ref_712_14">Change_Attributes</A></span>
(<span class="symbol"><A NAME="ref_1016_7" HREF="terminal_interface-curses__adb.htm#ref_713_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_1017_7" HREF="terminal_interface-curses__adb.htm#ref_714_7">Count</A></span> : Integer := -1;
<span class="symbol"><A NAME="ref_1018_7" HREF="terminal_interface-curses__adb.htm#ref_715_7">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_485_4">Normal_Video</A>;
<span class="symbol"><A NAME="ref_1019_7" HREF="terminal_interface-curses__adb.htm#ref_716_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">wchgat()</A></EM></span>
<span class="comment"><EM>-- AKA: chgat()</EM></span>
<span class="comment"><EM>-- #1A NAME="AFU_39"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_1024_14" HREF="terminal_interface-curses__adb.htm#ref_737_14">Change_Attributes</A></span>
(<span class="symbol"><A NAME="ref_1025_7" HREF="terminal_interface-curses__adb.htm#ref_738_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_1026_7" HREF="terminal_interface-curses__adb.htm#ref_739_7">Line</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A> := <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>'First;
<span class="symbol"><A NAME="ref_1027_7" HREF="terminal_interface-curses__adb.htm#ref_740_7">Column</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A> := <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>'First;
<span class="symbol"><A NAME="ref_1028_7" HREF="terminal_interface-curses__adb.htm#ref_741_7">Count</A></span> : Integer := -1;
<span class="symbol"><A NAME="ref_1029_7" HREF="terminal_interface-curses__adb.htm#ref_742_7">Attr</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_417_9">Character_Attribute_Set</A> := <A HREF="terminal_interface-curses__ads.htm#ref_485_4">Normal_Video</A>;
<span class="symbol"><A NAME="ref_1030_7" HREF="terminal_interface-curses__adb.htm#ref_743_7">Color</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A> := <A HREF="terminal_interface-curses__ads.htm#ref_409_9">Color_Pair</A>'First);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_attr.3x.html">mvwchgat()</A></EM></span>
<span class="comment"><EM>-- AKA: mvchgat()</EM></span>
<b>pragma</b> Inline (Change_Attributes);
<span class="comment"><EM>-- |=====================================================================</EM></span>
<span class="comment"><EM>-- | Man page <A HREF="../man/curs_beep.3x.html">curs_beep.3x</A></EM></span>
<span class="comment"><EM>-- |=====================================================================</EM></span>
<span class="comment"><EM>-- #1A NAME="AFU_40"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_1040_14" HREF="terminal_interface-curses__adb.htm#ref_750_14">Beep</A></span>;
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_beep.3x.html">beep()</A></EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1040_14">Beep</A>);
<span class="comment"><EM>-- #1A NAME="AFU_41"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_1045_14" HREF="terminal_interface-curses__adb.htm#ref_760_14">Flash_Screen</A></span>;
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_beep.3x.html">flash()</A></EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1045_14">Flash_Screen</A>);
<span class="comment"><EM>-- |=====================================================================</EM></span>
<span class="comment"><EM>-- | Man page <A HREF="../man/curs_inopts.3x.html">curs_inopts.3x</A></EM></span>
<span class="comment"><EM>-- |=====================================================================</EM></span>
<span class="comment"><EM>-- | Not implemented : typeahead</EM></span>
<span class="comment"><EM>--</EM></span>
<span class="comment"><EM>-- #1A NAME="AFU_42"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_1056_14" HREF="terminal_interface-curses__adb.htm#ref_770_14">Set_Cbreak_Mode</A></span> (<span class="symbol"><A NAME="ref_1056_31" HREF="terminal_interface-curses__adb.htm#ref_770_31">SwitchOn</A></span> : Boolean := True);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">cbreak()</A></EM></span>
<span class="comment"><EM>-- AKA: nocbreak()</EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1056_14">Set_Cbreak_Mode</A>);
<span class="comment"><EM>-- #1A NAME="AFU_43"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_1062_14" HREF="terminal_interface-curses__adb.htm#ref_789_14">Set_Raw_Mode</A></span> (<span class="symbol"><A NAME="ref_1062_28" HREF="terminal_interface-curses__adb.htm#ref_789_28">SwitchOn</A></span> : Boolean := True);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">raw()</A></EM></span>
<span class="comment"><EM>-- AKA: noraw()</EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1062_14">Set_Raw_Mode</A>);
<span class="comment"><EM>-- #1A NAME="AFU_44"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_1068_14" HREF="terminal_interface-curses__adb.htm#ref_808_14">Set_Echo_Mode</A></span> (<span class="symbol"><A NAME="ref_1068_29" HREF="terminal_interface-curses__adb.htm#ref_808_29">SwitchOn</A></span> : Boolean := True);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">echo()</A></EM></span>
<span class="comment"><EM>-- AKA: noecho()</EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1068_14">Set_Echo_Mode</A>);
<span class="comment"><EM>-- #1A NAME="AFU_45"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_1074_14" HREF="terminal_interface-curses__adb.htm#ref_827_14">Set_Meta_Mode</A></span> (<span class="symbol"><A NAME="ref_1074_29" HREF="terminal_interface-curses__adb.htm#ref_827_29">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_1075_29" HREF="terminal_interface-curses__adb.htm#ref_828_29">SwitchOn</A></span> : Boolean := True);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">meta()</A></EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1074_14">Set_Meta_Mode</A>);
<span class="comment"><EM>-- #1A NAME="AFU_46"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_1080_14" HREF="terminal_interface-curses__adb.htm#ref_838_14">Set_KeyPad_Mode</A></span> (<span class="symbol"><A NAME="ref_1080_31" HREF="terminal_interface-curses__adb.htm#ref_838_31">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_1081_31" HREF="terminal_interface-curses__adb.htm#ref_839_31">SwitchOn</A></span> : Boolean := True);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">keypad()</A></EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1080_14">Set_KeyPad_Mode</A>);
<b>function</b> <span class="symbol"><A NAME="ref_1085_13" HREF="terminal_interface-curses__adb.htm#ref_849_13">Get_KeyPad_Mode</A></span> (<span class="symbol"><A NAME="ref_1085_30" HREF="terminal_interface-curses__adb.htm#ref_849_30">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>)
<b>return</b> Boolean;
<span class="comment"><EM>-- This has no pendant in C. There you've to look into the WINDOWS</EM></span>
<span class="comment"><EM>-- structure to get the value. Bad practice, not repeated in Ada.</EM></span>
<b>type</b> <span class="symbol"><A NAME="ref_1090_9">Half_Delay_Amount</A></span> <b>is</b> <b>range</b> 1 .. 255;
<span class="comment"><EM>-- #1A NAME="AFU_47"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_1093_14" HREF="terminal_interface-curses__adb.htm#ref_858_14">Half_Delay</A></span> (<span class="symbol"><A NAME="ref_1093_26" HREF="terminal_interface-curses__adb.htm#ref_858_26">Amount</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1090_9">Half_Delay_Amount</A>);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">halfdelay()</A></EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1093_14">Half_Delay</A>);
<span class="comment"><EM>-- #1A NAME="AFU_48"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_1098_14" HREF="terminal_interface-curses__adb.htm#ref_868_14">Set_Flush_On_Interrupt_Mode</A></span>
(<span class="symbol"><A NAME="ref_1099_7" HREF="terminal_interface-curses__adb.htm#ref_869_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_1100_7" HREF="terminal_interface-curses__adb.htm#ref_870_7">Mode</A></span> : Boolean := True);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">intrflush()</A></EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1098_14">Set_Flush_On_Interrupt_Mode</A>);
<span class="comment"><EM>-- #1A NAME="AFU_49"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_1105_14" HREF="terminal_interface-curses__adb.htm#ref_880_14">Set_Queue_Interrupt_Mode</A></span>
(<span class="symbol"><A NAME="ref_1106_7" HREF="terminal_interface-curses__adb.htm#ref_881_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_1107_7" HREF="terminal_interface-curses__adb.htm#ref_882_7">Flush</A></span> : Boolean := True);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">qiflush()</A></EM></span>
<span class="comment"><EM>-- AKA: noqiflush()</EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1105_14">Set_Queue_Interrupt_Mode</A>);
<span class="comment"><EM>-- #1A NAME="AFU_50"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_1113_14" HREF="terminal_interface-curses__adb.htm#ref_899_14">Set_NoDelay_Mode</A></span>
(<span class="symbol"><A NAME="ref_1114_7" HREF="terminal_interface-curses__adb.htm#ref_900_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_1115_7" HREF="terminal_interface-curses__adb.htm#ref_901_7">Mode</A></span> : Boolean := False);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">nodelay()</A></EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1113_14">Set_NoDelay_Mode</A>);
<b>type</b> <span class="symbol"><A NAME="ref_1119_9">Timeout_Mode</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_1119_26">Blocking</A></span>, <span class="symbol"><A NAME="ref_1119_36">Non_Blocking</A></span>, <span class="symbol"><A NAME="ref_1119_50">Delayed</A></span>);
<span class="comment"><EM>-- #1A NAME="AFU_51"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_1122_14" HREF="terminal_interface-curses__adb.htm#ref_911_14">Set_Timeout_Mode</A></span> (<span class="symbol"><A NAME="ref_1122_32" HREF="terminal_interface-curses__adb.htm#ref_911_32">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_1123_32" HREF="terminal_interface-curses__adb.htm#ref_912_32">Mode</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_1119_9">Timeout_Mode</A>;
<span class="symbol"><A NAME="ref_1124_32" HREF="terminal_interface-curses__adb.htm#ref_913_32">Amount</A></span> : Natural); <span class="comment"><EM>-- in Milliseconds</EM></span>
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">wtimeout()</A></EM></span>
<span class="comment"><EM>-- AKA: timeout()</EM></span>
<span class="comment"><EM>-- Instead of overloading the semantic of the sign of amount, we</EM></span>
<span class="comment"><EM>-- introduce the Timeout_Mode parameter. This should improve</EM></span>
<span class="comment"><EM>-- readability. For Blocking and Non_Blocking, the Amount is not</EM></span>
<span class="comment"><EM>-- evaluated.</EM></span>
<span class="comment"><EM>-- We do not inline this procedure.</EM></span>
<span class="comment"><EM>-- #1A NAME="AFU_52"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_1134_14" HREF="terminal_interface-curses__adb.htm#ref_932_14">Set_Escape_Timer_Mode</A></span>
(<span class="symbol"><A NAME="ref_1135_7" HREF="terminal_interface-curses__adb.htm#ref_933_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_1136_7" HREF="terminal_interface-curses__adb.htm#ref_934_7">Timer_Off</A></span> : Boolean := False);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_inopts.3x.html">notimeout()</A></EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1134_14">Set_Escape_Timer_Mode</A>);
<span class="comment"><EM>-- |=====================================================================</EM></span>
<span class="comment"><EM>-- | Man page <A HREF="../man/curs_outopts.3x.html">curs_outopts.3x</A></EM></span>
<span class="comment"><EM>-- |=====================================================================</EM></span>
<span class="comment"><EM>-- #1A NAME="AFU_53"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_1145_14" HREF="terminal_interface-curses__adb.htm#ref_947_14">Set_NL_Mode</A></span> (<span class="symbol"><A NAME="ref_1145_27" HREF="terminal_interface-curses__adb.htm#ref_947_27">SwitchOn</A></span> : Boolean := True);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">nl()</A></EM></span>
<span class="comment"><EM>-- AKA: nonl()</EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1145_14">Set_NL_Mode</A>);
<span class="comment"><EM>-- #1A NAME="AFU_54"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_1151_14" HREF="terminal_interface-curses__adb.htm#ref_966_14">Clear_On_Next_Update</A></span>
(<span class="symbol"><A NAME="ref_1152_7" HREF="terminal_interface-curses__adb.htm#ref_967_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_1153_7" HREF="terminal_interface-curses__adb.htm#ref_968_7">Do_Clear</A></span> : Boolean := True);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">clearok()</A></EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1151_14">Clear_On_Next_Update</A>);
<span class="comment"><EM>-- #1A NAME="AFU_55"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_1158_14" HREF="terminal_interface-curses__adb.htm#ref_978_14">Use_Insert_Delete_Line</A></span>
(<span class="symbol"><A NAME="ref_1159_7" HREF="terminal_interface-curses__adb.htm#ref_979_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_1160_7" HREF="terminal_interface-curses__adb.htm#ref_980_7">Do_Idl</A></span> : Boolean := True);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">idlok()</A></EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1158_14">Use_Insert_Delete_Line</A>);
<span class="comment"><EM>-- #1A NAME="AFU_56"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_1165_14" HREF="terminal_interface-curses__adb.htm#ref_990_14">Use_Insert_Delete_Character</A></span>
(<span class="symbol"><A NAME="ref_1166_7" HREF="terminal_interface-curses__adb.htm#ref_991_7">Win</A></span> : <A HREF="terminal_interface-curses__ads.htm#ref_55_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_644_13">Standard_Window</A>;
<span class="symbol"><A NAME="ref_1167_7" HREF="terminal_interface-curses__adb.htm#ref_992_7">Do_Idc</A></span> : Boolean := True);
<span class="comment"><EM>-- AKA: <A HREF="../man/curs_outopts.3x.html">idcok()</A></EM></span>
<b>pragma</b> Inline (<A HREF="terminal_interface-curses__ads.htm#ref_1165_14">Use_Insert_Delete_Character</A>);
<span class="comment"><EM>-- #1A NAME="AFU_57"#2|</EM></span>
<b>procedure</b> <span class="symbol"><A NAME="ref_1172_14" HREF="terminal_interface-curses__adb.htm#ref_1000_14">Leave_Cursor_After_Update</A></span>
(<span class="symbol"><A NAME="ref_1173_7" HREF="terminal_interface-curses__adb.htm#ref_1001_7">Win</A></span> : <A