Browse Source

closes godotengine/godot#6382 - traverse classes docs so that all properties from inherited classes have tooltips accordingly

carlosfvieira 7 năm trước cách đây
mục cha
commit
30acd5f834
1 tập tin đã thay đổi với 7 bổ sung2 xóa
  1. 7 2
      editor/property_editor.cpp

+ 7 - 2
editor/property_editor.cpp

@@ -2952,14 +2952,19 @@ void PropertyEditor::update_tree() {
 			if (!found) {
 			if (!found) {
 				DocData *dd = EditorHelp::get_doc_data();
 				DocData *dd = EditorHelp::get_doc_data();
 				Map<String, DocData::ClassDoc>::Element *E = dd->class_list.find(classname);
 				Map<String, DocData::ClassDoc>::Element *E = dd->class_list.find(classname);
-				if (E) {
+				while (E && descr == String()) {
 					for (int i = 0; i < E->get().properties.size(); i++) {
 					for (int i = 0; i < E->get().properties.size(); i++) {
 						if (E->get().properties[i].name == propname.operator String()) {
 						if (E->get().properties[i].name == propname.operator String()) {
 							descr = E->get().properties[i].description.strip_edges().word_wrap(80);
 							descr = E->get().properties[i].description.strip_edges().word_wrap(80);
+							break;
 						}
 						}
 					}
 					}
+					if (!E->get().inherits.empty()) {
+						E = dd->class_list.find(E->get().inherits);
+					} else {
+						break;
+					}
 				}
 				}
-
 				descr_cache[classname][propname] = descr;
 				descr_cache[classname][propname] = descr;
 			}
 			}