StyleBoxFlat
Inherits: StyleBox < Resource < Reference < Object
Customizable StyleBox with a given set of parameters (no texture required).
Description
This StyleBox can be used to achieve all kinds of looks without the need of a texture. Those properties are customizable:
- Color
- Border width (individual width for each border)
- Rounded corners (individual radius for each corner)
- Shadow (with blur and offset)
Setting corner radius to high values is allowed. As soon as corners would overlap, the stylebox will switch to a relative system. Example:
height = 30 corner_radius_top_left = 50 corner_radius_bottom_left = 100
The relative system now would take the 1:2 ratio of the two left corners to calculate the actual corner width. Both corners added will never be more than the height. Result:
corner_radius_top_left: 10 corner_radius_bottom_left: 20
Properties
bool | anti_aliasing | true |
int | anti_aliasing_size | 1 |
Color | bg_color | Color( 0.6, 0.6, 0.6, 1 ) |
bool | border_blend | false |
Color | border_color | Color( 0.8, 0.8, 0.8, 1 ) |
int | border_width_bottom | 0 |
int | border_width_left | 0 |
int | border_width_right | 0 |
int | border_width_top | 0 |
int | corner_detail | 8 |
int | corner_radius_bottom_left | 0 |
int | corner_radius_bottom_right | 0 |
int | corner_radius_top_left | 0 |
int | corner_radius_top_right | 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 |
Color | shadow_color | Color( 0, 0, 0, 0.6 ) |
Vector2 | shadow_offset | Vector2( 0, 0 ) |
int | shadow_size | 0 |
Methods
int | get_border_width ( Margin margin ) const |
int | get_border_width_min ( ) const |
int | get_corner_radius ( Corner corner ) const |
float | get_expand_margin ( Margin margin ) const |
void | set_border_width ( Margin margin, int width ) |
void | set_border_width_all ( int width ) |
void | set_corner_radius ( Corner corner, int radius ) |
void | set_corner_radius_all ( int radius ) |
void | set_corner_radius_individual ( int radius_top_left, int radius_top_right, int radius_bottom_right, int radius_bottom_left ) |
void | set_expand_margin ( Margin margin, float size ) |
void | set_expand_margin_all ( float size ) |
void | set_expand_margin_individual ( float size_left, float size_top, float size_right, float size_bottom ) |
Property Descriptions
bool anti_aliasing
Default | true |
Setter | set_anti_aliased(value) |
Getter | is_anti_aliased() |
Antialiasing draws a small ring around the edges, which fades to transparency. As a result, edges look much smoother. This is only noticeable when using rounded corners.
int anti_aliasing_size
Default | 1 |
Setter | set_aa_size(value) |
Getter | get_aa_size() |
This changes the size of the faded ring. Higher values can be used to achieve a "blurry" effect.
Color bg_color
Default | Color( 0.6, 0.6, 0.6, 1 ) |
Setter | set_bg_color(value) |
Getter | get_bg_color() |
The background color of the stylebox.
bool border_blend
Default | false |
Setter | set_border_blend(value) |
Getter | get_border_blend() |
If true
, the border will fade into the background color.
Color border_color
Default | Color( 0.8, 0.8, 0.8, 1 ) |
Setter | set_border_color(value) |
Getter | get_border_color() |
Sets the color of the border.
int border_width_bottom
Default | 0 |
Setter | set_border_width(value) |
Getter | get_border_width() |
Border width for the bottom border.
int border_width_left
Default | 0 |
Setter | set_border_width(value) |
Getter | get_border_width() |
Border width for the left border.
int border_width_right
Default | 0 |
Setter | set_border_width(value) |
Getter | get_border_width() |
Border width for the right border.
int border_width_top
Default | 0 |
Setter | set_border_width(value) |
Getter | get_border_width() |
Border width for the top border.
int corner_detail
Default | 8 |
Setter | set_corner_detail(value) |
Getter | get_corner_detail() |
This sets the amount of vertices used for each corner. Higher values result in rounder corners but take more processing power to compute. When choosing a value, you should take the corner radius (set_corner_radius_all) into account.
For corner radii smaller than 10, 4
or 5
should be enough. For corner radii smaller than 30, values between 8
and 12
should be enough.
A corner detail of 1
will result in chamfered corners instead of rounded corners, which is useful for some artistic effects.
int corner_radius_bottom_left
Default | 0 |
Setter | set_corner_radius(value) |
Getter | get_corner_radius() |
The bottom-left corner's radius. If 0
, the corner is not rounded.
int corner_radius_bottom_right
Default | 0 |
Setter | set_corner_radius(value) |
Getter | get_corner_radius() |
The bottom-right corner's radius. If 0
, the corner is not rounded.
int corner_radius_top_left
Default | 0 |
Setter | set_corner_radius(value) |
Getter | get_corner_radius() |
The top-left corner's radius. If 0
, the corner is not rounded.
int corner_radius_top_right
Default | 0 |
Setter | set_corner_radius(value) |
Getter | get_corner_radius() |
The top-right corner's radius. If 0
, the corner is not rounded.
bool draw_center
Default | true |
Setter | set_draw_center(value) |
Getter | is_draw_center_enabled() |
Toggles drawing of the inner part of the stylebox.
float expand_margin_bottom
Default | 0.0 |
Setter | set_expand_margin(value) |
Getter | get_expand_margin() |
Expands the stylebox outside of the control rect on the bottom edge. Useful in combination with border_width_bottom to draw a border outside the control rect.
float expand_margin_left
Default | 0.0 |
Setter | set_expand_margin(value) |
Getter | get_expand_margin() |
Expands the stylebox outside of the control rect on the left edge. Useful in combination with border_width_left to draw a border outside the control rect.
float expand_margin_right
Default | 0.0 |
Setter | set_expand_margin(value) |
Getter | get_expand_margin() |
Expands the stylebox outside of the control rect on the right edge. Useful in combination with border_width_right to draw a border outside the control rect.
float expand_margin_top
Default | 0.0 |
Setter | set_expand_margin(value) |
Getter | get_expand_margin() |
Expands the stylebox outside of the control rect on the top edge. Useful in combination with border_width_top to draw a border outside the control rect.
Color shadow_color
Default | Color( 0, 0, 0, 0.6 ) |
Setter | set_shadow_color(value) |
Getter | get_shadow_color() |
The color of the shadow. This has no effect if shadow_size is lower than 1.
Vector2 shadow_offset
Default | Vector2( 0, 0 ) |
Setter | set_shadow_offset(value) |
Getter | get_shadow_offset() |
The shadow offset in pixels. Adjusts the position of the shadow relatively to the stylebox.
int shadow_size
Default | 0 |
Setter | set_shadow_size(value) |
Getter | get_shadow_size() |
The shadow size in pixels.
Method Descriptions
int get_border_width ( Margin margin ) const
Returns the given margin
's border width. See Margin for possible values.
int get_border_width_min ( ) const
Returns the smallest border width out of all four borders.
int get_corner_radius ( Corner corner ) const
Returns the given corner
's radius. See Corner for possible values.
float get_expand_margin ( Margin margin ) const
Returns the size of the given margin
's expand margin. See Margin for possible values.
void set_border_width ( Margin margin, int width )
Sets the border width to width
pixels for the given margin
. See Margin for possible values.
void set_border_width_all ( int width )
Sets the border width to width
pixels for all margins.
void set_corner_radius ( Corner corner, int radius )
Sets the corner radius to radius
pixels for the given corner
. See Corner for possible values.
void set_corner_radius_all ( int radius )
Sets the corner radius to radius
pixels for all corners.
void set_corner_radius_individual ( int radius_top_left, int radius_top_right, int radius_bottom_right, int radius_bottom_left )
Sets the corner radius for each corner to radius_top_left
, radius_top_right
, radius_bottom_right
, and radius_bottom_left
pixels.
void set_expand_margin ( Margin margin, float size )
Sets the expand margin to size
pixels for 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.
© 2014–2020 Juan Linietsky, Ariel Manzur, Godot Engine contributors
Licensed under the MIT License.
https://docs.godotengine.org/en/3.2/classes/class_styleboxflat.html