# Class ChoiceWidget

Choice field widget.

#### Hierarchy

- WidgetAnnotation
  - ChoiceWidget

#####
Index

### Properties

alternativeText
annotationName
annotationType
appearanceColor
borderStyle
color
combo
contents
convertToContent
creationDate
display
fieldName
fieldType
fieldValue
fontName
fontSize
gcProps
hasEditFlag
id
invisibleFlag
irtAnnotations
isRichContents
locked
modificationDate
multiSelect
opacity
options
orderIndex
orientation
parentAnnotation
parentId
popupId
printableFlag
readOnly
rect
redacted
redactedBy
referenceAnnotationId
referenceType
rotate
sharedChanges
state
stateModel
subject
subtype
textAlignment
title

## Properties

### `Optional` alternativeText

alternativeText?: string

An alternate field text to be used as tooltip. This text is also useful when extracting the document’s contents in support of accessibility to users with disabilities or for other purposes.

Inherited from WidgetAnnotation.alternativeText

### annotationName

annotationName: string

Annotation name (NM entry).

Inherited from WidgetAnnotation.annotationName

### annotationType

annotationType: AnnotationTypeCode

Annotation type.

Inherited from WidgetAnnotation.annotationType

### `Optional` appearanceColor

appearanceColor?: string

Appearance color.

Inherited from WidgetAnnotation.appearanceColor

### `Optional` borderStyle

borderStyle?: { dashArray?: number[]; horizontalCornerRadius: number; style: number; verticalCornerRadius: number; width: number }

Annotation's border style.

#### Type declaration

- ##### `Optional` dashArray?: number[]

  Border dash pattern. Used when the border style is dashed.

- ##### horizontalCornerRadius: number

- ##### style: number

  Border style. Possible values: 1 - solid style (default), 2 - dashed style.

- ##### verticalCornerRadius: number

- ##### width: number

  Border width.

Inherited from WidgetAnnotation.borderStyle

### `Optional` color

color?: string

Annotation color.

Inherited from WidgetAnnotation.color

### combo

combo: boolean

Combo box field flag.

### `Optional` contents

contents?: string

The text (or rich text) string that shall be displayed in the pop-up when the annotation is opened.

Inherited from WidgetAnnotation.contents

### `Optional` convertToContent

convertToContent?: boolean

Indicates whether the annotation will be converted to content when the document is saved.

Inherited from WidgetAnnotation.convertToContent

### creationDate

creationDate: string

Creation date.

Inherited from WidgetAnnotation.creationDate

### `Optional` display

display?: "visible" | "hidden"

The field is used for compatibility with Adobe Acrobat Reader.

Inherited from WidgetAnnotation.display

### fieldName

fieldName: string

Field name.

Inherited from WidgetAnnotation.fieldName

### fieldType

fieldType: WidgetFieldTypeName

Field type.

Inherited from WidgetAnnotation.fieldType

### fieldValue

fieldValue: string | string[]

Field widget value.

Inherited from WidgetAnnotation.fieldValue

### fontName

fontName: string

Font name. Available standard font names: 'Helv' (Helvetica), 'HelveticaItalic' (Helvetica Italic), 'HelveticaBold' (Helvetica Bold), 'HelveticaBoldItalic' (Helvetica Bold Italic), 'TimesRegular' (Times Roman), 'TimesItalic' (Times Roman Italic), 'TimesBold' (Times Roman Bold), 'TimesBoldItalic' (Times Roman Bold Italic), 'CourierRegular' (Courier), 'CourierItalic' (Courier Italic), 'CourierBold' (Courier Bold), 'CourierBoldItalic' (Courier Bold Italic), 'Symbol' (Text symbol letters)

### Default

"Helv"

Inherited from WidgetAnnotation.fontName

### fontSize

fontSize: number

Font size.

Inherited from WidgetAnnotation.fontSize

### `Optional` gcProps

gcProps?: GcProps

Additional custom properties. Only available for use with DsPdf.

Inherited from WidgetAnnotation.gcProps

### hasEditFlag

hasEditFlag: boolean

Gets or sets a value indicating whether the combo box includes an editable text box as well as a drop-down list.

### id

id: string

Annotation id.

Inherited from WidgetAnnotation.id

### invisibleFlag

invisibleFlag: boolean

true if the annotation is hidden.

Inherited from WidgetAnnotation.invisibleFlag

### `Optional` irtAnnotations

irtAnnotations?: AnnotationBase[]

Internal helper property. Primary annotation's children annotations. Note, the array contains all children annotations, including annotations what is not direct descendant of the primary annotation.

Inherited from WidgetAnnotation.irtAnnotations

### isRichContents

isRichContents: boolean

Specifies whether or not the RichContent mode is used for the contents property.

Inherited from WidgetAnnotation.isRichContents

### locked

locked: boolean

Specifies whether the annotation can be deleted or its properties (including position and size) can be modified by the user.

### Example

    var viewer = new DsPdfViewer('#root', { renderInteractiveForms: true , supportApi: { apiUrl: 'api/pdf-viewer', webSocketUrl: false } });
    viewer.addDefaultPanels();
    viewer.addAnnotationEditorPanel();
    viewer.addFormEditorPanel();
    viewer.addReplyTool();
    viewer.onAfterOpen.register(()=>{
        // Lock all text annotations after document open:
        const resultArr = await viewer.findAnnotation(1, // 1 - AnnotationTypeCode.TEXT
                              { findField: 'annotationType',
                      		    pageNumberConstraint: 1, findAll: true });
        viewer.updateAnnotations(0, resultArr.map((data)=> { data.annotation.locked = true; return data.annotation; }));
    });
    // Open Annotations.pdf
    viewer.open('Annotations.pdf');

Inherited from WidgetAnnotation.locked

### modificationDate

modificationDate: string

Modification date.

Inherited from WidgetAnnotation.modificationDate

### multiSelect

multiSelect: boolean

List box flag.

### `Optional` opacity

opacity?: number

Annotation opacity.

Inherited from WidgetAnnotation.opacity

### options

options: { displayValue: string; exportValue: string }[]

Choice options.

### orderIndex

orderIndex: number

The field order index.

Inherited from WidgetAnnotation.orderIndex

### `Optional` orientation

orientation?: number

The number of degrees by which the widget annotation shall be rotated counterclockwise relative to the page. The value shall be a multiple of 90. Default value: 0.

Inherited from WidgetAnnotation.orientation

### `Optional` parentAnnotation

parentAnnotation?: AnnotationBase

Resolved reference to parent annotation.

Inherited from WidgetAnnotation.parentAnnotation

### `Optional` parentId

parentId?: string

Parent annotation id for popup annotation.

Inherited from WidgetAnnotation.parentId

### `Optional` popupId

popupId?: string

Popup id if any.

Inherited from WidgetAnnotation.popupId

### printableFlag

printableFlag: boolean

Specifies whether or not the annotation can be printed.

Inherited from WidgetAnnotation.printableFlag

### readOnly

readOnly: boolean

Read-only flag.

Inherited from WidgetAnnotation.readOnly

### rect

rect: number[]

The annotation's bounds rectangle: [x1, y1, x2, y2]. (0, 0) is the bottom left corner of the page.

Inherited from WidgetAnnotation.rect

### redacted

redacted: boolean

Indicates whether the current annotation has been redacted. Redacted annotations will be removed from the document after saving.

Inherited from WidgetAnnotation.redacted

### redactedBy

redactedBy: string

ID of the Redact annotation that was used to redact the current annotation.

Inherited from WidgetAnnotation.redactedBy

### referenceAnnotationId

referenceAnnotationId: string

Id of the primary annotation to which this annotation belongs. ("in reply to" value).

Inherited from WidgetAnnotation.referenceAnnotationId

### referenceType

referenceType: "R" | "Group"

R - this annotation is reply to the primary annotation specified by field referenceAnnotationId. Group - annotation should be grouped with primary annotation specified by field referenceAnnotationId.

Inherited from WidgetAnnotation.referenceType

### `Optional` rotate

rotate?: number

The number of degrees by which the annotation shall be rotated relative to the page.

Inherited from WidgetAnnotation.rotate

### `Optional` sharedChanges

sharedChanges?: { [userName: string]: number }

Hash object with information about users who change this annotation. key - user name value - UNIX UTC timestamp when changes were added.

#### Type declaration

- ##### [userName: string]: number

Inherited from WidgetAnnotation.sharedChanges

### `Optional` state

state?: AnnotationMarkedStateType | AnnotationReviewStateType

Beginning with PDF 1.5, Annotations may have author-specific state associated with them. The state is not specified in the annotation itself but in separate text annotation that refers to the original annotation by means of its 'IRT' ("in reply to") entry.

Inherited from WidgetAnnotation.state

### `Optional` stateModel

stateModel?: AnnotationStateModel

The state model corresponding to state.

Inherited from WidgetAnnotation.stateModel

### subject

subject: string

Text representing a short description of the subject being addressed by the annotation. The 'subject' is the meta information property and it can be used to group, sort or filter annotations.

Inherited from WidgetAnnotation.subject

### subtype

subtype: AnnotationTypeName

Annotation sub-type. Possible values are: 'Text', 'Link', 'FreeText', 'Line', 'Square', 'Circle', 'Polygon', 'PolyLine', 'Highlight', 'Underline', 'Squiggly', 'Strikeout', 'Stamp', 'Caret', 'Ink', 'Popup', 'FileAttachment', 'Sound', 'Movie', 'Widget', 'Screen', 'PrinterMark', 'TrapNet', 'WaterMark', 'Redact', 'Signature', 'ThreadBead', 'RadioButton', 'Checkbox', 'PushButton', 'Choice', 'TextWidget', 'RichMedia'

Inherited from WidgetAnnotation.subtype

### textAlignment

textAlignment: TextAlignmentType

The alignment of the text.

Inherited from WidgetAnnotation.textAlignment

### title

title: string

The text label that shall be displayed in the title bar of the annotation's popup when open and active. This entry shall identify the user who added the annotation.

Inherited from WidgetAnnotation.title