Drop-down List Box & Combo Box Controls

OpenOffice.org 2.0 Later Controls

Document - ID	Specification Owner	Last Change	Status
	Matthias Müller-Prove	05/12/2004	final
Conforms to	
Applies to	VCL
Task ID(s)	i23310 95355: Scrolling via Mouse Wheel Moves only Selection in LB CWS: SRC680/vcl19
Category	Feature

Abstract

The drop-down list box controls and combo box controls support the platform standards of Windows and Gnome in the area of key stroke interaction.

i-Team Members

	Name	E-mail Address
User Experience	Matthias Müller-Prove /MMP	mprove@sun.com
Development	Stephan Schäfer /SSA	stephan.schaefer@sun.com
Quality Assurance	Ulf Stroehler /US	ulf.stroehler@sun.com
Documentation	Frank Peters /FPE Uwe Fischer /UFI	fpe@sun.com uwe.fischer@sun.com
		mailto iTeam

Approved for Implementation

	Approved by	Date
User Experience	Frank Loehmann	10/01/03
Development	SSA	10.12.03
Quality Assurance	US	10.12.03
Documentation	FPE UFI	02.10.03 10.12.03
String Review	n/a	n/a

Document Change History

Rev. Level	Change	Initials	Date
	initial version	MMP	9/17/03
	Notes: FL-1, SSA-1, UFI-1	MMP	10/6/03
	Note by US-1, US-2	MMP	10/17/03
	final version, request for approval	MMP	12/8/03
1.0	added definition for Space bar to apply value approved by UFI, SSA moved Space bar issues to Future issues approved by US	MMP	12/10/03
	This feature has to be postponed, as it requires severe changes in the handling of popup windows.	SSA	12/9/04

Contents

Glossary	1

1	Motivation	1

2	User Scenarios	1

2.1	Scenario 1	1

2.1.1	Discussion	1

3	Goals	1

4	Requirements and Dependencies	2

4.1	Requirements	2

4.2	Technical Dependencies	2

5	Competitive Analyses	2

5.1	GOMS Analysis for Drop-down List Box	2

5.2	GNOME	3

6	Detailed Specification	4

6.1	Keyboard shortcuts	4

7	Future Tasks	4

7.1	Treatment of space bar	4

8	Notes	4

9	References	5

Glossary

Term	Description
Combo Box	A combo box controls is a combination of a list box and a text field control. The user can choose from a list of items and enter new items.
Combo BoxGHIG	term used in [GHIG, Combo Boxes]: Option menus are used to select from a mutually exclusive set of options. They can be useful when there is insufficient space in a window to use a group of radio buttons or a single-selection list, with which they are functionally equivalent.
Drop-down List Box	A drop-down list box control is a one line version of a list box. The user can choose from a list of items, but can not enter new items.
List Box	A list box is a one-column arrangement of items. The user can choose one or several items from the list.
Text Box	A text box provides a rectangular space in which users can view, type, and edit multiple lines of text.
Text AreaJLF	[JLF] term for Text Box: (http://java.sun.com/products/jlf/ed2/book/HIG.Text4.html)
Text Field	A text field control is a special text box to edit just one line of text.
GOMS	Goals – Operators – Methods – Selection Rules; The GOMS model is used here for analyzing the interaction design of the controls. [GOMS]
Option MenuGHIG	term used in [GHIG, Option Menus]: Option menus are used to select from a mutually exclusive set of options. They can be useful when there is insufficient space in a window to use a group of radio buttons or a single-selection list, with which they are functionally equivalent.

Motivation

This document specifies the interaction of the drop-down list box and the combo box on a very detailed level. This is necessary because some common operations do not match the expectation of the user.

User Scenarios

Scenario 1

Sally likes to change the numbering style of a given paragraph. She opens the Paragraph dialog, selects the Numbering tab and changes the Numbering Style to “List 4” -- for some reason the change does not take effect. She opens the dialog again and finds the Numbering Style set to the original value “None”.

Discussion

Sally did not notice that the combo box has to be used in a certain way. Highlighting her choice with the arrow keys and clicking the list box arrow button with the mouse does not apply the new value in OOo 1.1.

Goals

Update the behavior of drop-down list box and the combo box controls to be conform with common standards on Windows.

Requirements and Dependencies

Requirements

OOo2.0 will make use of native platform controls. Nevertheless, the user interaction with these controls remains in the scope of VCL.

Technical Dependencies

none

Competitive Analyses

GOMS Analysis for Drop-down List Box

The following GOMS script describes the interaction with a drop-down list box control for Windows and Gnome. It is used to focus the subtle details that are of interest for this discussion.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31	GOAL: Select item H from list of items . [OPTIONAL: . . GOAL: Open list box . . . Point to text field or list box arrow button . . . Press mouse button . ] . GOAL: Choose item H . . [SELECT: . . . GOAL: Choose item H with one mouse stroke ...if mouse is pressed . . . GOAL: Choose item H with more than one mouse click . . ] GOAL: Choose item H with one mouse stoke // mouse is currently pressed . GOAL: Highlight item H . . Point to item H in list // drag scroll might be // necessary . GOAL: Select item H and close list box . . Release mouse button GOAL: Choose item H with more than one mouse click . Release mouse button ...if mouse is pressed . GOAL: Highlight item H . . [SELECT: . . . Point to item H in list . . . Use keyboard and up/down arrow keys to highlight H // this opens the list box if it // is not already open . . ] . GOAL: Select item H and close list box . . [SELECT: . . . Single Mouse Click // might be still in text // field or list box arrow // button of drop-down list // box control . . . Type Return . . ] GOAL: Single Mouse Click . Press mouse button . Release mouse button

The interaction model for drop-down list box controls and combo boxes differ at line 4. The user has to hit the list box arrow button to open the list box. A click to the text field part of the combo box sets the text cursor for editing the text item.

The error of scenario 1 occurred at line 26 in the GOMS script. The highlighted item is not applied if a) the item was highlighted using the keyboard and b) the list box is closed by clicking the list box arrow button.

GNOME

The GOMS analysis applies without any modifications to GNOME.

The standard GNOME control Option MenuGHIG changes its value if the user opens it with a mouse click, navigates to an item with the arrow keys and closes the control with a mouse click to the same position where the control was opened.

The same holds true for Combo BoxesGHIG.

Detailed Specification

In addition to the behavior in OOo 1.1, a click to the list box arrow button – at line 26 of the GOMS model in the previous chapter – applies the currently highlighted item as the new value of the control.

Keyboard shortcuts

Term	Description
ESC	pressing ESC closes the list box without changing the original value of the control
Alt-Down Arrow	opens the list box if the control has the focus
Alt-Up Arrow	closes the list box, but does not apply a new value yet
Tab	pressing the Tab key closes the list box and applies the selected value as the new value of the control Comment: This is a new behavior for OOo2.0

Future Tasks

Treatment of space bar

US:

I just found out that GNOME, Java, Motiv and (n)curses applications also provide the selection of an item by hitting the SPACE key. This isn't restricted to combo- or list boxes, but works in all kind of menus.
In OOo1.1 up to now, I only found two dialogs where SPACE selects an item:
* in the Gallery when un-/selecting a graphic
* in the Setup, when un-/selecting modules to be installed
For this Spec I'd like to see that in addition to Return also SPACE selects an item.

MMP:

For drop-down list boxes pressing the space bar closes the list box and applies the selected value as the new value of the control
Comment: This does not apply to combo box controls, because a space needs to be interpreted as an entry to the text field part of the control.

US:

1. combo boxes and list boxes would behave differently - Consistency issue.
2. from a technical perspective this should be feasible:
Space should only select an item in the already opened list box. Thus the focus should be in the list, and not in the text field. Therefor Space could do a SelectItem, followed by a CloseList and then the focus changes back to the text field. Now with the focus in the text field, Space would be interpreted literally as character.

Notes

none

References

[GOMS]	http://www.dfki.de/~jameson/kev/slides/kev8.pdf

[JLF]	Java Look and Feel Design Guidelines, 2nd ed. http://java.sun.com/products/jlf/ed2/guidelines.html

[GHIG]	GNOME Human Interface Guidelines
http://developer.gnome.org/projects/gup/hig/

<Required – This paragraphs gives the audience idea of what to aspect from this document. It should be described shortly what problem will be solved.>

The source of software product implementation and change is the I-Team (Implementation Team). I-Teams are typically comprised of people who have skills in the areas of Product Marketing, Development Engineering, Technical Publications, and Test Engineering. I-Teams define the features or set of changes (based on input from SCs, customers, Engineering, or Marketing), plan the implementation project, perform the implementation and testing...

Drop-down List Box & Combo Box Controls

Page 5

http://specs.openoffice.org/ui_in_general/controls/DropDownListBox_ComboBox.sxw

Matthias Müller-Prove

2003-09-17T17:28:36

Matthias Müller-Prove