TXFAWidgetRuntimeOptions
Unit: HPDFXFARuntime
Declaration
TXFAWidgetRuntimeOptions= record
MaxWidgets, MaxValueChars, MaxCalculationPasses, MaxReflowPasses, MaxLayoutOperations: Integer;
ScriptOptions: TXFAFormScriptOptions;
HostTransport: TXFAHostTransport;
OnHostTransactionCompleted: TXFAHostTransactionCompleted;
HostTransportLimits: TXFAHostTransportLimits;
HostModel: TXFAHostModelState;
MeasureText: TXFAMeasureTextFunc;
ResolveInstanceProperty: TXFAResolveInstanceProperty;
ResolveInstanceScope: TXFAResolveInstanceScope;
ResolveWidgetIdentity: TXFAResolveWidgetIdentity;
ResolutionStarted: TXFAResolutionStarted;
ValidateDocument: TXFAUpdateDocumentAction;
MonotonicMilliseconds: TXFAMonotonicMillisecondsFunc;
class function Default: TXFAWidgetRuntimeOptions; static;
end;
Behavior
Call Default before configuring the record; it initializes widget, calculation, reflow, layout, script and host transport limits with nil optional callbacks
ScriptOptions.EnableJavaScript enables general QuickJS events and script objects; HostTransport and OnHostTransactionCompleted supply explicit application effects and transaction outcome coordination
Instance and widget resolution callbacks support independent presentation profiles; MonotonicMilliseconds can supply an application clock for elapsed-time budgets
HostModel starts from TXFAHostModelState.Default; supply application metadata, title and calculation/validation flags before construction, while runtime layout and interaction determine actual pages and focus
Existing implicit data bindings use live native lookup bounded independently by MaxLayoutOperations, with transaction deadline checks during larger scans; they do not consume ScriptOptions.Limits.MaxOperations as repeated SOM parsing
Explicit bind selectors, missing-value creation and other script operations retain their transaction-wide limits; see Implicit Binding Budgets for lookup, rollback and deadline behavior
Related APIs
Explicit XFA Host Transport, TXFAHostTransaction and Interactive Dynamic XFA Widget Runtime