Merge pull request #89545 from brno32/override-gutter-icon-inner-class-method
Fix missing gutter icon for inner class method overrides
This commit is contained in:
commit
4dec783017
1 changed files with 13 additions and 2 deletions
|
@ -1164,11 +1164,22 @@ void ScriptTextEditor::_update_connected_methods() {
|
|||
// Add override icons to methods.
|
||||
methods_found.clear();
|
||||
for (int i = 0; i < functions.size(); i++) {
|
||||
StringName name = StringName(functions[i].get_slice(":", 0));
|
||||
String raw_name = functions[i].get_slice(":", 0);
|
||||
StringName name = StringName(raw_name);
|
||||
if (methods_found.has(name)) {
|
||||
continue;
|
||||
}
|
||||
|
||||
// Account for inner classes
|
||||
if (raw_name.contains(".")) {
|
||||
// Strip inner class name from the method, and start from the right since
|
||||
// our inner class might be inside another inner class
|
||||
int pos = raw_name.rfind(".");
|
||||
if (pos != -1) {
|
||||
name = raw_name.substr(pos + 1);
|
||||
}
|
||||
}
|
||||
|
||||
String found_base_class;
|
||||
StringName base_class = script->get_instance_base_type();
|
||||
Ref<Script> inherited_script = script->get_base_script();
|
||||
|
@ -1217,7 +1228,7 @@ void ScriptTextEditor::_update_connected_methods() {
|
|||
text_edit->set_line_gutter_icon(line, connection_gutter, get_parent_control()->get_editor_theme_icon(SNAME("MethodOverrideAndSlot")));
|
||||
}
|
||||
|
||||
methods_found.insert(name);
|
||||
methods_found.insert(StringName(raw_name));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue