type Key_Event is abstract new Event with private;
type Key_Held_Event is new Key_Event with private;
type Key_Press_Event is new Key_Event with private;
type Key_Release_Event is new Key_Event with private;
type Mouse_Event is abstract new Event with private;
type Mouse_Move_Event is new Mouse_Event with private;
type Mouse_Scroll_Event is new Mouse_Event with private;
type Mouse_Button_Event is abstract new Mouse_Event with private;
type Mouse_Click_Event is new Mouse_Button_Event with private;
type Mouse_Doubleclick_Event is new Mouse_Button_Event with private;
type Mouse_Held_Event is new Mouse_Button_Event with private;
type Mouse_Press_Event is new Mouse_Button_Event with private;
type Mouse_Release_Event is new Mouse_Button_Event with private;
type A_Key_Event is access all Key_Event'Class;
type A_Mouse_Event is access all Mouse_Event'Class;
type A_Mouse_Scroll_Event is access all Mouse_Scroll_Event'Class;
type A_Mouse_Button_Event is access all Mouse_Button_Event'Class;
KEY_HELD_ID : constant Event_Id := To_Event_Id( "Key_Held" );
KEY_PRESS_ID : constant Event_Id := To_Event_Id( "Key_Press" );
KEY_RELEASE_ID : constant Event_Id := To_Event_Id( "Key_Release" );
MOUSE_MOVE_ID : constant Event_Id := To_Event_Id( "Mouse_Move" );
MOUSE_SCROLL_ID : constant Event_Id := To_Event_Id( "Mouse_Scroll" );
MOUSE_CLICK_ID : constant Event_Id := To_Event_Id( "Mouse_Click" );
MOUSE_DOUBLECLICK_ID : constant Event_Id := To_Event_Id( "Mouse_Doubleclick" );
MOUSE_HELD_ID : constant Event_Id := To_Event_Id( "Mouse_Held" );
MOUSE_PRESS_ID : constant Event_Id := To_Event_Id( "Mouse_Press" );
MOUSE_RELEASE_ID : constant Event_Id := To_Event_Id( "Mouse_Release" );
procedure Get_Modifiers
( | this | : not null access Key_Event'Class; |
modifiers | : out Modifiers_Array ); |
procedure Set_XY
( | this | : not null access Mouse_Event'Class; |
x, y | : Integer ); |
procedure Queue_Key_Held
( | key | : Positive; |
modifiers | : Modifiers_Array; | |
capslock | : Boolean ); |
procedure Queue_Key_Press
( | key | : Positive; |
modifiers | : Modifiers_Array; | |
capslock | : Boolean ); |
procedure Queue_Key_Release
( | key | : Positive; |
modifiers | : Modifiers_Array; | |
capslock | : Boolean ); |
procedure Queue_Mouse_Click
( | x, y | : Integer; |
btn | : Mouse_Button ); |
procedure Queue_Mouse_Doubleclick
( | x, y | : Integer; |
btn | : Mouse_Button ); |
procedure Queue_Mouse_Held
( | x, y | : Integer; |
btn | : Mouse_Button ); |
procedure Queue_Mouse_Press
( | x, y | : Integer; |
btn | : Mouse_Button; | |
modifiers | : Modifiers_Array ); |
procedure Queue_Mouse_Release
( | x, y | : Integer; |
btn | : Mouse_Button ); |