tabIndex property
int
get
tabIndex
Gets or sets the tab index for form fields.
The default value is 0.
Implementation
int get tabIndex {
if (_fieldHelper.isLoadedField) {
if (page != null) {
final PdfDictionary annotDic = _fieldHelper.getWidgetAnnotation(
_fieldHelper.dictionary!, _fieldHelper.crossTable);
final PdfReference reference =
PdfPageHelper.getHelper(page!).crossTable!.getReference(annotDic);
_tabIndex =
PdfPageHelper.getHelper(page!).annotsReference.indexOf(reference);
}
}
return _tabIndex;
}
set
tabIndex
(int value)
Implementation
set tabIndex(int value) {
_tabIndex = value;
if (_fieldHelper.isLoadedField &&
page != null &&
page!.formFieldsTabOrder == PdfFormFieldsTabOrder.manual) {
final PdfAnnotation annotationReference = WidgetAnnotationHelper.load(
_fieldHelper.dictionary!, _fieldHelper.crossTable!);
final PdfReference reference = PdfPageHelper.getHelper(page!)
.crossTable!
.getReference(IPdfWrapper.getElement(annotationReference));
int index =
PdfPageHelper.getHelper(page!).annotsReference.indexOf(reference);
if (index < 0) {
index = _fieldHelper.annotationIndex;
}
final PdfArray? annots =
PdfAnnotationCollectionHelper.getHelper(page!.annotations)
.rearrange(reference, _tabIndex, index);
PdfPageHelper.getHelper(page!)
.dictionary!
.setProperty(PdfDictionaryProperties.annots, annots);
}
}