<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>-- --</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>
- <b>type</b> <span class="symbol"><A NAME="ref_56_9">Event_Mask</A></span> <b>is</b> <b>private</b>;
- <span class="symbol"><A NAME="ref_57_4">No_Events</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A>;
- <span class="symbol"><A NAME="ref_58_4">All_Events</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A>;
-
- <b>type</b> <span class="symbol"><A NAME="ref_60_9">Mouse_Button</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_60_26">Left</A></span>, <span class="comment"><EM>-- aka: Button 1</EM></span>
- <span class="symbol"><A NAME="ref_61_26">Middle</A></span>, <span class="comment"><EM>-- aka: Button 2</EM></span>
- <span class="symbol"><A NAME="ref_62_26">Right</A></span>, <span class="comment"><EM>-- aka: Button 3</EM></span>
- <span class="symbol"><A NAME="ref_63_26">Button4</A></span>, <span class="comment"><EM>-- aka: Button 4</EM></span>
- <span class="symbol"><A NAME="ref_64_26">Control</A></span>, <span class="comment"><EM>-- Control Key</EM></span>
- <span class="symbol"><A NAME="ref_65_26">Shift</A></span>, <span class="comment"><EM>-- Shift Key</EM></span>
- <span class="symbol"><A NAME="ref_66_26">Alt</A></span>); <span class="comment"><EM>-- ALT Key</EM></span>
-
- <b>subtype</b> <span class="symbol"><A NAME="ref_68_12">Real_Buttons</A></span> <b>is</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Mouse_Button</A> <b>range</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_26">Left</A> .. <A HREF="terminal_interface-curses-mouse__ads.htm#ref_63_26">Button4</A>;
- <b>subtype</b> <span class="symbol"><A NAME="ref_69_12">Modifier_Keys</A></span> <b>is</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Mouse_Button</A> <b>range</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_26">Control</A> .. <A HREF="terminal_interface-curses-mouse__ads.htm#ref_66_26">Alt</A>;
-
- <b>type</b> <span class="symbol"><A NAME="ref_71_9">Button_State</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_71_26">Released</A></span>,
- <span class="symbol"><A NAME="ref_72_26">Pressed</A></span>,
- <span class="symbol"><A NAME="ref_73_26">Clicked</A></span>,
- <span class="symbol"><A NAME="ref_74_26">Double_Clicked</A></span>,
- <span class="symbol"><A NAME="ref_75_26">Triple_Clicked</A></span>);
-
- <b>type</b> Button_States <b>is</b> <b>array</b> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_71_9">Button_State</A>) <b>of</b> Boolean;
+ <b>type</b> <span class="symbol"><A NAME="ref_57_9">Event_Mask</A></span> <b>is</b> <b>private</b>;
+ <span class="symbol"><A NAME="ref_58_4">No_Events</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_57_9">Event_Mask</A>;
+ <span class="symbol"><A NAME="ref_59_4">All_Events</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_57_9">Event_Mask</A>;
+
+ <b>type</b> <span class="symbol"><A NAME="ref_61_9">Mouse_Button</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_61_26">Left</A></span>, <span class="comment"><EM>-- aka: Button 1</EM></span>
+ <span class="symbol"><A NAME="ref_62_26">Middle</A></span>, <span class="comment"><EM>-- aka: Button 2</EM></span>
+ <span class="symbol"><A NAME="ref_63_26">Right</A></span>, <span class="comment"><EM>-- aka: Button 3</EM></span>
+ <span class="symbol"><A NAME="ref_64_26">Button4</A></span>, <span class="comment"><EM>-- aka: Button 4</EM></span>
+ <span class="symbol"><A NAME="ref_65_26">Control</A></span>, <span class="comment"><EM>-- Control Key</EM></span>
+ <span class="symbol"><A NAME="ref_66_26">Shift</A></span>, <span class="comment"><EM>-- Shift Key</EM></span>
+ <span class="symbol"><A NAME="ref_67_26">Alt</A></span>); <span class="comment"><EM>-- ALT Key</EM></span>
+
+ <b>subtype</b> <span class="symbol"><A NAME="ref_69_12">Real_Buttons</A></span> <b>is</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_61_9">Mouse_Button</A> <b>range</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_61_26">Left</A> .. <A HREF="terminal_interface-curses-mouse__ads.htm#ref_64_26">Button4</A>;
+ <b>subtype</b> <span class="symbol"><A NAME="ref_70_12">Modifier_Keys</A></span> <b>is</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_61_9">Mouse_Button</A> <b>range</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_65_26">Control</A> .. <A HREF="terminal_interface-curses-mouse__ads.htm#ref_67_26">Alt</A>;
+
+ <b>type</b> <span class="symbol"><A NAME="ref_72_9">Button_State</A></span> <b>is</b> (<span class="symbol"><A NAME="ref_72_26">Released</A></span>,
+ <span class="symbol"><A NAME="ref_73_26">Pressed</A></span>,
+ <span class="symbol"><A NAME="ref_74_26">Clicked</A></span>,
+ <span class="symbol"><A NAME="ref_75_26">Double_Clicked</A></span>,
+ <span class="symbol"><A NAME="ref_76_26">Triple_Clicked</A></span>);
+
+ <b>type</b> Button_States <b>is</b> <b>array</b> (<A HREF="terminal_interface-curses-mouse__ads.htm#ref_72_9">Button_State</A>) <b>of</b> Boolean;
- <b>procedure</b> <span class="symbol"><A NAME="ref_93_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_75_14">Register_Reportable_Event</A></span>
- (<span class="symbol"><A NAME="ref_94_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_75_41">Button</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Mouse_Button</A>;
- <span class="symbol"><A NAME="ref_95_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_76_41">State</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_71_9">Button_State</A>;
- <span class="symbol"><A NAME="ref_96_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_77_41">Mask</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A>);
+ <b>procedure</b> <span class="symbol"><A NAME="ref_94_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_76_14">Register_Reportable_Event</A></span>
+ (<span class="symbol"><A NAME="ref_95_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_76_41">Button</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_61_9">Mouse_Button</A>;
+ <span class="symbol"><A NAME="ref_96_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_77_41">State</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_72_9">Button_State</A>;
+ <span class="symbol"><A NAME="ref_97_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_78_41">Mask</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_57_9">Event_Mask</A>);
- <b>procedure</b> <span class="symbol"><A NAME="ref_102_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_93_14">Register_Reportable_Events</A></span>
- (<span class="symbol"><A NAME="ref_103_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_93_42">Button</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Mouse_Button</A>;
- <span class="symbol"><A NAME="ref_104_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_94_42">State</A></span> : Button_States;
- <span class="symbol"><A NAME="ref_105_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_95_42">Mask</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A>);
+ <b>procedure</b> <span class="symbol"><A NAME="ref_103_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_94_14">Register_Reportable_Events</A></span>
+ (<span class="symbol"><A NAME="ref_104_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_94_42">Button</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_61_9">Mouse_Button</A>;
+ <span class="symbol"><A NAME="ref_105_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_95_42">State</A></span> : Button_States;
+ <span class="symbol"><A NAME="ref_106_7" HREF="terminal_interface-curses-mouse__adb.htm#ref_96_42">Mask</A></span> : <b>in</b> <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_57_9">Event_Mask</A>);
- <b>procedure</b> <span class="symbol"><A NAME="ref_129_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_169_14">Get_Event</A></span> (<span class="symbol"><A NAME="ref_129_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_169_25">Event</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_84_9">Mouse_Event</A>;
- <span class="symbol"><A NAME="ref_130_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_170_25">Y</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_58_9">Line_Position</A>;
- <span class="symbol"><A NAME="ref_131_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_171_25">X</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Column_Position</A>;
- <span class="symbol"><A NAME="ref_132_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_172_25">Button</A></span> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_60_9">Mouse_Button</A>;
- <span class="symbol"><A NAME="ref_133_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_173_25">State</A></span> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_71_9">Button_State</A>);
+ <b>procedure</b> <span class="symbol"><A NAME="ref_130_14" HREF="terminal_interface-curses-mouse__adb.htm#ref_170_14">Get_Event</A></span> (<span class="symbol"><A NAME="ref_130_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_170_25">Event</A></span> : <A HREF="terminal_interface-curses-mouse__ads.htm#ref_85_9">Mouse_Event</A>;
+ <span class="symbol"><A NAME="ref_131_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_171_25">Y</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_59_9">Line_Position</A>;
+ <span class="symbol"><A NAME="ref_132_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_172_25">X</A></span> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#ref_60_9">Column_Position</A>;
+ <span class="symbol"><A NAME="ref_133_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_173_25">Button</A></span> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_61_9">Mouse_Button</A>;
+ <span class="symbol"><A NAME="ref_134_25" HREF="terminal_interface-curses-mouse__adb.htm#ref_174_25">State</A></span> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_72_9">Button_State</A>);
<span class="comment"><EM>-- !!! Warning: X and Y are screen coordinates. Due to ripped of lines they</EM></span>
<span class="comment"><EM>-- may not be identical to window coordinates.</EM></span>
<span class="comment"><EM>-- Not Implemented: Get_Event only reports one event, the C library</EM></span>
<span class="comment"><EM>-- version supports multiple events, e.g. {click-1, click-3}</EM></span>
<span class="comment"><EM>-- !!! Warning: X and Y are screen coordinates. Due to ripped of lines they</EM></span>
<span class="comment"><EM>-- may not be identical to window coordinates.</EM></span>
<span class="comment"><EM>-- Not Implemented: Get_Event only reports one event, the C library</EM></span>
<span class="comment"><EM>-- version supports multiple events, e.g. {click-1, click-3}</EM></span>
- <span class="symbol"><A NAME="ref_189_4">BUTTON_CTRL</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_348_4">BUTTON_CTRL</A>;
- <span class="symbol"><A NAME="ref_190_4">BUTTON_SHIFT</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_349_4">BUTTON_SHIFT</A>;
- <span class="symbol"><A NAME="ref_191_4">BUTTON_ALT</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_350_4">BUTTON_ALT</A>;
- <span class="symbol"><A NAME="ref_192_4">BUTTON1_EVENTS</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A>
+ <span class="symbol"><A NAME="ref_190_4">BUTTON_CTRL</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_57_9">Event_Mask</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_348_4">BUTTON_CTRL</A>;
+ <span class="symbol"><A NAME="ref_191_4">BUTTON_SHIFT</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_57_9">Event_Mask</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_349_4">BUTTON_SHIFT</A>;
+ <span class="symbol"><A NAME="ref_192_4">BUTTON_ALT</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_57_9">Event_Mask</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_350_4">BUTTON_ALT</A>;
+ <span class="symbol"><A NAME="ref_193_4">BUTTON1_EVENTS</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_57_9">Event_Mask</A>
- <span class="symbol"><A NAME="ref_200_4">ALL_MOUSE_EVENTS</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_352_4">ALL_MOUSE_EVENTS</A>;
- <A HREF="terminal_interface-curses-mouse__ads.htm#ref_57_4">No_Events</A> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A> := 0;
- <A HREF="terminal_interface-curses-mouse__ads.htm#ref_58_4">All_Events</A> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_56_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_200_4">ALL_MOUSE_EVENTS</A>;
+ <span class="symbol"><A NAME="ref_201_4">ALL_MOUSE_EVENTS</A></span> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_57_9">Event_Mask</A> := <A HREF="terminal_interface-curses_constants__ads.htm#ref_6_28">Curses_Constants</A>.<A HREF="terminal_interface-curses_constants__ads.htm#ref_352_4">ALL_MOUSE_EVENTS</A>;
+ <A HREF="terminal_interface-curses-mouse__ads.htm#ref_58_4">No_Events</A> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_57_9">Event_Mask</A> := 0;
+ <A HREF="terminal_interface-curses-mouse__ads.htm#ref_59_4">All_Events</A> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#ref_57_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#ref_201_4">ALL_MOUSE_EVENTS</A>;