mirror of
				https://github.com/Drezil/imgui.git
				synced 2025-11-03 22:51:06 +01:00 
			
		
		
		
	Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use).
Used by BeginMenu() as I'm experimenting with blind menus honoring shortcuts. Extra comments about KeyMap and ImGuiKeys
This commit is contained in:
		
							
								
								
									
										6
									
								
								imgui.h
									
									
									
									
									
								
							
							
						
						
									
										6
									
								
								imgui.h
									
									
									
									
									
								
							@@ -1344,8 +1344,9 @@ enum ImGuiSortDirection_
 | 
			
		||||
    ImGuiSortDirection_Descending   = 2     // Descending = 9->0, Z->A etc.
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
// Keys value 0 to 511 are left unused as legacy native/opaque key values (< 1.87)
 | 
			
		||||
// Keys value >= 512 are named keys (>= 1.87)
 | 
			
		||||
// A key identifier (ImGuiKey_XXX or ImGuiMod_XXX value)
 | 
			
		||||
// 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.
 | 
			
		||||
enum ImGuiKey : int
 | 
			
		||||
{
 | 
			
		||||
    // Keyboard
 | 
			
		||||
@@ -2000,6 +2001,7 @@ struct ImGuiIO
 | 
			
		||||
 | 
			
		||||
    // Legacy: before 1.87, we required backend to fill io.KeyMap[] (imgui->native map) during initialization and io.KeysDown[] (native indices) every frame.
 | 
			
		||||
    // This is still temporarily supported as a legacy feature. However the new preferred scheme is for backend to call io.AddKeyEvent().
 | 
			
		||||
    //   Old (<1.87):  ImGui::IsKeyPressed(ImGui::GetIO().KeyMap[ImGuiKey_Space]) --> New (1.87+) ImGui::IsKeyPressed(ImGuiKey_Space)
 | 
			
		||||
#ifndef IMGUI_DISABLE_OBSOLETE_KEYIO
 | 
			
		||||
    int         KeyMap[ImGuiKey_COUNT];             // [LEGACY] Input: map of indices into the KeysDown[512] entries array which represent your "native" keyboard state. The first 512 are now unused and should be kept zero. Legacy backend will write into KeyMap[] using ImGuiKey_ indices which are always >512.
 | 
			
		||||
    bool        KeysDown[ImGuiKey_COUNT];           // [LEGACY] Input: Keyboard keys that are pressed (ideally left in the "native" order your engine has access to keyboard keys, so you can use your own defines/enums for keys). This used to be [512] sized. It is now ImGuiKey_COUNT to allow legacy io.KeysDown[GetKeyIndex(...)] to work without an overflow.
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user