@ -19,16 +19,17 @@ Index of this file: 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					// [SECTION] ImDrawList support
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					// [SECTION] Widgets support: flags, enums, data structures
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					// [SECTION] Columns support
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					// [SECTION] Settings support
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					// [SECTION] Multi-select support
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					// [SECTION] Docking support
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					// [SECTION] Viewport support
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					// [SECTION] Settings support
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					// [SECTION] Generic context hooks
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					// [SECTION] ImGuiContext (main imgui context)
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					// [SECTION] ImGuiWindowTempData, ImGuiWindow
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					// [SECTION] Tab bar, Tab item support
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					// [SECTION] Table support
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					// [SECTION] Internal API
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					// [SECTION] Test Engine H ooks (imgui_test_engine)
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					// [SECTION] Test Engine specific h ooks (imgui_test_engine)
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					*/  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					
 
				
			 
			
		
	
	
		
			
				
					
						
							
								 
							 
						
						
							
								 
							 
						
						
					 
				
				 
				 
				
					@ -93,6 +94,7 @@ struct ImGuiColorMod;               // Stacked color modifier, backup of modifie 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					struct  ImGuiColumnData ;              // Storage data for a single column
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					struct  ImGuiColumns ;                 // Storage data for a columns set
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					struct  ImGuiContext ;                 // Main Dear ImGui context
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					struct  ImGuiContextHook ;             // Hook for extensions like ImGuiTestEngine
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					struct  ImGuiDataTypeInfo ;            // Type information associated to a ImGuiDataType enum
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					struct  ImGuiGroupData ;               // Stacked storage data for BeginGroup()/EndGroup()
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					struct  ImGuiInputTextState ;          // Internal state of the currently focused/edited text input box
  
				
			 
			
		
	
	
		
			
				
					
						
							
								 
							 
						
						
							
								 
							 
						
						
					 
				
				 
				 
				
					@ -1099,6 +1101,23 @@ struct ImGuiSettingsHandler 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    ImGuiSettingsHandler ( )  {  memset ( this ,  0 ,  sizeof ( * this ) ) ;  }   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					} ;  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					//-----------------------------------------------------------------------------
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					// [SECTION] Generic context hooks
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					//-----------------------------------------------------------------------------
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					typedef  void  ( * ImGuiContextHookCallback ) ( ImGuiContext *  ctx ,  ImGuiContextHook *  hook ) ;  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					enum  ImGuiContextHookType  {  ImGuiContextHookType_NewFramePre ,  ImGuiContextHookType_NewFramePost ,  ImGuiContextHookType_EndFramePre ,  ImGuiContextHookType_EndFramePost ,  ImGuiContextHookType_RenderPre ,  ImGuiContextHookType_RenderPost ,  ImGuiContextHookType_Shutdown  } ;  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					struct  ImGuiContextHook  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					{  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    ImGuiContextHookType         Type ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    ImGuiID                      Owner ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    ImGuiContextHookCallback     Callback ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    void *                        UserData ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    ImGuiContextHook ( )           {  memset ( this ,  0 ,  sizeof ( * this ) ) ;  }   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					} ;  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					//-----------------------------------------------------------------------------
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					// [SECTION] ImGuiContext (main imgui context)
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					//-----------------------------------------------------------------------------
  
				
			 
			
		
	
	
		
			
				
					
						
							
								 
							 
						
						
							
								 
							 
						
						
					 
				
				 
				 
				
					@ -1301,6 +1320,7 @@ struct ImGuiContext 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    ImGuiTextBuffer          SettingsIniData ;                     // In memory .ini settings
   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    ImVector < ImGuiSettingsHandler >       SettingsHandlers ;        // List of .ini settings handlers
   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    ImChunkStream < ImGuiWindowSettings >   SettingsWindows ;         // ImGuiWindow .ini settings entries
   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    ImVector < ImGuiContextHook >           Hooks ;                   // Hooks for extensions (e.g. test engine)
   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    // Capture/Logging
   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    bool                     LogEnabled ;                          // Currently capturing
   
				
			 
			
		
	
	
		
			
				
					
						
							
								 
							 
						
						
							
								 
							 
						
						
					 
				
				 
				 
				
					@ -1819,6 +1839,10 @@ namespace ImGui 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    IMGUI_API  void           UpdateMouseMovingWindowNewFrame ( ) ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    IMGUI_API  void           UpdateMouseMovingWindowEndFrame ( ) ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    // Generic context hooks
   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    IMGUI_API  void           AddContextHook ( ImGuiContext *  context ,  const  ImGuiContextHook *  hook ) ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    IMGUI_API  void           CallContextHooks ( ImGuiContext *  context ,  ImGuiContextHookType  type ) ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    // Settings
   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    IMGUI_API  void                   MarkIniSettingsDirty ( ) ;   
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					    IMGUI_API  void                   MarkIniSettingsDirty ( ImGuiWindow *  window ) ;   
				
			 
			
		
	
	
		
			
				
					
						
							
								 
							 
						
						
							
								 
							 
						
						
					 
				
				 
				 
				
					@ -2055,13 +2079,10 @@ IMGUI_API void              ImFontAtlasBuildMultiplyCalcLookupTable(unsigned cha 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					IMGUI_API  void               ImFontAtlasBuildMultiplyRectAlpha8 ( const  unsigned  char  table [ 256 ] ,  unsigned  char *  pixels ,  int  x ,  int  y ,  int  w ,  int  h ,  int  stride ) ;  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					//-----------------------------------------------------------------------------
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					// [SECTION] Test Engine H ooks (imgui_test_engine)
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					// [SECTION] Test Engine specific h ooks (imgui_test_engine)
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					//-----------------------------------------------------------------------------
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					# ifdef IMGUI_ENABLE_TEST_ENGINE  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					extern  void                  ImGuiTestEngineHook_Shutdown ( ImGuiContext *  ctx ) ;  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					extern  void                  ImGuiTestEngineHook_PreNewFrame ( ImGuiContext *  ctx ) ;  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					extern  void                  ImGuiTestEngineHook_PostNewFrame ( ImGuiContext *  ctx ) ;  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					extern  void                  ImGuiTestEngineHook_ItemAdd ( ImGuiContext *  ctx ,  const  ImRect &  bb ,  ImGuiID  id ) ;  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					extern  void                  ImGuiTestEngineHook_ItemInfo ( ImGuiContext *  ctx ,  ImGuiID  id ,  const  char *  label ,  ImGuiItemStatusFlags  flags ) ;  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					extern  void                  ImGuiTestEngineHook_IdInfo ( ImGuiContext *  ctx ,  ImGuiDataType  data_type ,  ImGuiID  id ,  const  void *  data_id ) ;  
				
			 
			
		
	
	
		
			
				
					
						
						
						
							
								 
							 
						
					 
				
				 
				 
				
					@ -2080,6 +2101,8 @@ extern void                 ImGuiTestEngineHook_Log(ImGuiContext* ctx, const cha 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					# define IMGUI_TEST_ENGINE_ID_INFO2(_ID,_TYPE,_DATA,_DATA2)  do { } while (0)  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					# endif  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					//-----------------------------------------------------------------------------
  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					
 
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					# if defined(__clang__)  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					# pragma clang diagnostic pop  
				
			 
			
		
	
		
			
				
					 
					 
				
				 
				 
				
					# elif defined(__GNUC__)