TXFAWidgetRuntimeOptions

Unité : HPDFXFARuntime

Déclaration

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;

Comportement

Appelez Default avant de configurer le record ; il initialise les limites de widgets, calculs, reflow, layout, scripts et transport de host avec des callbacks optionnels nil

ScriptOptions.EnableJavaScript active les événements QuickJS généraux et objets de script ; HostTransport et OnHostTransactionCompleted fournissent les effets applicatifs explicites et la coordination des issues de transactions

Les callbacks de résolution d'instances et de widgets prennent en charge des profils de présentation indépendants ; MonotonicMilliseconds peut fournir une horloge applicative pour les budgets de temps écoulé

HostModel part de TXFAHostModelState.Default ; fournissez les métadonnées applicatives, le titre et les drapeaux de calcul/validation avant la construction, tandis que le layout et l'interaction du runtime déterminent les pages et le focus réels

Les bindings de données implicites existants utilisent une recherche native vivante bornée indépendamment par MaxLayoutOperations, avec des vérifications d'échéance de transaction pendant les scans plus larges ; ils ne consomment pas ScriptOptions.Limits.MaxOperations comme du parsing SOM répété

Les sélecteurs de bind explicites, la création de valeurs manquantes et les autres opérations de script conservent leurs limites à l'échelle de la transaction ; voir Budgets de binding implicite pour le comportement de recherche, rollback et échéance

API associées

Transport de host XFA explicite, TXFAHostTransaction et Runtime de widgets XFA dynamique interactif