Format Paintbrush

OpenOffice.org 2.0

Document - ID	Specification Owner	Last Change	Status
	Falko Tesch	03.05.2004	Final
03.05.2004
Conforms to	http://www.openoffice.org/issues/show_CTRL?id=20119
Applies to	All applications
Task ID(s)	20119
Category	Feature

Abstract

OpenOffice.org 2.0 will get a new tool to ease copy and paste styles (formatting). It is called “Format Paintbrush” and will transfer all formatting from objects and text to new targets by simply using a new icon.

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

	Name	E-mail Address
User Experience	Falko Tesch	Ft@openoffice.org
Development 1	Oliver Specht	Os@openoffice.org
Development 2	Stella Schulze	Stella.schulze@sun.com
Quality Assurance 1	Oliver Creamer	Oc@openoffice.org
Quality Assurance 2	Wolfram Garten	Wg@openoffice.org
Quality Assurance 3	Eric Savary	Es@openoffice.org
Documentation	Uwe Fischer	Ufi@openoffice.org

Approved for Implementation

	Approved by	Date
User Experience	Falko Tesch	26.04.2004
Development	Oliver Specht	26.04.2004
Quality Assurance 1	Oliver Craemer	30.04.2004
Quality Assurance 2	Wolfram Garten	30.04.2004
Quality Assurance 3	Eric Savary	03.05.2004
Documentation	Uwe Fischer	30.04.2004
String Review	Liz Matthis	05.05.2004

Document Change History

Rev. Level	Change	Initials	Date
1.0	First draft	FT	06.04.2004
1.1	Final draft for first review	FT	07.04.2004
1.2	Added approval from dev	FT	26.04.2004
1.3	Added feedback from QA	FT	30.04.2004
1.4	Added 2 approvals from Calc QA	FT	03.05.2004
1.5	Added last comment and approval from ES -> Final!	FT	03.05.2004
2.1	Added/changed selection scenarios based on Niklas' input	FT	26.05.2004
2.2	Changed modifiers	FT	13.07.2004
2.3	Minor changes based on input from 1st prototype	FT	20.07.2004
2.4	Addition to "Future Task" section made	FT	30.07.2004

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	1

5.1	MS Word	1

5.2	MS Excel	2

5.3	WordPerfect 11	2

5.4	OpenOffice.org 1.x	3

6	Detailed Specification	3

6.1	Integration	3

6.2	Workflow – Copy Formatting	3

6.3	Workflow – Apply Formatting	5

6.4	Error Conditions	6

7	Future Tasks	6

8	Notes	6

9	References	7

Glossary

Term	Description
Escher objects	Objects in MS Office that use the drawing engine (aka Escher) from MS Office. This can be drawing objects, frames, pictures etc.

Motivation

To ease copy formatting from one document element to another (e.g. text) a new tool should be introduced to allow such issue.

User Scenarios

A user formats some text exactly the way he wants to format other parts of his text. Instead of re-formatting all other text selections he can use a “Format Paintbrush” to apply this formatting via a simple mouse action to all desired text passages.

Goals

OpenOffice.org 2.0 will get a “Format Paintbrush” that will combine the idea of a tool to copy and paste applied (hard-)formatting of text and objects to other text and objects. It will also be aligned to the already existing copy and paste functionality of soft-formatting from the Stylist.

Requirements and Dependencies

Requirements

none

Technical Dependencies

N/a

Competitive Analyses

MS Word

MS Word uses the so-called “Format Painter” to copy and paste styles. It works pretty simple by pointing your cursor into the desired source are, example in bold text, than click on the “Format Painter” icon and pointing to the destination text where you want to apply the copied formatting.

This works with text, paragraphs, Escher objects.

The “Format Painter” transfers all available formatting from selected objects. It can only apply these formatting to objects of the same class, so text formatting can only be applied to text, frame formatting can only be applied to frames etc.

Copying formatting from source:

It is the same if the cursor is simply placed into text or a (multi-)selection is made or an object is selected. MS word always takes the last formatting that it comes across as the source formatting.

Example: A user selects a couple of words that contain different formatting, like type face, type and colour. Copying this source will always refer to the last selected character/word's formatting as the source. All other styles get ignored.

In case of text not only the current character attribute(s) is (are) copied but also the source' paragraph formatting is stored. Both are applied to the target.

Pasting formatting to target:

There are two ways of applying formatting – pointing the cursor to the desired object or (multi-)selecting the target.

In the first case – pointing cursor to the desired object – the object inherits all formatting from the source object. This works for all objects. In case of text only the selected/pointed word (see definition for “word” at http://specs.openoffice.org/writer/selection_enhancement/Text-table_selection_enhancement.sxw ) is changed. Still in case of text selection both formatting are applied to the target.

The latter – (multi-)selecting the target – applies formatting to all selected objects. This works for text only. In case of text selection both formatting are applied to the target(s)

-

The formatting clipboard will be erased whenever a new formatting is pasted/applied. If the user double-clicks the “Format Painter” icon the icon stays selected and the clipboard does not vanish until the icon is clicked again. This allows the user to paste/apply his formatting multiple times.

MS Excel

Additionally to what Word does MS Excel also copies ranges.

Example: Cell A1 has blue font colour on orange background and cell B1 has bold, black text on blue background. The user selects cell A1 and B1 and uses the format paintbrush. Now all cells there the paintbrush applies to are alternatively formatted in both cell formats.

In other words: Excel uses ranges to copy their formatting.

Also: When the user is in edit.-mode within a cell the “Format Painter” is disabled.

WordPerfect 11

WordPerfect 11 behaves much the same as Word, calling the function “QuickFormat”. If this function is invoked a dialogue will pop up (see Figure 1). In this dialogue the user must define which parts of formatting he wants to be copied.

Otherwise there is no special behaviour in using “QuickFormat” with tables and text.

Figure 1 WordPerfext 11, QuickFormat dialogue

OpenOffice.org 1.x

OpenOffice.org has a similar functionality:

Open the stylist two icon on the upper right provide “Fill Format mode” and “New Style form Selection”. The letter allows to easily create new styles from the selection just made. The first again applies the just selected style via “Watering Can” mode over selected text/objects.

This procedure needs to go the detour via creating a soft-formatted style.

Styles can be applied to basically any object/text within OpenOffice.org.

Detailed Specification

Integration

A new icon will be introduced into the main toolbar (Function Toolbar). This icon will be located within the “Paste” and the “Undo” icon in all applications). It will be nested in two separators to its left and right to show that it is a single function.

Two icons are suggested:

, the icon already used in “Stylist” for “Fill Format Mode” or

, an icon similar to this one, a brush (copied from MS Word 2003)

Workflow – Copy Formatting

The icon stays disabled as long as no valid selection is made.

Once an object or text is selected the icon gets activated.

In case of multi-selected items always the formatting of the last (in the sense of time-line) selected item will be taken for format-copying.

Scenario 1 - The cursor stands within any text in Writer

Pressing the icon will copy the attributes of the character the is next to the cursors position in writing direction and the attributes of the paragraph this character is located.

These attributes can be found in “Format – Character” and “Format – Paragraph”.

Scenario 2 – A text-selection is done (in Writer)

Pressing the icon will copy the attributes of the last character within the selection made and the attributes of the paragraph this character is located.

These attributes can be found in “Format – Character” and “Format – Paragraph”.

Scenario 3 – A text-multi-selection is done (in Writer)

Pressing the icon will copy the attributes of the last character of the last selection made and the attributes of the paragraph this character is located.

These attributes can be found in “Format – Character” and “Format – Paragraph”.

Scenario 4 – A (text-)frame is selected

Pressing the icon will copy the attributes of the frame but not its content, its size, its position, any linking to other frames, any assigned hyperlink(s) and no macros.

These attributes can be found in “Format – Frame”.

Scenario 5a – An object is selected [not a form, see Scenario 5b] (in Writer and calc)

Pressing the icon will copy the attributes of the object but not its content, its size, its position, any linking to other frames, any assigned hyperlink(s) and no macros.

These attributes can be found in “Format – Graphics” or “Format – Object”.

Scenario 5b – A form is selected

This item is not supported and the “Format Paintbrush” will stay inactive.

Scenario 6a – A Drawing object is selected (in Writer and Calc)

Pressing the icon will copy the attributes of the object but not its content (text) if any.

These attributes can be found in “Format – Line/Area/Text”

Scenario 6b – A Drawing object is selected (in Impress/Draw)

Pressing the icon will copy the attributes of the object.

These attributes can be found in “Format – Line/Area/Text/Character/Paragraph”

Scenario 7 – Text within a Drawing object is selected

This item is not supported and the “Format Paintbrush” will stay inactive. (Reason: One must do a mouse-action/click to activate the text edit mode before being able to assign the format)

Scenario 8a – A cell/table is selected (in Writer)

Attributes from tab pages (“Format – Table”) “Table”, “Text Flow”, “Borders” and “Background” of this table/cell are copied as well as paragraph and text attributes from text of this table.

If the selection contains multiple formatted cells only attributes from the first selected cell are taken.

Note: This will be enhanced in a version after 2.0. See also 7Future Tasks section for more details.

Scenario 8b – Cells/table are selected (in Calc)

All attributes that are applied to the cell and its content are copied. In case more than one cell is selected the attributes of all cells are copied and applied to the target area alike.

Example: Cell A1 has blue font colour on orange background and cell B1 has bold, black text on blue background. The user selects cell A1 and B1 and uses the format paintbrush. Now all cells there the paintbrush applies to are alternatively formatted in both cell formats.

These attributes can be found in “Format – Cells”

Scenario 9 – Text in a Calc cell is selected

This item is not supported and the “Format Paintbrush” will stay inactive. (Reason: One must do a mouse-action/click to activate the text edit mode before being able to assign the format)

Workflow – Apply Formatting

The target selection must be the same class as the source selection, so Writer text formatting (see scenario 1, 2 and 3) can only be applied to Writer text. But a frame selection cannot applied to an object.

The icon in the Function-Bar will not stay activated on one mouse click and the formatting will not be preserved once it is applied to target.

The icon in the Function-Bar will stay activated on a double-click and the formatting content will be preserved until the icon is clicked again and the activation will disappear.

Once the icon is pressed the cursor will change to a “Fill Bucket” (in case icon 1 is chosen, see 6.1Integration) or to a “Brush” (in case icon 2 is chosen, see 6.1Integration).

The behaviour of the cursor icon is congruent to the behaviour of the “Fill Bucket” cursor icon of the “Fill Format Mode” Stylist. Only the “Right-click-Undo” that the “Fill Format Mode” from the Stylist uses must not be copied.

Scenario 1 - The cursor points into text in Writer

The attributes of the source' character are applied to the word the cursor point in. And the attributes of the source' paragraph are applied to the whole paragraph the cursor points to.

In case a modifier (see Keyboard shortcuts section below) is pressed while clicking with the mouse into the target area only the text attributes will be applied but the paragraph attributes will be dropped.

Scenario 2 – The cursor makes a text-selection (in Writer)

The attributes of the source' character are applied to the selection only. And the attributes of the source' paragraph are applied to the whole paragraph the selection resides in.

In case a modifier (see Keyboard shortcuts section below) is pressed while clicking with the mouse into the target area only the text attributes will be applied but the paragraph attributes will be dropped.

Scenario 3 – The cursor makes a multi-text-selection (in Writer)

The attributes of the source' character are applied to the selection only. And the attributes of the source' paragraph are applied to the whole paragraph the selection resides in.

Note: A multi-selection must be invoked by pressing the standard keyboard shortcut SHIFT+F8. A multi-selection by simply holding down the the CTRL key is not possible since it is already used as a modifier (see Keyboard shortcuts section below).

Scenario 4 – The cursor points on a (text-)frame

The attributes excluding anchor and alignment, of the source' frame are applied to the selected frame.

Scenario 5a – The cursor points on an object (not a form, see Scenario 5b)

The attributes of the source' object are applied to the selected object.

Scenario 5b – The cursor points on a form

This item is not supported.

Scenario 6 – The cursor points on a Drawing object

The attributes of the source' Drawing object are applied to the selected Drawing object.

In case a modifier (see Keyboard shortcuts section below) is pressed while clicking with the mouse into the target area only the text attributes will be applied but the paragraph attributes will be dropped.

Scenario 7 – The cursor points in text within a Drawing object

This item is not supported.

Scenario 8a – The cursor points in a cell/table (in Writer)

The attributes of the source' cell are applied to the selected cell(s).

Note: For applying cell attributes it is not necessary to select the whole cell but a simple click into the cell will suffice.

Note 2: This behaviour will be enhanced in a version after 2.0. See also 7Future Tasks section for more details.

Scenario 8b – The cursor points in cells/table (in Calc)

The attributes of the source' cell range is applied to the selected cell(s). This behaviour equals to copy and paste multiple cells via clipboard.

Scenario 9 – Text in a Calc cell is selected

This item is not supported.

String list

Item	English	German	Comments
Tool Tip	Format Paintbrush	Format übertragen	

Tab Order

n/a

Key Board Shortcuts

Modifier #1: To drop applying of paragraph attributes the modifier “CTRL” must be pressed before release of mouse button.

Modifier #2: To drop applying of character attributes the modifier “CTRL+SHIFT” must be pressed before release of mouse button.

Error Conditions

If the target is not compatible with the source than the cursor must not display the “Fill Bucket” resp. “Brush” icon but use the standard cursor icon for this situation:

In case the user is in simple copy-mode (“Format Paintbrush” icon clicked once) a mouse-click in an area that does not comply to the source object will turn the user back into normal edit mode (and abort the copy-format action).

In case the user is in permanent copy-mode (“Format Paintbrush” icon clicked twice/stays selected) a mouse-click in an area that does not comply to the source object will no do/change anything. The user must start typing to release the permanent copy-mode first.

Future Tasks

For time reasons “Scenario 6 – The cursor points on a Drawing object”is implemented without modifier functionality. This has to be done in a version later than 2.0.

The original task includes also the better visualisation of applied formatting. Due to time reasons this is not feasible for 2.0 and therefore will be postponed to Office later.

The current scroll behaviour in case of an activated “Fill Format Mode” is not very exact. This feature needs smoothing and improvement in acceleration.

For time reasons the mouse cursor will be a “Fill Bucket” instead of the specified “Brush”. This feature will be implemented later.

Modification for Scenario 4: The cursor points on a (text-)frame: In case the modifier CTRL (see Keyboard shortcuts section below) is pressed while clicking with the mouse into the target area also anchor and alignment are copied.

It should be discussed and as usability scenario should be set up to clarify the question if 'Slant Angle' and 'Rotation Angle' from the 'Position And Size' dialogue for Draw Object should also be copied (for 2.0 they are not) .

In multiple-formatted tables in Writer the same selection/paste behaviour as in Calc tables is desired. Example: The user selects a grey and white striped table and applies this to a fully selected plain table. The target selection/table should also become grey and white striped instead of only grey (as for the 2.0)

More thoughts on Accessibility of DnD are to be done.

Notes

References

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

Format Paintbrush

Page 7

Http://specs.openoffice.org/appwide/format_paintbrush/format_paintbrush.sxw

Format Paintbrush

Falko Tesch

2004-04-05T11:09:15