diff --git a/locales/en-US/opencadstudio.ftl b/locales/en-US/opencadstudio.ftl index 71bd8ff26..67bd2d6e7 100644 --- a/locales/en-US/opencadstudio.ftl +++ b/locales/en-US/opencadstudio.ftl @@ -2573,6 +2573,7 @@ properties = .ext-line-lineweight = Ext line lineweight .ext-line-offset = Ext line offset .extended-entity = Extended Entity + .extended-data = Extended Data .extended-lighting = Extended Lighting .extents-max = Extents Max .extents-min = Extents Min diff --git a/src/app/properties.rs b/src/app/properties.rs index a7a5088b3..a7256c286 100644 --- a/src/app/properties.rs +++ b/src/app/properties.rs @@ -671,6 +671,31 @@ impl OpenCADStudio { entity, )); + { + use crate::entities::common::ro_prop; + let xd = &source_entity.common().extended_data; + if !xd.is_empty() { + let mut xd_props = Vec::new(); + for rec in xd.records() { + let value_text = rec + .values + .iter() + .map(|value| format!("{value:?}")) + .collect::>() + .join(", "); + xd_props.push(ro_prop( + t!("Application").as_ref(), + "xdata_value", + format!("{}: {value_text}", rec.application_name), + )); + } + sections.push(crate::scene::model::object::PropSection { + title: t!("Extended Data").into_owned(), + props: xd_props, + }); + } + } + // Uniform-scale checkbox for block references (#427): // while the three scale factors are equal (and the user // hasn't opted into per-axis editing) the panel shows one diff --git a/src/locale_catalog.rs b/src/locale_catalog.rs index 3a7fce6f2..0c92d2089 100644 --- a/src/locale_catalog.rs +++ b/src/locale_catalog.rs @@ -1015,6 +1015,7 @@ pub(super) fn message_attribute(source: &str) -> Option<(&'static str, &'static "Ext line offset" => Some(("properties", "ext-line-offset")), "Ext line weight (DIMLWE)" => Some(("draw", "ext-line-weight-dimlwe")), "Extend" => Some(("modify", "extend")), + "Extended Data" => Some(("properties", "extended-data")), "Extended Entity" => Some(("properties", "extended-entity")), "Extended Lighting" => Some(("properties", "extended-lighting")), "Extension" => Some(("common", "extension")),