forked from 1b-agent/opencadstudio-upstream
feat: XREF management — auto-resolve, XATTACH, XREF, XRELOAD
- src/io/xref.rs: resolve_xrefs() scans block_records for is_xref flags, resolves paths relative to the opened file's directory, loads the referenced DWG/DXF and merges model-space entities into the xref block - src/modules/insert/xattach.rs: XATTACH command with file-picker flow (XAttachPick/XAttachPickResult messages), prepare_xref_block() creates BlockRecord + Block entities and immediately resolves content - XREF command: lists all external references in the drawing - XRELOAD command: re-resolves all xref paths and rebuilds scene caches - Auto-resolve on FileOpened: reports Loaded/NotFound per xref block - CadCommand trait: added optional xattach_path() method - ROADMAP.md: 1.9 XREF management marked ✅ Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
1 parent
4c1c13cab6
commit
64837e9aed
10 files changed
+487
-3
No files matched your search
@@ -7,6 +7,7 @@ mod cylinder;
|
||||
pub(crate) mod insert_block;
|
||||
mod open_obj;
|
||||
mod sphere;
|
||||
pub(crate) mod xattach;
|
||||
|
||||
use crate::modules::{CadModule, RibbonGroup};
|
||||
|
||||
@@ -36,7 +37,11 @@ impl CadModule for InsertModule {
|
||||
},
|
||||
RibbonGroup {
|
||||
title: "Block",
|
||||
tools: vec![create_block::tool().into(), insert_block::tool().into()],
|
||||
tools: vec![
|
||||
create_block::tool().into(),
|
||||
insert_block::tool().into(),
|
||||
xattach::tool().into(),
|
||||
],
|
||||
},
|
||||
]
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user