summaryrefslogtreecommitdiffstats
path: root/editor/doc_tools.cpp
diff options
context:
space:
mode:
authorRémi Verschelde <rverschelde@gmail.com>2024-09-04 18:55:49 +0200
committerRémi Verschelde <rverschelde@gmail.com>2024-09-04 18:55:49 +0200
commitcb21a207b3ee2e6060c3bf6a5f49f1d33d1af792 (patch)
treef6bbaaf2ffa52336044e9355425ac968f367533a /editor/doc_tools.cpp
parent82799d7687f8df66c4c8b59de1077d89078f69fa (diff)
parent2dd043d1f615cfe054c3333319a6e1862955bfee (diff)
downloadredot-engine-cb21a207b3ee2e6060c3bf6a5f49f1d33d1af792.tar.gz
Merge pull request #96555 from dalexeev/doc-theme-items-deprecated-experimental
Docs: Add missing deprecated/experimental tag support for theme items
Diffstat (limited to 'editor/doc_tools.cpp')
-rw-r--r--editor/doc_tools.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/editor/doc_tools.cpp b/editor/doc_tools.cpp
index bf5b717c19..76934c9ec6 100644
--- a/editor/doc_tools.cpp
+++ b/editor/doc_tools.cpp
@@ -277,6 +277,10 @@ static void merge_theme_properties(Vector<DocData::ThemeItemDoc> &p_to, const Ve
// Check found entry on name and data type.
if (to.name == from.name && to.data_type == from.data_type) {
to.description = from.description;
+ to.is_deprecated = from.is_deprecated;
+ to.deprecated_message = from.deprecated_message;
+ to.is_experimental = from.is_experimental;
+ to.experimental_message = from.experimental_message;
to.keywords = from.keywords;
}
}
@@ -1420,6 +1424,14 @@ Error DocTools::_load(Ref<XMLParser> parser) {
prop2.type = parser->get_named_attribute_value("type");
ERR_FAIL_COND_V(!parser->has_attribute("data_type"), ERR_FILE_CORRUPT);
prop2.data_type = parser->get_named_attribute_value("data_type");
+ if (parser->has_attribute("deprecated")) {
+ prop2.is_deprecated = true;
+ prop2.deprecated_message = parser->get_named_attribute_value("deprecated");
+ }
+ if (parser->has_attribute("experimental")) {
+ prop2.is_experimental = true;
+ prop2.experimental_message = parser->get_named_attribute_value("experimental");
+ }
if (parser->has_attribute("keywords")) {
prop2.keywords = parser->get_named_attribute_value("keywords");
}
@@ -1738,6 +1750,12 @@ Error DocTools::save_classes(const String &p_default_path, const HashMap<String,
if (!ti.default_value.is_empty()) {
additional_attributes += String(" default=\"") + ti.default_value.xml_escape(true) + "\"";
}
+ if (ti.is_deprecated) {
+ additional_attributes += " deprecated=\"" + ti.deprecated_message.xml_escape(true) + "\"";
+ }
+ if (ti.is_experimental) {
+ additional_attributes += " experimental=\"" + ti.experimental_message.xml_escape(true) + "\"";
+ }
if (!ti.keywords.is_empty()) {
additional_attributes += String(" keywords=\"") + ti.keywords.xml_escape(true) + "\"";
}