308 lines
11 KiB
ReStructuredText
308 lines
11 KiB
ReStructuredText
:github_url: hide
|
|
|
|
.. DO NOT EDIT THIS FILE!!!
|
|
.. Generated automatically from Godot engine sources.
|
|
.. Generator: https://github.com/godotengine/godot/tree/3.6/doc/tools/make_rst.py.
|
|
.. XML source: https://github.com/godotengine/godot/tree/3.6/doc/classes/TouchScreenButton.xml.
|
|
|
|
.. _class_TouchScreenButton:
|
|
|
|
TouchScreenButton
|
|
=================
|
|
|
|
**Inherits:** :ref:`Node2D<class_Node2D>` **<** :ref:`CanvasItem<class_CanvasItem>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
|
|
|
|
Button for touch screen devices for gameplay use.
|
|
|
|
.. rst-class:: classref-introduction-group
|
|
|
|
Description
|
|
-----------
|
|
|
|
TouchScreenButton allows you to create on-screen buttons for touch devices. It's intended for gameplay use, such as a unit you have to touch to move. Unlike :ref:`Button<class_Button>`, TouchScreenButton supports multitouch out of the box. Several TouchScreenButtons can be pressed at the same time with touch input.
|
|
|
|
This node inherits from :ref:`Node2D<class_Node2D>`. Unlike with :ref:`Control<class_Control>` nodes, you cannot set anchors on it. If you want to create menus or user interfaces, you may want to use :ref:`Button<class_Button>` nodes instead. To make button nodes react to touch events, you can enable the Emulate Mouse option in the Project Settings.
|
|
|
|
You can configure TouchScreenButton to be visible only on touch devices, helping you develop your game both for desktop and mobile devices.
|
|
|
|
.. rst-class:: classref-reftable-group
|
|
|
|
Properties
|
|
----------
|
|
|
|
.. table::
|
|
:widths: auto
|
|
|
|
+--------------------------------------------------------------+--------------------------------------------------------------------------+-----------+
|
|
| :ref:`String<class_String>` | :ref:`action<class_TouchScreenButton_property_action>` | ``""`` |
|
|
+--------------------------------------------------------------+--------------------------------------------------------------------------+-----------+
|
|
| :ref:`BitMap<class_BitMap>` | :ref:`bitmask<class_TouchScreenButton_property_bitmask>` | |
|
|
+--------------------------------------------------------------+--------------------------------------------------------------------------+-----------+
|
|
| :ref:`Texture<class_Texture>` | :ref:`normal<class_TouchScreenButton_property_normal>` | |
|
|
+--------------------------------------------------------------+--------------------------------------------------------------------------+-----------+
|
|
| :ref:`bool<class_bool>` | :ref:`passby_press<class_TouchScreenButton_property_passby_press>` | ``false`` |
|
|
+--------------------------------------------------------------+--------------------------------------------------------------------------+-----------+
|
|
| :ref:`Texture<class_Texture>` | :ref:`pressed<class_TouchScreenButton_property_pressed>` | |
|
|
+--------------------------------------------------------------+--------------------------------------------------------------------------+-----------+
|
|
| :ref:`Shape2D<class_Shape2D>` | :ref:`shape<class_TouchScreenButton_property_shape>` | |
|
|
+--------------------------------------------------------------+--------------------------------------------------------------------------+-----------+
|
|
| :ref:`bool<class_bool>` | :ref:`shape_centered<class_TouchScreenButton_property_shape_centered>` | ``true`` |
|
|
+--------------------------------------------------------------+--------------------------------------------------------------------------+-----------+
|
|
| :ref:`bool<class_bool>` | :ref:`shape_visible<class_TouchScreenButton_property_shape_visible>` | ``true`` |
|
|
+--------------------------------------------------------------+--------------------------------------------------------------------------+-----------+
|
|
| :ref:`VisibilityMode<enum_TouchScreenButton_VisibilityMode>` | :ref:`visibility_mode<class_TouchScreenButton_property_visibility_mode>` | ``0`` |
|
|
+--------------------------------------------------------------+--------------------------------------------------------------------------+-----------+
|
|
|
|
.. rst-class:: classref-reftable-group
|
|
|
|
Methods
|
|
-------
|
|
|
|
.. table::
|
|
:widths: auto
|
|
|
|
+-------------------------+----------------------------------------------------------------------------------+
|
|
| :ref:`bool<class_bool>` | :ref:`is_pressed<class_TouchScreenButton_method_is_pressed>` **(** **)** |const| |
|
|
+-------------------------+----------------------------------------------------------------------------------+
|
|
|
|
.. rst-class:: classref-section-separator
|
|
|
|
----
|
|
|
|
.. rst-class:: classref-descriptions-group
|
|
|
|
Signals
|
|
-------
|
|
|
|
.. _class_TouchScreenButton_signal_pressed:
|
|
|
|
.. rst-class:: classref-signal
|
|
|
|
**pressed** **(** **)**
|
|
|
|
Emitted when the button is pressed (down).
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_TouchScreenButton_signal_released:
|
|
|
|
.. rst-class:: classref-signal
|
|
|
|
**released** **(** **)**
|
|
|
|
Emitted when the button is released (up).
|
|
|
|
.. rst-class:: classref-section-separator
|
|
|
|
----
|
|
|
|
.. rst-class:: classref-descriptions-group
|
|
|
|
Enumerations
|
|
------------
|
|
|
|
.. _enum_TouchScreenButton_VisibilityMode:
|
|
|
|
.. rst-class:: classref-enumeration
|
|
|
|
enum **VisibilityMode**:
|
|
|
|
.. _class_TouchScreenButton_constant_VISIBILITY_ALWAYS:
|
|
|
|
.. rst-class:: classref-enumeration-constant
|
|
|
|
:ref:`VisibilityMode<enum_TouchScreenButton_VisibilityMode>` **VISIBILITY_ALWAYS** = ``0``
|
|
|
|
Always visible.
|
|
|
|
.. _class_TouchScreenButton_constant_VISIBILITY_TOUCHSCREEN_ONLY:
|
|
|
|
.. rst-class:: classref-enumeration-constant
|
|
|
|
:ref:`VisibilityMode<enum_TouchScreenButton_VisibilityMode>` **VISIBILITY_TOUCHSCREEN_ONLY** = ``1``
|
|
|
|
Visible on touch screens only.
|
|
|
|
.. rst-class:: classref-section-separator
|
|
|
|
----
|
|
|
|
.. rst-class:: classref-descriptions-group
|
|
|
|
Property Descriptions
|
|
---------------------
|
|
|
|
.. _class_TouchScreenButton_property_action:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`String<class_String>` **action** = ``""``
|
|
|
|
.. rst-class:: classref-property-setget
|
|
|
|
- void **set_action** **(** :ref:`String<class_String>` value **)**
|
|
- :ref:`String<class_String>` **get_action** **(** **)**
|
|
|
|
The button's action. Actions can be handled with :ref:`InputEventAction<class_InputEventAction>`.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_TouchScreenButton_property_bitmask:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`BitMap<class_BitMap>` **bitmask**
|
|
|
|
.. rst-class:: classref-property-setget
|
|
|
|
- void **set_bitmask** **(** :ref:`BitMap<class_BitMap>` value **)**
|
|
- :ref:`BitMap<class_BitMap>` **get_bitmask** **(** **)**
|
|
|
|
The button's bitmask.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_TouchScreenButton_property_normal:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`Texture<class_Texture>` **normal**
|
|
|
|
.. rst-class:: classref-property-setget
|
|
|
|
- void **set_texture** **(** :ref:`Texture<class_Texture>` value **)**
|
|
- :ref:`Texture<class_Texture>` **get_texture** **(** **)**
|
|
|
|
The button's texture for the normal state.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_TouchScreenButton_property_passby_press:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`bool<class_bool>` **passby_press** = ``false``
|
|
|
|
.. rst-class:: classref-property-setget
|
|
|
|
- void **set_passby_press** **(** :ref:`bool<class_bool>` value **)**
|
|
- :ref:`bool<class_bool>` **is_passby_press_enabled** **(** **)**
|
|
|
|
If ``true``, the :ref:`pressed<class_TouchScreenButton_signal_pressed>` and :ref:`released<class_TouchScreenButton_signal_released>` signals are emitted whenever a pressed finger goes in and out of the button, even if the pressure started outside the active area of the button.
|
|
|
|
\ **Note:** This is a "pass-by" (not "bypass") press mode.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_TouchScreenButton_property_pressed:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`Texture<class_Texture>` **pressed**
|
|
|
|
.. rst-class:: classref-property-setget
|
|
|
|
- void **set_texture_pressed** **(** :ref:`Texture<class_Texture>` value **)**
|
|
- :ref:`Texture<class_Texture>` **get_texture_pressed** **(** **)**
|
|
|
|
The button's texture for the pressed state.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_TouchScreenButton_property_shape:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`Shape2D<class_Shape2D>` **shape**
|
|
|
|
.. rst-class:: classref-property-setget
|
|
|
|
- void **set_shape** **(** :ref:`Shape2D<class_Shape2D>` value **)**
|
|
- :ref:`Shape2D<class_Shape2D>` **get_shape** **(** **)**
|
|
|
|
The button's shape.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_TouchScreenButton_property_shape_centered:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`bool<class_bool>` **shape_centered** = ``true``
|
|
|
|
.. rst-class:: classref-property-setget
|
|
|
|
- void **set_shape_centered** **(** :ref:`bool<class_bool>` value **)**
|
|
- :ref:`bool<class_bool>` **is_shape_centered** **(** **)**
|
|
|
|
If ``true``, the button's shape is centered in the provided texture. If no texture is used, this property has no effect.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_TouchScreenButton_property_shape_visible:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`bool<class_bool>` **shape_visible** = ``true``
|
|
|
|
.. rst-class:: classref-property-setget
|
|
|
|
- void **set_shape_visible** **(** :ref:`bool<class_bool>` value **)**
|
|
- :ref:`bool<class_bool>` **is_shape_visible** **(** **)**
|
|
|
|
If ``true``, the button's shape is visible.
|
|
|
|
.. rst-class:: classref-item-separator
|
|
|
|
----
|
|
|
|
.. _class_TouchScreenButton_property_visibility_mode:
|
|
|
|
.. rst-class:: classref-property
|
|
|
|
:ref:`VisibilityMode<enum_TouchScreenButton_VisibilityMode>` **visibility_mode** = ``0``
|
|
|
|
.. rst-class:: classref-property-setget
|
|
|
|
- void **set_visibility_mode** **(** :ref:`VisibilityMode<enum_TouchScreenButton_VisibilityMode>` value **)**
|
|
- :ref:`VisibilityMode<enum_TouchScreenButton_VisibilityMode>` **get_visibility_mode** **(** **)**
|
|
|
|
The button's visibility mode. See :ref:`VisibilityMode<enum_TouchScreenButton_VisibilityMode>` for possible values.
|
|
|
|
.. rst-class:: classref-section-separator
|
|
|
|
----
|
|
|
|
.. rst-class:: classref-descriptions-group
|
|
|
|
Method Descriptions
|
|
-------------------
|
|
|
|
.. _class_TouchScreenButton_method_is_pressed:
|
|
|
|
.. rst-class:: classref-method
|
|
|
|
:ref:`bool<class_bool>` **is_pressed** **(** **)** |const|
|
|
|
|
Returns ``true`` if this button is currently pressed.
|
|
|
|
.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
|
|
.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
|
|
.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
|
|
.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
|