2017-09-12 17:42:36 -03:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								<?xml version="1.0" encoding="UTF-8" ?>  
						 
					
						
							
								
									
										
										
										
											2023-03-01 01:44:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								<class  name= "TextureButton"  inherits= "BaseButton"  version= "4.1"  xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance"  xsi:noNamespaceSchemaLocation= "../class.xsd" >  
						 
					
						
							
								
									
										
										
										
											2017-09-12 17:42:36 -03:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									<brief_description > 
							 
						 
					
						
							
								
									
										
										
										
											2017-10-07 09:09:21 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										Texture-based button. Supports Pressed, Hover, Disabled and Focused states.
							 
						 
					
						
							
								
									
										
										
										
											2017-09-12 17:42:36 -03:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									</brief_description> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									<description > 
							 
						 
					
						
							
								
									
										
										
										
											2019-06-22 01:04:47 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										[TextureButton] has the same functionality as [Button], except it uses sprites instead of Godot's [Theme] resource. It is faster to create, but it doesn't support localization like more complex [Control]s.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										The "normal" state must contain a texture ([member texture_normal]); other textures are optional.
							 
						 
					
						
							
								
									
										
										
										
											2020-09-23 23:34:28 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										See also [BaseButton] which contains common properties and methods associated with this node.
							 
						 
					
						
							
								
									
										
										
										
											2017-09-12 17:42:36 -03:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									</description> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									<tutorials > 
							 
						 
					
						
							
								
									
										
										
										
											2020-10-01 04:34:47 -04:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<link  title= "3D Voxel Demo" > https://godotengine.org/asset-library/asset/676</link> 
							 
						 
					
						
							
								
									
										
										
										
											2017-09-12 17:42:36 -03:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
									</tutorials> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									<members > 
							 
						 
					
						
							
								
									
										
										
										
											2019-10-03 11:02:51 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<member  name= "flip_h"  type= "bool"  setter= "set_flip_h"  getter= "is_flipped_h"  default= "false" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											If [code]true[/code], texture is flipped horizontally.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</member> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										<member  name= "flip_v"  type= "bool"  setter= "set_flip_v"  getter= "is_flipped_v"  default= "false" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											If [code]true[/code], texture is flipped vertically.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</member> 
							 
						 
					
						
							
								
									
										
										
										
											2022-02-05 02:11:32 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<member  name= "ignore_texture_size"  type= "bool"  setter= "set_ignore_texture_size"  getter= "get_ignore_texture_size"  default= "false" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											If [code]true[/code], the size of the texture won't be considered for minimum size calculation, so the [TextureButton] can be shrunk down past the texture size.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										</member> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
										<member  name= "stretch_mode"  type= "int"  setter= "set_stretch_mode"  getter= "get_stretch_mode"  enum= "TextureButton.StretchMode"  default= "2" > 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
											Controls the texture's behavior when you resize the node's bounding rectangle. See the [enum StretchMode] constants for available options.
							 
						 
					
						
							
								
									
										
										
										
											2017-09-12 17:42:36 -03:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										</member> 
							 
						 
					
						
							
								
									
										
										
										
											2019-07-15 20:42:47 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<member  name= "texture_click_mask"  type= "BitMap"  setter= "set_click_mask"  getter= "get_click_mask" > 
							 
						 
					
						
							
								
									
										
										
										
											2019-01-07 10:02:04 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											Pure black and white [BitMap] image to use for click detection. On the mask, white pixels represent the button's clickable area. Use it to create buttons with curved shapes.
							 
						 
					
						
							
								
									
										
										
										
											2017-09-12 17:42:36 -03:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										</member> 
							 
						 
					
						
							
								
									
										
										
										
											2022-11-07 02:09:13 -06:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<member  name= "texture_disabled"  type= "Texture2D"  setter= "set_texture_disabled"  getter= "get_texture_disabled" > 
							 
						 
					
						
							
								
									
										
										
										
											2017-10-07 09:09:21 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											Texture to display when the node is disabled. See [member BaseButton.disabled].
							 
						 
					
						
							
								
									
										
										
										
											2017-09-12 17:42:36 -03:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										</member> 
							 
						 
					
						
							
								
									
										
										
										
											2022-11-07 02:09:13 -06:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<member  name= "texture_focused"  type= "Texture2D"  setter= "set_texture_focused"  getter= "get_texture_focused" > 
							 
						 
					
						
							
								
									
										
										
										
											2021-11-20 17:43:34 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											Texture to display when the node has mouse or keyboard focus. [member texture_focused] is displayed [i]over[/i] the base texture, so a partially transparent texture should be used to ensure the base texture remains visible. A texture that represents an outline or an underline works well for this purpose. To disable the focus visual effect, assign a fully transparent texture of any size. Note that disabling the focus visual effect will harm keyboard/controller navigation usability, so this is not recommended for accessibility reasons.
							 
						 
					
						
							
								
									
										
										
										
											2017-09-12 17:42:36 -03:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										</member> 
							 
						 
					
						
							
								
									
										
										
										
											2022-11-07 02:09:13 -06:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<member  name= "texture_hover"  type= "Texture2D"  setter= "set_texture_hover"  getter= "get_texture_hover" > 
							 
						 
					
						
							
								
									
										
										
										
											2017-10-07 09:09:21 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											Texture to display when the mouse hovers the node.
							 
						 
					
						
							
								
									
										
										
										
											2017-09-12 17:42:36 -03:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										</member> 
							 
						 
					
						
							
								
									
										
										
										
											2022-11-07 02:09:13 -06:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<member  name= "texture_normal"  type= "Texture2D"  setter= "set_texture_normal"  getter= "get_texture_normal" > 
							 
						 
					
						
							
								
									
										
										
										
											2023-02-24 11:46:38 -03:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											Texture to display by default, when the node is [b]not[/b] in the disabled, hover or pressed state. This texture is still displayed in the focused state, with [member texture_focused] drawn on top.
							 
						 
					
						
							
								
									
										
										
										
											2017-09-12 17:42:36 -03:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										</member> 
							 
						 
					
						
							
								
									
										
										
										
											2022-11-07 02:09:13 -06:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<member  name= "texture_pressed"  type= "Texture2D"  setter= "set_texture_pressed"  getter= "get_texture_pressed" > 
							 
						 
					
						
							
								
									
										
										
										
											2019-06-22 01:04:47 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											Texture to display on mouse down over the node, if the node has keyboard focus and the player presses the Enter key or if the player presses the [member BaseButton.shortcut] key.
							 
						 
					
						
							
								
									
										
										
										
											2017-09-12 17:42:36 -03:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										</member> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</members> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									<constants > 
							 
						 
					
						
							
								
									
										
										
										
											2017-11-24 23:16:30 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<constant  name= "STRETCH_SCALE"  value= "0"  enum= "StretchMode" > 
							 
						 
					
						
							
								
									
										
										
										
											2017-10-07 09:09:21 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											Scale to fit the node's bounding rectangle.
							 
						 
					
						
							
								
									
										
										
										
											2017-09-12 17:42:36 -03:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										</constant> 
							 
						 
					
						
							
								
									
										
										
										
											2017-11-24 23:16:30 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<constant  name= "STRETCH_TILE"  value= "1"  enum= "StretchMode" > 
							 
						 
					
						
							
								
									
										
										
										
											2017-10-07 09:09:21 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											Tile inside the node's bounding rectangle.
							 
						 
					
						
							
								
									
										
										
										
											2017-09-12 17:42:36 -03:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										</constant> 
							 
						 
					
						
							
								
									
										
										
										
											2017-11-24 23:16:30 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<constant  name= "STRETCH_KEEP"  value= "2"  enum= "StretchMode" > 
							 
						 
					
						
							
								
									
										
										
										
											2017-10-07 09:09:21 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											The texture keeps its original size and stays in the bounding rectangle's top-left corner.
							 
						 
					
						
							
								
									
										
										
										
											2017-09-12 17:42:36 -03:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										</constant> 
							 
						 
					
						
							
								
									
										
										
										
											2017-11-24 23:16:30 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<constant  name= "STRETCH_KEEP_CENTERED"  value= "3"  enum= "StretchMode" > 
							 
						 
					
						
							
								
									
										
										
										
											2017-10-07 09:09:21 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											The texture keeps its original size and stays centered in the node's bounding rectangle.
							 
						 
					
						
							
								
									
										
										
										
											2017-09-12 17:42:36 -03:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										</constant> 
							 
						 
					
						
							
								
									
										
										
										
											2017-11-24 23:16:30 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<constant  name= "STRETCH_KEEP_ASPECT"  value= "4"  enum= "StretchMode" > 
							 
						 
					
						
							
								
									
										
										
										
											2017-10-07 09:09:21 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											Scale the texture to fit the node's bounding rectangle, but maintain the texture's aspect ratio.
							 
						 
					
						
							
								
									
										
										
										
											2017-09-12 17:42:36 -03:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										</constant> 
							 
						 
					
						
							
								
									
										
										
										
											2017-11-24 23:16:30 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<constant  name= "STRETCH_KEEP_ASPECT_CENTERED"  value= "5"  enum= "StretchMode" > 
							 
						 
					
						
							
								
									
										
										
										
											2017-10-07 09:09:21 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											Scale the texture to fit the node's bounding rectangle, center it, and maintain its aspect ratio.
							 
						 
					
						
							
								
									
										
										
										
											2017-09-12 17:42:36 -03:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										</constant> 
							 
						 
					
						
							
								
									
										
										
										
											2017-11-24 23:16:30 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
										<constant  name= "STRETCH_KEEP_ASPECT_COVERED"  value= "6"  enum= "StretchMode" > 
							 
						 
					
						
							
								
									
										
										
										
											2017-10-07 09:09:21 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
											Scale the texture so that the shorter side fits the bounding rectangle. The other side clips to the node's limits.
							 
						 
					
						
							
								
									
										
										
										
											2017-09-12 17:42:36 -03:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
										</constant> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
									</constants> 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								</class>