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:

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.

AxisStretchMode AXIS_STRETCH_MODE_TILE = 1

Repeats the stylebox's texture to match the stylebox's size according to the nine-patch system.

AxisStretchMode 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 = 0

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


AxisStretchMode axis_stretch_vertical = 0

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


bool draw_center = true

  • void set_draw_center ( bool value )

  • bool is_draw_center_enabled ( )

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


float expand_margin_bottom = 0.0

  • void set_expand_margin_size ( Margin margin, float size )

  • float get_expand_margin_size ( Margin margin ) const

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


float expand_margin_left = 0.0

  • void set_expand_margin_size ( Margin margin, float size )

  • float get_expand_margin_size ( Margin margin ) const

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


float expand_margin_right = 0.0

  • void set_expand_margin_size ( Margin margin, float size )

  • float get_expand_margin_size ( Margin margin ) const

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


float expand_margin_top = 0.0

  • void set_expand_margin_size ( Margin margin, float size )

  • float get_expand_margin_size ( Margin margin ) const

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


float margin_bottom = 0.0

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 = 0.0

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 = 0.0

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 = 0.0

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 = Color( 1, 1, 1, 1 )

  • void set_modulate ( Color value )

  • Color get_modulate ( )

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


Texture 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 = Rect2( 0, 0, 0, 0 )

  • void set_region_rect ( Rect2 value )

  • Rect2 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

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.