diff options
author | Rémi Verschelde <rverschelde@gmail.com> | 2024-01-29 13:15:57 +0100 |
---|---|---|
committer | Rémi Verschelde <rverschelde@gmail.com> | 2024-01-29 13:15:57 +0100 |
commit | 07d290e67e008e8c1d839271ad57a19db0f6be06 (patch) | |
tree | 8fe692ec839ad645067d87c3362c887fb26bc739 /core/extension/gdextension.cpp | |
parent | e2c5d2fada518c5785da3a8b3de0fff00611a639 (diff) | |
parent | f468e59efdd971712be5fb6972cd21891d867c85 (diff) | |
download | redot-engine-07d290e67e008e8c1d839271ad57a19db0f6be06.tar.gz |
Merge pull request #83747 from Riteo/gdext-doc
GDExtension: Add an interface for loading extra documentation
Diffstat (limited to 'core/extension/gdextension.cpp')
-rw-r--r-- | core/extension/gdextension.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/core/extension/gdextension.cpp b/core/extension/gdextension.cpp index ce01531b5c..2904e54b22 100644 --- a/core/extension/gdextension.cpp +++ b/core/extension/gdextension.cpp @@ -653,6 +653,8 @@ void GDExtension::_unregister_extension_class(GDExtensionClassLibraryPtr p_libra if (!ext->is_reloading) { self->extension_classes.erase(class_name); } + + GDExtensionEditorHelp::remove_class(class_name); #else self->extension_classes.erase(class_name); #endif @@ -1196,4 +1198,17 @@ void GDExtensionEditorPlugins::remove_extension_class(const StringName &p_class_ extension_classes.erase(p_class_name); } } + +GDExtensionEditorHelp::EditorHelpLoadXmlBufferFunc GDExtensionEditorHelp::editor_help_load_xml_buffer = nullptr; +GDExtensionEditorHelp::EditorHelpRemoveClassFunc GDExtensionEditorHelp::editor_help_remove_class = nullptr; + +void GDExtensionEditorHelp::load_xml_buffer(const uint8_t *p_buffer, int p_size) { + ERR_FAIL_NULL(editor_help_load_xml_buffer); + editor_help_load_xml_buffer(p_buffer, p_size); +} + +void GDExtensionEditorHelp::remove_class(const String &p_class) { + ERR_FAIL_NULL(editor_help_remove_class); + editor_help_remove_class(p_class); +} #endif // TOOLS_ENABLED |