Materials
This page covers IMaterial, IMaterials, IMaterialChangeEvent, IMaterialChangeEventHandler, IStandardSheet, IStandardSheets, IStandardSheetChangeEvent, and IStandardSheetChangeEventHandler. These interfaces describe stock behavior, cost rules, reusable stock sizes, and material-related host events.
IMaterial now exposes both minimum and maximum shorter/longer
recycle sizes, their effective values, per-edge MinEdgeDistance, and mutable
ITcAlgorithmData. Its payload is opaque and
implementation-defined; no public key/value schema or compatibility guarantee is
provided. Treat these properties as independent parts of the current material
contract.
Interfaces
IMaterial
Material definition describing stock behavior, cutting rules, recycling settings, costs, and standard stock sizes.
Source: SDK/include/pascal/uIMaterial.pas
Properties
- Property name
- Id
- Type
- Int64
- Description
Persistent numeric identifier used by TonCut to track the object.
Declaration
property Id: Int64 read GetId write SetId;Published SDK declaration languages: Pascal, C++.
- Property name
- Title
- Type
- WideString
- Description
Human-readable title shown to users.
Declaration
property Title: WideString read GetTitle write SetTitle;Published SDK declaration languages: Pascal, C++.
- Property name
- Kind
- Type
- Description
Enumerated kind describing the current object.
Declaration
property Kind: TMaterialKind read GetKind write SetKind;Published SDK declaration languages: Pascal, C++.
- Property name
- Width
- Type
- Cardinal
- Description
Width value stored on the object.
Declaration
property Width: Cardinal read GetWidth write SetWidth;Published SDK declaration languages: Pascal, C++.
- Property name
- Thickness
- Type
- Cardinal
- Description
Thickness value stored on the object.
Declaration
property Thickness: Cardinal read GetThickness write SetThickness;Published SDK declaration languages: Pascal, C++.
- Property name
- HasOrnament
- Type
- Boolean
- Description
Gets or sets whether has ornament.
Declaration
property HasOrnament: Boolean read GetHasOrnament write SetHasOrnament;Published SDK declaration languages: Pascal.
- Property name
- CanRotate
- Type
- Boolean
- Description
Whether rotation is allowed.
Declaration
property CanRotate: Boolean read GetCanRotate write SetCanRotate;Published SDK declaration languages: Pascal.
- Property name
- CanMirror
- Type
- Boolean
- Description
Whether mirroring is allowed.
Declaration
property CanMirror: Boolean read GetCanMirror write SetCanMirror;Published SDK declaration languages: Pascal.
- Property name
- Surplus
- Type
- Cardinal
- Description
Surplus allowance stored on the object.
Declaration
property Surplus: Cardinal read GetSurplus write SetSurplus;Published SDK declaration languages: Pascal.
- Property name
- SurplusEditable
- Type
- Boolean
- Description
Gets or sets whether surplus editable.
Declaration
property SurplusEditable: Boolean read GetSurplusEditable write SetSurplusEditable;Published SDK declaration languages: Pascal.
- Property name
- Margin
- Type
- Cardinal
- Description
Margin allowance stored on the object.
Declaration
property Margin: Cardinal read GetMargin write SetMargin;Published SDK declaration languages: Pascal.
- Property name
- MarginEditable
- Type
- Boolean
- Description
Gets or sets whether margin editable.
Declaration
property MarginEditable: Boolean read GetMarginEditable write SetMarginEditable;Published SDK declaration languages: Pascal.
- Property name
- DefaultEdging
- Type
- Cardinal
- Description
Gets or sets default edging.
Declaration
property DefaultEdging: Cardinal read GetDefaultEdging write SetDefaultEdging;Published SDK declaration languages: Pascal.
- Property name
- CuttingDimensions
- Type
- Description
Gets or sets cutting dimensions.
Declaration
property CuttingDimensions: TCuttingDimensions read GetCuttingDimensions write SetCuttingDimensions;Published SDK declaration languages: Pascal.
- Property name
- Bandable
- Type
- Boolean
- Description
Gets or sets whether bandable.
Declaration
property Bandable: Boolean read GetBandable write SetBandable;Published SDK declaration languages: Pascal.
- Property name
- Grindable
- Type
- Boolean
- Description
Gets or sets whether grindable.
Declaration
property Grindable: Boolean read GetGrindable write SetGrindable;Published SDK declaration languages: Pascal.
- Property name
- Colorable
- Type
- Boolean
- Description
Gets or sets whether colorable.
Declaration
property Colorable: Boolean read GetColorable write SetColorable;Published SDK declaration languages: Pascal.
- Property name
- Device
- Type
- IDevice
- Description
Device linked to the object.
Declaration
property Device: IDevice read GetDevice write SetDevice;Published SDK declaration languages: Pascal.
- Property name
- Algorithm
- Type
- String
- Description
Gets or sets algorithm.
Declaration
property Algorithm: String read GetAlgorithm write SetAlgorithm;Published SDK declaration languages: Pascal.
- Property name
- QualityLevel
- Type
- Description
Gets or sets quality level.
Declaration
property QualityLevel: TQualityLevel read GetQualityLevel write SetQualityLevel;Published SDK declaration languages: Pascal.
- Property name
- ReuseWaste
- Type
- Boolean
- Description
Whether waste can be reused as stock.
Declaration
property ReuseWaste: Boolean read GetReuseWaste write SetReuseWaste;Published SDK declaration languages: Pascal.
- Property name
- MinShorterRecycleSize
- Type
- Cardinal
- Description
Gets or sets min shorter recycle size.
Declaration
property MinShorterRecycleSize: Cardinal read GetMinShorterRecycleSize write SetMinShorterRecycleSize;Published SDK declaration languages: Pascal.
- Property name
- MinLongerRecycleSize
- Type
- Cardinal
- Description
Gets or sets min longer recycle size.
Declaration
property MinLongerRecycleSize: Cardinal read GetMinLongerRecycleSize write SetMinLongerRecycleSize;Published SDK declaration languages: Pascal.
- Property name
- MaxShorterRecycleSize
- Type
- Cardinal
- Description
Maximum shorter dimension accepted for recycled material reuse.
Declaration
property MaxShorterRecycleSize: Cardinal read GetMaxShorterRecycleSize write SetMaxShorterRecycleSize;Published SDK declaration languages: Pascal.
- Property name
- MaxLongerRecycleSize
- Type
- Cardinal
- Description
Maximum longer dimension accepted for recycled material reuse.
Declaration
property MaxLongerRecycleSize: Cardinal read GetMaxLongerRecycleSize write SetMaxLongerRecycleSize;Published SDK declaration languages: Pascal.
- Property name
- PrefShorterRecycleSize
- Type
- Cardinal
- Description
Preferred shorter dimension for recycled material reuse.
Declaration
property PrefShorterRecycleSize: Cardinal read GetPrefShorterRecycleSize write SetPrefShorterRecycleSize;Published SDK declaration languages: Pascal.
- Property name
- PrefLongerRecycleSize
- Type
- Cardinal
- Description
Preferred longer dimension for recycled material reuse.
Declaration
property PrefLongerRecycleSize: Cardinal read GetPrefLongerRecycleSize write SetPrefLongerRecycleSize;Published SDK declaration languages: Pascal.
- Property name
- EffectiveMinShorterRecycleSize
- Type
- Cardinal
- Description
Gets effective min shorter recycle size.
Declaration
property EffectiveMinShorterRecycleSize: Cardinal read GetEffectiveMinShorterRecycleSize;Published SDK declaration languages: Pascal.
- Property name
- EffectiveMinLongerRecycleSize
- Type
- Cardinal
- Description
Gets effective min longer recycle size.
Declaration
property EffectiveMinLongerRecycleSize: Cardinal read GetEffectiveMinLongerRecycleSize;Published SDK declaration languages: Pascal.
- Property name
- EffectiveMaxShorterRecycleSize
- Type
- Cardinal
- Description
Effective maximum shorter recycle dimension after host rules are applied.
Declaration
property EffectiveMaxShorterRecycleSize: Cardinal read GetEffectiveMaxShorterRecycleSize;Published SDK declaration languages: Pascal.
- Property name
- EffectiveMaxLongerRecycleSize
- Type
- Cardinal
- Description
Effective maximum longer recycle dimension after host rules are applied.
Declaration
property EffectiveMaxLongerRecycleSize: Cardinal read GetEffectiveMaxLongerRecycleSize;Published SDK declaration languages: Pascal.
- Property name
- EffectivePrefShorterRecycleSize
- Type
- Cardinal
- Description
Gets effective pref shorter recycle size.
Declaration
property EffectivePrefShorterRecycleSize: Cardinal read GetEffectivePrefShorterRecycleSize;Published SDK declaration languages: Pascal.
- Property name
- EffectivePrefLongerRecycleSize
- Type
- Cardinal
- Description
Gets effective pref longer recycle size.
Declaration
property EffectivePrefLongerRecycleSize: Cardinal read GetEffectivePrefLongerRecycleSize;Published SDK declaration languages: Pascal.
- Property name
- Kerf
- Type
- Cardinal
- Description
Gets or sets kerf.
Declaration
property Kerf: Cardinal read GetKerf write SetKerf;Published SDK declaration languages: Pascal.
- Property name
- MinEdgeDistance
- Type
- IRectangle
- Description
Per-edge minimum distance exposed as a signed rectangle; a negative side means inherited or unspecified.
Declaration
property MinEdgeDistance: IRectangle read GetMinEdgeDistance;Published SDK declaration languages: Pascal.
- Property name
- AllowEdgeCuts
- Type
- Boolean
- Description
Whether material edge cuts are allowed. It cannot be enabled when either
MinCutSizeorMinCutDistanceis positive; legacyMinCutWidthis only an alias forMinCutSize.Declaration
property AllowEdgeCuts: Boolean read GetAllowEdgeCuts write SetAllowEdgeCuts;Published SDK declaration languages: Pascal.
- Property name
- RecycleEdgingOn
- Type
- Boolean
- Description
Whether edging is included in recycling logic.
Declaration
property RecycleEdgingOn: Boolean read GetRecycleEdgingOn write SetRecycleEdgingOn;Published SDK declaration languages: Pascal.
- Property name
- RecycleEdging
- Type
- Cardinal
- Description
Recycling edging configuration.
Declaration
property RecycleEdging: Cardinal read GetRecycleEdging write SetRecycleEdging;Published SDK declaration languages: Pascal.
- Property name
- StackCutting
- Type
- Boolean
- Description
Gets or sets whether stack cutting.
Declaration
property StackCutting: Boolean read GetStackCutting write SetStackCutting;Published SDK declaration languages: Pascal.
- Property name
- StackSize
- Type
- Cardinal
- Description
Maximum stack size or batch size.
Declaration
property StackSize: Cardinal read GetStackSize write SetStackSize;Published SDK declaration languages: Pascal.
- Property name
- AllowPartialStack
- Type
- Boolean
- Description
Whether partial stacks are allowed.
Declaration
property AllowPartialStack: Boolean read GetAllowPartialStack write SetAllowPartialStack;Published SDK declaration languages: Pascal.
- Property name
- MinStackSize
- Type
- Cardinal
- Description
Gets or sets min stack size.
Declaration
property MinStackSize: Cardinal read GetMinStackSize write SetMinStackSize;Published SDK declaration languages: Pascal.
- Property name
- PricePerSqM
- Type
- TTcPrice
- Description
Unit price per square meter.
Declaration
property PricePerSqM: TTcPrice read GetPricePerSqM Write SetPricePerSqM;Published SDK declaration languages: Pascal.
- Property name
- WeightOfSqM
- Type
- TTcWeight
- Description
Weight per square meter.
Declaration
property WeightOfSqM: TTcWeight read GetWeightOfSqM Write SetWeightOfSqM;Published SDK declaration languages: Pascal.
- Property name
- PricePerMeter
- Type
- TTcPrice
- Description
Unit price per running meter.
Declaration
property PricePerMeter: TTcPrice read GetPricePerMeter Write SetPricePerMeter;Published SDK declaration languages: Pascal.
- Property name
- WeightOfMeter
- Type
- TTcWeight
- Description
Weight per running meter.
Declaration
property WeightOfMeter: TTcWeight read GetWeightOfMeter Write SetWeightOfMeter;Published SDK declaration languages: Pascal.
- Property name
- CutCostPerMeter
- Type
- TTcPrice
- Description
Cost per running meter of cut.
Declaration
property CutCostPerMeter: TTcPrice read GetCutCostPerMeter Write SetCutCostPerMeter;Published SDK declaration languages: Pascal.
- Property name
- ReuseCost
- Type
- TTcPrice
- Description
Reuse-related cost value.
Declaration
property ReuseCost: TTcPrice read GetReuseCost Write SetReuseCost;Published SDK declaration languages: Pascal.
- Property name
- UtilizationCostPerKg
- Type
- TTcPrice
- Description
Utilization cost per kilogram.
Declaration
property UtilizationCostPerKg: TTcPrice read GetUtilizationCostPerKg Write SetUtilizationCostPerKg;Published SDK declaration languages: Pascal.
- Property name
- SegmentShiftCost
- Type
- TTcPrice
- Description
Cost assigned to segment shifts.
Declaration
property SegmentShiftCost: TTcPrice read GetSegmentShiftCost Write SetSegmentShiftCost;Published SDK declaration languages: Pascal.
- Property name
- SegmentRotationCost
- Type
- TTcPrice
- Description
Cost assigned to segment rotation.
Declaration
property SegmentRotationCost: TTcPrice read GetSegmentRotationCost Write SetSegmentRotationCost;Published SDK declaration languages: Pascal.
- Property name
- PriceToCostMultiplier
- Type
- Double
- Description
Multiplier used to convert cost into price.
Declaration
property PriceToCostMultiplier: Double read GetPriceToCostMultiplier write SetPriceToCostMultiplier;Published SDK declaration languages: Pascal.
- Property name
- ReusableWasteExpectedUsage
- Type
- Double
- Description
Gets or sets reusable waste expected usage.
Declaration
property ReusableWasteExpectedUsage: Double read GetReusableWasteExpectedUsage write SetReusableWasteExpectedUsage;Published SDK declaration languages: Pascal.
- Property name
- CutExcess
- Type
- Integer
- Description
Gets or sets cut excess.
Declaration
property CutExcess: Integer read GetCutExcess write SetCutExcess;Published SDK declaration languages: Pascal.
- Property name
- CutShiftTotalLimit
- Type
- Integer
- Description
Gets or sets cut shift total limit.
Declaration
property CutShiftTotalLimit: Integer read GetCutShiftTotalLimit write SetCutShiftTotalLimit;Published SDK declaration languages: Pascal.
- Property name
- CutShiftHorzLimit
- Type
- Integer
- Description
Horizontal limit for cut shifting.
Declaration
property CutShiftHorzLimit: Integer read GetCutShiftHorzLimit write SetCutShiftHorzLimit;Published SDK declaration languages: Pascal.
- Property name
- CutShiftVertLimit
- Type
- Integer
- Description
Vertical limit for cut shifting.
Declaration
property CutShiftVertLimit: Integer read GetCutShiftVertLimit write SetCutShiftVertLimit;Published SDK declaration languages: Pascal.
- Property name
- CustomData
- Type
- WideString
- Description
Opaque custom text payload stored with the object.
Declaration
property CustomData: WideString read GetCustomData write SetCustomData;Published SDK declaration languages: Pascal.
- Property name
- AlgorithmData
- Type
- ITcAlgorithmData
- Description
Mutable access to opaque, implementation-defined algorithm data owned by the current device, material, piece, or stock sheet. No public payload schema or compatibility guarantee is provided.
Declaration
property AlgorithmData: ITcAlgorithmData read GetAlgorithmData;Published SDK declaration languages: Pascal.
- Property name
- StandardSheets
- Type
- IStandardSheets
- Description
Associated standard sheets collection or helper interface.
Declaration
property StandardSheets: IStandardSheets read GetStandardSheets;Published SDK declaration languages: Pascal.
- Property name
- OnChange
- Type
- INotifyEvent
- Description
Event fired when the object or collection changes.
Declaration
property OnChange: INotifyEvent read GetOnChange;Published SDK declaration languages: Pascal.
- Property name
- OnIdChange
- Type
- IIdChangeEvent
- Description
Event fired when an identifier changes.
Declaration
property OnIdChange: IIdChangeEvent read GetOnIdChange;Published SDK declaration languages: Pascal.
- Property name
- OnStandardSheetAdd
- Type
- IStandardSheetChangeEvent
- Description
Event exposed through OnStandardSheetAdd.
Declaration
property OnStandardSheetAdd: IStandardSheetChangeEvent read GetOnStandardSheetAdd;Published SDK declaration languages: Pascal.
- Property name
- OnStandardSheetRemove
- Type
- IStandardSheetChangeEvent
- Description
Event exposed through OnStandardSheetRemove.
Declaration
property OnStandardSheetRemove: IStandardSheetChangeEvent read GetOnStandardSheetRemove;Published SDK declaration languages: Pascal.
- Property name
- OnStandardSheetChange
- Type
- IStandardSheetChangeEvent
- Description
Event exposed through OnStandardSheetChange.
Declaration
property OnStandardSheetChange: IStandardSheetChangeEvent read GetOnStandardSheetChange;Published SDK declaration languages: Pascal.
Methods
- Method name
- SetPricePerSqM()
- Type
- procedure
- Description
Assign price per sq m.
Declaration
procedure SetPricePerSqM(aCost: TTcPrice); safecall;Published SDK declaration languages: Pascal.
ParametersaCostTTcPriceValue for cost.
- Method name
- SetWeightOfSqM()
- Type
- procedure
- Description
Assign weight of sq m.
Declaration
procedure SetWeightOfSqM(aWeight: TTcWeight); safecall;Published SDK declaration languages: Pascal.
ParametersaWeightTTcWeightValue for weight.
- Method name
- SetPricePerMeter()
- Type
- procedure
- Description
Assign price per meter.
Declaration
procedure SetPricePerMeter(aCost: TTcPrice); safecall;Published SDK declaration languages: Pascal.
ParametersaCostTTcPriceValue for cost.
- Method name
- SetWeightOfMeter()
- Type
- procedure
- Description
Assign weight of meter.
Declaration
procedure SetWeightOfMeter(aWeight: TTcWeight); safecall;Published SDK declaration languages: Pascal.
ParametersaWeightTTcWeightValue for weight.
- Method name
- SetCutCostPerMeter()
- Type
- procedure
- Description
Assign cut cost per meter.
Declaration
procedure SetCutCostPerMeter(aCost: TTcPrice); safecall;Published SDK declaration languages: Pascal.
ParametersaCostTTcPriceValue for cost.
- Method name
- SetReuseCost()
- Type
- procedure
- Description
Assign reuse cost.
Declaration
procedure SetReuseCost(aCost: TTcPrice); safecall;Published SDK declaration languages: Pascal.
ParametersaCostTTcPriceValue for cost.
- Method name
- SetUtilizationCostPerKg()
- Type
- procedure
- Description
Assign utilization cost per kg.
Declaration
procedure SetUtilizationCostPerKg(aCost: TTcPrice); safecall;Published SDK declaration languages: Pascal.
ParametersaCostTTcPriceValue for cost.
- Method name
- SetSegmentShiftCost()
- Type
- procedure
- Description
Assign segment shift cost.
Declaration
procedure SetSegmentShiftCost(aCost: TTcPrice); safecall;Published SDK declaration languages: Pascal.
ParametersaCostTTcPriceValue for cost.
- Method name
- SetSegmentRotationCost()
- Type
- procedure
- Description
Assign segment rotation cost.
Declaration
procedure SetSegmentRotationCost(aCost: TTcPrice); safecall;Published SDK declaration languages: Pascal.
ParametersaCostTTcPriceValue for cost.
- Method name
- Assign()
- Type
- procedure
- Description
Copy values from another object of the same type.
Declaration
procedure Assign(const aOther: IMaterial); safecall;Published SDK declaration languages: Pascal.
Parameters
- Method name
- BeginUpdate()
- Type
- procedure
- Description
Start a batched update so change notifications can be delayed.
Declaration
procedure BeginUpdate(); safecall;Published SDK declaration languages: Pascal.
- Method name
- EndUpdate()
- Type
- procedure
- Description
Finish a batched update and allow deferred notifications to resume.
Declaration
procedure EndUpdate(); safecall;Published SDK declaration languages: Pascal.
IMaterials
Collection interface used to create, enumerate, query, and reload a shared Desktop object set.
Source: SDK/include/pascal/uIMaterials.pas
Properties
- Property name
- Count
- Type
- Integer
- Description
Number of items currently exposed by the interface.
Declaration
property Count: Integer read GetCount;Published SDK declaration languages: Pascal, C++.
- Property name
- Items
- Type
- IMaterial
- Description
Indexed property used to read one item from the collection.
Declaration
property Items[aIndex: Cardinal]: IMaterial read GetByIndex; default;Published SDK declaration languages: Pascal, C++.
Index ParametersaIndexCardinalZero-based position within a collection.ValueThe collection item located at the supplied index.
- Property name
- OnAdd
- Type
- IMaterialChangeEvent
- Description
Event fired when an item is added.
Declaration
property OnAdd: IMaterialChangeEvent read GetOnAdd;Published SDK declaration languages: Pascal, C++.
- Property name
- OnRemove
- Type
- IMaterialChangeEvent
- Description
Event fired when an item is removed.
Declaration
property OnRemove: IMaterialChangeEvent read GetOnRemove;Published SDK declaration languages: Pascal, C++.
Methods
- Method name
- CreateMaterial()
- Type
- IMaterial
- Description
Open the Desktop material dialog for a new material. The user can review and update the details before confirming; if the dialog is cancelled, the method returns
null.Declaration
function CreateMaterial(): IMaterial; safecall;Published SDK declaration languages: Pascal, C++.
ReturnsThe created material interface instance, ornullif the user cancels the dialog.
- Method name
- CreateStandardSheet()
- Type
- IStandardSheet
- Description
Create a new standard sheet instance.
Declaration
function CreateStandardSheet(): IStandardSheet; safecall;Published SDK declaration languages: Pascal, C++.
ReturnsA new standard sheet interface instance.
- Method name
- Add()
- Type
- procedure
- Description
Add an item or handler.
Declaration
procedure Add(aMaterial: IMaterial); safecall;Published SDK declaration languages: Pascal, C++.
Parameters
- Method name
- DeleteByIndex()
- Type
- procedure
- Description
Delete the item at the specified zero-based index.
Declaration
procedure DeleteByIndex(aIndex: Cardinal); safecall;Published SDK declaration languages: Pascal, C++.
ParametersaIndexCardinalZero-based position within a collection.
- Method name
- DeleteById()
- Type
- procedure
- Description
Delete the item with the specified TonCut identifier.
Declaration
procedure DeleteById(aId: Int64); safecall;Published SDK declaration languages: Pascal, C++.
ParametersaIdInt64TonCut object identifier.
- Method name
- Remove()
- Type
- procedure
- Description
Remove an item or handler.
Declaration
procedure Remove(const aMaterial: IMaterial); safecall;Published SDK declaration languages: Pascal, C++.
Parameters
- Method name
- IndexOf()
- Type
- Integer
- Description
Return the zero-based index of the matching item.
Declaration
function IndexOf(const aMaterial: IMaterial): Integer; overload; safecall;Published SDK declaration languages: Pascal.
ParametersReturnsZero-based index of the matching item, or-1when no match exists.
- Method name
- IndexOf()
- Type
- Integer
- Description
Return the zero-based index of the matching item.
Declaration
function IndexOf(aId: Int64): Integer; overload; safecall;Published SDK declaration languages: Pascal.
ParametersaIdInt64TonCut object identifier.ReturnsZero-based index of the matching item, or-1when no match exists.
- Method name
- FindDuplicate()
- Type
- IMaterial
- Description
Search for an existing item that duplicates the supplied object.
Declaration
function FindDuplicate(const aMaterial: IMaterial; aCheckTitle: Boolean = False): IMaterial; safecall;Published SDK declaration languages: Pascal, C++.
ParametersaCheckTitleBooleanWhether title collisions should count as duplicates.ReturnsThe matching material interface instance, ornullwhen not found.
- Method name
- FindByTitle()
- Type
- IMaterial
- Description
Find an item by its title and any additional matching fields.
Declaration
function FindByTitle(const aTitle: WideString; aKind: TMaterialKind; aWidth: Cardinal; aThickness: Cardinal): IMaterial; safecall;Published SDK declaration languages: Pascal, C++.
ParametersaTitleconstWideStringHuman-readable title.aKindValue for kind.aWidthCardinalWidth value in TonCut units.aThicknessCardinalThickness value in TonCut units.ReturnsThe matching material interface instance, ornullwhen not found.
- Method name
- FindUniqueName()
- Type
- WideString
- Description
Generate or return a title that is unique within the collection.
Declaration
function FindUniqueName(const aBaseName: WideString; aKind: TMaterialKind; aWidth: Cardinal; aThickness: Cardinal): WideString; safecall;Published SDK declaration languages: Pascal, C++.
ParametersaBaseNameconstWideStringBase title used while generating a unique name.aKindValue for kind.aWidthCardinalWidth value in TonCut units.aThicknessCardinalThickness value in TonCut units.ReturnsA title string that is unique within the collection.
- Method name
- CheckUniqueName()
- Type
- Boolean
- Description
Check whether a proposed title is unique within the collection.
Declaration
function CheckUniqueName(const aTitle: WideString; aKind: TMaterialKind; aWidth: Cardinal; aThickness: Cardinal; const aIgnoreMaterial: IMaterial): Boolean; overload; safecall;Published SDK declaration languages: Pascal, C++.
ParametersaTitleconstWideStringHuman-readable title.aKindValue for kind.aWidthCardinalWidth value in TonCut units.aThicknessCardinalThickness value in TonCut units.ReturnsReturnstrueif the proposed title is unique within the collection.
- Method name
- CheckUniqueName()
- Type
- Boolean
- Description
Check whether a proposed title is unique within the collection.
Declaration
function CheckUniqueName(aMaterial: IMaterial; aAutoFix: Boolean = False): Boolean; overload; safecall;Published SDK declaration languages: Pascal, C++.
ParametersaAutoFixBooleanWhether the method may adjust data automatically.ReturnsReturnstrueif the proposed title is unique within the collection.
- Method name
- GetById()
- Type
- IMaterial
- Description
Return the item stored under the specified TonCut identifier.
Declaration
function GetById(aId: Int64): IMaterial; safecall;Published SDK declaration languages: Pascal, C++.
ParametersaIdInt64TonCut object identifier.ReturnsThe matching material interface instance.
- Method name
- Reload()
- Type
- procedure
- Description
Reload the underlying data from the host or storage layer.
Declaration
procedure Reload(); safecall;Published SDK declaration languages: Pascal, C++.
IMaterialChangeEventHandler
Callback sink consumed by the matching change-event interface.
Source: SDK/include/pascal/uIMaterialChangeEvent.pas
Methods
- Method name
- Invoke()
- Type
- procedure
- Description
Handle the event callback when the owning event interface invokes it.
Declaration
procedure Invoke(aSender: IUnknown; aMaterial: IMaterial; aIndex: Integer); safecall;Published SDK declaration languages: Pascal.
ParametersaSenderIUnknownObject that raised the event.aIndexIntegerZero-based position within a collection.
IMaterialChangeEvent
Event interface with Add, Remove, and Invoke hooks for collection or entity change notifications.
Source: SDK/include/pascal/uIMaterialChangeEvent.pas
Methods
- Method name
- Add()
- Type
- procedure
- Description
Add an item or handler.
Declaration
procedure Add(aHandler: IMaterialChangeEventHandler); safecall;Published SDK declaration languages: Pascal.
Parameters
- Method name
- Remove()
- Type
- procedure
- Description
Remove an item or handler.
Declaration
procedure Remove(aHandler: IMaterialChangeEventHandler); safecall;Published SDK declaration languages: Pascal.
Parameters
- Method name
- Invoke()
- Type
- procedure
- Description
Raise the typed change event for the current payload.
Declaration
procedure Invoke(aSender: IUnknown; aMaterial: IMaterial; aIndex: Integer); safecall;Published SDK declaration languages: Pascal.
ParametersaSenderIUnknownObject that raised the event.aIndexIntegerEvent payload field for index.
IStandardSheet
Reusable stock-size template attached to a material definition.
Source: SDK/include/pascal/uIStandardSheet.pas
Properties
- Property name
- Id
- Type
- Int64
- Description
Persistent numeric identifier used by TonCut to track the object.
Declaration
property Id: Int64 read GetId write SetId;Published SDK declaration languages: Pascal.
- Property name
- Title
- Type
- WideString
- Description
Human-readable title shown to users.
Declaration
property Title: WideString read GetTitle write SetTitle;Published SDK declaration languages: Pascal.
- Property name
- Length
- Type
- Cardinal
- Description
Length value stored on the object.
Declaration
property Length: Cardinal read GetLength write SetLength;Published SDK declaration languages: Pascal.
- Property name
- Width
- Type
- Cardinal
- Description
Width value stored on the object.
Declaration
property Width: Cardinal read GetWidth write SetWidth;Published SDK declaration languages: Pascal.
- Property name
- Ornament
- Type
- Description
Grain or ornament direction associated with the stock item.
Declaration
property Ornament: TOrnament read GetOrnament write SetOrnament;Published SDK declaration languages: Pascal.
- Property name
- Edging
- Type
- IRectangle
- Description
Rectangle-like edging or margin helper attached to the object.
Declaration
property Edging: IRectangle read GetEdging;Published SDK declaration languages: Pascal.
- Property name
- OnChange
- Type
- INotifyEvent
- Description
Event fired when the object or collection changes.
Declaration
property OnChange: INotifyEvent read GetOnChange;Published SDK declaration languages: Pascal.
- Property name
- OnIdChange
- Type
- IIdChangeEvent
- Description
Event fired when an identifier changes.
Declaration
property OnIdChange: IIdChangeEvent read GetOnIdChange;Published SDK declaration languages: Pascal.
Methods
- Method name
- Assign()
- Type
- procedure
- Description
Copy values from another object of the same type.
Declaration
procedure Assign(const aStandardSheet: IStandardSheet); safecall;Published SDK declaration languages: Pascal.
Parameters
- Method name
- BeginUpdate()
- Type
- procedure
- Description
Start a batched update so change notifications can be delayed.
Declaration
procedure BeginUpdate(); safecall;Published SDK declaration languages: Pascal.
- Method name
- EndUpdate()
- Type
- procedure
- Description
Finish a batched update and allow deferred notifications to resume.
Declaration
procedure EndUpdate(); safecall;Published SDK declaration languages: Pascal.
IStandardSheets
Collection interface used to create, enumerate, query, and reload a shared Desktop object set.
Source: SDK/include/pascal/uIStandardSheets.pas
Properties
- Property name
- Count
- Type
- Integer
- Description
Number of items currently exposed by the interface.
Declaration
property Count: Integer read GetCount;Published SDK declaration languages: Pascal.
- Property name
- Items
- Type
- IStandardSheet
- Description
Indexed property used to read one item from the collection.
Declaration
property Items[aIndex: Cardinal]: IStandardSheet read GetByIndex; default;Published SDK declaration languages: Pascal.
Index ParametersaIndexCardinalZero-based position within a collection.ValueThe collection item located at the supplied index.
- Property name
- OnAdd
- Type
- IStandardSheetChangeEvent
- Description
Event fired when an item is added.
Declaration
property OnAdd: IStandardSheetChangeEvent read GetOnAdd;Published SDK declaration languages: Pascal.
- Property name
- OnRemove
- Type
- IStandardSheetChangeEvent
- Description
Event fired when an item is removed.
Declaration
property OnRemove: IStandardSheetChangeEvent read GetOnRemove;Published SDK declaration languages: Pascal.
Methods
- Method name
- Assign()
- Type
- procedure
- Description
Copy values from another object of the same type.
Declaration
procedure Assign(const aOther: IStandardSheets); safecall;Published SDK declaration languages: Pascal.
Parameters
- Method name
- Clear()
- Type
- procedure
- Description
Remove all items from the collection.
Declaration
procedure Clear(); safecall;Published SDK declaration languages: Pascal.
- Method name
- Add()
- Type
- procedure
- Description
Add an item or handler.
Declaration
procedure Add(aStandardSheet: IStandardSheet); safecall;Published SDK declaration languages: Pascal.
Parameters
- Method name
- DeleteByIndex()
- Type
- procedure
- Description
Delete the item at the specified zero-based index.
Declaration
procedure DeleteByIndex(aIndex: Cardinal); safecall;Published SDK declaration languages: Pascal.
ParametersaIndexCardinalZero-based position within a collection.
- Method name
- Remove()
- Type
- procedure
- Description
Remove an item or handler.
Declaration
procedure Remove(const aStandardSheet: IStandardSheet); safecall;Published SDK declaration languages: Pascal.
Parameters
- Method name
- IndexOf()
- Type
- Integer
- Description
Return the zero-based index of the matching item.
Declaration
function IndexOf(const aStandardSheet: IStandardSheet): Integer; overload; safecall;Published SDK declaration languages: Pascal.
ParametersReturnsZero-based index of the matching item, or-1when no match exists.
- Method name
- Find()
- Type
- IStandardSheet
- Description
Find an item matching the supplied criteria.
Declaration
function Find(aLength: Cardinal; aWidth: Cardinal; aOrnament: TOrnament; aMarginLeft: Cardinal; aMarginTop: Cardinal; aMarginRight: Cardinal; aMarginBottom: Cardinal): IStandardSheet; overload; safecall;Published SDK declaration languages: Pascal.
ParametersaLengthCardinalLength value in TonCut units.aWidthCardinalWidth value in TonCut units.aOrnamentValue for ornament.aMarginLeftCardinalLeft margin value in TonCut units.aMarginTopCardinalTop margin value in TonCut units.aMarginRightCardinalRight margin value in TonCut units.aMarginBottomCardinalBottom margin value in TonCut units.ReturnsThe matching standard sheet interface instance, ornullwhen not found.
- Method name
- Find()
- Type
- IStandardSheet
- Description
Find an item matching the supplied criteria.
Declaration
function Find(aLength: Cardinal; aWidth: Cardinal; aMarginLeft: Cardinal; aMarginTop: Cardinal; aMarginRight: Cardinal; aMarginBottom: Cardinal): IStandardSheet; overload; safecall;Published SDK declaration languages: Pascal.
ParametersaLengthCardinalLength value in TonCut units.aWidthCardinalWidth value in TonCut units.aMarginLeftCardinalLeft margin value in TonCut units.aMarginTopCardinalTop margin value in TonCut units.aMarginRightCardinalRight margin value in TonCut units.aMarginBottomCardinalBottom margin value in TonCut units.ReturnsThe matching standard sheet interface instance, ornullwhen not found.
- Method name
- CheckUniqueName()
- Type
- Boolean
- Description
Check whether a proposed title is unique within the collection.
Declaration
function CheckUniqueName(const aTitle: WideString; const aIgnoreStandardSheet: IStandardSheet): Boolean; safecall;Published SDK declaration languages: Pascal.
ParametersaTitleconstWideStringHuman-readable title.ReturnsReturnstrueif the proposed title is unique within the collection.
IStandardSheetChangeEventHandler
Callback sink consumed by the matching change-event interface.
Source: SDK/include/pascal/uIStandardSheetChangeEvent.pas
Methods
- Method name
- Invoke()
- Type
- procedure
- Description
Handle the event callback when the owning event interface invokes it.
Declaration
procedure Invoke(aSender: IUnknown; aStandardSheet: IStandardSheet; aIndex: Integer); safecall;Published SDK declaration languages: Pascal.
ParametersaSenderIUnknownObject that raised the event.aIndexIntegerZero-based position within a collection.
IStandardSheetChangeEvent
Event interface with Add, Remove, and Invoke hooks for collection or entity change notifications.
Source: SDK/include/pascal/uIStandardSheetChangeEvent.pas
Methods
- Method name
- Add()
- Type
- procedure
- Description
Add an item or handler.
Declaration
procedure Add(aHandler: IStandardSheetChangeEventHandler); safecall;Published SDK declaration languages: Pascal.
Parameters
- Method name
- Remove()
- Type
- procedure
- Description
Remove an item or handler.
Declaration
procedure Remove(aHandler: IStandardSheetChangeEventHandler); safecall;Published SDK declaration languages: Pascal.
Parameters
- Method name
- Invoke()
- Type
- procedure
- Description
Raise the typed change event for the current payload.
Declaration
procedure Invoke(aSender: IUnknown; aStandardSheet: IStandardSheet; aIndex: Integer); safecall;Published SDK declaration languages: Pascal.
ParametersaSenderIUnknownObject that raised the event.aIndexIntegerEvent payload field for index.