Properties: a dynamic block's visibility state as a dropdown

A reference to a block with a visibility parameter gets a Custom row named
after the parameter, listing its states with the one shown selected.
Picking a state applies it the same way as the reference's visibility
grip, one undo step.

Refs #1862

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
Hakan SevenandClaude Opus 5.5 committed 2026-10-17 19:21:59 +03:00
1 parent 20fb6a66b0
commit 5f5b64ef70
3 files changed
+49

No files matched your search

+7
View File
@@ -914,6 +914,13 @@ impl OpenCADStudio {
crate::io::xref::layer_overrides(doc, &br.name, &br.xref_path, &base_dir);
xref_rows(&mut sections, ins, &br.xref_path, factor, overrides);
}
// A dynamic block's visibility states, picked like its grip.
if let Some(row) = Self::visibility_property(doc, handle) {
sections.push(crate::scene::model::object::PropSection {
title: t!("Custom").into_owned(),
props: vec![row],
});
}
// An associative array's counts and spacings.
if let Some(array) = crate::scene::assoc_array::array_of_insert(doc, handle) {
sections.push(crate::scene::assoc_array::property_section(doc, &array));