📄 terminal_interface-curses__adb.htm
字号:
<FONT COLOR=red><A NAME="ref_99_7">Res</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; <b>begin</b> <b>case</b> <A HREF="terminal_interface-curses__ads.htm#ref_1928_4">Sizeof_bool</A> <b>is</b> <b>when</b> 1 => <A HREF="terminal_interface-curses__adb.htm#ref_99_7">Res</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#ref_91_13">W_Get_Byte</A> (<A HREF="terminal_interface-curses__adb.htm#ref_93_23">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_94_23">Offset</A>)); <b>when</b> 2 => <A HREF="terminal_interface-curses__adb.htm#ref_99_7">Res</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#ref_90_13">W_Get_Short</A> (<A HREF="terminal_interface-curses__adb.htm#ref_93_23">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_94_23">Offset</A>)); <b>when</b> 4 => <A HREF="terminal_interface-curses__adb.htm#ref_99_7">Res</A> := <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__adb.htm#ref_89_13">W_Get_Int</A> (<A HREF="terminal_interface-curses__adb.htm#ref_93_23">Win</A>, <A HREF="terminal_interface-curses__adb.htm#ref_94_23">Offset</A>)); <b>when</b> <b>others</b> => <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_383_4">Curses_Exception</A>; <b>end</b> <b>case</b>; <b>case</b> <A HREF="terminal_interface-curses__adb.htm#ref_99_7">Res</A> <b>is</b> <b>when</b> 0 => <b>return</b> False; <b>when</b> <b>others</b> => <b>return</b> True; <b>end</b> <b>case</b>; <b>end</b> <A HREF="terminal_interface-curses__adb.htm#ref_93_13">Get_Flag</A>;<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> <b>function</b> <FONT COLOR=red><A NAME="ref_115_13" HREF="terminal_interface-curses__ads.htm#ref_1610_13">Key_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_115_23" HREF="terminal_interface-curses__ads.htm#ref_1610_23">Key</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>) <b>return</b> String <b>is</b> <b>function</b> <FONT COLOR=red><A NAME="ref_117_16">Keyname</A></FONT> (<FONT COLOR=red><A NAME="ref_117_25">K</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>) <b>return</b> chars_ptr; <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#ref_117_16">Keyname</A>, "keyname"); <FONT COLOR=red><A NAME="ref_120_7">Ch</A></FONT> : Character; <b>begin</b> <b>if</b> <A HREF="terminal_interface-curses__ads.htm#ref_1610_23">Key</A> <= Character'Pos (Character'Last) <b>then</b> <A HREF="terminal_interface-curses__adb.htm#ref_120_7">Ch</A> := Character'Val (<A HREF="terminal_interface-curses__ads.htm#ref_1610_23">Key</A>); <b>if</b> Is_Control (<A HREF="terminal_interface-curses__adb.htm#ref_120_7">Ch</A>) <b>then</b> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1621_13">Un_Control</A> (<A HREF="terminal_interface-curses__ads.htm#ref_352_9">Attributed_Character</A>'(Ch => <A HREF="terminal_interface-curses__adb.htm#ref_120_7">Ch</A>, Color => <A HREF="terminal_interface-curses__ads.htm#ref_299_9">Color_Pair</A>'First, Attr => <A HREF="terminal_interface-curses__ads.htm#ref_350_4">Normal_Video</A>)); <b>elsif</b> Is_Graphic (<A HREF="terminal_interface-curses__adb.htm#ref_120_7">Ch</A>) <b>then</b> <b>declare</b> <FONT COLOR=red><A NAME="ref_130_16">S</A></FONT> : String (1 .. 1); <b>begin</b> <A HREF="terminal_interface-curses__adb.htm#ref_130_16">S</A> (1) := <A HREF="terminal_interface-curses__adb.htm#ref_120_7">Ch</A>; <b>return</b> <A HREF="terminal_interface-curses__adb.htm#ref_130_16">S</A>; <b>end</b>; <b>else</b> <b>return</b> ""; <b>end</b> <b>if</b>; <b>else</b> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_121_13">Fill_String</A> (<A HREF="terminal_interface-curses__adb.htm#ref_117_16">Keyname</A> (<A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1610_23">Key</A>))); <b>end</b> <b>if</b>; <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1610_13">Key_Name</A>; <b>procedure</b> <FONT COLOR=red><A NAME="ref_143_14" HREF="terminal_interface-curses__ads.htm#ref_1604_14">Key_Name</A></FONT> (<FONT COLOR=red><A NAME="ref_143_24" HREF="terminal_interface-curses__ads.htm#ref_1604_24">Key</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#ref_73_12">Real_Key_Code</A>; <FONT COLOR=red><A NAME="ref_144_24" HREF="terminal_interface-curses__ads.htm#ref_1605_24">Name</A></FONT> : <b>out</b> String) <b>is</b> <b>begin</b> <A HREF="terminal_interface-curses__adb.htm#ref_57_12">ASF</A>.Move (<A HREF="terminal_interface-curses__ads.htm#ref_1610_13">Key_Name</A> (<A HREF="terminal_interface-curses__ads.htm#ref_1604_24">Key</A>), <A HREF="terminal_interface-curses__ads.htm#ref_1605_24">Name</A>); <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_1604_14">Key_Name</A>;<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> <b>procedure</b> <FONT COLOR=red><A NAME="ref_151_14" HREF="terminal_interface-curses__ads.htm#ref_480_14">Init_Screen</A></FONT> <b>is</b> <b>function</b> <FONT COLOR=red><A NAME="ref_153_16">Initscr</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#ref_153_16">Initscr</A>, "initscr"); <FONT COLOR=red><A NAME="ref_156_7">W</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <b>begin</b> <A HREF="terminal_interface-curses__adb.htm#ref_156_7">W</A> := <A HREF="terminal_interface-curses__adb.htm#ref_153_16">Initscr</A>; <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_156_7">W</A> = <A HREF="terminal_interface-curses__ads.htm#ref_58_4">Null_Window</A> <b>then</b> <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_383_4">Curses_Exception</A>; <b>end</b> <b>if</b>; <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_480_14">Init_Screen</A>; <b>procedure</b> <FONT COLOR=red><A NAME="ref_164_14" HREF="terminal_interface-curses__ads.htm#ref_489_14">End_Windows</A></FONT> <b>is</b> <b>function</b> <FONT COLOR=red><A NAME="ref_166_16">Endwin</A></FONT> <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#ref_166_16">Endwin</A>, "endwin"); <b>begin</b> <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_166_16">Endwin</A> = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_383_4">Curses_Exception</A>; <b>end</b> <b>if</b>; <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_489_14">End_Windows</A>; <b>function</b> <FONT COLOR=red><A NAME="ref_174_13" HREF="terminal_interface-curses__ads.htm#ref_496_13">Is_End_Window</A></FONT> <b>return</b> Boolean <b>is</b> <b>function</b> <FONT COLOR=red><A NAME="ref_176_16">Isendwin</A></FONT> <b>return</b> <A HREF="terminal_interface-curses__ads.htm#ref_1931_9">Curses_Bool</A>; <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#ref_176_16">Isendwin</A>, "isendwin"); <b>begin</b> <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_176_16">Isendwin</A> = <A HREF="terminal_interface-curses__ads.htm#ref_1932_4">Curses_Bool_False</A> <b>then</b> <b>return</b> False; <b>else</b> <b>return</b> True; <b>end</b> <b>if</b>; <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_496_13">Is_End_Window</A>;<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> <b>procedure</b> <FONT COLOR=red><A NAME="ref_186_14" HREF="terminal_interface-curses__ads.htm#ref_505_14">Move_Cursor</A></FONT> (<FONT COLOR=red><A NAME="ref_186_27" HREF="terminal_interface-curses__ads.htm#ref_505_27">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_475_13">Standard_Window</A>; <FONT COLOR=red><A NAME="ref_187_27" HREF="terminal_interface-curses__ads.htm#ref_506_27">Line</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Line_Position</A>; <FONT COLOR=red><A NAME="ref_188_27" HREF="terminal_interface-curses__ads.htm#ref_507_27">Column</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#ref_61_9">Column_Position</A>) <b>is</b> <b>function</b> <FONT COLOR=red><A NAME="ref_190_16">Wmove</A></FONT> (<FONT COLOR=red><A NAME="ref_190_23">Win</A></FONT> : <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A>; <FONT COLOR=red><A NAME="ref_191_23">Line</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; <FONT COLOR=red><A NAME="ref_192_23">Column</A></FONT> : <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> ) <b>return</b> <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A>; <b>pragma</b> Import (C, <A HREF="terminal_interface-curses__adb.htm#ref_190_16">Wmove</A>, "wmove"); <b>begin</b> <b>if</b> <A HREF="terminal_interface-curses__adb.htm#ref_190_16">Wmove</A> (<A HREF="terminal_interface-curses__ads.htm#ref_505_27">Win</A>, <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_506_27">Line</A>), <A HREF="terminal_interface-curses-aux__ads.htm#ref_55_12">C_Int</A> (<A HREF="terminal_interface-curses__ads.htm#ref_507_27">Column</A>)) = <A HREF="terminal_interface-curses-aux__ads.htm#ref_72_4">Curses_Err</A> <b>then</b> <b>raise</b> <A HREF="terminal_interface-curses__ads.htm#ref_383_4">Curses_Exception</A>; <b>end</b> <b>if</b>; <b>end</b> <A HREF="terminal_interface-curses__ads.htm#ref_505_14">Move_Cursor</A>;<FONT COLOR=green><EM>------------------------------------------------------------------------------</EM></FONT> <b>procedure</b> <FONT COLOR=red><A NAME="ref_201_14" HREF="terminal_interface-curses__ads.htm#ref_517_14">Add</A></FONT> (<FONT COLOR=red><A NAME="ref_201_19" HREF="terminal_interface-curses__ads.htm#ref_517_19">Win</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#ref_57_9">Window</A> := <A HREF="terminal_interface-curses__ads.htm#ref_475_13">Standard_Window</A>;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -