1
0
mirror of https://github.com/godotengine/godot.git synced 2025-11-24 15:26:15 +00:00

Implement a quick script inheritance check

Optimizes, simplifies and fixes EditorResourcePicker (was not refreshing custom clases).
This commit is contained in:
Juan Linietsky
2023-01-19 16:47:01 +01:00
parent 14fdd28de9
commit 3dcf380161
5 changed files with 82 additions and 81 deletions

View File

@@ -56,10 +56,12 @@ class ScriptServer {
struct GlobalScriptClass {
StringName language;
String path;
String base;
StringName base;
};
static HashMap<StringName, GlobalScriptClass> global_classes;
static HashMap<StringName, Vector<StringName>> inheriters_cache;
static bool inheriters_cache_dirty;
public:
static ScriptEditRequestFunction edit_request_func;
@@ -87,6 +89,7 @@ public:
static StringName get_global_class_base(const String &p_class);
static StringName get_global_class_native_base(const String &p_class);
static void get_global_class_list(List<StringName> *r_global_classes);
static void get_inheriters_list(const StringName &p_base_type, List<StringName> *r_classes);
static void save_global_classes();
static void init_languages();