diff options
| author | Franklin Sobrinho | 2016-03-05 12:28:25 -0300 |
|---|---|---|
| committer | Rémi Verschelde | 2016-03-06 09:48:26 +0100 |
| commit | e69c9021b50aa38f306e4edc9cabb17ba1c1e667 (patch) | |
| tree | 8f305ed7355d243cf2c6d45d9a10e05a4f18030b /tools/editor/editor_help.cpp | |
| parent | edb3716da75be0cb2097ce3fc82668654566faa4 (diff) | |
| download | godot-e69c9021b50aa38f306e4edc9cabb17ba1c1e667.tar.gz godot-e69c9021b50aa38f306e4edc9cabb17ba1c1e667.tar.zst godot-e69c9021b50aa38f306e4edc9cabb17ba1c1e667.zip | |
The help page now show the entire object hierarchy
(cherry picked from commit fdd1209276433565af089fe4142a991b9e8d3b78)
Diffstat (limited to 'tools/editor/editor_help.cpp')
| -rw-r--r-- | tools/editor/editor_help.cpp | 54 |
1 files changed, 52 insertions, 2 deletions
diff --git a/tools/editor/editor_help.cpp b/tools/editor/editor_help.cpp index efe4a6590..b05f60758 100644 --- a/tools/editor/editor_help.cpp +++ b/tools/editor/editor_help.cpp @@ -725,14 +725,64 @@ Error EditorHelp::_goto_desc(const String& p_class,int p_vscr) { class_desc->add_text("Inherits: "); class_desc->pop(); class_desc->pop(); + + String inherits = cd.inherits; + class_desc->push_font(doc_font); - _add_type(cd.inherits); + + while (inherits != "") { + _add_type(inherits); + + inherits = doc->class_list[inherits].inherits; + + if (inherits != "") { + class_desc->add_text(" , "); + } + } + class_desc->pop(); class_desc->add_newline(); - class_desc->add_newline(); + } + + if (ObjectTypeDB::type_exists(cd.name)) { + + bool found = false; + bool prev = false; + + for (Map<String,DocData::ClassDoc>::Element *E=doc->class_list.front();E;E=E->next()) { + + if (E->get().inherits == cd.name) { + + if (!found) { + class_desc->push_color(EditorSettings::get_singleton()->get("text_editor/keyword_color")); + class_desc->push_font(doc_title_font); + class_desc->add_text("Inherited by: "); + class_desc->pop(); + class_desc->pop(); + + found = true; + class_desc->push_font(doc_font); + } + if (prev) { + + class_desc->add_text(" , "); + prev = false; + } + + _add_type(E->get().name); + prev = true; + } + } + + if (found) + class_desc->pop(); + + class_desc->add_newline(); } + class_desc->add_newline(); + if (cd.brief_description!="") { class_desc->push_color(EditorSettings::get_singleton()->get("text_editor/keyword_color")); |
