X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=doc%2Fhtml%2Fada%2Fterminal_interface-curses-mouse__adb.htm;h=2035f6b28b88dd539cc27aeef3b66af511a7401b;hp=5b44449946440db918539142a0a2197e3797dab3;hb=5899b5e464ecec4b1613f6fef8cb7b75793c88e3;hpb=cf6a62567b2365c8678b7d561845bdbd1739e5da diff --git a/doc/html/ada/terminal_interface-curses-mouse__adb.htm b/doc/html/ada/terminal_interface-curses-mouse__adb.htm index 5b444499..2035f6b2 100644 --- a/doc/html/ada/terminal_interface-curses-mouse__adb.htm +++ b/doc/html/ada/terminal_interface-curses-mouse__adb.htm @@ -53,8 +53,8 @@ ------------------------------------------------------------------------------ -- Author: Juergen Pfeifer, 1996 -- Version Control: --- @Revision: 1.27 @ --- @Date: 2020/02/02 23:34:34 @ +-- @Revision: 1.28 @ +-- @Date: 2020/06/27 18:50:44 @ -- Binding Version 01.00 ------------------------------------------------------------------------------ with Terminal_Interface.Curses.Aux; use Terminal_Interface.Curses.Aux; @@ -164,10 +164,11 @@ Button := Button4; end if; if Button in Real_Buttons then + State := Released; -- preset to non real button; L := 2 ** (6 * Mouse_Button'Pos (Button)); - for I in Button_State'Range loop + for I in Button_State'Range loop if (Mask and L) /= 0 then - State := I; + State := I; exit; end if; L := 2 * L; @@ -184,37 +185,37 @@ end if; end Dispatch_Event; - procedure Get_Event (Event : Mouse_Event; - Y : out Line_Position; - X : out Column_Position; - Button : out Mouse_Button; - State : out Button_State) + procedure Get_Event (Event : Mouse_Event; + Y : out Line_Position; + X : out Column_Position; + Button : out Mouse_Button; + State : out Button_State) is - Mask : constant Event_Mask := Event.Bstate; + Mask : constant Event_Mask := Event.Bstate; begin X := Column_Position (Event.X); Y := Line_Position (Event.Y); - Dispatch_Event (Mask, Button, State); + Dispatch_Event (Mask, Button, State); end Get_Event; - procedure Unget_Mouse (Event : Mouse_Event) + procedure Unget_Mouse (Event : Mouse_Event) is - function Ungetmouse (Ev : Mouse_Event) return C_Int; + function Ungetmouse (Ev : Mouse_Event) return C_Int; pragma Import (C, Ungetmouse, "ungetmouse"); begin - if Ungetmouse (Event) = Curses_Err then + if Ungetmouse (Event) = Curses_Err then raise Curses_Exception; end if; end Unget_Mouse; - function Enclosed_In_Window (Win : Window := Standard_Window; - Event : Mouse_Event) return Boolean + function Enclosed_In_Window (Win : Window := Standard_Window; + Event : Mouse_Event) return Boolean is - function Wenclose (Win : Window; Y : C_Int; X : C_Int) + function Wenclose (Win : Window; Y : C_Int; X : C_Int) return Curses_Bool; pragma Import (C, Wenclose, "wenclose"); begin - if Wenclose (Win, C_Int (Event.Y), C_Int (Event.X)) + if Wenclose (Win, C_Int (Event.Y), C_Int (Event.X)) = Curses_Bool_False then return False; @@ -223,12 +224,12 @@ end if; end Enclosed_In_Window; - function Mouse_Interval (Msec : Natural := 200) return Natural + function Mouse_Interval (Msec : Natural := 200) return Natural is - function Mouseinterval (Msec : C_Int) return C_Int; + function Mouseinterval (Msec : C_Int) return C_Int; pragma Import (C, Mouseinterval, "mouseinterval"); begin - return Natural (Mouseinterval (C_Int (Msec))); + return Natural (Mouseinterval (C_Int (Msec))); end Mouse_Interval; end Terminal_Interface.Curses.Mouse;