2017-09-13 04:42:36 +08:00
<?xml version="1.0" encoding="UTF-8" ?>
2023-07-06 16:08:05 +08:00
<class name= "EditorResourcePreviewGenerator" inherits= "RefCounted" xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation= "../class.xsd" >
2017-09-13 04:42:36 +08:00
<brief_description >
Custom generator of previews.
</brief_description>
<description >
2019-06-22 07:04:47 +08:00
Custom code to generate previews. Please check [code]file_dialog/thumbnail_size[/code] in [EditorSettings] to find out the right size to do previews at.
2017-09-13 04:42:36 +08:00
</description>
<tutorials >
</tutorials>
<methods >
2021-08-22 09:52:44 +08:00
<method name= "_can_generate_small_preview" qualifiers= "virtual const" >
2021-07-30 21:28:05 +08:00
<return type= "bool" />
2019-05-20 16:45:12 +08:00
<description >
2021-05-16 05:48:59 +08:00
If this function returns [code]true[/code], the generator will call [method _generate] or [method _generate_from_path] for small previews as well.
2019-06-22 07:04:47 +08:00
By default, it returns [code]false[/code].
2019-05-20 16:45:12 +08:00
</description>
</method>
2021-08-22 09:52:44 +08:00
<method name= "_generate" qualifiers= "virtual const" >
2021-07-30 21:28:05 +08:00
<return type= "Texture2D" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "resource" type= "Resource" />
<param index= "1" name= "size" type= "Vector2i" />
2022-08-20 00:14:57 +08:00
<param index= "2" name= "metadata" type= "Dictionary" />
2017-09-13 04:42:36 +08:00
<description >
2018-09-21 15:33:05 +08:00
Generate a preview from a given resource with the specified size. This must always be implemented.
2024-08-29 11:34:46 +08:00
Returning [code]null[/code] is an OK way to fail and let another generator take care.
2018-09-21 15:33:05 +08:00
Care must be taken because this function is always called from a thread (not the main thread).
2023-08-22 16:13:42 +08:00
[param metadata] dictionary can be modified to store file-specific metadata that can be used in [method EditorResourceTooltipPlugin._make_tooltip_for_path] (like image size, sample length etc.).
2017-09-13 04:42:36 +08:00
</description>
</method>
2021-08-22 09:52:44 +08:00
<method name= "_generate_from_path" qualifiers= "virtual const" >
2021-07-30 21:28:05 +08:00
<return type= "Texture2D" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "path" type= "String" />
<param index= "1" name= "size" type= "Vector2i" />
2022-08-20 00:14:57 +08:00
<param index= "2" name= "metadata" type= "Dictionary" />
2017-09-13 04:42:36 +08:00
<description >
2021-05-16 05:48:59 +08:00
Generate a preview directly from a path with the specified size. Implementing this is optional, as default code will load and call [method _generate].
2024-08-29 11:34:46 +08:00
Returning [code]null[/code] is an OK way to fail and let another generator take care.
2018-09-21 15:33:05 +08:00
Care must be taken because this function is always called from a thread (not the main thread).
2023-08-22 16:13:42 +08:00
[param metadata] dictionary can be modified to store file-specific metadata that can be used in [method EditorResourceTooltipPlugin._make_tooltip_for_path] (like image size, sample length etc.).
2017-09-13 04:42:36 +08:00
</description>
</method>
2021-08-22 09:52:44 +08:00
<method name= "_generate_small_preview_automatically" qualifiers= "virtual const" >
2021-07-30 21:28:05 +08:00
<return type= "bool" />
2019-05-20 16:45:12 +08:00
<description >
2021-05-16 05:48:59 +08:00
If this function returns [code]true[/code], the generator will automatically generate the small previews from the normal preview texture generated by the methods [method _generate] or [method _generate_from_path].
2019-06-22 07:04:47 +08:00
By default, it returns [code]false[/code].
2019-05-20 16:45:12 +08:00
</description>
</method>
2021-08-22 09:52:44 +08:00
<method name= "_handles" qualifiers= "virtual const" >
2021-07-30 21:28:05 +08:00
<return type= "bool" />
2022-08-07 02:11:48 +08:00
<param index= "0" name= "type" type= "String" />
2017-09-13 04:42:36 +08:00
<description >
2022-08-13 00:07:53 +08:00
Returns [code]true[/code] if your generator supports the resource of type [param type].
2017-09-13 04:42:36 +08:00
</description>
</method>
</methods>
</class>