Enclosed Characters

OpenOffice.org
target is “Office Later”

Task ID(s)

n/a yet

Category	Specification Affects

<Other>

Abstract

East-Asian text processing uses special ways of font effects. One font effect is Enclosed Characters. This means that one up to three characters get enclosed in a shape.

This feature is also one step into the MS interoperability direction since MS word has this feature, too.

i-Team

Specification Owner	Falko Tesch	Falko@sun.com
Marketing (MA)	Susan Jefferies	Sunsan.jefferies@sun.com
User Experience (UX)	Falko Tesch	Falko@sun.com
Development(DEV)	Tbd	tbd
Quality Assurance (QA)	Stefan Baltzer	Stefan.baltzer@sun.com
Documentation (DOC)	Frank Peter	Frank.t.peters@sun.com

Specification Reviews

Version	Reviewer	Comment
Reviewed by UX <Date>	<Name>	<Comment>
UI String Review <Date>		
Reviewed by QA <Date>		
Reviewed by DOC <Date>		

Document History

Version	Author	Comment
Draft 09/07/03	Falko Tesch	
10/07/03	Matthias Müller-Prove	Internal Review
Next Draft 11/07/03	Falko Tesch	Draft based on review 1st input
09/06/04	Matthias Müller-Prove	added string table for menu changes changed “Enclosed Characters” to “Enclose Characters” to match MS's terminology
Final		

Contents

Glossary	1

1	Motivation	1

2	Goals	1

2.1	How does this feature meet the requirements	1

3	Dependencies	1

3.1	Technical Dependencies / Requirements	1

4	Detailed Specification	1

4.1	How to access this feature	2

4.2	How this feature works	2

4.3	Behaviour when selecting text	2

4.4	Behaviour for applying formatting	3

4.5	Function of Dialogue Controls/Entries	3

4.5.1	Characters	3

4.5.2	Enclose	3

4.5.3	Standard Button Set	4

4.6	Screen Shot / Mock-Up	5

4.7	Formatting	5

4.7.1	General	5

4.7.2	Special	5

4.8	Select, Cut, Copy, Paste	5

4.9	String list	5

4.10	Error Conditions	6

5	Future Tasks	6

6	Legal Issues	6

7	Notes	7

References	7

Glossary

Term	Description
CJK	Chinese Japanese, Korean support
CTL	Complex Text Layout
Hancom	popular Korean office suite (http://kr.hancom.com)

Motivation

East-Asian users are used to have Enclosed Characters as a formatting aid.

MS Word as well as Ichitaro and Hancom have this feature. Further this feature is important for importing and exporting MS Word documents that contain Enclosed Characters to preserve such formatting.

Having Enclosed Character formatting enhances Office acceptance on the East-Asian markets as well as it enhances MS interoperability.

Goals

With this new feature the user will be able to insert and create Enclosed Characters as well as apply different formatting on it. Also a minimum requirement is to meet (or exceed) the set of functionality from MS Word 2002.

Instead of just copycat MS Word's functionality and UI another goal is to avoid design errors made in Word and to create a more user-orientated UI for Office.

Instead of restricting this feature to our word processor this feature will be available in all applications. Also features that local competitors (that are not covered by MS word) will be taken in consideration.

How does this feature meet the requirements

This feature must be easy-to-use from any MS Word and introduce a better to use interface with all crucial features not in word added.

Dependencies

Technical Dependencies / Requirements

Enhancement have to be done on VCL to provide a uniform interface and formatting in all applications (Writer, Impress/Draw and Calc).

The menu structure in all applications must be changed (see Detailed Specification)

Detailed Specification

Enclosed Characters can be added based on existing text or by inserting new text.

Enclosed Characters are a group of one or more (max. 3) consecutive characters (not space!) that are hemmed by one of four shapes (circle, square, triangle or diamond).

This formatting is mostly used for month names, numbers and the like.

How to access this feature

The necessary UI is accessed through the main menu entry “Format – Asian Layout – Enclosed Characters...” or through a new icon in the “Function Bar” for “Formatting”.

Menu Entry

The menu entry is only active when CJK support is enabled.

Menu entry position (blue = shifted entry, red = new entries):

Format

+-----------------+

| Default |

+-----------------+

| Character... |

~~~~~ ~

| Columns... |

+-----------------+

| Case/Characters |

+-----------------+------------------------+

| Asian Layout -> | Ruby |

+-----------------+ Enclose Characters... |

...... +------------------------+

Item	English	German	Comments
Menu Item	Asian Layout	##	
Menu Item	~Enclose Characters...	##	

Icon in Function Bar

The icon for Enclosed Characters is only activated when CJK support is enabled. The icon is to be placed in the Function Bar between the U icon (for underlined) and the AA icon (for Superscript). Within the icon list of “Visible Buttons” (right-click on “Function Bar”) it is placed below the U icon (for underlined) and above AA icon (for Superscript).

TODO: New slot needs tbd., ICON still missing

Icon Suggestion:

How this feature works

There are limitations of which characters and how many can be enclosed.

for Unicode (full width) characters there is a maximum of one character the can be enclosed.

for single byte (half width) characters there is a maximum of three characters that can be enclosed.

every character (single and double byte) can be enclosed apart from a SPACE and a TAB. Those will always be ignored for enclosing.

the following formatting do not allow enclosing (forbidden formatting):

already enclosed characters

(grouped characters, not existing yet)

two lines in one line text (see “Format - Character - Asian Layout - Two lines in one”)

Behaviour when selecting text

Basic principal on selected text: The “Enclosed Character” dialogue will always reflect the current selected text by its control settings.
Example: If an already triangular enclosed non-shrunken character is selected the fourth enclosure button (see Enclose) is active and the “Shrink text” option button is unchecked.

For no selection made the dialogue will use its in Function of Dialogue Controls/Entries defined default settings.

Scenario 1: the user selects text and then invokes the function/dialogue

The user has selected one or more characters and opens the modal dialogue.

The following happens if the user selects

more than one Unicode character or more than three consecutive half width characters the supernumerary characters get silently cut off and only the first or first three characters appear in the drop down text box.

a number of characters with a SPACE, TAB or forbidden formatting in front the SPACE or TAB will be ignored and selection will start with the first valid character.

a number of characters with a SPACE, TAB or forbidden formatting in between or at the end the SPACE, TAB or forbidden formatting will be ignored and selection will end before the first SPACE, TAB or forbidden formatting appears.

no valid characters the drop down text box stays empty.

In all cases the initially made selection will be trimmed according to the pasted selection in the dialogue. Example: The user selects four characters and invokes the dialogue the first three will be pasted into the drop down text box and the selection in text will be trimmed to the first three characters. Only the trimmed selection of characters will show in the drop down text box (and eventually in the history list).

Note: An “Enclosed Character” is to be treated as a Unicode character.

Scenario 2: the user made no selection and invoke the dialogue

The drop down text field will appear empty with a focussed text cursor in it. The user can input all valid characters. If the user tries to input a SPACE (TAB will anyway be used for keyboard navigation), more than one Unicode or more than three single byte characters this input gets ignored. A short system beep will also give the user an audio feedback that no more input can be done or that there was illegal input. Since this feature is very common with East-Asian users (and those who really need this feature) no further information (alert box etc.) need to be invoked on errors.

Behaviour for applying formatting

Once the user selected/input the text that needs to be be formatted a selection through five big graphical buttons will assign the desired enclosing style.

Further adjustments can be made by (de)selecting two options below the button set.

While the above more or less describes how to apply an enclosure the next paragraph will describe the two ways how to disable an already made disclosure:

Select the Enclosed Character and choose “Format - Default” from the main menu. This re-format the selection to its default format style.

Select the Enclosed Character and open the “Enclosed Character” dialogue. Now by choosing the first big button (see Enclose) the enclosure will be disabled and the enclosed characters will be “freed” back to their initial assigned style.
Note: Despite option 1. this will only disable enclosing but not any other hard formatting assigned to the character(s).

Function of Dialogue Controls/Entries

Characters

Display and input field for (selected) text. The drop down list contains the history list of the last 10 made selection. This list temporary and is depleted when current session (document) is closed. This list is document specific and is not available in other (parallel) sessions.

Enclose

Enclosure section consists of 4 major buttons (radio button behaviour, a preview pane and 2 option checkboxes.

First Button (placeholder):

Activating this button will disable any disclosure made on the selected text (if any). In case of no existing enclosure this button will simply leave the selected unaltered.

Default: ON

Second Button (circle):

Activating this button encloses the character(s) with a circle

Default: OFF

Third button (square):

Activating this button encloses the character(s) with a square.

Default: OFF

Fourth button (triangle):

Activating this button encloses the character(s) with an isosceles triangle

Default: OFF

Fifth button (diamond):

Activating this button encloses the character(s) with an isosceles diamond

Default: OFF

Preview pane:

In this pane the current selected layout is displayed. This includes possible formatting of the to-be-enclosed text (like text colour, font style, font effects etc.). Also two thin grey (#C0C0C0) lines are shown in the preview pane to hint the text's baseline and top-line.

Shrink text:

Activating this option will shrink the to-be-enclosed character(s) to such degree that the enclosed shape will not grow below the baseline and above the top-line of the surrounding text.

De-activating this option will leave the to-be-enclosed characters in their original size and will size the enclosing shape to fully enclose the characters. In this case the shape will gow above the top-line and below the baseline.

for both options the enclosing shape must not clip the Enclosed Character(s).

Default: ON

Invert text:

Activating this option will produce a negative image of the shape's content. Note: only content that is within the shape will be inverted, not the shape's border nor font effect “outside” the shape (example: underlines).

Default: OFF

Standard Button Set

OK

OK confirms all changes made applies them and closes the dialogue returning to the just edited text in the document.

Default: Focus ON

Cancel

Closes the dialogue without any changes made.

Help

Invokes the help.

Reset

Resets the dialogue content to its initial state when it was invoked. All changes made within this time will be dismissed.

Screen Shot / Mock-Up

For text reference click on area in images.

Figure 1: Enclosed Characters Dialogue for a previously selected underlined and italic '9'

Formatting

General

Enclosing shapes always inherit colour, typeface and relief options (embossed, engraved, outline, shadow, blinking) of the Enclosed Character(s).

Any formatting applied to already Enclosed Characters will always apply to the shape and the character(s).

Special

Aligned formatting such as underlines or emphasis marks must always stay in-line with the surrounding formatting. Example: The line of underlined text must not move no matter if the text in enclosed with “Shrink text” option on or off.
MS Word is a good example how not to do it.

CTL: Partially selected ligatures will be separated back into their original characters and the one that is selected will be enclosed. The same goes for diacritic marks.

CJK: Converting Enclosed Characters from horizontal to vertical layout will rotate the shape according to the rotation (or not-rotation) of the Enclosed Characters.
Example: If an Enclosed Characters that is based on a non-rotating half-width font is changed from horizontal to vertical writing layout the whole shape will be turned 90° clockwise.

Select, Cut, Copy, Paste

A selected Enclosed Character is always to be treated as one single character.

Cut, copy and paste an Enclosed Character will treat it as a single object when using StarOffice clipboard format.
When pasting an Enclosed Character any other clipboard format than StarOffice only the Enclosed Characters (if applicable incl. their formatting) will be pasted.

String list

Reused/already existing strings are coloured grey.

Item	English	German	Comments
Caption	Enclose Characters	Eingeschlossene Zeichen	
Drop down Text Box Caption	Characters	Zeichen	
Second caption	Enclosure	Einschließung	
Caption/tip help for big button #1	None	Keine	
Caption/tip help for big button #2	Circle	Kreis	
Caption/tip help for big button #3	Square	Quadrat	
Caption/tip help for big button #4	Triangle	Dreieck	
Caption/tip help for big button #5	Diamond	Raute	
Option #1	~Shrink text	~Text verkleinern	
Option #2	~Invert text	Text ~umkehren	Personally I favour “invertieren” for German
Button	OK	OK	
Button	Cancel	Abbrechen	
Button	Help	Hilfe	
Button	Reset	Zurück	

Tab Order

Tab order will be clockwise.

Key Board Shortcuts

There are no keyboard shortcuts.

Error Conditions

A system beep will be triggered of the user inputs an invalid or supernumerary characters into the text box.

Apart from this audible feedback all invalid or supernumerary input will silently be dumped.

Future Tasks

Nothing yet.

Legal Issues

None.

Notes

None

References

Format Menu	http://specs.openoffice.org/writer/menus/FormatMenu.sxw

<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...

Recommended - Please list of technical terms or specialized field of knowledge here.

<Required - What is the reason for pursuing this project?>

<Required - The goals section must be short but also provide a clear statement of the goals, to achieve with this feature, project or task. A clear statement in this section gives the Development, Quality Assurance and Documentation guidance.>

<Recommended - Describe how this feature will meet expected requirements>

<Recommended - Are there any requirements or dependencies for this feature? Does the implementation of this feature create any requirements/dependencies to other program parts?>

<Required - First of all the concept section should give the audience an overview of how the new feature will work. When this is done this section has to cover the necessary things to finish this feature. This is the crucial part of the specification. If images are used in the concept, it is very important that these images provide a caption. The caption should be short and has to describe shortly the image. UI Mockups has to provide a caption too, if possible the mockups shouldn't be scaled and our standard user interface font, Andale Sans UI has to be used for strings on dialogs.>

<Required. It makes sense to describe or visualize the tabbing order. The description of the tab order has to contain which control has the initial focus.>

<Required - Key Board shortcuts used in dialogs have to be listed in a table with a small description.>

<Required - List all error conditions, and the action the system takes about them. If an alert box comes up, which kind is it? Include exact text of messages, or say what points need to be covered. Error Messages need a string list>

<Recommended - If there are features which couldn't be implemented but have to be implemented in the future. State these in here with a description why the feature couldn't be implemented right now.>

<Recommended - If there are any legal issues to deal with the should be described here. Legal issues could be for example we have to redistribute third party technology. This section can also contain links the Legal Review Tool.If the Specification will be published on OpenOffice.org this section has to be removed.>

<Recommended - Questions will arise during the writing of the specification. State these in here.>

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.

Enclosed Characters

Page 7

http://specs.openoffice.org/g11n/enclosed_characters/enclosed_characters.sxw

Falko Tesch

2003-07-09T14:16:21

Matthias Müller-Prove