@ -28,7 +28,7 @@ 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					// Library Version
  
					 
					 
					 
					// Library Version
  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					// (Integer encoded as XYYZZ for use in #if preprocessor conditionals, e.g. '#if IMGUI_VERSION_NUM >= 12345')
  
					 
					 
					 
					// (Integer encoded as XYYZZ for use in #if preprocessor conditionals, e.g. '#if IMGUI_VERSION_NUM >= 12345')
  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					# define IMGUI_VERSION       "1.90.5 WIP"  
					 
					 
					 
					# define IMGUI_VERSION       "1.90.5 WIP"  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					# define IMGUI_VERSION_NUM   19045   
					 
					 
					 
					# define IMGUI_VERSION_NUM   19046   
				
			 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 
					 
					 
					# define IMGUI_HAS_TABLE  
					 
					 
					 
					# define IMGUI_HAS_TABLE  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					/*
  
					 
					 
					 
					/*
  
				
			 
			
		
	
	
		
		
			
				
					
						
							
								 
							 
						
						
							
								 
							 
						
						
					 
					 
					@ -2754,8 +2754,8 @@ struct ImDrawList 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    IMGUI_API  void   AddCircleFilled ( const  ImVec2 &  center ,  float  radius ,  ImU32  col ,  int  num_segments  =  0 ) ;   
					 
					 
					 
					    IMGUI_API  void   AddCircleFilled ( const  ImVec2 &  center ,  float  radius ,  ImU32  col ,  int  num_segments  =  0 ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    IMGUI_API  void   AddNgon ( const  ImVec2 &  center ,  float  radius ,  ImU32  col ,  int  num_segments ,  float  thickness  =  1.0f ) ;   
					 
					 
					 
					    IMGUI_API  void   AddNgon ( const  ImVec2 &  center ,  float  radius ,  ImU32  col ,  int  num_segments ,  float  thickness  =  1.0f ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    IMGUI_API  void   AddNgonFilled ( const  ImVec2 &  center ,  float  radius ,  ImU32  col ,  int  num_segments ) ;   
					 
					 
					 
					    IMGUI_API  void   AddNgonFilled ( const  ImVec2 &  center ,  float  radius ,  ImU32  col ,  int  num_segments ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    IMGUI_API  void   AddEllipse ( const  ImVec2 &  center ,  float  radius_x ,  float  radius_y ,  ImU32  col ,  float  rot  =  0.0f ,  int  num_segments  =  0 ,  float  thickness  =  1.0f ) ;   
					 
					 
					 
					    IMGUI_API  void   AddEllipse ( const  ImVec2 &  center ,  const  ImVec2 &  radius ,  ImU32  col ,  float  rot  =  0.0f ,  int  num_segments  =  0 ,  float  thickness  =  1.0f ) ;   
				
			 
			
				
				
			
		
	
		
		
			
				
					
					 
					 
					 
					    IMGUI_API  void   AddEllipseFilled ( const  ImVec2 &  center ,  float  radius_x ,  float  radius_y ,  ImU32  col ,  float  rot  =  0.0f ,  int  num_segments  =  0 ) ;   
					 
					 
					 
					    IMGUI_API  void   AddEllipseFilled ( const  ImVec2 &  center ,  const  ImVec2 &  radius ,  ImU32  col ,  float  rot  =  0.0f ,  int  num_segments  =  0 ) ;   
				
			 
			
				
				
			
		
	
		
		
	
		
		
	
		
		
			
				
					
					 
					 
					 
					    IMGUI_API  void   AddText ( const  ImVec2 &  pos ,  ImU32  col ,  const  char *  text_begin ,  const  char *  text_end  =  NULL ) ;   
					 
					 
					 
					    IMGUI_API  void   AddText ( const  ImVec2 &  pos ,  ImU32  col ,  const  char *  text_begin ,  const  char *  text_end  =  NULL ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    IMGUI_API  void   AddText ( const  ImFont *  font ,  float  font_size ,  const  ImVec2 &  pos ,  ImU32  col ,  const  char *  text_begin ,  const  char *  text_end  =  NULL ,  float  wrap_width  =  0.0f ,  const  ImVec4 *  cpu_fine_clip_rect  =  NULL ) ;   
					 
					 
					 
					    IMGUI_API  void   AddText ( const  ImFont *  font ,  float  font_size ,  const  ImVec2 &  pos ,  ImU32  col ,  const  char *  text_begin ,  const  char *  text_end  =  NULL ,  float  wrap_width  =  0.0f ,  const  ImVec4 *  cpu_fine_clip_rect  =  NULL ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    IMGUI_API  void   AddBezierCubic ( const  ImVec2 &  p1 ,  const  ImVec2 &  p2 ,  const  ImVec2 &  p3 ,  const  ImVec2 &  p4 ,  ImU32  col ,  float  thickness ,  int  num_segments  =  0 ) ;  // Cubic Bezier (4 control points)
   
					 
					 
					 
					    IMGUI_API  void   AddBezierCubic ( const  ImVec2 &  p1 ,  const  ImVec2 &  p2 ,  const  ImVec2 &  p3 ,  const  ImVec2 &  p4 ,  ImU32  col ,  float  thickness ,  int  num_segments  =  0 ) ;  // Cubic Bezier (4 control points)
   
				
			 
			
		
	
	
		
		
			
				
					
						
							
								 
							 
						
						
							
								 
							 
						
						
					 
					 
					@ -2787,7 +2787,7 @@ struct ImDrawList 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    inline     void   PathStroke ( ImU32  col ,  ImDrawFlags  flags  =  0 ,  float  thickness  =  1.0f )  {  AddPolyline ( _Path . Data ,  _Path . Size ,  col ,  flags ,  thickness ) ;  _Path . Size  =  0 ;  }   
					 
					 
					 
					    inline     void   PathStroke ( ImU32  col ,  ImDrawFlags  flags  =  0 ,  float  thickness  =  1.0f )  {  AddPolyline ( _Path . Data ,  _Path . Size ,  col ,  flags ,  thickness ) ;  _Path . Size  =  0 ;  }   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    IMGUI_API  void   PathArcTo ( const  ImVec2 &  center ,  float  radius ,  float  a_min ,  float  a_max ,  int  num_segments  =  0 ) ;   
					 
					 
					 
					    IMGUI_API  void   PathArcTo ( const  ImVec2 &  center ,  float  radius ,  float  a_min ,  float  a_max ,  int  num_segments  =  0 ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    IMGUI_API  void   PathArcToFast ( const  ImVec2 &  center ,  float  radius ,  int  a_min_of_12 ,  int  a_max_of_12 ) ;                 // Use precomputed angles for a 12 steps circle
   
					 
					 
					 
					    IMGUI_API  void   PathArcToFast ( const  ImVec2 &  center ,  float  radius ,  int  a_min_of_12 ,  int  a_max_of_12 ) ;                 // Use precomputed angles for a 12 steps circle
   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    IMGUI_API  void   PathEllipticalArcTo ( const  ImVec2 &  center ,  float  radius_x ,  float  radius_y ,  float  rot ,  float  a_min ,  float  a_max ,  int  num_segments  =  0 ) ;  // Ellipse
   
					 
					 
					 
					    IMGUI_API  void   PathEllipticalArcTo ( const  ImVec2 &  center ,  const  ImVec2 &  radius ,  float  rot ,  float  a_min ,  float  a_max ,  int  num_segments  =  0 ) ;  // Ellipse
   
				
			 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 
					 
					 
					    IMGUI_API  void   PathBezierCubicCurveTo ( const  ImVec2 &  p2 ,  const  ImVec2 &  p3 ,  const  ImVec2 &  p4 ,  int  num_segments  =  0 ) ;  // Cubic Bezier (4 control points)
   
					 
					 
					 
					    IMGUI_API  void   PathBezierCubicCurveTo ( const  ImVec2 &  p2 ,  const  ImVec2 &  p3 ,  const  ImVec2 &  p4 ,  int  num_segments  =  0 ) ;  // Cubic Bezier (4 control points)
   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    IMGUI_API  void   PathBezierQuadraticCurveTo ( const  ImVec2 &  p2 ,  const  ImVec2 &  p3 ,  int  num_segments  =  0 ) ;                // Quadratic Bezier (3 control points)
   
					 
					 
					 
					    IMGUI_API  void   PathBezierQuadraticCurveTo ( const  ImVec2 &  p2 ,  const  ImVec2 &  p3 ,  int  num_segments  =  0 ) ;                // Quadratic Bezier (3 control points)
   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    IMGUI_API  void   PathRect ( const  ImVec2 &  rect_min ,  const  ImVec2 &  rect_max ,  float  rounding  =  0.0f ,  ImDrawFlags  flags  =  0 ) ;   
					 
					 
					 
					    IMGUI_API  void   PathRect ( const  ImVec2 &  rect_min ,  const  ImVec2 &  rect_max ,  float  rounding  =  0.0f ,  ImDrawFlags  flags  =  0 ) ;   
				
			 
			
		
	
	
		
		
			
				
					
						
							
								 
							 
						
						
							
								 
							 
						
						
					 
					 
					@ -2820,6 +2820,9 @@ struct ImDrawList 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    inline     void   PrimVtx ( const  ImVec2 &  pos ,  const  ImVec2 &  uv ,  ImU32  col )          {  PrimWriteIdx ( ( ImDrawIdx ) _VtxCurrentIdx ) ;  PrimWriteVtx ( pos ,  uv ,  col ) ;  }  // Write vertex with unique index
   
					 
					 
					 
					    inline     void   PrimVtx ( const  ImVec2 &  pos ,  const  ImVec2 &  uv ,  ImU32  col )          {  PrimWriteIdx ( ( ImDrawIdx ) _VtxCurrentIdx ) ;  PrimWriteVtx ( pos ,  uv ,  col ) ;  }  // Write vertex with unique index
   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    // Obsolete names
   
					 
					 
					 
					    // Obsolete names
   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					    //inline  void  AddEllipse(const ImVec2& center, float radius_x, float radius_y, ImU32 col, float rot = 0.0f, int num_segments = 0, float thickness = 1.0f) { AddEllipse(center, ImVec2(radius_x, radius_y), col, rot, num_segments, thickness); } // OBSOLETED in 1.90.5 (Mar 2024)
   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					    //inline  void  AddEllipseFilled(const ImVec2& center, float radius_x, float radius_y, ImU32 col, float rot = 0.0f, int num_segments = 0) { AddEllipseFilled(center, ImVec2(radius_x, radius_y), col, rot, num_segments); }                        // OBSOLETED in 1.90.5 (Mar 2024)
   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					    //inline  void  PathEllipticalArcTo(const ImVec2& center, float radius_x, float radius_y, float rot, float a_min, float a_max, int num_segments = 0) { PathEllipticalArcTo(center, ImVec2(radius_x, radius_y), rot, a_min, a_max, num_segments); } // OBSOLETED in 1.90.5 (Mar 2024)
   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    //inline  void  AddBezierCurve(const ImVec2& p1, const ImVec2& p2, const ImVec2& p3, const ImVec2& p4, ImU32 col, float thickness, int num_segments = 0) { AddBezierCubic(p1, p2, p3, p4, col, thickness, num_segments); } // OBSOLETED in 1.80 (Jan 2021)
   
					 
					 
					 
					    //inline  void  AddBezierCurve(const ImVec2& p1, const ImVec2& p2, const ImVec2& p3, const ImVec2& p4, ImU32 col, float thickness, int num_segments = 0) { AddBezierCubic(p1, p2, p3, p4, col, thickness, num_segments); } // OBSOLETED in 1.80 (Jan 2021)
   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					    //inline  void  PathBezierCurveTo(const ImVec2& p2, const ImVec2& p3, const ImVec2& p4, int num_segments = 0) { PathBezierCubicCurveTo(p2, p3, p4, num_segments); } // OBSOLETED in 1.80 (Jan 2021)
   
					 
					 
					 
					    //inline  void  PathBezierCurveTo(const ImVec2& p2, const ImVec2& p3, const ImVec2& p4, int num_segments = 0) { PathBezierCubicCurveTo(p2, p3, p4, num_segments); } // OBSOLETED in 1.80 (Jan 2021)