📄 terminal_interface-curses-mouse__ads.htm
字号:
<FONT COLOR=green><EM>-- with the Empty_Mask constant</EM></FONT> <FONT COLOR=green><EM>-- #1A NAME="AFU_1"#2|</EM></FONT> <FONT COLOR=green><EM>-- There is one difference to mousmask(): we return the value of the</EM></FONT> <FONT COLOR=green><EM>-- old mask, that means the event mask value before this call.</EM></FONT> <FONT COLOR=green><EM>-- Not Implemented: The library version</EM></FONT> <FONT COLOR=green><EM>-- returns a Mouse_Mask that tells which events are reported.</EM></FONT> <b>function</b> Start_Mouse (Mask : <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := All_Events) <b>return</b> Event_Mask; <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_mouse.3x.html">mousemask()</A></EM></FONT> <b>pragma</b> Inline (Start_Mouse); <b>procedure</b> End_Mouse (Mask : <b>in</b> Event_Mask := No_Events); <FONT COLOR=green><EM>-- Terminates the mouse, restores the specified event mask</EM></FONT> <b>pragma</b> Inline (End_Mouse); <FONT COLOR=green><EM>-- #1A NAME="AFU_2"#2|</EM></FONT> <b>function</b> Get_Mouse <b>return</b> Mouse_Event; <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_mouse.3x.html">getmouse()</A></EM></FONT> <b>pragma</b> Inline (Get_Mouse); <b>procedure</b> Get_Event (<FONT COLOR=red><A NAME="137_25">Event</A></FONT> : <b>in</b> <A HREF="terminal_interface-curses__ads.htm#59_9">Mouse_Event</A>; <FONT COLOR=red><A NAME="138_25">Y</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses__ads.htm#60_9">Line_Position</A>; <FONT COLOR=red><A NAME="139_25">X</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#67_9">Column_Position</A>; <FONT COLOR=red><A NAME="140_25">Button</A></FONT> : <b>out</b> <A HREF="terminal_interface-curses-mouse__ads.htm#78_9">Mouse_Button</A>; State : <b>out</b> Button_State); <FONT COLOR=green><EM>-- !!! Warning: X and Y are screen coordinates. Due to ripped of lines they</EM></FONT> <FONT COLOR=green><EM>-- may not be identical to window coordinates.</EM></FONT> <FONT COLOR=green><EM>-- Not Implemented: Get_Event only reports one event, the C library</EM></FONT> <FONT COLOR=green><EM>-- version supports multiple events, e.g. {click-1, click-3}</EM></FONT> <b>pragma</b> Inline (Get_Event); <FONT COLOR=green><EM>-- #1A NAME="AFU_3"#2|</EM></FONT> <b>procedure</b> Unget_Mouse (Event : <b>in</b> Mouse_Event); <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_mouse.3x.html">ungetmouse()</A></EM></FONT> <b>pragma</b> Inline (Unget_Mouse); <FONT COLOR=green><EM>-- #1A NAME="AFU_4"#2|</EM></FONT> <b>function</b> Enclosed_In_Window (<FONT COLOR=red><A NAME="154_33">Win</A></FONT> : <A HREF="terminal_interface-curses-mouse__ads.htm#91_9">Window</A> := Standard_Window; Event : Mouse_Event) <b>return</b> Boolean; <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_mouse.3x.html">wenclose()</A></EM></FONT> <FONT COLOR=green><EM>-- But : use event instead of screen coordinates.</EM></FONT> <b>pragma</b> Inline (Enclosed_In_Window); <FONT COLOR=green><EM>-- #1A NAME="AFU_5"#2|</EM></FONT> <b>function</b> Mouse_Interval (Msec : Natural := 200) <b>return</b> Natural; <FONT COLOR=green><EM>-- AKA: <A HREF="../man/curs_mouse.3x.html">mouseinterval()</A></EM></FONT> <b>pragma</b> Inline (Mouse_Interval);<b>private</b> <b>type</b> Event_Mask <b>is</b> <b>new</b> Interfaces.C.unsigned_long; <b>type</b> Mouse_Event <b>is</b> <b>record</b> Id : Integer <b>range</b> Integer (<A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.short'First) .. <FONT COLOR=red><A NAME="171_10"> </A></FONT> <FONT COLOR=red><A NAME="171_13"> </A></FONT> <FONT COLOR=red><A NAME="171_16"> </A></FONT> Integer (<A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.short'Last); X, Y, Z : Integer <b>range</b> Integer (<A HREF="interfac__ads.htm#23_9">Interfaces</A>.C.int'First) .. <FONT COLOR=red><A NAME="173_10"> </A></FONT> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9"> </A> Integer (Interfaces.C.int'Last); Bstate <A HREF="terminal_interface-curses-mouse__ads.htm#91_9"> </A>: Event_Mask; <b>end</b> <b>record</b>; <b>pragma</b> Convention (C, Mouse_Event); <b>pragma</b> Pack (Mouse_Event); <b>for</b> Mouse_Event <b>use</b> <b>record</b> Id <b>at</b> 0 <b>range</b> 0 .. 15; X <b>at</b> 0 <b>range</b> 32 .. 63; Y <b>at</b> 0 <b>range</b> 64 .. 95; Z <b>at</b> 0 <b>range</b> 96 .. 127; Bstate <b>at</b> 0 <b>range</b> 128 .. 159; <b>end</b> <b>record</b>; <FONT COLOR=green><EM>-- Please note: this rep. clause is generated and may be</EM></FONT> <FONT COLOR=green><EM>-- different on your system.</EM></FONT> Generation_Bit_Order : <b>constant</b> System.Bit_Order := System.Low_Order_First; <FONT COLOR=green><EM>-- This constant may be different on your system.</EM></FONT> <FONT COLOR=red><A NAME="193_4">BUTTON1_RELEASED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000000001#; <FONT COLOR=red><A NAME="194_4">BUTTON1_PRESSED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000000002#; <FONT COLOR=red><A NAME="195_4">BUTTON1_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000000004#; <FONT COLOR=red><A NAME="196_4">BUTTON1_DOUBLE_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000000010#; <FONT COLOR=red><A NAME="197_4">BUTTON1_TRIPLE_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000000020#; <FONT COLOR=red><A NAME="198_4">BUTTON1_RESERVED_EVENT</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000000040#; <FONT COLOR=red><A NAME="199_4">BUTTON2_RELEASED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000000100#; <FONT COLOR=red><A NAME="200_4">BUTTON2_PRESSED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000000200#; <FONT COLOR=red><A NAME="201_4">BUTTON2_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000000400#; <FONT COLOR=red><A NAME="202_4">BUTTON2_DOUBLE_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000001000#; <FONT COLOR=red><A NAME="203_4">BUTTON2_TRIPLE_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000002000#; <FONT COLOR=red><A NAME="204_4">BUTTON2_RESERVED_EVENT</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000004000#; <FONT COLOR=red><A NAME="205_4">BUTTON3_RELEASED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000010000#; <FONT COLOR=red><A NAME="206_4">BUTTON3_PRESSED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000020000#; <FONT COLOR=red><A NAME="207_4">BUTTON3_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000040000#; <FONT COLOR=red><A NAME="208_4">BUTTON3_DOUBLE_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000100000#; <FONT COLOR=red><A NAME="209_4">BUTTON3_TRIPLE_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000200000#; <FONT COLOR=red><A NAME="210_4">BUTTON3_RESERVED_EVENT</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000400000#; <FONT COLOR=red><A NAME="211_4">BUTTON4_RELEASED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00001000000#; <FONT COLOR=red><A NAME="212_4">BUTTON4_PRESSED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00002000000#; <FONT COLOR=red><A NAME="213_4">BUTTON4_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00004000000#; <FONT COLOR=red><A NAME="214_4">BUTTON4_DOUBLE_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00010000000#; <FONT COLOR=red><A NAME="215_4">BUTTON4_TRIPLE_CLICKED</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00020000000#; <FONT COLOR=red><A NAME="216_4">BUTTON4_RESERVED_EVENT</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00040000000#; <FONT COLOR=red><A NAME="217_4">BUTTON_CTRL</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00100000000#; <FONT COLOR=red><A NAME="218_4">BUTTON_SHIFT</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00200000000#; <FONT COLOR=red><A NAME="219_4">BUTTON_ALT</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00400000000#; <FONT COLOR=red><A NAME="220_4">REPORT_MOUSE_POSITION</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#01000000000#; <FONT COLOR=red><A NAME="221_4">ALL_MOUSE_EVENTS</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00777777777#; <FONT COLOR=red><A NAME="222_4">BUTTON1_EVENTS</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000000077#; <FONT COLOR=red><A NAME="223_4">BUTTON2_EVENTS</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000007700#; <FONT COLOR=red><A NAME="224_4">BUTTON3_EVENTS</A></FONT> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := 8#00000770000#; BUTTON4_EVENTS : <b>constant</b> Event_Mask := 8#00077000000#; <A HREF="terminal_interface-curses-mouse__ads.htm#65_4">No_Events</A> : <b>constant</b> <A HREF="terminal_interface-curses-mouse__ads.htm#63_9">Event_Mask</A> := <A HREF="terminal_interface-curses-mouse__ads.htm#220_4">0</A>; All_Events : <b>constant</b> Event_Mask := ALL_MOUSE_EVENTS;<b>end</b> Terminal_Interface.Curses.Mouse;</PRE></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -