forked from 1b-agent/opencadstudio-upstream
ocs_doc_api: layer CRUD, per-curve layer assignment, XDATA/XRECORD support, and bulk SetXDataMany
This commit is contained in:
1 parent
b19992cbcb
commit
8bf5eac3fc
27 files changed
+3340
-181
No files matched your search
@@ -10,7 +10,7 @@ use crate::id::ObjectId;
|
||||
use crate::ops::{
|
||||
AttributeDefinitionSpec, BoolOp, Curve2Spec, DimensionAngularSpec, DimensionRadialSpec,
|
||||
DimensionSpec, EntitySpec, HatchSpec, InsertSpec, MTextSpec, PlacementSpec, RasterImageSpec,
|
||||
SolidPrimitive, TableSpec, TextSpec, ViewportSpec,
|
||||
SolidPrimitive, TableSpec, TextSpec, ViewportSpec, XDataRecord, XRecordSpec,
|
||||
};
|
||||
|
||||
/// A typed write operation. Each variant is ONE atomic host call = one
|
||||
@@ -99,4 +99,29 @@ pub enum Operation {
|
||||
CreateTable(TableSpec),
|
||||
// dimension sub-types (2-line angular)
|
||||
CreateDimensionAngular2Ln(DimensionAngularSpec),
|
||||
// xdata / xrecord roundtrip
|
||||
SetXData {
|
||||
id: ObjectId,
|
||||
application_name: String,
|
||||
record: Option<XDataRecord>,
|
||||
},
|
||||
SetXDataMany(Vec<(ObjectId, String, Option<XDataRecord>)>),
|
||||
CreateXRecord(XRecordSpec),
|
||||
SetXRecord {
|
||||
id: ObjectId,
|
||||
spec: XRecordSpec,
|
||||
},
|
||||
// layer CRUD
|
||||
CreateLayer(crate::ops::LayerInfo),
|
||||
UpdateLayer {
|
||||
name: String,
|
||||
info: crate::ops::LayerInfo,
|
||||
},
|
||||
DeleteLayer {
|
||||
name: String,
|
||||
},
|
||||
SetEntityLayer {
|
||||
id: ObjectId,
|
||||
layer: String,
|
||||
},
|
||||
}
|
||||
Reference in new issue
Block a user