123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- <?xml version="1.0" encoding="UTF-8" ?>
- <class name="TouchScreenButton" inherits="Node2D" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
- <brief_description>
- Button for touch screen devices for gameplay use.
- </brief_description>
- <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 [Button], TouchScreenButton supports multitouch out of the box. Several TouchScreenButtons can be pressed at the same time with touch input.
- This node inherits from [Node2D]. Unlike with [Control] nodes, you cannot set anchors on it. If you want to create menus or user interfaces, you may want to use [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.
- </description>
- <tutorials>
- </tutorials>
- <methods>
- <method name="is_pressed" qualifiers="const">
- <return type="bool" />
- <description>
- Returns [code]true[/code] if this button is currently pressed.
- </description>
- </method>
- </methods>
- <members>
- <member name="action" type="String" setter="set_action" getter="get_action" default="""">
- The button's action. Actions can be handled with [InputEventAction].
- </member>
- <member name="bitmask" type="BitMap" setter="set_bitmask" getter="get_bitmask">
- The button's bitmask.
- </member>
- <member name="normal" type="Texture" setter="set_texture" getter="get_texture">
- The button's texture for the normal state.
- </member>
- <member name="passby_press" type="bool" setter="set_passby_press" getter="is_passby_press_enabled" default="false">
- If [code]true[/code], the [signal pressed] and [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.
- [b]Note:[/b] This is a "pass-by" (not "bypass") press mode.
- </member>
- <member name="pressed" type="Texture" setter="set_texture_pressed" getter="get_texture_pressed">
- The button's texture for the pressed state.
- </member>
- <member name="shape" type="Shape2D" setter="set_shape" getter="get_shape">
- The button's shape.
- </member>
- <member name="shape_centered" type="bool" setter="set_shape_centered" getter="is_shape_centered" default="true">
- If [code]true[/code], the button's shape is centered in the provided texture. If no texture is used, this property has no effect.
- </member>
- <member name="shape_visible" type="bool" setter="set_shape_visible" getter="is_shape_visible" default="true">
- If [code]true[/code], the button's shape is visible.
- </member>
- <member name="visibility_mode" type="int" setter="set_visibility_mode" getter="get_visibility_mode" enum="TouchScreenButton.VisibilityMode" default="0">
- The button's visibility mode. See [enum VisibilityMode] for possible values.
- </member>
- </members>
- <signals>
- <signal name="pressed">
- <description>
- Emitted when the button is pressed (down).
- </description>
- </signal>
- <signal name="released">
- <description>
- Emitted when the button is released (up).
- </description>
- </signal>
- </signals>
- <constants>
- <constant name="VISIBILITY_ALWAYS" value="0" enum="VisibilityMode">
- Always visible.
- </constant>
- <constant name="VISIBILITY_TOUCHSCREEN_ONLY" value="1" enum="VisibilityMode">
- Visible on touch screens only.
- </constant>
- </constants>
- </class>
|