forked from 1b-agent/opencadstudio-upstream
review(#1653): upstream pins, registered expression xdata, table apply refreshes sweeps
- Cargo: drop the fork patches; codec 8e93175, kernel 0665fc9, graph 3b91e67 in every manifest and lock. - A swept surface's expression link is written through set_entity_xdata, so OCS_SWEEP_EXPRESSION has its APPID record and the record its handle. - Applying the whole named-parameter table also rebuilds the swept surfaces linked to expressions, not only a single-row edit. - swept_surface_entity keeps its doc comment. - The native-constraint tests find a scope's network through its own dictionary, where it is now stored. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
2d1f45eeb3
commit
ac086def56
10 files changed
+38
-40
No files matched your search
@@ -417,6 +417,7 @@ impl OpenCADStudio {
|
||||
let pending = self.begin_undo(i, "Apply named parameters", touched.len(), true);
|
||||
self.tabs[i].scene.record_undo_named_parameters_before();
|
||||
self.tabs[i].scene.named_parameters = table;
|
||||
self.tabs[i].scene.refresh_expression_sweeps();
|
||||
self.tabs[i].dirty = true;
|
||||
if !touched.is_empty() {
|
||||
let changes: Vec<(Handle, crate::scene::ChangeKind)> = touched
|
||||
|
||||
@@ -539,9 +539,14 @@ impl OpenCADStudio {
|
||||
continue;
|
||||
}
|
||||
let created = if surface {
|
||||
let mut entity = sweep_model::swept_surface_entity(&record);
|
||||
sweep_model::link_sweep_expressions(&mut entity, &expressions);
|
||||
self.add_surface_model(entity, body)
|
||||
let created =
|
||||
self.add_surface_model(sweep_model::swept_surface_entity(&record), body);
|
||||
sweep_model::link_sweep_expressions(
|
||||
&mut self.tabs[i].scene.document,
|
||||
created,
|
||||
&expressions,
|
||||
);
|
||||
created
|
||||
} else {
|
||||
self.add_solid_model(
|
||||
empty_solid3d(),
|
||||
|
||||
Reference in new issue
Block a user