mirror of
https://github.com/godotengine/godot.git
synced 2025-12-07 22:00:10 +00:00
Merge pull request #96897 from basicer/request-draw-and-wait
Add `EditorResourcePreviewGenerator::request_draw_and_wait`
This commit is contained in:
commit
dcd071bc4b
3 changed files with 15 additions and 0 deletions
|
|
@ -54,5 +54,12 @@
|
|||
Returns [code]true[/code] if your generator supports the resource of type [param type].
|
||||
</description>
|
||||
</method>
|
||||
<method name="request_draw_and_wait" qualifiers="const">
|
||||
<return type="void" />
|
||||
<param index="0" name="viewport" type="RID" />
|
||||
<description>
|
||||
Call from within [method _generate] to request the rendering server draw to the [param viewport].
|
||||
</description>
|
||||
</method>
|
||||
</methods>
|
||||
</class>
|
||||
|
|
|
|||
|
|
@ -87,6 +87,8 @@ void EditorResourcePreviewGenerator::_bind_methods() {
|
|||
GDVIRTUAL_BIND(_generate_from_path, "path", "size", "metadata");
|
||||
GDVIRTUAL_BIND(_generate_small_preview_automatically);
|
||||
GDVIRTUAL_BIND(_can_generate_small_preview);
|
||||
|
||||
ClassDB::bind_method(D_METHOD("request_draw_and_wait", "viewport"), &EditorResourcePreviewGenerator::request_draw_and_wait);
|
||||
}
|
||||
|
||||
void EditorResourcePreviewGenerator::DrawRequester::request_and_wait(RID p_viewport) {
|
||||
|
|
@ -118,6 +120,11 @@ void EditorResourcePreviewGenerator::DrawRequester::abort() {
|
|||
}
|
||||
}
|
||||
|
||||
void EditorResourcePreviewGenerator::request_draw_and_wait(RID viewport) const {
|
||||
DrawRequester draw_requester;
|
||||
draw_requester.request_and_wait(viewport);
|
||||
}
|
||||
|
||||
Variant EditorResourcePreviewGenerator::DrawRequester::_post_semaphore() {
|
||||
semaphore.post();
|
||||
return Variant(); // Needed because of how the callback is used.
|
||||
|
|
|
|||
|
|
@ -68,6 +68,7 @@ public:
|
|||
|
||||
virtual bool generate_small_preview_automatically() const;
|
||||
virtual bool can_generate_small_preview() const;
|
||||
void request_draw_and_wait(RID viewport) const;
|
||||
};
|
||||
|
||||
class EditorResourcePreview : public Node {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue