.. Generated automatically by doc/tools/makerst.py in Godot's source tree. .. DO NOT EDIT THIS FILE, but the TextureButton.xml source instead. .. The source is found in doc/classes or modules//doc_classes. .. _class_TextureButton: TextureButton ============= **Inherits:** :ref:`BaseButton` **<** :ref:`Control` **<** :ref:`CanvasItem` **<** :ref:`Node` **<** :ref:`Object` **Category:** Core Brief Description ----------------- Texture-based button. Supports Pressed, Hover, Disabled and Focused states. Member Functions ---------------- +--------------------------------+---------------------------------------------------------------------------------------------------------------------------+ | :ref:`BitMap` | :ref:`get_click_mask` **(** **)** const | +--------------------------------+---------------------------------------------------------------------------------------------------------------------------+ | :ref:`Texture` | :ref:`get_disabled_texture` **(** **)** const | +--------------------------------+---------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`get_expand` **(** **)** const | +--------------------------------+---------------------------------------------------------------------------------------------------------------------------+ | :ref:`Texture` | :ref:`get_focused_texture` **(** **)** const | +--------------------------------+---------------------------------------------------------------------------------------------------------------------------+ | :ref:`Texture` | :ref:`get_hover_texture` **(** **)** const | +--------------------------------+---------------------------------------------------------------------------------------------------------------------------+ | :ref:`Texture` | :ref:`get_normal_texture` **(** **)** const | +--------------------------------+---------------------------------------------------------------------------------------------------------------------------+ | :ref:`Texture` | :ref:`get_pressed_texture` **(** **)** const | +--------------------------------+---------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_stretch_mode` **(** **)** const | +--------------------------------+---------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`set_click_mask` **(** :ref:`BitMap` mask **)** | +--------------------------------+---------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`set_disabled_texture` **(** :ref:`Texture` texture **)** | +--------------------------------+---------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`set_expand` **(** :ref:`bool` p_expand **)** | +--------------------------------+---------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`set_focused_texture` **(** :ref:`Texture` texture **)** | +--------------------------------+---------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`set_hover_texture` **(** :ref:`Texture` texture **)** | +--------------------------------+---------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`set_normal_texture` **(** :ref:`Texture` texture **)** | +--------------------------------+---------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`set_pressed_texture` **(** :ref:`Texture` texture **)** | +--------------------------------+---------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`set_stretch_mode` **(** :ref:`int` p_mode **)** | +--------------------------------+---------------------------------------------------------------------------------------------------------------------------+ Member Variables ---------------- - :ref:`bool` **expand** - If [code]true[/code] the texture stretches to the edges of the node's bounding rectangle using the [member stretch_mode]. If [code]false[/code] the texture will not scale with the node. Default value: [code]false[/code]. - :ref:`int` **stretch_mode** - Controls the texture's behavior when you resize the node's bounding rectangle, [b]only if[/b] [member expand] is [code]true[/code]. Set it to one of the [code]STRETCH_*[/code] constants. See the constants to learn more. - :ref:`BitMap` **texture_click_mask** - 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. - :ref:`Texture` **texture_disabled** - Texture to display when the node is disabled. See [member BaseButton.disabled]. - :ref:`Texture` **texture_focused** - Texture to display when the node has mouse or keyboard focus. - :ref:`Texture` **texture_hover** - Texture to display when the mouse hovers the node. - :ref:`Texture` **texture_normal** - Texture to display by default, when the node is [b]not[/b] in the disabled, focused, hover or pressed state. - :ref:`Texture` **texture_pressed** - 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. Numeric Constants ----------------- - **STRETCH_SCALE** = **0** --- Scale to fit the node's bounding rectangle. - **STRETCH_TILE** = **1** --- Tile inside the node's bounding rectangle. - **STRETCH_KEEP** = **2** --- The texture keeps its original size and stays in the bounding rectangle's top-left corner. - **STRETCH_KEEP_CENTERED** = **3** --- The texture keeps its original size and stays centered in the node's bounding rectangle. - **STRETCH_KEEP_ASPECT** = **4** --- Scale the texture to fit the node's bounding rectangle, but maintain the texture's aspect ratio. - **STRETCH_KEEP_ASPECT_CENTERED** = **5** --- Scale the texture to fit the node's bounding rectangle, center it, and maintain its aspect ratio. - **STRETCH_KEEP_ASPECT_COVERED** = **6** --- Scale the texture so that the shorter side fits the bounding rectangle. The other side clips to the node's limits. Description ----------- ``TextureButton`` has the same functionality as :ref:`Button`, except it uses sprites instead of Godot's :ref:`Theme` resource. It is faster to create, but it doesn't support localization like more complex Controls. The Normal state's texture is required. Others are optional. Member Function Description --------------------------- .. _class_TextureButton_get_click_mask: - :ref:`BitMap` **get_click_mask** **(** **)** const .. _class_TextureButton_get_disabled_texture: - :ref:`Texture` **get_disabled_texture** **(** **)** const .. _class_TextureButton_get_expand: - :ref:`bool` **get_expand** **(** **)** const .. _class_TextureButton_get_focused_texture: - :ref:`Texture` **get_focused_texture** **(** **)** const .. _class_TextureButton_get_hover_texture: - :ref:`Texture` **get_hover_texture** **(** **)** const .. _class_TextureButton_get_normal_texture: - :ref:`Texture` **get_normal_texture** **(** **)** const .. _class_TextureButton_get_pressed_texture: - :ref:`Texture` **get_pressed_texture** **(** **)** const .. _class_TextureButton_get_stretch_mode: - :ref:`int` **get_stretch_mode** **(** **)** const .. _class_TextureButton_set_click_mask: - void **set_click_mask** **(** :ref:`BitMap` mask **)** .. _class_TextureButton_set_disabled_texture: - void **set_disabled_texture** **(** :ref:`Texture` texture **)** .. _class_TextureButton_set_expand: - void **set_expand** **(** :ref:`bool` p_expand **)** .. _class_TextureButton_set_focused_texture: - void **set_focused_texture** **(** :ref:`Texture` texture **)** .. _class_TextureButton_set_hover_texture: - void **set_hover_texture** **(** :ref:`Texture` texture **)** .. _class_TextureButton_set_normal_texture: - void **set_normal_texture** **(** :ref:`Texture` texture **)** .. _class_TextureButton_set_pressed_texture: - void **set_pressed_texture** **(** :ref:`Texture` texture **)** .. _class_TextureButton_set_stretch_mode: - void **set_stretch_mode** **(** :ref:`int` p_mode **)**