Replaced fixed key and mouse button codes by opaque structs