pdf-issues icon indicating copy to clipboard operation
pdf-issues copied to clipboard

What does multi-select mean on a combo box field?

Open lrosenthol opened this issue 1 year ago • 5 comments

32K-2, 12.7.5.4, Choice Fields, addresses both scrollable list boxes as well as combo boxes. In table 233 of that section, it lists the field flags specific to choice fields - one of which is MultiSelect.

What does it mean to have this on a combo box? What is presented to the user in this case? What is the expected AP for such an annotation?

I'd like to propose that we restrict this value to ONLY list boxes, based on it not making sense for combo boxes and, AFAICT, no implementations actually support such a scenario.

lrosenthol avatar Sep 11 '24 18:09 lrosenthol

Just noting that some UI frameworks do support multi-selection combo boxes, even if the common O/Ses don't. But I agree they are a far less common UI metaphor so platform independence and interoperability are considerations. A possible upside is that a multi-select combo box can take up less screen space (single row) than a typical list box.

Thumbnail-2092500069 wpf-comboboxadv-dynamic-checked-items-215240824 78921354-12a8f580-7a95-11ea-969f-f2deb64310b3-1223350620

petervwyatt avatar Sep 12 '24 02:09 petervwyatt

From Table 233 Bit 22 MultiSelect

Was:

(PDF 1.4) If set, more than one of the field’s option items may be selected simultaneously; if clear, at most one item shall be selected.

Proposed:

(PDF 1.4) If set, more than one of a list box option items may be selected simultaneously; if clear, at most one item shall be selected.

There is a related problem with the text describing the /I key in table 234. The /I key is needed for the case where the list of options (/Opt) has duplicate values. /I tells the processor the index(es) of which one is selected. The wording for the key is specific to the multi-select case. But a single select combobox may also have duplicate entries.

Was:

(Sometimes required, otherwise optional; PDF 1.4) For choice fields that allow multiple selection (MultiSelect flag set), an array of integers, sorted in ascending order, representing the zero-based indices in the Opt array of the currently selected option items. This entry shall be used when two or more elements in the Opt array have different names but the same export value or when the value of the choice field is an array. If the items identified by this entry differ from those in the V entry of the field dictionary (see discussion following this Table), the V entry shall be used

Proposed:

(Sometimes required, otherwise optional; PDF 1.4) For choice fields, an array of integers, sorted in ascending order, representing the zero-based indices in the Opt array of the currently selected option items. This entry shall be used when two or more elements in the Opt array have different names but the same export value. For populated fields that do not allow multiple selection (via MultiSelect flag) the array shall have a single entry. If the item(s) identified by this entry differ from those in the V entry of the field dictionary (see discussion following this Table), the V entry shall be used

JohnBrinkman avatar Oct 10 '24 10:10 JohnBrinkman

TWG agrees for the list box change

lrosenthol avatar Nov 07 '24 09:11 lrosenthol

TWG asks that @JohnBrinkman and @lrosenthol work on the proposed text for the /I key.

lrosenthol avatar Nov 07 '24 09:11 lrosenthol

Fix for Table 234 applied.

Waiting on @JohnBrinkman and @lrosenthol for the proposed text for the /I key.

petervwyatt avatar Nov 13 '24 07:11 petervwyatt