Package imgui.flag
Class ImGuiKey
java.lang.Object
imgui.flag.ImGuiKey
A key identifier (ImGuiKey_XXX or ImGuiMod_XXX value): can represent Keyboard, Mouse and Gamepad values.
All our named keys are
>= 512. Keys value 0 to 511 are left unused as legacy native/opaque key values (< 1.87).
Since >= 1.89 we increased typing (went from int to enum), some legacy code may need a cast to ImGuiKey.
Read details about the 1.87 and 1.89 transition : https://github.com/ocornut/imgui/issues/4921
Note that "Keys" related to physical keys and are not the same concept as input "Characters", the later are submitted via io.AddInputCharacter().-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final int'static final intAvailable on some keyboard/mouses.static final intstatic final intstatic final int\ (this text inhibit multiline comment caused by backslash)static final intstatic final intstatic final intstatic final int,static final intObsoleted in 1.91.5 because it was misleading (since named keys don't start at 0 anymore)static final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final int=static final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intView | - | Share |static final intD-pad Down | " | " | Move / Tweak / Resize Window (in Windowing mode)static final intD-pad Left | " | " | Move / Tweak / Resize Window (in Windowing mode)static final intD-pad Right | " | " | Move / Tweak / Resize Window (in Windowing mode)static final intD-pad Up | " | " | Move / Tweak / Resize Window (in Windowing mode)static final intA | B | Cross | Activate / Open / Toggle.static final intX | Y | Square | Toggle Menu.static final intB | A | Circle | Cancel / Close / Exitstatic final intY | X | Triangle | Open Context Menustatic final intL Bumper | L | L1 | Tweak Slower / Focus Previous (in Windowing mode)static final intL Trigger | ZL | L2 | [Analog]static final intL Stick | L3 | L3 |static final int| | | [Analog] Move Window (in Windowing mode)static final int| | | [Analog] Move Window (in Windowing mode)static final int| | | [Analog] Move Window (in Windowing mode)static final int| | | [Analog] Move Window (in Windowing mode)static final intR Bumper | R | R1 | Tweak Faster / Focus Next (in Windowing mode)static final intR Trigger | ZR | R2 | [Analog]static final intR Stick | R3 | R3 |static final int| | | [Analog]static final int| | | [Analog]static final int| | | [Analog]static final int| | | [Analog]static final intMenu | + | Options |static final int`static final intstatic final intstatic final intstatic final intOption/Menustatic final intCtrl (non-macOS), Cmd (macOS)static final int4-bitsstatic final intKeyboard Modifiers (explicitly submitted by backend via AddKeyEvent() calls) - Any functions taking a ImGuiKeyChord parameter can binary-or those with regular keys, e.g.static final intShiftstatic final intRemoved in 1.90.7, you can now simply use ImGuiMod_Ctrlstatic final intWindows/Super (non-macOS), Ctrl (macOS)static final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intAlso see ImGuiMod_Ctrl, ImGuiMod_Shift, ImGuiMod_Alt, ImGuiMod_Super below!static final intstatic final int[static final intAlso see ImGuiMod_Ctrl, ImGuiMod_Shift, ImGuiMod_Alt, ImGuiMod_Super below!static final intAlso see ImGuiMod_Ctrl, ImGuiMod_Shift, ImGuiMod_Alt, ImGuiMod_Super below!static final intAlso see ImGuiMod_Ctrl, ImGuiMod_Shift, ImGuiMod_Alt, ImGuiMod_Super below!static final intstatic final intstatic final int-static final intAliases: Mouse Buttons (auto-submitted from AddMouseButtonEvent() calls) - This is mirroring the data also written to io.MouseDown[], io.MouseWheel, in a format allowing them to be accessed via standard key API.static final intAliases: Mouse Buttons (auto-submitted from AddMouseButtonEvent() calls) - This is mirroring the data also written to io.MouseDown[], io.MouseWheel, in a format allowing them to be accessed via standard key API.static final intAliases: Mouse Buttons (auto-submitted from AddMouseButtonEvent() calls) - This is mirroring the data also written to io.MouseDown[], io.MouseWheel, in a format allowing them to be accessed via standard key API.static final intAliases: Mouse Buttons (auto-submitted from AddMouseButtonEvent() calls) - This is mirroring the data also written to io.MouseDown[], io.MouseWheel, in a format allowing them to be accessed via standard key API.static final intAliases: Mouse Buttons (auto-submitted from AddMouseButtonEvent() calls) - This is mirroring the data also written to io.MouseDown[], io.MouseWheel, in a format allowing them to be accessed via standard key API.static final intAliases: Mouse Buttons (auto-submitted from AddMouseButtonEvent() calls) - This is mirroring the data also written to io.MouseDown[], io.MouseWheel, in a format allowing them to be accessed via standard key API.static final intAliases: Mouse Buttons (auto-submitted from AddMouseButtonEvent() calls) - This is mirroring the data also written to io.MouseDown[], io.MouseWheel, in a format allowing them to be accessed via standard key API.static final intstatic final intFirst valid key value (other than 0)static final int[Internal] If you need to iterate all keys (for e.g.static final int[Internal] If you need to iterate all keys (for e.g.static final intKeyboardstatic final intstatic final intstatic final intNon-US backslash.static final intstatic final intstatic final intstatic final intstatic final int.static final intstatic final intstatic final intstatic final int[Internal] Reserved for mod storagestatic final int[Internal] Reserved for mod storagestatic final int[Internal] Reserved for mod storagestatic final int[Internal] Reserved for mod storagestatic final intstatic final intstatic final int]static final intstatic final intstatic final intstatic final intstatic final intstatic final int;static final int/static final intstatic final intstatic final int== ImGuiKey_NamedKey_BEGINstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final int -
Method Summary
-
Field Details
-
None
public static final int NoneKeyboardDefinition:
0- See Also:
-
NamedKey_BEGIN
public static final int NamedKey_BEGINFirst valid key value (other than 0)Definition:
512- See Also:
-
Tab
public static final int Tab== ImGuiKey_NamedKey_BEGINDefinition:
512- See Also:
-
LeftArrow
public static final int LeftArrow- See Also:
-
RightArrow
public static final int RightArrow- See Also:
-
UpArrow
public static final int UpArrow- See Also:
-
DownArrow
public static final int DownArrow- See Also:
-
PageUp
public static final int PageUp- See Also:
-
PageDown
public static final int PageDown- See Also:
-
Home
public static final int Home- See Also:
-
End
public static final int End- See Also:
-
Insert
public static final int Insert- See Also:
-
Delete
public static final int Delete- See Also:
-
Backspace
public static final int Backspace- See Also:
-
Space
public static final int Space- See Also:
-
Enter
public static final int Enter- See Also:
-
Escape
public static final int Escape- See Also:
-
LeftCtrl
public static final int LeftCtrlAlso see ImGuiMod_Ctrl, ImGuiMod_Shift, ImGuiMod_Alt, ImGuiMod_Super below!- See Also:
-
LeftShift
public static final int LeftShiftAlso see ImGuiMod_Ctrl, ImGuiMod_Shift, ImGuiMod_Alt, ImGuiMod_Super below!- See Also:
-
LeftAlt
public static final int LeftAltAlso see ImGuiMod_Ctrl, ImGuiMod_Shift, ImGuiMod_Alt, ImGuiMod_Super below!- See Also:
-
LeftSuper
public static final int LeftSuperAlso see ImGuiMod_Ctrl, ImGuiMod_Shift, ImGuiMod_Alt, ImGuiMod_Super below!- See Also:
-
RightCtrl
public static final int RightCtrl- See Also:
-
RightShift
public static final int RightShift- See Also:
-
RightAlt
public static final int RightAlt- See Also:
-
RightSuper
public static final int RightSuper- See Also:
-
Menu
public static final int Menu- See Also:
-
_0
public static final int _0- See Also:
-
_1
public static final int _1- See Also:
-
_2
public static final int _2- See Also:
-
_3
public static final int _3- See Also:
-
_4
public static final int _4- See Also:
-
_5
public static final int _5- See Also:
-
_6
public static final int _6- See Also:
-
_7
public static final int _7- See Also:
-
_8
public static final int _8- See Also:
-
_9
public static final int _9- See Also:
-
A
public static final int A- See Also:
-
B
public static final int B- See Also:
-
C
public static final int C- See Also:
-
D
public static final int D- See Also:
-
E
public static final int E- See Also:
-
F
public static final int F- See Also:
-
G
public static final int G- See Also:
-
H
public static final int H- See Also:
-
I
public static final int I- See Also:
-
J
public static final int J- See Also:
-
K
public static final int K- See Also:
-
L
public static final int L- See Also:
-
M
public static final int M- See Also:
-
N
public static final int N- See Also:
-
O
public static final int O- See Also:
-
P
public static final int P- See Also:
-
Q
public static final int Q- See Also:
-
R
public static final int R- See Also:
-
S
public static final int S- See Also:
-
T
public static final int T- See Also:
-
U
public static final int U- See Also:
-
V
public static final int V- See Also:
-
W
public static final int W- See Also:
-
X
public static final int X- See Also:
-
Y
public static final int Y- See Also:
-
Z
public static final int Z- See Also:
-
F1
public static final int F1- See Also:
-
F2
public static final int F2- See Also:
-
F3
public static final int F3- See Also:
-
F4
public static final int F4- See Also:
-
F5
public static final int F5- See Also:
-
F6
public static final int F6- See Also:
-
F7
public static final int F7- See Also:
-
F8
public static final int F8- See Also:
-
F9
public static final int F9- See Also:
-
F10
public static final int F10- See Also:
-
F11
public static final int F11- See Also:
-
F12
public static final int F12- See Also:
-
F13
public static final int F13- See Also:
-
F14
public static final int F14- See Also:
-
F15
public static final int F15- See Also:
-
F16
public static final int F16- See Also:
-
F17
public static final int F17- See Also:
-
F18
public static final int F18- See Also:
-
F19
public static final int F19- See Also:
-
F20
public static final int F20- See Also:
-
F21
public static final int F21- See Also:
-
F22
public static final int F22- See Also:
-
F23
public static final int F23- See Also:
-
F24
public static final int F24- See Also:
-
Apostrophe
public static final int Apostrophe'- See Also:
-
Comma
public static final int Comma,- See Also:
-
Minus
public static final int Minus-- See Also:
-
Period
public static final int Period.- See Also:
-
Slash
public static final int Slash/- See Also:
-
Semicolon
public static final int Semicolon;- See Also:
-
Equal
public static final int Equal=- See Also:
-
LeftBracket
public static final int LeftBracket[- See Also:
-
Backslash
public static final int Backslash\ (this text inhibit multiline comment caused by backslash)- See Also:
-
RightBracket
public static final int RightBracket]- See Also:
-
GraveAccent
public static final int GraveAccent`- See Also:
-
CapsLock
public static final int CapsLock- See Also:
-
ScrollLock
public static final int ScrollLock- See Also:
-
NumLock
public static final int NumLock- See Also:
-
PrintScreen
public static final int PrintScreen- See Also:
-
Pause
public static final int Pause- See Also:
-
Keypad0
public static final int Keypad0- See Also:
-
Keypad1
public static final int Keypad1- See Also:
-
Keypad2
public static final int Keypad2- See Also:
-
Keypad3
public static final int Keypad3- See Also:
-
Keypad4
public static final int Keypad4- See Also:
-
Keypad5
public static final int Keypad5- See Also:
-
Keypad6
public static final int Keypad6- See Also:
-
Keypad7
public static final int Keypad7- See Also:
-
Keypad8
public static final int Keypad8- See Also:
-
Keypad9
public static final int Keypad9- See Also:
-
KeypadDecimal
public static final int KeypadDecimal- See Also:
-
KeypadDivide
public static final int KeypadDivide- See Also:
-
KeypadMultiply
public static final int KeypadMultiply- See Also:
-
KeypadSubtract
public static final int KeypadSubtract- See Also:
-
KeypadAdd
public static final int KeypadAdd- See Also:
-
KeypadEnter
public static final int KeypadEnter- See Also:
-
KeypadEqual
public static final int KeypadEqual- See Also:
-
AppBack
public static final int AppBackAvailable on some keyboard/mouses. Often referred as "Browser Back"- See Also:
-
AppForward
public static final int AppForward- See Also:
-
Oem102
public static final int Oem102Non-US backslash.- See Also:
-
GamepadStart
public static final int GamepadStartMenu | + | Options |- See Also:
-
GamepadBack
public static final int GamepadBackView | - | Share |- See Also:
-
GamepadFaceLeft
public static final int GamepadFaceLeftX | Y | Square | Toggle Menu. Hold for Windowing mode (Focus/Move/Resize windows)- See Also:
-
GamepadFaceRight
public static final int GamepadFaceRightB | A | Circle | Cancel / Close / Exit- See Also:
-
GamepadFaceUp
public static final int GamepadFaceUpY | X | Triangle | Open Context Menu- See Also:
-
GamepadFaceDown
public static final int GamepadFaceDownA | B | Cross | Activate / Open / Toggle. Hold for 0.60f to Activate in Text Input mode (e.g. wired to an on-screen keyboard).- See Also:
-
GamepadDpadLeft
public static final int GamepadDpadLeftD-pad Left | " | " | Move / Tweak / Resize Window (in Windowing mode)- See Also:
-
GamepadDpadRight
public static final int GamepadDpadRightD-pad Right | " | " | Move / Tweak / Resize Window (in Windowing mode)- See Also:
-
GamepadDpadUp
public static final int GamepadDpadUpD-pad Up | " | " | Move / Tweak / Resize Window (in Windowing mode)- See Also:
-
GamepadDpadDown
public static final int GamepadDpadDownD-pad Down | " | " | Move / Tweak / Resize Window (in Windowing mode)- See Also:
-
GamepadL1
public static final int GamepadL1L Bumper | L | L1 | Tweak Slower / Focus Previous (in Windowing mode)- See Also:
-
GamepadR1
public static final int GamepadR1R Bumper | R | R1 | Tweak Faster / Focus Next (in Windowing mode)- See Also:
-
GamepadL2
public static final int GamepadL2L Trigger | ZL | L2 | [Analog]- See Also:
-
GamepadR2
public static final int GamepadR2R Trigger | ZR | R2 | [Analog]- See Also:
-
GamepadL3
public static final int GamepadL3L Stick | L3 | L3 |- See Also:
-
GamepadR3
public static final int GamepadR3R Stick | R3 | R3 |- See Also:
-
GamepadLStickLeft
public static final int GamepadLStickLeft| | | [Analog] Move Window (in Windowing mode)- See Also:
-
GamepadLStickRight
public static final int GamepadLStickRight| | | [Analog] Move Window (in Windowing mode)- See Also:
-
GamepadLStickUp
public static final int GamepadLStickUp| | | [Analog] Move Window (in Windowing mode)- See Also:
-
GamepadLStickDown
public static final int GamepadLStickDown| | | [Analog] Move Window (in Windowing mode)- See Also:
-
GamepadRStickLeft
public static final int GamepadRStickLeft| | | [Analog]- See Also:
-
GamepadRStickRight
public static final int GamepadRStickRight| | | [Analog]- See Also:
-
GamepadRStickUp
public static final int GamepadRStickUp| | | [Analog]- See Also:
-
GamepadRStickDown
public static final int GamepadRStickDown| | | [Analog]- See Also:
-
MouseLeft
public static final int MouseLeftAliases: Mouse Buttons (auto-submitted from AddMouseButtonEvent() calls) - This is mirroring the data also written to io.MouseDown[], io.MouseWheel, in a format allowing them to be accessed via standard key API.- See Also:
-
MouseRight
public static final int MouseRightAliases: Mouse Buttons (auto-submitted from AddMouseButtonEvent() calls) - This is mirroring the data also written to io.MouseDown[], io.MouseWheel, in a format allowing them to be accessed via standard key API.- See Also:
-
MouseMiddle
public static final int MouseMiddleAliases: Mouse Buttons (auto-submitted from AddMouseButtonEvent() calls) - This is mirroring the data also written to io.MouseDown[], io.MouseWheel, in a format allowing them to be accessed via standard key API.- See Also:
-
MouseX1
public static final int MouseX1Aliases: Mouse Buttons (auto-submitted from AddMouseButtonEvent() calls) - This is mirroring the data also written to io.MouseDown[], io.MouseWheel, in a format allowing them to be accessed via standard key API.- See Also:
-
MouseX2
public static final int MouseX2Aliases: Mouse Buttons (auto-submitted from AddMouseButtonEvent() calls) - This is mirroring the data also written to io.MouseDown[], io.MouseWheel, in a format allowing them to be accessed via standard key API.- See Also:
-
MouseWheelX
public static final int MouseWheelXAliases: Mouse Buttons (auto-submitted from AddMouseButtonEvent() calls) - This is mirroring the data also written to io.MouseDown[], io.MouseWheel, in a format allowing them to be accessed via standard key API.- See Also:
-
MouseWheelY
public static final int MouseWheelYAliases: Mouse Buttons (auto-submitted from AddMouseButtonEvent() calls) - This is mirroring the data also written to io.MouseDown[], io.MouseWheel, in a format allowing them to be accessed via standard key API.- See Also:
-
ReservedForModCtrl
public static final int ReservedForModCtrl[Internal] Reserved for mod storage- See Also:
-
ReservedForModShift
public static final int ReservedForModShift[Internal] Reserved for mod storage- See Also:
-
ReservedForModAlt
public static final int ReservedForModAlt[Internal] Reserved for mod storage- See Also:
-
ReservedForModSuper
public static final int ReservedForModSuper[Internal] Reserved for mod storage- See Also:
-
NamedKey_END
public static final int NamedKey_END[Internal] If you need to iterate all keys (for e.g. an input mapper) you may use ImGuiKey_NamedKey_BEGIN..ImGuiKey_NamedKey_END.- See Also:
-
NamedKey_COUNT
public static final int NamedKey_COUNT[Internal] If you need to iterate all keys (for e.g. an input mapper) you may use ImGuiKey_NamedKey_BEGIN..ImGuiKey_NamedKey_END.Definition:
ImGuiKey_NamedKey_END - ImGuiKey_NamedKey_BEGIN- See Also:
-
ImGuiMod_None
public static final int ImGuiMod_NoneKeyboard Modifiers (explicitly submitted by backend via AddKeyEvent() calls) - Any functions taking a ImGuiKeyChord parameter can binary-or those with regular keys, e.g. Shortcut(ImGuiMod_Ctrl | ImGuiKey_S). - Those are written back into io.KeyCtrl, io.KeyShift, io.KeyAlt, io.KeySuper for convenience, but may be accessed via standard key API such as IsKeyPressed(), IsKeyReleased(), querying duration etc. - Code polling every key (e.g. an interface to detect a key press for input mapping) might want to ignore those and prefer using the real keys (e.g. ImGuiKey_LeftCtrl, ImGuiKey_RightCtrl instead of ImGuiMod_Ctrl). - In theory the value of keyboard modifiers should be roughly equivalent to a logical or of the equivalent left/right keys. In practice: it's complicated; mods are often provided from different sources. Keyboard layout, IME, sticky keys and backends tend to interfere and break that equivalence. The safer decision is to relay that ambiguity down to the end-user... - On macOS, we swap Cmd(Super) and Ctrl keys at the time of the io.AddKeyEvent() call.Definition:
0- See Also:
-
ImGuiMod_Ctrl
public static final int ImGuiMod_CtrlCtrl (non-macOS), Cmd (macOS)Definition:
1 << 12- See Also:
-
ImGuiMod_Shift
public static final int ImGuiMod_ShiftShiftDefinition:
1 << 13- See Also:
-
ImGuiMod_Alt
public static final int ImGuiMod_AltOption/MenuDefinition:
1 << 14- See Also:
-
ImGuiMod_Super
public static final int ImGuiMod_SuperWindows/Super (non-macOS), Ctrl (macOS)Definition:
1 << 15- See Also:
-
ImGuiMod_Mask_
public static final int ImGuiMod_Mask_4-bitsDefinition:
0xF000- See Also:
-
COUNT
public static final int COUNTObsoleted in 1.91.5 because it was misleading (since named keys don't start at 0 anymore)Definition:
ImGuiKey_NamedKey_END- See Also:
-
ImGuiMod_Shortcut
public static final int ImGuiMod_ShortcutRemoved in 1.90.7, you can now simply use ImGuiMod_CtrlDefinition:
ImGuiMod_Ctrl- See Also:
-