StyleBoxFlat

    Customizable StyleBox with a given set of parameters (no texture required).

    This StyleBox can be used to achieve all kinds of looks without the need of a texture. The following 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 overlap, the stylebox will switch to a relative system. Example:

    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:

    1. corner_radius_bottom_left: 20

    get_border_width ( margin ) const

    int

    ( ) const

    int

    ( Corner corner ) const

    get_expand_margin ( margin ) const

    void

    set_border_width ( margin, int width )

    void

    ( int width )

    void

    ( Corner corner, radius )

    void

    set_corner_radius_all ( radius )

    set_corner_radius_individual ( radius_top_left, int radius_top_right, radius_bottom_right, int radius_bottom_left )

    void

    ( Margin margin, size )

    void

    set_expand_margin_all ( size )

    void

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

    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 or .

    Note: When using beveled corners with 45-degree angles (corner_detail = 1), it is recommended to set to to ensure crisp visuals and avoid possible visual glitches.


    • float anti_aliasing_size

    Default

    0.625

    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.


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


    Default

    false

    Setter

    set_border_blend(value)

    Getter

    get_border_blend()

    If true, the border will fade into the background 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.


    • border_width_bottom

    Default

    0

    Setter

    set_border_width(value)

    Getter

    get_border_width()

    Border width for the bottom border.


    • int border_width_left

    Border width for the left border.


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


    • corner_detail

    Default

    8

    Setter

    set_corner_detail(value)

    Getter

    get_corner_detail()

    This sets the number 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 less than 10, 4 or 5 should be enough. For corner radii less 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.


    • 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()


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


    • draw_center

    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 to draw a border outside the control rect.

    Note: Unlike StyleBox.content_margin_bottom, does not affect the size of the clickable area for Controls. This can negatively impact usability if used wrong, as the user may try to click an area of the StyleBox that cannot actually receive clicks.


    • expand_margin_left

    Default

    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.

    Note: Unlike , expand_margin_left does not affect the size of the clickable area for s. This can negatively impact usability if used wrong, as the user may try to click an area of the StyleBox that cannot actually receive clicks.


    • 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 to draw a border outside the control rect.

    Note: Unlike StyleBox.content_margin_right, does not affect the size of the clickable area for Controls. This can negatively impact usability if used wrong, as the user may try to click an area of the StyleBox that cannot actually receive clicks.


    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 to draw a border outside the control rect.

    Note: Unlike StyleBox.content_margin_top, does not affect the size of the clickable area for Controls. This can negatively impact usability if used wrong, as the user may try to click an area of the StyleBox that cannot actually receive clicks.


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


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


    • skew

    If set to a non-zero value on either axis, skew distorts the StyleBox horizontally and/or vertically. This can be used for “futuristic”-style UIs. Positive values skew the StyleBox towards the right (X axis) and upwards (Y axis), while negative values skew the StyleBox towards the left (X axis) and downwards (Y axis).

    Note: To ensure text does not touch the StyleBox’s edges, consider increasing the ‘s content margin (see StyleBox.content_margin_bottom). It is preferable to increase the content margin instead of the expand margin (see ), as increasing the expand margin does not increase the size of the clickable area for Controls.

    • int get_border_width ( margin ) const

    Returns the given margin‘s border width. See Margin for possible values.


    • get_border_width_min ( ) const

    Returns the smallest border width out of all four borders.


    • int get_corner_radius ( corner ) const

    Returns the given corner‘s radius. See Corner for possible values.


    • get_expand_margin ( Margin margin ) const

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


    • void set_border_width ( Margin margin, width )

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


    • void set_border_width_all ( width )

    Sets the border width to width pixels for all margins.


    • void set_corner_radius ( Corner corner, radius )

    Sets the corner radius to radius pixels for the given corner. See Corner for possible values.


    • void set_corner_radius_all ( radius )

    Sets the corner radius to radius pixels for all corners.


    • void set_corner_radius_individual ( int radius_top_left, radius_top_right, int radius_bottom_right, 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, size )

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


    Sets the expand margin to size pixels for all margins.


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