Setting of Numpad Decimal Separator

OpenOffice.org 2.0

Document - ID	Specification Owner	Last Change	Status
	Falko Tesch	15.01.04	Final
Conforms to	Iz task 7467
Applies to	All office applications
Task ID(s)	7467
Category	Feature

Abstract

In many European countries, like France or Spain, the keyboard input of the decimal separator key on the numpad of a PC keyboard produces a wrong result. Instead of a needed ',' a '.' will be inserted. Since most people use the numpad to input numbers in their spreadsheet (and other applications) a wrong decimal separator forces the user to “jump” to the main keyboard area and back.

OpenOffice.org now has a switch that will map the appropriate decimal separator of the locale in use to the decimal separator numpad key. This option is on by default.

i-Team Members (The specification Owner is part of the i-Team)

	Name	E-mail Address
User Experience	Falko Tesch	Ft@openoffice.org
Development	Stephan Schäfer	Ssa@openoffie.org
Quality Assurance	Thorsten Martens	Tm@openoffice.org
Documentation	Uwe Fischer	Uf@openoffice.org

Approved for Implementation

	Approved by	Date
User Experience	Falko Tesch	27.01.04
Development (core)	Stephan Schäfer	27.01.04
Development (UI)	Oliver Specht	27.01.04
Quality Assurance	Thorsten Martens	11.02.2004
Documentation	Uwe Fischer	27.01.04
String Review	Elisabeth Matthis	

Document Change History

Rev. Level	Change	Initials	Date
1.0	Initial specification	FT	15.01.04
1.1	Added changes from feedback, corrected errors	FT	27.01.04
1.2	Added approval from QA -> Final	FT	11.02.04

Contents

Glossary	1

1	Motivation	1

2	User Scenarios	1

3	Goals	1

4	Requirements and Dependencies	1

4.1	Requirements	1

4.2	Technical Dependencies	1

5	Competitive Analyses	2

5.1	MS Excel	2

6	Detailed Specification	2

6.1	Decimal Separator Key is OFF	3

6.2	Decimal Separator Key is ON	3

6.3	Behaviour and Dependencies	3

6.4	Error Conditions	4

7	Future Tasks	4

8	Notes	4

9	References	4

Glossary

Term	Description
Numpad	The numeric block on the right side of any 102/105 keys compatible PC-keyboard
Decimal separator	The character that separates integer numbers from their fractional part.
Numpad decimal separator key	The key that resides between the numpad's '0' and 'Enter' key

Motivation

In many European countries, like France or Spain, the keyboard input of the decimal separator key on the numpad of a PC keyboard produces a wrong result. Instead of a needed ',' a '.' will be inserted. Since most people use the numpad to input numbers in their spreadsheet (and other applications) a wrong decimal separator forces the user to “jump” to the main keyboard area and back.

User Scenarios

A French user uses a comma ',' as a decimal separator. But a typical French PC keyboard has a dot '.' on the numpad decimal separator key.

It becomes very awkward for this user to input data that carry also decimal separators, like 123,45, since he has to jump for every ',' away from the numpad keys to the main keyboard part.

Goals

OpenOffice.org 2.0 will be capable of determine the right decimal separator of the current session and will output/use this correct symbol whenever the numpad decimal separator key is pressed.

This feature will work regardless of the keyboard driver and its behaviour will be accessible by the user via UI.

Requirements and Dependencies

Requirements

Detect the input when a numpad decimal separator key is pressed and assign the correct character according to the currently used locale instead.

Technical Dependencies

none

Competitive Analyses

MS Excel

In MS Excel the location to set the decimal (and the thousands) separator is under “Tools – Options – International”.

MS follows the approach that only spreadsheet users are in need of this feature so this feature is only available in/for Excel.

They allow two basic settings:

Use system separators, in which case Excel will read-out the settings made within Windows® “Control Panel” (-> Language Settings) and will use them for decimal and thousand separation.

Individual setting, Excel will use what the user input for decimal and thousands separators.

Since the user can insert any(!) single character within the separator text fields, there is great freedom in choosing the separators. For example pressing the numpad decimal separator key can result in inputting a '®' instead a ','.

Figure 1 MS Excel setting for individual decimal separator

Detailed Specification

OpenOffice.org will add an option that will allow the user to determine if OpenOffice.org should use the keyboard default input or if it should use the standard decimal separator for the locale OpenOffice.org currently uses (see also Figure 2, Page 4)

The string for the checkbox “Same as locale setting” is trailed by a “([space][current decimal separator character][space])”. The [current decimal separator character] will reflect the character that is actually used by the set OpenOffice.org locale from the control above. This variable is not affected by the setting of the “Decimal Separator Key” setting.

Example: The locale setting is “Default” and OpenOffice.org runs on a French locale/system. In this case the string will read “Same as locale setting ( , )” where ',' (comma) is the used decimal separator character for French. In another case for the locale set to “English (Australia)” this character will turn into a '.' (dot).

This option will be ON by default.

Decimal Separator Key is OFF

If the option is OFF OpenOffice.org will behave as it already does. The input of the numpad decimal separator key will always be taken from the keyboard driver. In most cases OpenOffice.org will output the symbol that is printed on the keyboard. Only if the keyboard driver does not correspond with the keyboard layout (example: a US American keyboard driver with a German keyboard layout will output a '.' instead of the printed ',' on the keyboard) the character from the driver will be taken.

Decimal Separator Key is ON

If the option is ON (default) OpenOffice.org will not use the keyboard driver's input/character.

Instead OpenOffice.org will determine that the numpad decimal separator (Windows: keycode 0x6E (VK_DECIMAL), Unix: keycodes 0xFFAC (XK_KP_Separator) or 0xFFAE (XK_KP_DECIMAL)) is pressed.

OpenOffice.org will look up the current set locale (as defined under “Tools – Options – Language Settings – Languages – Locale Setting”) and will use the internal map for locale setting to apply the adequate decimal separator.

Example: The keyboard driver on a French system delivers a '.' . But French people use a ',' as a decimal separator. This setting is already defined in OpenOffice.org's internal table of locale settings.

With this new option on OpenOffice.org will now replace the “incoming” '.' by a correct ',' .

Behaviour and Dependencies

The behavior of this feature applies to all applications and depends exclusively on the set locale. If the locale within OpenOffice.org is changed the decimal separator setting of this new locale will be used.

The setting must apply to all applications and open documents once it is changed and confirmed by closing the Options dialogue with the OK button.

Figure 2 New Option for decimal separator setting

String list

Item	English	German	Comments
Comment	Decimal separator key	Dezimaltrennertaste	
Checkbox	~Same as locale setting ( , )	~Dem Gebietsschema entsprechend ( , )	The brackets enclose the current valid decimal separator character (see Detailed Specification) . There must be a space before and behind the separator character!

Tab Order

Tab order of current dialogue does not change.

Error Conditions

N/a

Future Tasks

While Calc's Number Formatter is able to change the locale “on the fly” Writer's is not. This leads into inconsistent behaviour when changing locales while having an open Writer document and an open Calc spreadsheet.

Due to this limitation the behaviour of the chosen decimal separator (which depends on the current set locale) is also affected.

This issue must therefore be addressed in future releases.

Notes

References

Required - Give references to related documentation, such as engineering designs, technical specs, and other sources for related units. Also include links to documents that other sections in this spec need to refer to, such as user opinions usability test reports.

Setting of Numpad Decimal Separator

Page 5

Http://specs.openoffice.org/g11n/numpad_status/Setting_of_Numpad_Decimal_Separator.sxw

Setting of Numpad Decimal Separator

Falko Tesch

2004-01-15T10:00:54