mirror of
https://github.com/godotengine/godot.git
synced 2024-12-01 16:42:26 +00:00
Improve sorting of enum autocompletion
(cherry picked from commit 76fd7ec394
)
This commit is contained in:
parent
c4fb3bc342
commit
571cb746f9
@ -1210,6 +1210,8 @@ static void _find_identifiers_in_base(const GDScriptCompletionIdentifier &p_base
|
||||
return;
|
||||
}
|
||||
|
||||
int location = ScriptLanguage::LOCATION_OTHER;
|
||||
|
||||
if (!p_only_functions) {
|
||||
List<PropertyInfo> members;
|
||||
if (p_base.value.get_type() != Variant::NIL) {
|
||||
@ -1223,7 +1225,11 @@ static void _find_identifiers_in_base(const GDScriptCompletionIdentifier &p_base
|
||||
continue;
|
||||
}
|
||||
if (!String(E.name).contains("/")) {
|
||||
ScriptLanguage::CodeCompletionOption option(E.name, ScriptLanguage::CODE_COMPLETION_KIND_MEMBER);
|
||||
ScriptLanguage::CodeCompletionOption option(E.name, ScriptLanguage::CODE_COMPLETION_KIND_MEMBER, location);
|
||||
if (base_type.kind == GDScriptParser::DataType::ENUM) {
|
||||
// Sort enum members in their declaration order.
|
||||
location += 1;
|
||||
}
|
||||
if (GDScriptParser::theme_color_names.has(E.name)) {
|
||||
option.theme_color_name = GDScriptParser::theme_color_names[E.name];
|
||||
}
|
||||
@ -1239,7 +1245,7 @@ static void _find_identifiers_in_base(const GDScriptCompletionIdentifier &p_base
|
||||
// Enum types are static and cannot change, therefore we skip non-const dictionary methods.
|
||||
continue;
|
||||
}
|
||||
ScriptLanguage::CodeCompletionOption option(E.name, ScriptLanguage::CODE_COMPLETION_KIND_FUNCTION);
|
||||
ScriptLanguage::CodeCompletionOption option(E.name, ScriptLanguage::CODE_COMPLETION_KIND_FUNCTION, location);
|
||||
if (E.arguments.size()) {
|
||||
option.insert_text += "(";
|
||||
} else {
|
||||
|
Loading…
Reference in New Issue
Block a user