Key event describes key events.
physical key identifier, don't use this for layout-sensitive queries
a set of key modifiers that are active/pressed
the layout-sensitive name of the key
a flag that can be set to indicate that this event is handled and should not be processed further
the type of event