mirror of
				https://github.com/godotengine/godot.git
				synced 2025-10-31 13:41:03 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			81 lines
		
	
	
	
		
			4.6 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
			
		
		
	
	
			81 lines
		
	
	
	
		
			4.6 KiB
		
	
	
	
		
			XML
		
	
	
	
	
	
| <?xml version="1.0" encoding="UTF-8" ?>
 | ||
| <class name="NinePatchRect" inherits="Control" version="3.2">
 | ||
| 	<brief_description>
 | ||
| 		Scalable texture-based frame that tiles the texture's centers and sides, but keeps the corners' original size. Perfect for panels and dialog boxes.
 | ||
| 	</brief_description>
 | ||
| 	<description>
 | ||
| 		Also known as 9-slice panels, NinePatchRect produces clean panels of any size, based on a small texture. To do so, it splits the texture in a 3×3 grid. When you scale the node, it tiles the texture's sides horizontally or vertically, the center on both axes but it doesn't scale or tile the corners.
 | ||
| 	</description>
 | ||
| 	<tutorials>
 | ||
| 	</tutorials>
 | ||
| 	<methods>
 | ||
| 		<method name="get_patch_margin" qualifiers="const">
 | ||
| 			<return type="int">
 | ||
| 			</return>
 | ||
| 			<argument index="0" name="margin" type="int" enum="Margin">
 | ||
| 			</argument>
 | ||
| 			<description>
 | ||
| 				Returns the size of the margin identified by the given [enum Margin] constant.
 | ||
| 			</description>
 | ||
| 		</method>
 | ||
| 		<method name="set_patch_margin">
 | ||
| 			<return type="void">
 | ||
| 			</return>
 | ||
| 			<argument index="0" name="margin" type="int" enum="Margin">
 | ||
| 			</argument>
 | ||
| 			<argument index="1" name="value" type="int">
 | ||
| 			</argument>
 | ||
| 			<description>
 | ||
| 				Sets the size of the margin identified by the given [enum Margin] constant to [code]value[/code] in pixels.
 | ||
| 			</description>
 | ||
| 		</method>
 | ||
| 	</methods>
 | ||
| 	<members>
 | ||
| 		<member name="axis_stretch_horizontal" type="int" setter="set_h_axis_stretch_mode" getter="get_h_axis_stretch_mode" enum="NinePatchRect.AxisStretchMode" default="0">
 | ||
| 			Doesn't do anything at the time of writing.
 | ||
| 		</member>
 | ||
| 		<member name="axis_stretch_vertical" type="int" setter="set_v_axis_stretch_mode" getter="get_v_axis_stretch_mode" enum="NinePatchRect.AxisStretchMode" default="0">
 | ||
| 			Doesn't do anything at the time of writing.
 | ||
| 		</member>
 | ||
| 		<member name="draw_center" type="bool" setter="set_draw_center" getter="is_draw_center_enabled" default="true">
 | ||
| 			If [code]true[/code], draw the panel's center. Else, only draw the 9-slice's borders.
 | ||
| 		</member>
 | ||
| 		<member name="mouse_filter" type="int" setter="set_mouse_filter" getter="get_mouse_filter" override="true" enum="Control.MouseFilter" default="2" />
 | ||
| 		<member name="patch_margin_bottom" type="int" setter="set_patch_margin" getter="get_patch_margin" default="0">
 | ||
| 			The height of the 9-slice's bottom row. A margin of 16 means the 9-slice's bottom corners and side will have a height of 16 pixels. You can set all 4 margin values individually to create panels with non-uniform borders.
 | ||
| 		</member>
 | ||
| 		<member name="patch_margin_left" type="int" setter="set_patch_margin" getter="get_patch_margin" default="0">
 | ||
| 			The width of the 9-slice's left column. A margin of 16 means the 9-slice's left corners and side will have a width of 16 pixels. You can set all 4 margin values individually to create panels with non-uniform borders.
 | ||
| 		</member>
 | ||
| 		<member name="patch_margin_right" type="int" setter="set_patch_margin" getter="get_patch_margin" default="0">
 | ||
| 			The width of the 9-slice's right column. A margin of 16 means the 9-slice's right corners and side will have a width of 16 pixels. You can set all 4 margin values individually to create panels with non-uniform borders.
 | ||
| 		</member>
 | ||
| 		<member name="patch_margin_top" type="int" setter="set_patch_margin" getter="get_patch_margin" default="0">
 | ||
| 			The height of the 9-slice's top row. A margin of 16 means the 9-slice's top corners and side will have a height of 16 pixels. You can set all 4 margin values individually to create panels with non-uniform borders.
 | ||
| 		</member>
 | ||
| 		<member name="region_rect" type="Rect2" setter="set_region_rect" getter="get_region_rect" default="Rect2( 0, 0, 0, 0 )">
 | ||
| 			Rectangular region of the texture to sample from. If you're working with an atlas, use this property to define the area the 9-slice should use. All other properties are relative to this one. If the rect is empty, NinePatchRect will use the whole texture.
 | ||
| 		</member>
 | ||
| 		<member name="texture" type="Texture" setter="set_texture" getter="get_texture">
 | ||
| 			The node's texture resource.
 | ||
| 		</member>
 | ||
| 	</members>
 | ||
| 	<signals>
 | ||
| 		<signal name="texture_changed">
 | ||
| 			<description>
 | ||
| 				Emitted when the node's texture changes.
 | ||
| 			</description>
 | ||
| 		</signal>
 | ||
| 	</signals>
 | ||
| 	<constants>
 | ||
| 		<constant name="AXIS_STRETCH_MODE_STRETCH" value="0" enum="AxisStretchMode">
 | ||
| 			Doesn't do anything at the time of writing.
 | ||
| 		</constant>
 | ||
| 		<constant name="AXIS_STRETCH_MODE_TILE" value="1" enum="AxisStretchMode">
 | ||
| 			Doesn't do anything at the time of writing.
 | ||
| 		</constant>
 | ||
| 		<constant name="AXIS_STRETCH_MODE_TILE_FIT" value="2" enum="AxisStretchMode">
 | ||
| 			Doesn't do anything at the time of writing.
 | ||
| 		</constant>
 | ||
| 	</constants>
 | ||
| </class>
 | 
