Hidden Text in Writer

OpenOffice.org 2.0 / Q

Task ID(s)

tbd.

Category	Specification Affects

Abstract

MS Word has a feature called “Hidden Text” which allows the user to hide selected text. This feature is quite prominent with hack writers that used to write additional or “to-be-edited” text in documents while already handing them out to their publishers.

Therefore this feature is also desired to have it in Writer.

Furthermore this feature is also part of the MS Word file format hence it is needed for better MS import and export.

i-Team

Specification Owner	Michael Brauer	michael.brauer@sun.com
Marketing (MA)	Susan Jefferies	Susan.Jefferies@Sun.COM
User Experience (UX)	Falko Tesch	falko@sun.com
Development(DEV)	Michael Brauer	michael.brauer@sun.com
Quality Assurance (QA)	Michael Rüß	michael.ruess@sun.com
Documentation (DOC)	Frank Peters	fpe@sun.com

Specification Reviews

Version	Reviewer	Comment
Reviewed by UX Aug 20, 2003	Goetz Wohlberg	Where is the competitive analysis from MS, Corel and Lotus? What will happen with the preview in the dialog, when I select hidden text? MS does nothing, Corel makes the text invisible. Why don't we have a setting in the tools option dialog, to display hidden text. MS and WordPerfect do have that setting. Is "Ausgeblendet" the correct German string? What about "Versteckt!?
2nd Reviewed by UX Aug 25, 2003	Goetz Wohlberg	OK
UI String Review <Date>		
Reviewed by QA	Michael Rüß	OK
Reviewed by DOC 03/09/03	Frank Peters	What happens to indices and cross-references?

Document History

Version	Author	Comment
Draft 13/08/03	Falko Tesch	first draft
Second Draft 21/08/03	Falko Tesch	based on Götz' input
RC 1 03/09/03	Falko Tesch	added support for indices and cross-references
RC2	Falko Tesch	Added definition on paragraphs and anchored objects (4.0.8, 4.0.9)
Final 12/11/2003	Falko Tesch	Updated UI and added support for mixed text editing
Addendum	Falko Tesch	Added behaviour for footnotes. Added two issues in Future Tasks section.

Contents

Glossary	1

References	1

1	Motivation	1

2	Goals	1

2.1	How does this feature meet the requirements	1

2.2	How does this feature improve the program architecture	1

3	Dependencies	1

3.1	Technical Dependencies / Requirements	1

3.1.1	Preconditions for this feature are	1

4	Detailed Specification	1

4.0.1	“Tools - Options - Text Document - View”	2

4.0.2	Hiding Text	3

4.0.3	Selecting/Deleting/Editing mixed text	4

4.0.4	Dotted Line behaviour	4

4.0.5	Track Changes	4

4.0.6	Indexes and Cross-Reference of “Hidden Text”	4

4.0.7	Other Side Effects based on 4.0.5	4

4.0.8	Spell Checking Hidden Text	5

4.0.9	Hide Text over (multiple) Paragraphs	6

4.0.10	Objects and Footnotes anchored to Paragraph and Character	6

4.0.11	Word Count (document properties)	6

4.0.12	Import/Export Issues	6

4.1	Competitive Analysis	8

4.1.1	MS Word XP	8

4.1.2	WordPerfect 11	8

4.2	Error Conditions	8

5	Future Tasks	9

6	Legal Issues	9

7	Notes	9

Glossary

Term	Description

References

This feature relates to PCD particle “MSInteroperability-MIB-04 (hidden text)”

Motivation

Major goal for this feature is to enhance MS interoperability regarding features and filter quality.

Goals

The new feature “Hidden Text” gives the user the same abilities as MS Word XP does. Furthermore implementing this feature leads to importing and exporting this feature.

How does this feature meet the requirements

A user familiar with MS Word's “Hidden Text” is able to instantly find and use this feature in Writer.

How does this feature improve the program architecture

n/a

Dependencies

Technical Dependencies / Requirements

This specification takes for granted that Writer is capable of automatically updating/reformatting any Writer document when changing from edit mode to “File - Page Preview” and back.

Preconditions for this feature are

Writer must automatically update all indexes and tables (see “Tools - Update - Indexes and tables”) when the user switches from default edit mode into page preview mode.
Reason: Hidden Text is never visible in page preview therefore all possible reference changes in indexes and table must be updated to display the real WYSIWYG page/print preview.

When inserting indexes (example TOC) Writer should be able to take over not only content of headings etc. but also certain hard formatting of such (please refer to 4.0.5 and 4.0.6 for more details).

Other: MS Office filter development is affected and must be notified of this new feature.

Detailed Specification

“Hidden Text” is a character attribute and can be applied to single characters as the finest granularity.

Note: A character that carries the “Hidden Text” attribute will not affect the word it resides in. Example: Opposed to MS Word 2000 (not XP!) where hiding a single character leads to hiding the whole word the character resides in, hiding a character in Writer 8 will only hide the character itself but not the word (though it will cripple the word).

This character attribute is persistent and is part of the file format.

“Hidden Text” will be available in Writer only and effects the Writer Text engine only. Therefore this feature is not available in other applications than Writer and it is not available in any object administered by the (Draw) Text engine.

There are two setting that effect the appearance of “Hidden Text”:

A default setting that is defined within “Tools - Options - Text Document - View” and

the status if “Nonprinting Characters”are visible or not (ON/OFF).

“Tools - Options - Text Document - View”

The basic default behaviour will be defined by the check box “Hidden Text” in “Tools - Options - Text Document - View”.

This option defines if “Hidden Text” is only visible when “Nonprinting Characters” are ON and otherwise invisible (-> hidden) or if it is always visible regardless of the status of “Nonprinting Characters” (see Figure 2.)

This setting is an application-wide setting and applies to all documents opened in Writer.

Default: OFF

Examples:

“Hidden Text” option is OFF and the user formats text as “Hidden” (see also Hiding Text) and “Nonprinting Characters” is OFF -> The formatted text hides automatically once the user leaves the edit mode of the hidden text.

“Hidden Text” option is OFF and the user formats text as “Hidden” and “Nonprinting Characters” is ON -> The formatted text still shows up (with a dotted underline).

“Hidden Text” option is ON and the user formats text as “Hidden” and “Nonprinting Characters” is OFF -> The formatted text still shows up (with a dotted underline).

“Hidden Text” option is ON and the user formats text as “Hidden” and “Nonprinting Characters” is ON -> The formatted text still shows up (with a dotted underline).

Figure 1 Option Dialogue for Hidden Text

Hiding Text

To hide text the user needs to select the text she wants to hide and then uses the context menu (menu entry “Character”) or the main menu (“Format - Character”). On the tab-page “Font Effects” a new entry, named “Hidden Text”, must be selected to hide the text (see Figure 2).

Unless “Hidden Text” option in “Tools - Options -Text Document - View” is turned ON (for this case refer to 4.0.1) text carrying the “Hidden Text” attribute, the following rules apply:

Typing in visible “Hidden Text” will always produce dotted underlined text (see Dotted Line behaviour for more details).

Leaving edit mode of “Hidden Text” will hide text automatically (if set to invisible)

Since “Hidden Text” is a text attribute restart edit mode immediate behind “Hidden Text” will (like with all other formatted text) inherit the formatting to following text input. In case of “Hidden Text” set to invisible the user will not see the text she types in! The cursor will stay at the same point but nevertheless the text will be recorded and can be made visible later.

“Hidden Text” is only visible to the user if “Nonprinting Character” is set to “ON”. Otherwise it is invisible. There will be no trace of existing “Hidden Text” in this case.

When visible, “Hidden Text” will be highlighted by a dotted line (colour same as text). Please note: If the “Hidden Text” carries underlining this underling is overwritten by the dotted line.

The font preview in the “Font Effects” tab page is not affected by this dotted line. In other words: All formatting applied to the text (esp. underlining) must be visible within the font preview box.

Toggling “Nonprinting Characters” on and off will also affect the layout of the document, e.g. the document might have more pages or frames get resized when “Hidden Text” is visible or invisible.

When switching document view to “File - Page Preview” “Hidden Text” must not be visible.

When printing the document “Hidden Text” must not be printed.

When activating “Hidden Text” the text preview pane “Format - Character - Font Effects” shows still the preview of the affected text without any changes.

Selecting/Deleting/Editing mixed text

Hidden “Hidden Text” regardless out of how many objects (characters etc.) it consists is will always be treated as a single (invisible) xcharacters when it comes to cursor travelling and deletion.

Using Backspace or Delete button will delete “Hidden Text” with a single keystroke.

Using overwriting mode will automatically overwrite hidden text without actually overwrite “Hidden Text”. It will rather delete the hidden “Hidden Text” and continue with the next visible character overwriting.

A selection spanning over a hidden “Hidden Text” section will delete, copy (and paste) and cut the “Hidden Text” together with the visble text.

Visible “Hidden Text” will always be treated as ordinary visible text.

Dotted Line behaviour

While the dotted line is only a tool to give the user a hint of which text carries the “Hidden Text” attribute it must not be dominant over the text formatting internally.

If the text carries any kind of underlining or the user applies any kind of underlining to the text while hidden this underlining is to be preserved and to be visible in the font preview boxes and shown once the text gets unhidden.

Track Changes

If “Track Changes” is active hiding text must be recorded like any other change in font effect (like underlining etc.). If “Edit - Changes - Show” is active “Hidden Text” (that was changed while recording track changes) will be shown regardless of the status of “Nonprinting Characters”.

This complies to all other tracked changes with “Show” option active.

Indexes and Cross-Reference of “Hidden Text”

Note: This feature has to be postponed to a later release of OO.o since it will not be possible to implement hard formatting in indexes for 2.0 due to time reasons. Please see Future Tasks

“Hidden Text” never appears in indexes and cross-references. In case a whole heading/reference is formatted hidden than no entry it to be made.

Example 1 : This · is · a · heading · with · some · hidden · text
This heading will appear in the referencing TOC as: This · is · a · heading · with · · text

Example 2 : This · is · a · heading · with · hidden · text · only
This heading will not appear in the referencing TOC (until the hidden attribute is lifted from at least some of the heading's text)

Other Side Effects based on 4.0.5

Let's start with an example:

The user write heading like

This is a heading with some hard formatted and hidden text

Now she will hard format parts of this heading, like:

This is a heading with some hard formatted and hidden text

As one can see a lot of hard formatting was done, double-strikethrough, underlining, small capitals, sub and superscript, italic, Asian emphasis mark and hidden text. Even this dummy text is pretty senseless imagine a heading that says:
H2o, a solution to the world!
Writer as of today will plain reformat H20 to H20 and if the user creates a TOC all of the hard formatting gets lost.

apart from that this is not at all desirable for hidden text! Hidden text must not appear in any index but it would since the index strips down any hard for´matting of the sample text above.

So the above would appear as:
This is a heading with some hard formatted and hidden text.............................1
within the TOC.

The right result must be:
This is a heading with some hard formatted text................................................1

But it seems advisable to also apply the other hard formatting to the TOC text (see this matrix):

Hard Formatting in text	Overwrites formatting of index text
Size	no
Typeface	no
Colour	no
Bold	yes (if applicable)
Italic	yes
Underlined (all variations)	no
Strikethrough (all variations)	yes
Emphasis marks (all variations)	yes
Effects (all)	yes
Relief (all)	no
Outline	no
Shadow	no
Blinking	no
Hidden	yes
Position (sub/superscript)	yes
Rotation (all)	yes
Scaling (all)	yes
Asian Layout (all)	yes
Highlighting	yes

The result of this matrix would be:
This is a heading with some hard formatted text....................................................1
(Note: The underlined part has gone)

Spell Checking Hidden Text

A) Doing a manual spellcheck (F7; AutoSpellcheck is OFF)

If “Hidden Text” is visible doing a spellcheck will include the hidden text and will alert on possible errors.

If “Hidden Text” is invisible doing a spellcheck will ignore the hidden text and will only alert on possible errors within non-hidden text.

B) AutoSpellcheck is ON

If “Hidden Text” is visible AutoSpellcheck will also red wave underline the hidden text. This red underline will visually overlay the dotted line.

Hide Text over (multiple) Paragraphs

If a complete paragraph consists only out of hidden text the whole paragraph including all paragraph formatting and attributes will be hidden (see also Objects Anchored to Paragraph and Character).

If Hidden Text spans over two or more paragraphs (w/o fully select the the first and last paragraph ) the paragraph structure of the first and last paragraph will be preserved.

This behaviour is opposed to what MS Word does (contract both paragraphs) but since this behaviour is currently not implemented in Writer core this feature will be postponed to Office Later (see Future Tasks).

Objects and Footnotes anchored to Paragraph and Character

An object (frame, drawing object, graphic or OLE object) that is anchored to a

paragraph will turn hidden in case the whole paragraph consists out of hidden text.

character will turn hidden if the character the object is assigned/anchored is hidden text.

A footnote that is anchored to “Hidden Text” will also be hidden (it still needs to be evaluated if the other footnotes also get re-numbered, see also Future Tasks)

Word Count (document properties)

Hidden Text is not counted and must not appear in the document properties statistics.

This applies to number of words as well as to number of characters.

Import/Export Issues

MS Word filter:

Importing and exporting this feature from/to MS Word must be implemented.

Legacy filter:

When saving a Writer 8 document to former Writer formats the hidden text attribute gets lost and the hidden text will be treated as ordinary text.

The same applies to all export to file format that do not contain hidden text.

Note: Content of “Hidden Text” must not be lost when exporting!

String list

Item	English	German	Comments
Check Box	H~idden	Aus~geblendet (this is a MS term, we use “Versteckt” for this)	New entry in “Format - Character - Font Effects” tab page
Check Box	~Hidden Text	Aus~geblendeter Text (this is a MS term, we use “Versteckter Text” for this)	New entry in “Tools - Options - Text Document – Formatting Aids” in “Display of” section
Check Box	Fields: Hidden te~xt	Feldbefehle: Verste~ckter Text	Renamed (formerly “Hidden text”), existing entry in “Tools - Options - Text Document – Formatting Aids” in “Display of” section
Check Box	Fields: Hidden paragr~aph	Feldbefehle: ~Vesteckte Absätze	Renamed (formerly “Hidden paragraph”), existing entry in “Tools - Options - Text Document – Formatting Aids” in “Display of” section

Tab Order

The new check box will be added to the existing 'N' tab order in the dialogue. Pressing tab when having check box “Blinking” selected will select check box “Hidden Text” next.

Key Board Shortcuts

The mnemonics for “Hidden Text” are within the string list section (see ~)

Figure 2 of“Font Effects” tab page with added “Hidden Text” feature (activated)

Competitive Analysis

MS Word XP

In MS Word XP default behaviour is set in “Tools - Options - View” (see Figure 3). Default setting is OFF.

To format text hidden Word users must select text and format it via “Font” dialogue.

Hidden marked text is only visible when a) Hidden Text in options is turned ON and/or b) if non-printable characters are turned ON.

Hidden Text is never displayed in “Print Preview” and it is never printed.

Hidden text is never accounted for in document statistics (word count etc.).

Figure 3 Hidden Text in Word

WordPerfect 11

In Word Perfect 11 default behaviour is set in “Display Setting - Document” (see Figure 4). This behaviour defines if hidden text is visible or not (default is OFF). It applies to all document views (incl. print preview!) and to document statistic (word count etc.)

Opposed to Word there are no further settings that affect the (in-)visibility of “Hidden Text”.

Figure 4 Hidden Text in WordPerfect 11

Error Conditions

There are no new error conditions introduced.

Future Tasks

For the moment hiding a footnote does not result in re-numbering the visible footnotes. This behaviour must be re-thought (also for hidden paragraphs and hidden sections).

Hard formatting of text in indexes must be implemented.

Legal Issues

none

Notes

none

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

<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 - Descripe how this feature will improve the program architecture.>

<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 - Dialogs providing strings which have to be translated, have to be accompanied by a table containing the strings used in the image (English or German or both) Strings have to include mnemonics and the item for which the string is used. Mnemonics have to be visualized by a ~ - symbol in front of the letter which has to be displayed mnemonic.>

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

Hidden Text in Writer

Page 9

/home/ft93697/Documents/Specs_CVS_root/writer/hidden_text/hidden_text.sxw

Falko Tesch

2003-08-13T09:01:23