forked from 1b-agent/opencadstudio-upstream
Complete MLine host model coverage
Maps vertices, flags, justification, normal, scale and style with host validation and MLineStyle binding. The host recomputes vertex direction, miter and element parameters on scripted create/edit, so scripts only supply positions. staged_python_mline_lifecycle_over_real_ipc passes the full gate including DWG and DXF reopen. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
ec10bdbc48
commit
a86d5bc727
11 files changed
+445
-16
No files matched your search
@@ -22,7 +22,8 @@
|
||||
"AttributeDefinition",
|
||||
"AttributeEntity",
|
||||
"Hatch",
|
||||
"Leader"
|
||||
"Leader",
|
||||
"MLine"
|
||||
],
|
||||
"base_fields": ["handle", "layer", "owner_handle"],
|
||||
"overrides": {
|
||||
@@ -230,6 +231,22 @@
|
||||
"mpolygon_boundary_handle_count": { "exclude": true }
|
||||
}
|
||||
},
|
||||
"MLine": {
|
||||
"fields": {
|
||||
"vertices": { "required": true },
|
||||
"flags": {
|
||||
"rust_getter": "(VAR.flags.bits() as i64)",
|
||||
"rust_setter": "if let Some(v) = dict.get_item_opt(\"flags\", vm)? { let bits = v.try_into_value::<i64>(vm)?; VAR.flags = i16::try_from(bits).ok().and_then(acadrust::entities::MLineFlags::from_bits).ok_or_else(|| vm.new_value_error(\"MLine.flags has unknown bits\".to_owned()))?; }"
|
||||
},
|
||||
"start_point": { "read_only": true },
|
||||
"style_handle": { "read_only": true },
|
||||
"style_element_count": { "read_only": true },
|
||||
"style_name": {
|
||||
"rust_getter": "VAR.style_name.clone()",
|
||||
"rust_setter": "if let Some(v) = dict.get_item_opt(\"style_name\", vm)? { VAR.style_name = v.try_into_value::<String>(vm)?; VAR.style_handle = None; }"
|
||||
}
|
||||
}
|
||||
},
|
||||
"Leader": {
|
||||
"fields": {
|
||||
"vertices": { "required": true },
|
||||
|
||||
Reference in new issue
Block a user