Skip to content

Commit

Permalink
Fix document not showing for script properties in inspector
Browse files Browse the repository at this point in the history
  • Loading branch information
Xwdit committed Jul 14, 2022
1 parent 9b3972a commit 8ee125a
Showing 1 changed file with 8 additions and 6 deletions.
14 changes: 8 additions & 6 deletions editor/editor_inspector.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2465,6 +2465,8 @@ void EditorInspector::update_tree() {
_parse_added_editors(main_vbox, ped);
}

StringName type_name;

// Get the lists of editors for properties.
for (List<PropertyInfo>::Element *E_property = plist.front(); E_property; E_property = E_property->next()) {
PropertyInfo &p = E_property->get();
Expand Down Expand Up @@ -2535,6 +2537,7 @@ void EditorInspector::update_tree() {
category_vbox = nullptr; //reset

String type = p.name;
type_name = p.name;

// Set the category icon.
if (!ClassDB::class_exists(type) && !ScriptServer::is_global_class(type) && p.hint_string.length() && FileAccess::exists(p.hint_string)) {
Expand Down Expand Up @@ -2568,18 +2571,17 @@ void EditorInspector::update_tree() {

if (use_doc_hints) {
// Sets the category tooltip to show documentation.
StringName type2 = p.name;
if (!class_descr_cache.has(type2)) {
if (!class_descr_cache.has(type_name)) {
String descr;
DocTools *dd = EditorHelp::get_doc_data();
HashMap<String, DocData::ClassDoc>::Iterator E = dd->class_list.find(type2);
HashMap<String, DocData::ClassDoc>::Iterator E = dd->class_list.find(type_name);
if (E) {
descr = DTR(E->value.brief_description);
}
class_descr_cache[type2] = descr;
class_descr_cache[type_name] = descr;
}

category->set_tooltip(p.name + "::" + (class_descr_cache[type2].is_empty() ? "" : class_descr_cache[type2]));
category->set_tooltip(p.name + "::" + (class_descr_cache[type_name].is_empty() ? "" : class_descr_cache[type_name]));
}

// Add editors at the start of a category.
Expand Down Expand Up @@ -2850,7 +2852,7 @@ void EditorInspector::update_tree() {
// Build the doc hint, to use as tooltip.

// Get the class name.
StringName classname = object->get_class_name();
StringName classname = type_name == "" ? object->get_class_name() : type_name;
if (!object_class.is_empty()) {
classname = object_class;
}
Expand Down

0 comments on commit 8ee125a

Please sign in to comment.