StyleBoxTexture

Inherits: StyleBox < Resource < Reference < Object

Texture-based nine-patch StyleBox.

Description

Texture-based nine-patch StyleBox, in a way similar to NinePatchRect. This stylebox performs a 3×3 scaling of a texture, where only the center cell is fully stretched. This makes it possible to design bordered styles regardless of the stylebox's size.

Properties

AxisStretchMode axis_stretch_horizontal 0
AxisStretchMode axis_stretch_vertical 0
bool draw_center true
float expand_margin_bottom 0.0
float expand_margin_left 0.0
float expand_margin_right 0.0
float expand_margin_top 0.0
float margin_bottom 0.0
float margin_left 0.0
float margin_right 0.0
float margin_top 0.0
Color modulate_color Color( 1, 1, 1, 1 )
Texture normal_map
Rect2 region_rect Rect2( 0, 0, 0, 0 )
Texture texture

Methods

float get_expand_margin_size ( Margin margin ) const
float get_margin_size ( Margin margin ) const
void set_expand_margin_all ( float size )
void set_expand_margin_individual ( float size_left, float size_top, float size_right, float size_bottom )
void set_expand_margin_size ( Margin margin, float size )
void set_margin_size ( Margin margin, float size )

Signals

texture_changed ( )

Emitted when the stylebox's texture is changed.

Enumerations

enum AxisStretchMode:

  • AXIS_STRETCH_MODE_STRETCH = 0 --- Stretch the stylebox's texture. This results in visible distortion unless the texture size matches the stylebox's size perfectly.
  • AXIS_STRETCH_MODE_TILE = 1 --- Repeats the stylebox's texture to match the stylebox's size according to the nine-patch system.
  • AXIS_STRETCH_MODE_TILE_FIT = 2 --- Repeats the stylebox's texture to match the stylebox's size according to the nine-patch system. Unlike AXIS_STRETCH_MODE_TILE, the texture may be slightly stretched to make the nine-patch texture tile seamlessly.

Property Descriptions

AxisStretchMode axis_stretch_horizontal

Default 0
Setter set_h_axis_stretch_mode(value)
Getter get_h_axis_stretch_mode()

Controls how the stylebox's texture will be stretched or tiled horizontally. See AxisStretchMode for possible values.

AxisStretchMode axis_stretch_vertical

Default 0
Setter set_v_axis_stretch_mode(value)
Getter get_v_axis_stretch_mode()

Controls how the stylebox's texture will be stretched or tiled vertically. See AxisStretchMode for possible values.

bool draw_center

Default true
Setter set_draw_center(value)
Getter is_draw_center_enabled()

If true, the nine-patch texture's center tile will be drawn.

float expand_margin_bottom

Default 0.0
Setter set_expand_margin_size(value)
Getter get_expand_margin_size()

Expands the bottom margin of this style box when drawing, causing it to be drawn larger than requested.

float expand_margin_left

Default 0.0
Setter set_expand_margin_size(value)
Getter get_expand_margin_size()

Expands the left margin of this style box when drawing, causing it to be drawn larger than requested.

float expand_margin_right

Default 0.0
Setter set_expand_margin_size(value)
Getter get_expand_margin_size()

Expands the right margin of this style box when drawing, causing it to be drawn larger than requested.

float expand_margin_top

Default 0.0
Setter set_expand_margin_size(value)
Getter get_expand_margin_size()

Expands the top margin of this style box when drawing, causing it to be drawn larger than requested.

float margin_bottom

Default 0.0
Setter set_margin_size(value)
Getter get_margin_size()

Increases the bottom margin of the 3×3 texture box.

A higher value means more of the source texture is considered to be part of the bottom border of the 3×3 box.

This is also the value used as fallback for StyleBox.content_margin_bottom if it is negative.

float margin_left

Default 0.0
Setter set_margin_size(value)
Getter get_margin_size()

Increases the left margin of the 3×3 texture box.

A higher value means more of the source texture is considered to be part of the left border of the 3×3 box.

This is also the value used as fallback for StyleBox.content_margin_left if it is negative.

float margin_right

Default 0.0
Setter set_margin_size(value)
Getter get_margin_size()

Increases the right margin of the 3×3 texture box.

A higher value means more of the source texture is considered to be part of the right border of the 3×3 box.

This is also the value used as fallback for StyleBox.content_margin_right if it is negative.

float margin_top

Default 0.0
Setter set_margin_size(value)
Getter get_margin_size()

Increases the top margin of the 3×3 texture box.

A higher value means more of the source texture is considered to be part of the top border of the 3×3 box.

This is also the value used as fallback for StyleBox.content_margin_top if it is negative.

Color modulate_color

Default Color( 1, 1, 1, 1 )
Setter set_modulate(value)
Getter get_modulate()

Modulates the color of the texture when this style box is drawn.

Texture normal_map

Setter set_normal_map(value)
Getter get_normal_map()

The normal map to use when drawing this style box.

Note: Godot expects the normal map to use X+, Y-, and Z+ coordinates. See this page for a comparison of normal map coordinates expected by popular engines.

Rect2 region_rect

Default Rect2( 0, 0, 0, 0 )
Setter set_region_rect(value)
Getter get_region_rect()

Species a sub-region of the texture to use.

This is equivalent to first wrapping the texture in an AtlasTexture with the same region.

Texture texture

Setter set_texture(value)
Getter get_texture()

The texture to use when drawing this style box.

Method Descriptions

float get_expand_margin_size ( Margin margin ) const

Returns the size of the given margin's expand margin. See Margin for possible values.

float get_margin_size ( Margin margin ) const

Returns the size of the given margin. See Margin for possible values.

void set_expand_margin_all ( float size )

Sets the expand margin to size pixels for all margins.

void set_expand_margin_individual ( float size_left, float size_top, float size_right, float size_bottom )

Sets the expand margin for each margin to size_left, size_top, size_right, and size_bottom pixels.

void set_expand_margin_size ( Margin margin, float size )

Sets the expand margin to size pixels for the given margin. See Margin for possible values.

void set_margin_size ( Margin margin, float size )

Sets the margin to size pixels for the given margin. See Margin for possible values.

© 2014–2020 Juan Linietsky, Ariel Manzur, Godot Engine contributors
Licensed under the MIT License.
https://docs.godotengine.org/en/3.2/classes/class_styleboxtexture.html