aboutsummaryrefslogtreecommitdiff
path: root/modules/gdnative/register_types.cpp
diff options
context:
space:
mode:
authorJuan Linietsky2017-09-14 15:01:11 -0300
committerJuan Linietsky2017-09-14 15:02:51 -0300
commit35ed1eef2a6a00087799ded7e10ce94ed4d8b373 (patch)
tree3c0fd40140814fd14ec27193678bb5b73f3559b8 /modules/gdnative/register_types.cpp
parent57516a447395223e56e93e05994a5bf69ee3bcac (diff)
downloadgodot-35ed1eef2a6a00087799ded7e10ce94ed4d8b373.tar.gz
godot-35ed1eef2a6a00087799ded7e10ce94ed4d8b373.tar.zst
godot-35ed1eef2a6a00087799ded7e10ce94ed4d8b373.zip
Added a menu to enable/disabled GDNative singletons in project settings
Diffstat (limited to 'modules/gdnative/register_types.cpp')
-rw-r--r--modules/gdnative/register_types.cpp13
1 files changed, 10 insertions, 3 deletions
diff --git a/modules/gdnative/register_types.cpp b/modules/gdnative/register_types.cpp
index 559e9fa45..dc0da5021 100644
--- a/modules/gdnative/register_types.cpp
+++ b/modules/gdnative/register_types.cpp
@@ -43,7 +43,7 @@
#ifdef TOOLS_ENABLED
#include "editor/editor_node.h"
-
+#include "gd_native_library_editor.h"
// Class used to discover singleton gdnative files
void actual_discoverer_handler();
@@ -99,6 +99,7 @@ Set<String> get_gdnative_singletons(EditorFileSystemDirectory *p_dir) {
void actual_discoverer_handler() {
EditorFileSystemDirectory *dir = EditorFileSystem::get_singleton()->get_filesystem();
+
Set<String> file_paths = get_gdnative_singletons(dir);
Array files;
@@ -115,7 +116,13 @@ void actual_discoverer_handler() {
GDNativeSingletonDiscover *discoverer = NULL;
-void discoverer_callback() {
+static void editor_init_callback() {
+
+ GDNativeLibraryEditor *library_editor = memnew( GDNativeLibraryEditor );
+ library_editor->set_name(TTR("GDNative"));
+ ProjectSettingsEditor::get_singleton()->get_tabs()->add_child(library_editor);
+
+
discoverer = memnew(GDNativeSingletonDiscover);
EditorFileSystem::get_singleton()->connect("filesystem_changed", discoverer, "get_class");
}
@@ -184,7 +191,7 @@ void register_gdnative_types() {
#ifdef TOOLS_ENABLED
if (Engine::get_singleton()->is_editor_hint()) {
- EditorNode::add_init_callback(discoverer_callback);
+ EditorNode::add_init_callback(editor_init_callback);
}
#endif