mirror of
https://github.com/godotengine/godot.git
synced 2025-12-07 22:00:10 +00:00
EditorResourcePreviewGenerator::request_draw_and_wait
This commit is contained in:
parent
7ed0b61676
commit
2863d8cb1e
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].
|
Returns [code]true[/code] if your generator supports the resource of type [param type].
|
||||||
</description>
|
</description>
|
||||||
</method>
|
</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>
|
</methods>
|
||||||
</class>
|
</class>
|
||||||
|
|
|
||||||
|
|
@ -87,6 +87,8 @@ void EditorResourcePreviewGenerator::_bind_methods() {
|
||||||
GDVIRTUAL_BIND(_generate_from_path, "path", "size", "metadata");
|
GDVIRTUAL_BIND(_generate_from_path, "path", "size", "metadata");
|
||||||
GDVIRTUAL_BIND(_generate_small_preview_automatically);
|
GDVIRTUAL_BIND(_generate_small_preview_automatically);
|
||||||
GDVIRTUAL_BIND(_can_generate_small_preview);
|
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) {
|
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() {
|
Variant EditorResourcePreviewGenerator::DrawRequester::_post_semaphore() {
|
||||||
semaphore.post();
|
semaphore.post();
|
||||||
return Variant(); // Needed because of how the callback is used.
|
return Variant(); // Needed because of how the callback is used.
|
||||||
|
|
|
||||||
|
|
@ -68,6 +68,7 @@ public:
|
||||||
|
|
||||||
virtual bool generate_small_preview_automatically() const;
|
virtual bool generate_small_preview_automatically() const;
|
||||||
virtual bool can_generate_small_preview() const;
|
virtual bool can_generate_small_preview() const;
|
||||||
|
void request_draw_and_wait(RID viewport) const;
|
||||||
};
|
};
|
||||||
|
|
||||||
class EditorResourcePreview : public Node {
|
class EditorResourcePreview : public Node {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue