[−][src]Struct gdnative::prelude::Button
core class Button
inherits BaseButton
(unsafe).
Official documentation
See the documentation of this class in the Godot engine's official documentation.
Memory management
Non reference counted objects such as the ones of this type are usually owned by the engine.
Button
is a reference-only type. Persistent references can
only exist in the unsafe Ref<Button>
form.
In the cases where Rust code owns an object of this type, for example if the object was just
created on the Rust side and not passed to the engine yet, ownership should be either given
to the engine or the object must be manually destroyed using Ref::free
, or Ref::queue_free
if it is a Node
.
Class hierarchy
Button inherits methods from:
Safety
All types in the Godot API have "interior mutability" in Rust parlance.
To enforce that the official thread-safety guidelines are
followed, the typestate pattern is used in the Ref
and TRef
smart pointers,
and the Instance
API. The typestate Access
in these types tracks whether the
access is unique, shared, or exclusive to the current thread. For more information,
see the type-level documentation on Ref
.
Implementations
impl Button
[src]
Constants
impl Button
[src]
pub fn new() -> Ref<Button, Unique>
[src]
Creates a new instance of this object.
Because this type is not reference counted, the lifetime of the returned object is not automatically managed.
Immediately after creation, the object is owned by the caller, and can be
passed to the engine (in which case the engine will be responsible for
destroying the object) or destroyed manually using Ref::free
, or preferably
Ref::queue_free
if it is a Node
.
pub fn button_icon(&self) -> Option<Ref<Texture, Shared>>
[src]
Button's icon, if text is present the icon will be placed before the text.
pub fn clip_text(&self) -> bool
[src]
When this property is enabled, text that is too large to fit the button is clipped, when disabled the Button will always be wide enough to hold the text.
pub fn text(&self) -> GodotString
[src]
The button's text that will be displayed inside the button's area.
pub fn text_align(&self) -> TextAlign
[src]
Text alignment policy for the button's text, use one of the [enum TextAlign] constants.
pub fn is_expand_icon(&self) -> bool
[src]
When enabled, the button's icon will expand/shrink to fit the button's size while keeping its aspect.
pub fn is_flat(&self) -> bool
[src]
Flat buttons don't display decoration.
pub fn set_button_icon(&self, texture: impl AsArg<Texture>)
[src]
Button's icon, if text is present the icon will be placed before the text.
pub fn set_clip_text(&self, enabled: bool)
[src]
When this property is enabled, text that is too large to fit the button is clipped, when disabled the Button will always be wide enough to hold the text.
pub fn set_expand_icon(&self, arg0: bool)
[src]
When enabled, the button's icon will expand/shrink to fit the button's size while keeping its aspect.
pub fn set_flat(&self, enabled: bool)
[src]
Flat buttons don't display decoration.
pub fn set_text(&self, text: impl Into<GodotString>)
[src]
The button's text that will be displayed inside the button's area.
pub fn set_text_align(&self, align: i64)
[src]
Text alignment policy for the button's text, use one of the [enum TextAlign] constants.
Methods from Deref<Target = BaseButton>
pub const ACTION_MODE_BUTTON_PRESS: i64
[src]
pub const ACTION_MODE_BUTTON_RELEASE: i64
[src]
pub const DRAW_DISABLED: i64
[src]
pub const DRAW_HOVER: i64
[src]
pub const DRAW_HOVER_PRESSED: i64
[src]
pub const DRAW_NORMAL: i64
[src]
pub const DRAW_PRESSED: i64
[src]
pub fn action_mode(&self) -> ActionMode
[src]
Determines when the button is considered clicked, one of the [enum ActionMode] constants.
pub fn button_group(&self) -> Option<Ref<ButtonGroup, Shared>>
[src]
[ButtonGroup] associated to the button.
pub fn button_mask(&self) -> i64
[src]
Binary mask to choose which mouse buttons this button will respond to.
To allow both left-click and right-click, use [code]BUTTON_MASK_LEFT | BUTTON_MASK_RIGHT[/code].
pub fn get_draw_mode(&self) -> DrawMode
[src]
Returns the visual state used to draw the button. This is useful mainly when implementing your own draw code by either overriding _draw() or connecting to "draw" signal. The visual state of the button is defined by the [enum DrawMode] enum.
pub fn enabled_focus_mode(&self) -> FocusMode
[src]
Focus access mode to use when switching between enabled/disabled (see [member Control.focus_mode] and [member disabled]).
pub fn shortcut(&self) -> Option<Ref<ShortCut, Shared>>
[src]
[ShortCut] associated to the button.
pub fn is_disabled(&self) -> bool
[src]
If [code]true[/code], the button is in disabled state and can't be clicked or toggled.
pub fn is_hovered(&self) -> bool
[src]
Returns [code]true[/code] if the mouse has entered the button and has not left it yet.
pub fn is_keep_pressed_outside(&self) -> bool
[src]
If [code]true[/code], the button stays pressed when moving the cursor outside the button while pressing it.
[b]Note:[/b] This property only affects the button's visual appearance. Signals will be emitted at the same moment regardless of this property's value.
pub fn is_pressed(&self) -> bool
[src]
If [code]true[/code], the button's state is pressed. Means the button is pressed down or toggled (if [member toggle_mode] is active).
pub fn is_shortcut_in_tooltip_enabled(&self) -> bool
[src]
If [code]true[/code], the button will add information about its shortcut in the tooltip.
pub fn is_toggle_mode(&self) -> bool
[src]
If [code]true[/code], the button is in toggle mode. Makes the button flip state between pressed and unpressed each time its area is clicked.
pub fn set_action_mode(&self, mode: i64)
[src]
Determines when the button is considered clicked, one of the [enum ActionMode] constants.
pub fn set_button_group(&self, button_group: impl AsArg<ButtonGroup>)
[src]
[ButtonGroup] associated to the button.
pub fn set_button_mask(&self, mask: i64)
[src]
Binary mask to choose which mouse buttons this button will respond to.
To allow both left-click and right-click, use [code]BUTTON_MASK_LEFT | BUTTON_MASK_RIGHT[/code].
pub fn set_disabled(&self, disabled: bool)
[src]
If [code]true[/code], the button is in disabled state and can't be clicked or toggled.
pub fn set_enabled_focus_mode(&self, mode: i64)
[src]
Focus access mode to use when switching between enabled/disabled (see [member Control.focus_mode] and [member disabled]).
pub fn set_keep_pressed_outside(&self, enabled: bool)
[src]
If [code]true[/code], the button stays pressed when moving the cursor outside the button while pressing it.
[b]Note:[/b] This property only affects the button's visual appearance. Signals will be emitted at the same moment regardless of this property's value.
pub fn set_pressed(&self, pressed: bool)
[src]
If [code]true[/code], the button's state is pressed. Means the button is pressed down or toggled (if [member toggle_mode] is active).
pub fn set_shortcut(&self, shortcut: impl AsArg<ShortCut>)
[src]
[ShortCut] associated to the button.
pub fn set_shortcut_in_tooltip(&self, enabled: bool)
[src]
If [code]true[/code], the button will add information about its shortcut in the tooltip.
pub fn set_toggle_mode(&self, enabled: bool)
[src]
If [code]true[/code], the button is in toggle mode. Makes the button flip state between pressed and unpressed each time its area is clicked.
Trait Implementations
impl Debug for Button
[src]
impl Deref for Button
[src]
impl DerefMut for Button
[src]
fn deref_mut(&mut self) -> &mut BaseButton
[src]
impl GodotObject for Button
[src]
type RefKind = ManuallyManaged
The memory management kind of this type. This modifies the behavior of the
Ref
smart pointer. See its type-level documentation for more
information. Read more
fn class_name() -> &'static str
[src]
fn null() -> Null<Self>
[src]
fn new() -> Ref<Self, Unique> where
Self: Instanciable,
[src]
Self: Instanciable,
fn cast<T>(&self) -> Option<&T> where
T: GodotObject + SubClass<Self>,
[src]
T: GodotObject + SubClass<Self>,
fn upcast<T>(&self) -> &T where
Self: SubClass<T>,
T: GodotObject,
[src]
Self: SubClass<T>,
T: GodotObject,
unsafe fn assume_shared(&self) -> Ref<Self, Shared>
[src]
unsafe fn assume_thread_local(&self) -> Ref<Self, ThreadLocal> where
Self: GodotObject<RefKind = RefCounted>,
[src]
Self: GodotObject<RefKind = RefCounted>,
unsafe fn assume_unique(&self) -> Ref<Self, Unique>
[src]
impl Instanciable for Button
[src]
impl QueueFree for Button
[src]
unsafe fn godot_queue_free(obj: *mut c_void)
[src]
impl SubClass<BaseButton> for Button
[src]
impl SubClass<Button> for ColorPickerButton
[src]
impl SubClass<Button> for OptionButton
[src]
impl SubClass<Button> for CheckButton
[src]
impl SubClass<Button> for MenuButton
[src]
impl SubClass<Button> for CheckBox
[src]
impl SubClass<Button> for ToolButton
[src]
impl SubClass<CanvasItem> for Button
[src]
impl SubClass<Control> for Button
[src]
impl SubClass<Node> for Button
[src]
impl SubClass<Object> for Button
[src]
Auto Trait Implementations
impl RefUnwindSafe for Button
impl !Send for Button
impl !Sync for Button
impl Unpin for Button
impl UnwindSafe for Button
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> SubClass<T> for T where
T: GodotObject,
[src]
T: GodotObject,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,