123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492 |
- <?xml version="1.0" encoding="UTF-8" ?>
- <class name="Theme" inherits="Resource" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
- <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>
- <link>$DOCS_URL/tutorials/ui/gui_skinning.html</link>
- </tutorials>
- <methods>
- <method name="add_type">
- <return type="void" />
- <argument index="0" name="theme_type" type="String" />
- <description>
- Adds an empty theme type for every valid data type.
- [b]Note:[/b] Empty types are not saved with the theme. This method only exists to perform in-memory changes to the resource. Use available [code]set_*[/code] methods to add theme items.
- </description>
- </method>
- <method name="clear">
- <return type="void" />
- <description>
- Clears all values on the theme.
- </description>
- </method>
- <method name="clear_color">
- <return type="void" />
- <argument index="0" name="name" type="String" />
- <argument index="1" name="theme_type" type="String" />
- <description>
- Clears the [Color] at [code]name[/code] if the theme has [code]theme_type[/code].
- </description>
- </method>
- <method name="clear_constant">
- <return type="void" />
- <argument index="0" name="name" type="String" />
- <argument index="1" name="theme_type" type="String" />
- <description>
- Clears the constant at [code]name[/code] if the theme has [code]theme_type[/code].
- </description>
- </method>
- <method name="clear_font">
- <return type="void" />
- <argument index="0" name="name" type="String" />
- <argument index="1" name="theme_type" type="String" />
- <description>
- Clears the [Font] at [code]name[/code] if the theme has [code]theme_type[/code].
- </description>
- </method>
- <method name="clear_icon">
- <return type="void" />
- <argument index="0" name="name" type="String" />
- <argument index="1" name="theme_type" type="String" />
- <description>
- Clears the icon at [code]name[/code] if the theme has [code]theme_type[/code].
- </description>
- </method>
- <method name="clear_stylebox">
- <return type="void" />
- <argument index="0" name="name" type="String" />
- <argument index="1" name="theme_type" type="String" />
- <description>
- Clears [StyleBox] at [code]name[/code] if the theme has [code]theme_type[/code].
- </description>
- </method>
- <method name="clear_theme_item">
- <return type="void" />
- <argument index="0" name="data_type" type="int" enum="Theme.DataType" />
- <argument index="1" name="name" type="String" />
- <argument index="2" name="theme_type" type="String" />
- <description>
- Clears the theme item of [code]data_type[/code] at [code]name[/code] if the theme has [code]theme_type[/code].
- </description>
- </method>
- <method name="clear_type_variation">
- <return type="void" />
- <argument index="0" name="theme_type" type="String" />
- <description>
- Unmarks [code]theme_type[/code] as being a variation of another theme type. See [method set_type_variation].
- </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" />
- <argument index="0" name="name" type="String" />
- <argument index="1" name="theme_type" type="String" />
- <description>
- Returns the [Color] at [code]name[/code] if the theme has [code]theme_type[/code].
- </description>
- </method>
- <method name="get_color_list" qualifiers="const">
- <return type="PoolStringArray" />
- <argument index="0" name="theme_type" type="String" />
- <description>
- 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].
- </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" />
- <argument index="0" name="name" type="String" />
- <argument index="1" name="theme_type" type="String" />
- <description>
- Returns the constant at [code]name[/code] if the theme has [code]theme_type[/code].
- </description>
- </method>
- <method name="get_constant_list" qualifiers="const">
- <return type="PoolStringArray" />
- <argument index="0" name="theme_type" type="String" />
- <description>
- 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].
- </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" />
- <argument index="0" name="name" type="String" />
- <argument index="1" name="theme_type" type="String" />
- <description>
- Returns the [Font] at [code]name[/code] if the theme has [code]theme_type[/code]. If such item does not exist and [member default_font] is set on the theme, the default font will be returned.
- </description>
- </method>
- <method name="get_font_list" qualifiers="const">
- <return type="PoolStringArray" />
- <argument index="0" name="theme_type" type="String" />
- <description>
- 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].
- </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" />
- <argument index="0" name="name" type="String" />
- <argument index="1" name="theme_type" type="String" />
- <description>
- Returns the icon [Texture] at [code]name[/code] if the theme has [code]theme_type[/code].
- </description>
- </method>
- <method name="get_icon_list" qualifiers="const">
- <return type="PoolStringArray" />
- <argument index="0" name="theme_type" type="String" />
- <description>
- 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].
- </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" />
- <argument index="0" name="name" type="String" />
- <argument index="1" name="theme_type" type="String" />
- <description>
- Returns the [StyleBox] at [code]name[/code] if the theme has [code]theme_type[/code].
- Valid [code]name[/code]s may be found using [method get_stylebox_list]. Valid [code]theme_type[/code]s may be found using [method get_stylebox_types].
- </description>
- </method>
- <method name="get_stylebox_list" qualifiers="const">
- <return type="PoolStringArray" />
- <argument index="0" name="theme_type" type="String" />
- <description>
- 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].
- </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" />
- <argument index="1" name="name" type="String" />
- <argument index="2" name="theme_type" type="String" />
- <description>
- Returns the theme item of [code]data_type[/code] at [code]name[/code] if the theme has [code]theme_type[/code].
- Valid [code]name[/code]s may be found using [method get_theme_item_list] or a data type specific method. Valid [code]theme_type[/code]s may be found using [method get_theme_item_types] or a data type specific method.
- </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>
- 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.
- </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.
- [b]Note:[/b] [code]theme_type[/code] has no effect and will be removed in future version.
- </description>
- </method>
- <method name="get_type_variation_base" qualifiers="const">
- <return type="String" />
- <argument index="0" name="theme_type" type="String" />
- <description>
- Returns the name of the base theme type if [code]theme_type[/code] is a valid variation type. Returns an empty string otherwise.
- </description>
- </method>
- <method name="get_type_variation_list" qualifiers="const">
- <return type="PoolStringArray" />
- <argument index="0" name="base_type" type="String" />
- <description>
- Returns a list of all type variations for the given [code]base_type[/code].
- </description>
- </method>
- <method name="has_color" qualifiers="const">
- <return type="bool" />
- <argument index="0" name="name" type="String" />
- <argument index="1" name="theme_type" type="String" />
- <description>
- Returns [code]true[/code] if [Color] with [code]name[/code] is in [code]theme_type[/code].
- Returns [code]false[/code] if the theme does not have [code]theme_type[/code].
- </description>
- </method>
- <method name="has_constant" qualifiers="const">
- <return type="bool" />
- <argument index="0" name="name" type="String" />
- <argument index="1" name="theme_type" type="String" />
- <description>
- Returns [code]true[/code] if constant with [code]name[/code] is in [code]theme_type[/code].
- Returns [code]false[/code] if the theme does not have [code]theme_type[/code].
- </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" />
- <argument index="0" name="name" type="String" />
- <argument index="1" name="theme_type" type="String" />
- <description>
- Returns [code]true[/code] if [Font] with [code]name[/code] is in [code]theme_type[/code].
- Returns [code]false[/code] if the theme does not have [code]theme_type[/code].
- </description>
- </method>
- <method name="has_icon" qualifiers="const">
- <return type="bool" />
- <argument index="0" name="name" type="String" />
- <argument index="1" name="theme_type" type="String" />
- <description>
- Returns [code]true[/code] if icon [Texture] with [code]name[/code] is in [code]theme_type[/code].
- Returns [code]false[/code] if the theme does not have [code]theme_type[/code].
- </description>
- </method>
- <method name="has_stylebox" qualifiers="const">
- <return type="bool" />
- <argument index="0" name="name" type="String" />
- <argument index="1" name="theme_type" type="String" />
- <description>
- Returns [code]true[/code] if [StyleBox] with [code]name[/code] is in [code]theme_type[/code].
- Returns [code]false[/code] if the theme does not have [code]theme_type[/code].
- </description>
- </method>
- <method name="has_theme_item" qualifiers="const">
- <return type="bool" />
- <argument index="0" name="data_type" type="int" enum="Theme.DataType" />
- <argument index="1" name="name" type="String" />
- <argument index="2" name="theme_type" type="String" />
- <description>
- Returns [code]true[/code] if a theme item of [code]data_type[/code] with [code]name[/code] is in [code]theme_type[/code].
- Returns [code]false[/code] if the theme does not have [code]theme_type[/code].
- </description>
- </method>
- <method name="is_type_variation" qualifiers="const">
- <return type="bool" />
- <argument index="0" name="theme_type" type="String" />
- <argument index="1" name="base_type" type="String" />
- <description>
- Returns [code]true[/code] if [code]theme_type[/code] is marked as a variation of [code]base_type[/code].
- </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>
- <method name="remove_type">
- <return type="void" />
- <argument index="0" name="theme_type" type="String" />
- <description>
- Removes the theme type, gracefully discarding defined theme items. If the type is a variation, this information is also erased. If the type is a base for type variations, those variations lose their base.
- </description>
- </method>
- <method name="rename_color">
- <return type="void" />
- <argument index="0" name="old_name" type="String" />
- <argument index="1" name="name" type="String" />
- <argument index="2" name="theme_type" type="String" />
- <description>
- Renames the [Color] at [code]old_name[/code] to [code]name[/code] if the theme has [code]theme_type[/code]. If [code]name[/code] is already taken, this method fails.
- </description>
- </method>
- <method name="rename_constant">
- <return type="void" />
- <argument index="0" name="old_name" type="String" />
- <argument index="1" name="name" type="String" />
- <argument index="2" name="theme_type" type="String" />
- <description>
- Renames the constant at [code]old_name[/code] to [code]name[/code] if the theme has [code]theme_type[/code]. If [code]name[/code] is already taken, this method fails.
- </description>
- </method>
- <method name="rename_font">
- <return type="void" />
- <argument index="0" name="old_name" type="String" />
- <argument index="1" name="name" type="String" />
- <argument index="2" name="theme_type" type="String" />
- <description>
- Renames the [Font] at [code]old_name[/code] to [code]name[/code] if the theme has [code]theme_type[/code]. If [code]name[/code] is already taken, this method fails.
- </description>
- </method>
- <method name="rename_icon">
- <return type="void" />
- <argument index="0" name="old_name" type="String" />
- <argument index="1" name="name" type="String" />
- <argument index="2" name="theme_type" type="String" />
- <description>
- Renames the icon at [code]old_name[/code] to [code]name[/code] if the theme has [code]theme_type[/code]. If [code]name[/code] is already taken, this method fails.
- </description>
- </method>
- <method name="rename_stylebox">
- <return type="void" />
- <argument index="0" name="old_name" type="String" />
- <argument index="1" name="name" type="String" />
- <argument index="2" name="theme_type" type="String" />
- <description>
- Renames [StyleBox] at [code]old_name[/code] to [code]name[/code] if the theme has [code]theme_type[/code]. If [code]name[/code] is already taken, this method fails.
- </description>
- </method>
- <method name="rename_theme_item">
- <return type="void" />
- <argument index="0" name="data_type" type="int" enum="Theme.DataType" />
- <argument index="1" name="old_name" type="String" />
- <argument index="2" name="name" type="String" />
- <argument index="3" name="theme_type" type="String" />
- <description>
- Renames the theme item of [code]data_type[/code] at [code]old_name[/code] to [code]name[/code] if the theme has [code]theme_type[/code]. If [code]name[/code] is already taken, this method fails.
- </description>
- </method>
- <method name="set_color">
- <return type="void" />
- <argument index="0" name="name" type="String" />
- <argument index="1" name="theme_type" type="String" />
- <argument index="2" name="color" type="Color" />
- <description>
- Sets the theme's [Color] to [code]color[/code] at [code]name[/code] in [code]theme_type[/code].
- Creates [code]theme_type[/code] if the theme does not have it.
- </description>
- </method>
- <method name="set_constant">
- <return type="void" />
- <argument index="0" name="name" type="String" />
- <argument index="1" name="theme_type" type="String" />
- <argument index="2" name="constant" type="int" />
- <description>
- Sets the theme's constant to [code]constant[/code] at [code]name[/code] in [code]theme_type[/code].
- Creates [code]theme_type[/code] if the theme does not have it.
- </description>
- </method>
- <method name="set_font">
- <return type="void" />
- <argument index="0" name="name" type="String" />
- <argument index="1" name="theme_type" type="String" />
- <argument index="2" name="font" type="Font" />
- <description>
- Sets the theme's [Font] to [code]font[/code] at [code]name[/code] in [code]theme_type[/code].
- Creates [code]theme_type[/code] if the theme does not have it.
- </description>
- </method>
- <method name="set_icon">
- <return type="void" />
- <argument index="0" name="name" type="String" />
- <argument index="1" name="theme_type" type="String" />
- <argument index="2" name="texture" type="Texture" />
- <description>
- Sets the theme's icon [Texture] to [code]texture[/code] at [code]name[/code] in [code]theme_type[/code].
- Creates [code]theme_type[/code] if the theme does not have it.
- </description>
- </method>
- <method name="set_stylebox">
- <return type="void" />
- <argument index="0" name="name" type="String" />
- <argument index="1" name="theme_type" type="String" />
- <argument index="2" name="texture" type="StyleBox" />
- <description>
- Sets theme's [StyleBox] to [code]stylebox[/code] at [code]name[/code] in [code]theme_type[/code].
- Creates [code]theme_type[/code] if the theme does not have it.
- </description>
- </method>
- <method name="set_theme_item">
- <return type="void" />
- <argument index="0" name="data_type" type="int" enum="Theme.DataType" />
- <argument index="1" name="name" type="String" />
- <argument index="2" name="theme_type" type="String" />
- <argument index="3" name="value" type="Variant" />
- <description>
- Sets the theme item of [code]data_type[/code] to [code]value[/code] at [code]name[/code] in [code]theme_type[/code].
- Does nothing if the [code]value[/code] type does not match [code]data_type[/code].
- Creates [code]theme_type[/code] if the theme does not have it.
- </description>
- </method>
- <method name="set_type_variation">
- <return type="void" />
- <argument index="0" name="theme_type" type="String" />
- <argument index="1" name="base_type" type="String" />
- <description>
- Marks [code]theme_type[/code] as a variation of [code]base_type[/code].
- This adds [code]theme_type[/code] as a suggested option for [member Control.theme_type_variation] on a [Control] that is of the [code]base_type[/code] class.
- Variations can also be nested, i.e. [code]base_type[/code] can be another variation. If a chain of variations ends with a [code]base_type[/code] matching the class of the [Control], the whole chain is going to be suggested as options.
- [b]Note:[/b] Suggestions only show up if this theme resource is set as the project default theme. See [member ProjectSettings.gui/theme/custom].
- </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>
|