key_mapper

key_mapper(key, type)[source]

Map the key string to the Qt key.

Parameters:
keystr

The key string which is the same as what it was called in the PySide6.QtCore.Qt, with lowercases and with prefix&underscores removed. Check out the reference page to find out the supported keys and the original names.

typeLiteral[0, 1, 2]

The type of the key for mapping.

Returns:
Literal[PySide6.QtCore.Qt.Key, PySide6.QtCore.Qt.KeyboardModifier,
PySide6.QtCore.Qt.MouseButton]

The mapped Qt key.

Notes

This function provides the possibility to use all the supported keys in Qt for the viewer by mapping the key string to the Qt key.

This function handles:

References

Examples

>>> from compas_viewer.utilities import key_mapper
>>> key_mapper("a", 0)
<Key.Key_A: 65>
>>> key_mapper("h", 0)
<Key.Key_H: 72>
>>> key_mapper("f5", 0)
<Key.Key_F5: 16777268>
>>> key_mapper("superl", 0)
<Key.Key_Super_L: 16777299>
>>> key_mapper("bracketleft", 0)
<Key.Key_BracketLeft: 91>
>>> key_mapper("colon", 0)
<Key.Key_Colon: 58>
>>> key_mapper("control", 1)
<KeyboardModifier.ControlModifier: 67108864>
>>> key_mapper("meta", 1)
<KeyboardModifier.MetaModifier: 268435456>
>>> key_mapper("left", 2)
<MouseButton.LeftButton: 1>
>>> key_mapper("middle", 2)
<MouseButton.MiddleButton: 4>
>>> key_mapper("back", 2)
<MouseButton.BackButton: 8>
>>> key_mapper("forward", 2)
<MouseButton.ForwardButton: 16>
>>> key_mapper("task", 2)
<MouseButton.TaskButton: 32>
>>> key_mapper("extra4", 2)
<MouseButton.ExtraButton4: 64>