2022-03-15 13:29:32 +01:00
<?xml version="1.0" encoding="UTF-8" ?>
2023-08-26 22:41:21 +02:00
<class name= "Theme" inherits= "Resource" version= "4.1" >
2022-03-15 13:29:32 +01:00
<brief_description >
Theme for controls.
</brief_description>
<description >
A theme for skinning controls. Controls can be skinned individually, but for complex applications, it's more practical to just create a global theme that defines everything. This theme can be applied to any [Control]; the Control and its children will automatically use it.
Theme resources can alternatively be loaded by writing them in a [code].theme[/code] file, see the documentation for more information.
</description>
<tutorials >
2023-08-29 22:33:15 +02:00
<link > $DOCS_URL/tutorials/ui/gui_skinning.md</link>
2022-03-15 13:29:32 +01:00
</tutorials>
<methods >
2022-07-25 23:46:08 +02:00
<method name= "add_type" >
<return type= "void" />
2022-08-21 00:40:49 +02:00
<argument index= "0" name= "theme_type" type= "StringName" />
2022-07-25 23:46:08 +02:00
<description >
</description>
</method>
2022-03-15 13:29:32 +01:00
<method name= "clear" >
<return type= "void" />
<description >
Clears all values on the theme.
</description>
</method>
<method name= "clear_color" >
<return type= "void" />
2022-03-24 01:22:45 +01:00
<argument index= "0" name= "name" type= "StringName" />
<argument index= "1" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<description >
</description>
</method>
<method name= "clear_constant" >
<return type= "void" />
2022-03-24 01:22:45 +01:00
<argument index= "0" name= "name" type= "StringName" />
<argument index= "1" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<description >
</description>
</method>
<method name= "clear_font" >
<return type= "void" />
2022-03-24 01:22:45 +01:00
<argument index= "0" name= "name" type= "StringName" />
<argument index= "1" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<description >
</description>
</method>
<method name= "clear_icon" >
<return type= "void" />
2022-03-24 01:22:45 +01:00
<argument index= "0" name= "name" type= "StringName" />
<argument index= "1" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<description >
</description>
</method>
<method name= "clear_stylebox" >
<return type= "void" />
2022-03-24 01:22:45 +01:00
<argument index= "0" name= "name" type= "StringName" />
<argument index= "1" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<description >
</description>
</method>
<method name= "clear_theme_item" >
<return type= "void" />
<argument index= "0" name= "data_type" type= "int" enum= "Theme.DataType" />
2022-03-24 01:22:45 +01:00
<argument index= "1" name= "name" type= "StringName" />
<argument index= "2" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<description >
</description>
</method>
<method name= "clear_type_variation" >
<return type= "void" />
2022-03-24 01:22:45 +01:00
<argument index= "0" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<description >
</description>
</method>
<method name= "copy_default_theme" >
<return type= "void" />
<description >
Sets the theme's values to a copy of the default theme values.
</description>
</method>
<method name= "copy_theme" >
<return type= "void" />
<argument index= "0" name= "other" type= "Theme" />
<description >
Sets the theme's values to a copy of a given theme.
</description>
</method>
<method name= "get_color" qualifiers= "const" >
<return type= "Color" />
2022-03-24 01:22:45 +01:00
<argument index= "0" name= "name" type= "StringName" />
<argument index= "1" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<description >
</description>
</method>
<method name= "get_color_list" qualifiers= "const" >
<return type= "PoolStringArray" />
<argument index= "0" name= "theme_type" type= "String" />
<description >
2022-09-16 23:55:40 +02:00
Returns all the [Color]s as a [PoolStringArray] filled with each [Color]'s name, for use in [method get_color], if the theme has [code]theme_type[/code].
2022-03-15 13:29:32 +01:00
</description>
</method>
<method name= "get_color_types" qualifiers= "const" >
<return type= "PoolStringArray" />
<description >
Returns all the [Color] types as a [PoolStringArray] filled with unique type names, for use in [method get_color] and/or [method get_color_list].
</description>
</method>
<method name= "get_constant" qualifiers= "const" >
<return type= "int" />
2022-03-24 01:22:45 +01:00
<argument index= "0" name= "name" type= "StringName" />
<argument index= "1" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<description >
</description>
</method>
<method name= "get_constant_list" qualifiers= "const" >
<return type= "PoolStringArray" />
<argument index= "0" name= "theme_type" type= "String" />
<description >
2022-09-16 23:55:40 +02:00
Returns all the constants as a [PoolStringArray] filled with each constant's name, for use in [method get_constant], if the theme has [code]theme_type[/code].
2022-03-15 13:29:32 +01:00
</description>
</method>
<method name= "get_constant_types" qualifiers= "const" >
<return type= "PoolStringArray" />
<description >
Returns all the constant types as a [PoolStringArray] filled with unique type names, for use in [method get_constant] and/or [method get_constant_list].
</description>
</method>
<method name= "get_font" qualifiers= "const" >
<return type= "Font" />
2022-03-24 01:22:45 +01:00
<argument index= "0" name= "name" type= "StringName" />
<argument index= "1" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<description >
</description>
</method>
<method name= "get_font_list" qualifiers= "const" >
<return type= "PoolStringArray" />
<argument index= "0" name= "theme_type" type= "String" />
<description >
2022-09-16 23:55:40 +02:00
Returns all the [Font]s as a [PoolStringArray] filled with each [Font]'s name, for use in [method get_font], if the theme has [code]theme_type[/code].
2022-03-15 13:29:32 +01:00
</description>
</method>
<method name= "get_font_types" qualifiers= "const" >
<return type= "PoolStringArray" />
<description >
Returns all the [Font] types as a [PoolStringArray] filled with unique type names, for use in [method get_font] and/or [method get_font_list].
</description>
</method>
<method name= "get_icon" qualifiers= "const" >
<return type= "Texture" />
2022-03-24 01:22:45 +01:00
<argument index= "0" name= "name" type= "StringName" />
<argument index= "1" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<description >
</description>
</method>
<method name= "get_icon_list" qualifiers= "const" >
<return type= "PoolStringArray" />
<argument index= "0" name= "theme_type" type= "String" />
<description >
2022-09-16 23:55:40 +02:00
Returns all the icons as a [PoolStringArray] filled with each [Texture]'s name, for use in [method get_icon], if the theme has [code]theme_type[/code].
2022-03-15 13:29:32 +01:00
</description>
</method>
<method name= "get_icon_types" qualifiers= "const" >
<return type= "PoolStringArray" />
<description >
Returns all the icon types as a [PoolStringArray] filled with unique type names, for use in [method get_icon] and/or [method get_icon_list].
</description>
</method>
<method name= "get_stylebox" qualifiers= "const" >
<return type= "StyleBox" />
2022-03-24 01:22:45 +01:00
<argument index= "0" name= "name" type= "StringName" />
<argument index= "1" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<description >
</description>
</method>
<method name= "get_stylebox_list" qualifiers= "const" >
<return type= "PoolStringArray" />
<argument index= "0" name= "theme_type" type= "String" />
<description >
2022-09-16 23:55:40 +02:00
Returns all the [StyleBox]s as a [PoolStringArray] filled with each [StyleBox]'s name, for use in [method get_stylebox], if the theme has [code]theme_type[/code].
Valid [code]theme_type[/code]s may be found using [method get_stylebox_types].
2022-03-15 13:29:32 +01:00
</description>
</method>
<method name= "get_stylebox_types" qualifiers= "const" >
<return type= "PoolStringArray" />
<description >
Returns all the [StyleBox] types as a [PoolStringArray] filled with unique type names, for use in [method get_stylebox] and/or [method get_stylebox_list].
</description>
</method>
<method name= "get_theme_item" qualifiers= "const" >
<return type= "Variant" />
<argument index= "0" name= "data_type" type= "int" enum= "Theme.DataType" />
2022-03-24 01:22:45 +01:00
<argument index= "1" name= "name" type= "StringName" />
<argument index= "2" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<description >
</description>
</method>
<method name= "get_theme_item_list" qualifiers= "const" >
<return type= "PoolStringArray" />
<argument index= "0" name= "data_type" type= "int" enum= "Theme.DataType" />
<argument index= "1" name= "theme_type" type= "String" />
<description >
2022-09-16 23:55:40 +02:00
Returns all the theme items of [code]data_type[/code] as a [PoolStringArray] filled with each theme items's name, for use in [method get_theme_item] or a data type specific method, if the theme has [code]theme_type[/code].
Valid [code]theme_type[/code]s may be found using [method get_theme_item_types] or a data type specific method.
2022-03-15 13:29:32 +01:00
</description>
</method>
<method name= "get_theme_item_types" qualifiers= "const" >
<return type= "PoolStringArray" />
<argument index= "0" name= "data_type" type= "int" enum= "Theme.DataType" />
<description >
Returns all the theme items of [code]data_type[/code] types as a [PoolStringArray] filled with unique type names, for use in [method get_theme_item], [method get_theme_item_list] or data type specific methods.
</description>
</method>
<method name= "get_type_list" qualifiers= "const" >
<return type= "PoolStringArray" />
<argument index= "0" name= "theme_type" type= "String" />
<description >
Returns all the theme types as a [PoolStringArray] filled with unique type names, for use in other [code]get_*[/code] functions of this theme.
2022-09-16 23:55:40 +02:00
[b]Note:[/b] [code]theme_type[/code] has no effect and will be removed in future version.
2022-03-15 13:29:32 +01:00
</description>
</method>
<method name= "get_type_variation_base" qualifiers= "const" >
2022-03-24 01:22:45 +01:00
<return type= "StringName" />
<argument index= "0" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<description >
</description>
</method>
<method name= "get_type_variation_list" qualifiers= "const" >
<return type= "PoolStringArray" />
2022-03-24 01:22:45 +01:00
<argument index= "0" name= "base_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<description >
</description>
</method>
<method name= "has_color" qualifiers= "const" >
<return type= "bool" />
2022-03-24 01:22:45 +01:00
<argument index= "0" name= "name" type= "StringName" />
<argument index= "1" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<description >
</description>
</method>
<method name= "has_constant" qualifiers= "const" >
<return type= "bool" />
2022-03-24 01:22:45 +01:00
<argument index= "0" name= "name" type= "StringName" />
<argument index= "1" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<description >
</description>
</method>
<method name= "has_default_font" qualifiers= "const" >
<return type= "bool" />
<description >
Returns [code]true[/code] if this theme has a valid [member default_font] value.
</description>
</method>
<method name= "has_font" qualifiers= "const" >
<return type= "bool" />
2022-03-24 01:22:45 +01:00
<argument index= "0" name= "name" type= "StringName" />
<argument index= "1" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<description >
</description>
</method>
<method name= "has_icon" qualifiers= "const" >
<return type= "bool" />
2022-03-24 01:22:45 +01:00
<argument index= "0" name= "name" type= "StringName" />
<argument index= "1" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<description >
</description>
</method>
<method name= "has_stylebox" qualifiers= "const" >
<return type= "bool" />
2022-03-24 01:22:45 +01:00
<argument index= "0" name= "name" type= "StringName" />
<argument index= "1" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<description >
</description>
</method>
<method name= "has_theme_item" qualifiers= "const" >
<return type= "bool" />
<argument index= "0" name= "data_type" type= "int" enum= "Theme.DataType" />
2022-03-24 01:22:45 +01:00
<argument index= "1" name= "name" type= "StringName" />
<argument index= "2" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<description >
</description>
</method>
<method name= "is_type_variation" qualifiers= "const" >
<return type= "bool" />
2022-03-24 01:22:45 +01:00
<argument index= "0" name= "theme_type" type= "StringName" />
<argument index= "1" name= "base_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<description >
</description>
</method>
<method name= "merge_with" >
<return type= "void" />
<argument index= "0" name= "other" type= "Theme" />
<description >
Adds missing and overrides existing definitions with values from the [code]other[/code] [Theme].
[b]Note:[/b] This modifies the current theme. If you want to merge two themes together without modifying either one, create a new empty theme and merge the other two into it one after another.
</description>
</method>
2022-07-25 23:46:08 +02:00
<method name= "remove_type" >
<return type= "void" />
2022-08-21 00:40:49 +02:00
<argument index= "0" name= "theme_type" type= "StringName" />
2022-07-25 23:46:08 +02:00
<description >
</description>
</method>
2022-03-15 13:29:32 +01:00
<method name= "rename_color" >
<return type= "void" />
2022-03-24 01:22:45 +01:00
<argument index= "0" name= "old_name" type= "StringName" />
<argument index= "1" name= "name" type= "StringName" />
<argument index= "2" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<description >
</description>
</method>
<method name= "rename_constant" >
<return type= "void" />
2022-03-24 01:22:45 +01:00
<argument index= "0" name= "old_name" type= "StringName" />
<argument index= "1" name= "name" type= "StringName" />
<argument index= "2" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<description >
</description>
</method>
<method name= "rename_font" >
<return type= "void" />
2022-03-24 01:22:45 +01:00
<argument index= "0" name= "old_name" type= "StringName" />
<argument index= "1" name= "name" type= "StringName" />
<argument index= "2" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<description >
</description>
</method>
<method name= "rename_icon" >
<return type= "void" />
2022-03-24 01:22:45 +01:00
<argument index= "0" name= "old_name" type= "StringName" />
<argument index= "1" name= "name" type= "StringName" />
<argument index= "2" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<description >
</description>
</method>
<method name= "rename_stylebox" >
<return type= "void" />
2022-03-24 01:22:45 +01:00
<argument index= "0" name= "old_name" type= "StringName" />
<argument index= "1" name= "name" type= "StringName" />
<argument index= "2" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<description >
</description>
</method>
<method name= "rename_theme_item" >
<return type= "void" />
<argument index= "0" name= "data_type" type= "int" enum= "Theme.DataType" />
2022-03-24 01:22:45 +01:00
<argument index= "1" name= "old_name" type= "StringName" />
<argument index= "2" name= "name" type= "StringName" />
<argument index= "3" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<description >
</description>
</method>
<method name= "set_color" >
<return type= "void" />
2022-03-24 01:22:45 +01:00
<argument index= "0" name= "name" type= "StringName" />
<argument index= "1" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<argument index= "2" name= "color" type= "Color" />
<description >
</description>
</method>
<method name= "set_constant" >
<return type= "void" />
2022-03-24 01:22:45 +01:00
<argument index= "0" name= "name" type= "StringName" />
<argument index= "1" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<argument index= "2" name= "constant" type= "int" />
<description >
</description>
</method>
<method name= "set_font" >
<return type= "void" />
2022-03-24 01:22:45 +01:00
<argument index= "0" name= "name" type= "StringName" />
<argument index= "1" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<argument index= "2" name= "font" type= "Font" />
<description >
</description>
</method>
<method name= "set_icon" >
<return type= "void" />
2022-03-24 01:22:45 +01:00
<argument index= "0" name= "name" type= "StringName" />
<argument index= "1" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<argument index= "2" name= "texture" type= "Texture" />
<description >
</description>
</method>
<method name= "set_stylebox" >
<return type= "void" />
2022-03-24 01:22:45 +01:00
<argument index= "0" name= "name" type= "StringName" />
<argument index= "1" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<argument index= "2" name= "texture" type= "StyleBox" />
<description >
</description>
</method>
<method name= "set_theme_item" >
<return type= "void" />
<argument index= "0" name= "data_type" type= "int" enum= "Theme.DataType" />
2022-03-24 01:22:45 +01:00
<argument index= "1" name= "name" type= "StringName" />
<argument index= "2" name= "theme_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<argument index= "3" name= "value" type= "Variant" />
<description >
</description>
</method>
<method name= "set_type_variation" >
<return type= "void" />
2022-03-24 01:22:45 +01:00
<argument index= "0" name= "theme_type" type= "StringName" />
<argument index= "1" name= "base_type" type= "StringName" />
2022-03-15 13:29:32 +01:00
<description >
</description>
</method>
</methods>
<members >
<member name= "default_font" type= "Font" setter= "set_default_font" getter= "get_default_font" >
The default font of this [Theme] resource. Used as a fallback value for font items defined in this theme, but having invalid values. If this value is also invalid, the global default value is used.
Use [method has_default_font] to check if this value is valid.
</member>
</members>
<constants >
<constant name= "DATA_TYPE_COLOR" value= "0" enum= "DataType" >
Theme's [Color] item type.
</constant>
<constant name= "DATA_TYPE_CONSTANT" value= "1" enum= "DataType" >
Theme's constant item type.
</constant>
<constant name= "DATA_TYPE_FONT" value= "2" enum= "DataType" >
Theme's [Font] item type.
</constant>
<constant name= "DATA_TYPE_ICON" value= "3" enum= "DataType" >
Theme's icon [Texture] item type.
</constant>
<constant name= "DATA_TYPE_STYLEBOX" value= "4" enum= "DataType" >
Theme's [StyleBox] item type.
</constant>
<constant name= "DATA_TYPE_MAX" value= "5" enum= "DataType" >
Maximum value for the DataType enum.
</constant>
</constants>
</class>