diff options
author | Rémi Verschelde <rverschelde@gmail.com> | 2020-06-16 09:25:27 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-06-16 09:25:27 +0200 |
commit | 3fa863dbb8c8984f29c02460933980e4950c4b4b (patch) | |
tree | 6c90c9bb17360a1dc588f4453336f7a142863214 | |
parent | 5ce02b1bf33eadb817c9ce4baabf829115075e90 (diff) | |
parent | ea07acb877b9c888c281f7af65b0a22f147e8426 (diff) |
Merge pull request #38934 from KoBeWi/where_to_setget
Link exposed setters/getters in property descriptions
-rw-r--r-- | editor/editor_help.cpp | 23 |
1 files changed, 21 insertions, 2 deletions
diff --git a/editor/editor_help.cpp b/editor/editor_help.cpp index 615d2075eb..f50ac6d580 100644 --- a/editor/editor_help.cpp +++ b/editor/editor_help.cpp @@ -1033,6 +1033,11 @@ void EditorHelp::_update_doc() { class_desc->pop(); // font class_desc->pop(); // cell + Map<String, DocData::MethodDoc> method_map; + for (int j = 0; j < methods.size(); j++) { + method_map[methods[j].name] = methods[j]; + } + if (cd.properties[i].setter != "") { class_desc->push_cell(); class_desc->pop(); // cell @@ -1040,7 +1045,14 @@ void EditorHelp::_update_doc() { class_desc->push_cell(); class_desc->push_font(doc_code_font); class_desc->push_color(text_color); - class_desc->add_text(cd.properties[i].setter + TTR("(value)")); + if (method_map[cd.properties[i].setter].arguments.size() > 1) { + // Setters with additional arguments are exposed in the method list, so we link them here for quick access. + class_desc->push_meta("@method " + cd.properties[i].setter); + class_desc->add_text(cd.properties[i].setter + TTR("(value)")); + class_desc->pop(); + } else { + class_desc->add_text(cd.properties[i].setter + TTR("(value)")); + } class_desc->pop(); // color class_desc->push_color(comment_color); class_desc->add_text(" setter"); @@ -1057,7 +1069,14 @@ void EditorHelp::_update_doc() { class_desc->push_cell(); class_desc->push_font(doc_code_font); class_desc->push_color(text_color); - class_desc->add_text(cd.properties[i].getter + "()"); + if (method_map[cd.properties[i].getter].arguments.size() > 0) { + // Getters with additional arguments are exposed in the method list, so we link them here for quick access. + class_desc->push_meta("@method " + cd.properties[i].getter); + class_desc->add_text(cd.properties[i].getter + "()"); + class_desc->pop(); + } else { + class_desc->add_text(cd.properties[i].getter + "()"); + } class_desc->pop(); //color class_desc->push_color(comment_color); class_desc->add_text(" getter"); |