indexing description: "[ Keyboard sensitive objects which dispatches keyboard events. Subscribe on an event-type you want to be notified. ]" date: "$Date$" revision: "$Revision$" deferred class EM_KEYBOARD_SENSITIVE feature {NONE} -- Initialisation make_keyboard_sensitive is -- Initialise default values. do create key_down_event create key_up_event create focus_received_event create focus_lost_event end feature -- Events key_down_event: EM_EVENT_CHANNEL [TUPLE [EM_KEYBOARD_EVENT]] -- Key down event key_up_event: EM_EVENT_CHANNEL [TUPLE [EM_KEYBOARD_EVENT]] -- Key up event focus_received_event: EM_EVENT_CHANNEL [TUPLE []] -- Focus received event focus_lost_event: EM_EVENT_CHANNEL [TUPLE []] -- Focus lost event invariant key_down_event_not_void: key_down_event /= Void key_up_event_not_void: key_up_event /= Void focus_received_event_not_void: focus_received_event /= Void focus_lost_event_not_void: focus_lost_event /= Void end