2020-11-24 01:01:06 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								<?xml version="1.0" encoding="UTF-8" ?>  
						 
					
						
							
								
									
										
										
										
											2023-07-06 10:08:05 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								<class  name= "AspectRatioContainer"  inherits= "Container"  xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance"  xsi:noNamespaceSchemaLocation= "../class.xsd" >  
						 
					
						
							
								
									
										
										
										
											2020-11-24 01:01:06 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									<brief_description > 
							 
						 
					
						
							
								
									
										
										
										
											2023-04-30 16:26:09 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										A container that preserves the proportions of its child controls.
							 
						 
					
						
							
								
									
										
										
										
											2020-11-24 01:01:06 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									</brief_description> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									<description > 
							 
						 
					
						
							
								
									
										
										
										
											2023-04-30 16:26:09 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										A container type that arranges its child controls in a way that preserves their proportions automatically when the container is resized. Useful when a container has a dynamic size and the child nodes must adjust their sizes accordingly without losing their aspect ratios.
							 
						 
					
						
							
								
									
										
										
										
											2020-11-24 01:01:06 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									</description> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									<tutorials > 
							 
						 
					
						
							
								
									
										
										
										
											2023-04-30 16:26:09 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<link  title= "Using Containers" > $DOCS_URL/tutorials/ui/gui_containers.html</link> 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-24 01:01:06 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									</tutorials> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									<members > 
							 
						 
					
						
							
								
									
										
										
										
											2021-11-24 20:58:47 -06:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<member  name= "alignment_horizontal"  type= "int"  setter= "set_alignment_horizontal"  getter= "get_alignment_horizontal"  enum= "AspectRatioContainer.AlignmentMode"  default= "1" > 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-24 01:01:06 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											Specifies the horizontal relative position of child controls.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</member> 
							 
						 
					
						
							
								
									
										
										
										
											2021-11-24 20:58:47 -06:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<member  name= "alignment_vertical"  type= "int"  setter= "set_alignment_vertical"  getter= "get_alignment_vertical"  enum= "AspectRatioContainer.AlignmentMode"  default= "1" > 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-24 01:01:06 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											Specifies the vertical relative position of child controls.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</member> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										<member  name= "ratio"  type= "float"  setter= "set_ratio"  getter= "get_ratio"  default= "1.0" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											The aspect ratio to enforce on child controls. This is the width divided by the height. The ratio depends on the [member stretch_mode].
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</member> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										<member  name= "stretch_mode"  type= "int"  setter= "set_stretch_mode"  getter= "get_stretch_mode"  enum= "AspectRatioContainer.StretchMode"  default= "2" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											The stretch mode used to align child controls.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</member> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</members> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									<constants > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										<constant  name= "STRETCH_WIDTH_CONTROLS_HEIGHT"  value= "0"  enum= "StretchMode" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											The height of child controls is automatically adjusted based on the width of the container.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</constant> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										<constant  name= "STRETCH_HEIGHT_CONTROLS_WIDTH"  value= "1"  enum= "StretchMode" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											The width of child controls is automatically adjusted based on the height of the container.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</constant> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										<constant  name= "STRETCH_FIT"  value= "2"  enum= "StretchMode" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											The bounding rectangle of child controls is automatically adjusted to fit inside the container while keeping the aspect ratio.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</constant> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										<constant  name= "STRETCH_COVER"  value= "3"  enum= "StretchMode" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											The width and height of child controls is automatically adjusted to make their bounding rectangle cover the entire area of the container while keeping the aspect ratio.
							 
						 
					
						
							
								
									
										
										
										
											2022-01-23 17:14:31 +00:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											When the bounding rectangle of child controls exceed the container's size and [member Control.clip_contents] is enabled, this allows to show only the container's area restricted by its own bounding rectangle.
							 
						 
					
						
							
								
									
										
										
										
											2020-11-24 01:01:06 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										</constant> 
							 
						 
					
						
							
								
									
										
										
										
											2021-11-24 20:58:47 -06:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<constant  name= "ALIGNMENT_BEGIN"  value= "0"  enum= "AlignmentMode" > 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-24 01:01:06 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											Aligns child controls with the beginning (left or top) of the container.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</constant> 
							 
						 
					
						
							
								
									
										
										
										
											2021-11-24 20:58:47 -06:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<constant  name= "ALIGNMENT_CENTER"  value= "1"  enum= "AlignmentMode" > 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-24 01:01:06 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											Aligns child controls with the center of the container.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</constant> 
							 
						 
					
						
							
								
									
										
										
										
											2021-11-24 20:58:47 -06:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<constant  name= "ALIGNMENT_END"  value= "2"  enum= "AlignmentMode" > 
							 
						 
					
						
							
								
									
										
										
										
											2020-11-24 01:01:06 +02:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
											Aligns child controls with the end (right or bottom) of the container.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</constant> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</constants> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</class>