Up to date
This page is up to date for Godot 4.2
.
If you still find outdated information, please open an issue.
StyleBoxTexture¶
Inherits: StyleBox < Resource < RefCounted < Object
A texture-based nine-patch StyleBox.
Description¶
A 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¶
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
Methods¶
get_expand_margin ( Side margin ) const |
|
get_texture_margin ( Side margin ) const |
|
void |
set_expand_margin ( Side margin, float size ) |
void |
set_expand_margin_all ( float size ) |
void |
set_texture_margin ( Side margin, float size ) |
void |
set_texture_margin_all ( float size ) |
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
void set_h_axis_stretch_mode ( AxisStretchMode value )
AxisStretchMode 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 = 0
void set_v_axis_stretch_mode ( AxisStretchMode value )
AxisStretchMode 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 = true
If true
, the nine-patch texture's center tile will be drawn.
float expand_margin_bottom = 0.0
Expands the bottom margin of this style box when drawing, causing it to be drawn larger than requested.
float expand_margin_left = 0.0
Expands the left margin of this style box when drawing, causing it to be drawn larger than requested.
float expand_margin_right = 0.0
Expands the right margin of this style box when drawing, causing it to be drawn larger than requested.
float expand_margin_top = 0.0
Expands the top margin of this style box when drawing, causing it to be drawn larger than requested.
Color modulate_color = Color(1, 1, 1, 1)
Modulates the color of the texture when this style box is drawn.
Rect2 region_rect = Rect2(0, 0, 0, 0)
Species a sub-region of the texture to use.
This is equivalent to first wrapping the texture in an AtlasTexture with the same region.
If empty (Rect2(0, 0, 0, 0)
), the whole texture will be used.
Texture2D texture
The texture to use when drawing this style box.
float texture_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 texture_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 texture_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.