<?xml version="1.0" encoding="UTF-8" ?>
<class name="NinePatchRect" inherits="Control" category="Core" version="3.1">
	<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>
		Better 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 by 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>
	<demos>
	</demos>
	<methods>
	</methods>
	<members>
		<member name="axis_stretch_horizontal" type="int" setter="set_h_axis_stretch_mode" getter="get_h_axis_stretch_mode" enum="NinePatchRect.AxisStretchMode">
			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">
			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">
			If [code]true[/code], draw the panel's center. Else, only draw the 9-slice's borders. Default value: [code]true[/code]
		</member>
		<member name="patch_margin_bottom" type="int" setter="set_patch_margin" getter="get_patch_margin">
			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">
			The height of the 9-slice's left column.
		</member>
		<member name="patch_margin_right" type="int" setter="set_patch_margin" getter="get_patch_margin">
			The height of the 9-slice's right column.
		</member>
		<member name="patch_margin_top" type="int" setter="set_patch_margin" getter="get_patch_margin">
			The height of the 9-slice's top row.
		</member>
		<member name="region_rect" type="Rect2" setter="set_region_rect" getter="get_region_rect">
			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.
		</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>
				Fired 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. Default value for [code]axis_stretch_horizontal[/code] and [code]axis_stretch_vertical[/code].
		</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>
