mirror of
				https://github.com/Drezil/imgui.git
				synced 2025-11-03 22:51:06 +01:00 
			
		
		
		
	Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. (#5923, #456)
This commit is contained in:
		
							
								
								
									
										14
									
								
								imgui.h
									
									
									
									
									
								
							
							
						
						
									
										14
									
								
								imgui.h
									
									
									
									
									
								
							@@ -23,7 +23,7 @@
 | 
			
		||||
// Library Version
 | 
			
		||||
// (Integer encoded as XYYZZ for use in #if preprocessor conditionals, e.g. '#if IMGUI_VERSION_NUM > 12345')
 | 
			
		||||
#define IMGUI_VERSION               "1.89.2 WIP"
 | 
			
		||||
#define IMGUI_VERSION_NUM           18911
 | 
			
		||||
#define IMGUI_VERSION_NUM           18912
 | 
			
		||||
#define IMGUI_HAS_TABLE
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
@@ -1431,7 +1431,7 @@ enum ImGuiKey : int
 | 
			
		||||
    ImGuiKey_GamepadRStickUp,       // [Analog]
 | 
			
		||||
    ImGuiKey_GamepadRStickDown,     // [Analog]
 | 
			
		||||
 | 
			
		||||
    // Mouse Buttons (auto-submitted from AddMouseButtonEvent() calls)
 | 
			
		||||
    // Aliases: 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.
 | 
			
		||||
    ImGuiKey_MouseLeft, ImGuiKey_MouseRight, ImGuiKey_MouseMiddle, ImGuiKey_MouseX1, ImGuiKey_MouseX2, ImGuiKey_MouseWheelX, ImGuiKey_MouseWheelY,
 | 
			
		||||
 | 
			
		||||
@@ -1452,12 +1452,8 @@ enum ImGuiKey : int
 | 
			
		||||
    ImGuiMod_Shift                  = 1 << 13,
 | 
			
		||||
    ImGuiMod_Alt                    = 1 << 14, // Option/Menu
 | 
			
		||||
    ImGuiMod_Super                  = 1 << 15, // Cmd/Super/Windows
 | 
			
		||||
    ImGuiMod_Mask_                  = 0xF000,
 | 
			
		||||
#if defined(__APPLE__)
 | 
			
		||||
    ImGuiMod_Shortcut               = ImGuiMod_Super,
 | 
			
		||||
#else
 | 
			
		||||
    ImGuiMod_Shortcut               = ImGuiMod_Ctrl,
 | 
			
		||||
#endif
 | 
			
		||||
    ImGuiMod_Shortcut               = 1 << 11, // [Internal, read-only] Alias of ImGuiMod_Super (macOS) or ImGuiMod_Ctrl (otherwise), decided by io.ConfigMacOSXBehaviors.
 | 
			
		||||
    ImGuiMod_Mask_                  = 0xF800,  // 5-bits
 | 
			
		||||
 | 
			
		||||
    // [Internal] Prior to 1.87 we required user to fill io.KeysDown[512] using their own native index + the io.KeyMap[] array.
 | 
			
		||||
    // We are ditching this method but keeping a legacy path for user code doing e.g. IsKeyPressed(MY_NATIVE_KEY_CODE)
 | 
			
		||||
@@ -2028,7 +2024,7 @@ struct ImGuiIO
 | 
			
		||||
    bool        KeySuper;                           // Keyboard modifier down: Cmd/Super/Windows
 | 
			
		||||
 | 
			
		||||
    // Other state maintained from data above + IO function calls
 | 
			
		||||
    ImGuiKeyChord KeyMods;                          // Key mods flags (any of ImGuiMod_Ctrl/ImGuiMod_Shift/ImGuiMod_Alt/ImGuiMod_Super flags, same as io.KeyCtrl/KeyShift/KeyAlt/KeySuper but merged into flags). Read-only, updated by NewFrame()
 | 
			
		||||
    ImGuiKeyChord KeyMods;                          // Key mods flags (any of ImGuiMod_Ctrl/ImGuiMod_Shift/ImGuiMod_Alt/ImGuiMod_Super flags, same as io.KeyCtrl/KeyShift/KeyAlt/KeySuper but merged into flags. DOES NOT CONTAINS ImGuiMod_Shortcut which is pretranslated). Read-only, updated by NewFrame()
 | 
			
		||||
    ImGuiKeyData  KeysData[ImGuiKey_KeysData_SIZE]; // Key state for all known keys. Use IsKeyXXX() functions to access this.
 | 
			
		||||
    bool        WantCaptureMouseUnlessPopupClose;   // Alternative to WantCaptureMouse: (WantCaptureMouse == true && WantCaptureMouseUnlessPopupClose == false) when a click over void is expected to close a popup.
 | 
			
		||||
    ImVec2      MousePosPrev;                       // Previous mouse position (note that MouseDelta is not necessary == MousePos-MousePosPrev, in case either position is invalid)
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user