User:Regina/MYDrafts2

From Apache OpenOffice Wiki
Jump to: navigation, search

Print Ranges Version 2 (2009-20-13)

Specification Status
Author Regina Henschel
Last Change
Status (Help) Preliminary

Abstract

Reorganize handling of the sheet properties printable, print ranges and repeat rows/columns


References

Reference Document Check Location (URL)
Prerequisites [passed/failed] n/a
Product Requirement, RFE, Issue ID (required) [available/not available] <PLEASE ENTER LOCATION HERE>
Accessibility Check (required) See accessibility section for check list
Test case specification (required) [available/not available] <PLEASE ENTER LOCATION HERE>
IDL Specification [available/not available] <PLEASE ENTER LOCATION HERE>
Software Specification Rules n/a n/a
OASIS OpenDocument Specification v1.1 http://www.oasis-open.org/specs/#opendocumentv1.1


Acronyms and Abbreviations

Acronym / Abbreviation Definition
ODF Open Document Format

Detailed Specification

Glossar

A single cell or a rectangle area of cells can be used as print range. In this specification for both the term cell range is used.

A print range is a cell address or a cell range address. All addresses are absolute and they do not contain a sheet identifier.

A print range list is an ordered list of print ranges. If it is written in one line, the print ranges are separated by semicolon.

Motivation

The ODF specification defines the attributes table:print and table:print-ranges, which need an appropriate UI in Calc.

Three settings are possible

table:print="false"
The sheet is not printed.
table:print="true" and no print ranges defined
The smallest rectangle cell range is printed, that contains all used cells.
table:print="true" and print ranges are defined.
The print ranges are printed.

These attributes are not visible to the user, but used in the file format.

The current UI has a lot of short comings:

  • The current item Print Range does not only lead to defining and altering print ranges, but it contains managing of repeat rows and repeat columns too. The user has no hint, that this settings are inside the edit dialog of print ranges and do not find them. Therefore they should be moved away and get an own dialog.
  • The edit dialog of print ranges shows the list of ranges in one long line. The user cannot see the ranges all at once and editing is inconvenient. If the user wants to remove or alter a range, he has to move horizontally in the input field.
  • The input line in the edit dialog does not allow to add a named print range using the name, but the user must type the connected cell range address in the input field.
  • The user cannot set the variant table:print="true" and no print ranges defined in the first level of the current sub-menu, but has to open the edit dialog.
  • The user cannot remove one single print range with the item Remove, but has to open the edit dialog.
  • The user does not know, which setting is used, when he removes all print ranges.
  • The value entire sheet is misleading, because not the entire sheet is printed, but only the area of the used cells.
  • The user has no information about the current setting in Normal View.

Format > Print ranges

The item Print ranges ► opens a sub-menu. This sub-menu contains

Enable Print
Disable Print
-------------
Define Print Range
Add Print Range
Remove Print Range
Edit Print Ranges…
--------------
Define Repeat Rows/Columns
Edit Repeat Rows/Columns…

The items Define Print Range, Add Print Range, and Undo Print Range are also available in the context menu of the sheet in 'Page Break Preview'.

Enable Print
Sets table:print="true". The sheet will be printed. If a sheet has got print ranges, they are used, otherwise the smallest rectangle cell range is printed, that contains all used cells. Clicking this item effects all selected sheets.
Disable Print
Sets table:print="false". The sheet will not be printed. If a sheet has got print ranges, they are not deleted but reused when printing is enabled. Clicking this item effects all selected sheets.
Define Print Range
Sets the current selection as print ranges. If the sheet has print ranges defined before, they are deleted. This does not effect, whether the sheet is printed or not. Clicking this item effects all selected sheets.

To discuss: Should Define automatically enable print?

Add Print Range
Adds the current selection to the list of print ranges. This does not effect, whether the sheet is printed or not. Clicking this item effects all selected sheets.
Remove Print Range
The print range list becomes empty, so that the smallest rectangle cell range is printed, that contains all used cells. This does not effect, whether the sheet is printed or not. Clicking this item effects all selected sheets.
Edit Print Ranges…
Opens the dialog Edit Print Ranges.
Define Repeat Rows/Columns
If adjacent whole rows or adjacent whole columns are selected, these are set as repeat rows or repeat columns respectively. Otherwise nothing is done. If the whole sheet is selected nothing is done.
Edit Repeat Rows/Colums…
Opens the dialog Edit Repeat Rows/Columns
To discuss: Should there be an item 'Remove all Repeat Rows/Columns' too? Is the item 'Define Repeat Rows/Columns' useful?'

Dialog Edit Print Ranges

Main purpose of the dialog is to allow editing and removing single print ranges, allow use of named print ranges, and allow ordering the print ranges. The settings effect only the current active sheet.

When the user opens the dialog, while cell ranges are selected, these are added at the end of the list, if they are not already contained in the list. To discuss: Is this behavior desired?

MockUp Dialog Edit Print Ranges 2.png

Title

Edit Print Ranges

ScrollBar

Scrolling down adds new lines.

Cell Address Field

The user can define a print range by selection or by choosing a named print range from the drop-down list or by manually entering a cell range address.

The drop-down-list contains all named ranges. Only the cell range address is used, not the sheet identifier.

To discuss: When is an invalid address detected and what is the reaction on an error?

Delete Button

Removes the line from the print range list. Deleting the content of the address field has the same effect as using the delete icon. There is no Remove all because this can be done in the menu.

Up and Down Buttons

The order of the list determines the order when printed. To move a print range up or down set the cursor in the address field. Then click the Up or Down button to move the field one position up or down.

Close

The dialog is closed. The settings are used as they had been shown.

Help

Calls the help page of the dialog.


Page Break Preview

When a user drags an edge of a print range in Page Break Preview, this print range is altered immediately in all selected sheets. If the print range has been set via a named cell range, the entry in the print range list in the dialog Edit Print Ranges does no longer contains the name but is replaced with the direct cell range address.


Dialog Repeat Rows/Columns

Main purpose of the dialog is to allow use of named repeat rows and named repeat columns and to delete settings. The settings effect only the current active sheet.

Mockup Edit Repeat RowColumn 2.png


Print Ranges Version 1 (2009-10-12)

Specification Status
Author Regina Henschel
Last Change
Status (Help) Preliminary

Abstract

Describes details for the sub-item Print Ranges… in the menu Format and the corresponding field in the status bar in Calc.


References

Reference Document Check Location (URL)
Prerequisites [passed/failed] n/a
Product Requirement, RFE, Issue ID (required) [available/not available] <PLEASE ENTER LOCATION HERE>
Accessibility Check (required) See accessibility section for check list
Test case specification (required) [available/not available] <PLEASE ENTER LOCATION HERE>
IDL Specification [available/not available] <PLEASE ENTER LOCATION HERE>
Software Specification Rules n/a n/a
OASIS OpenDocument Specification v1.1 http://www.oasis-open.org/specs/#opendocumentv1.1

Contacts

Role Name E-Mail Address
Developer <First Name, Last Name> <User@openoffice.org>
Quality Assurance <First Name, Last Name> <User@openoffice.org>
Documentation <First Name, Last Name> <User@openoffice.org>
User Experience <First Name, Last Name> <User@openoffice.org>

Acronyms and Abbreviations

Acronym / Abbreviation Definition
ODF Open Document Format

Detailed Specification

Glossar

A single cell or a rectangle area of cells can be used as print range. A print range list is a single line. I contains cell addresses or cell range addresses, separated by semicolon. All addresses are absolute and they do not contain a sheet identifier. In the input line of the dialog Edit Print Ranges the name of a named print range is allowed too.

Motivation

The ODF specification defines the attributes table:print and table:print-ranges, which need an appropriate UI in Calc.

Three settings are possible

table:print=”false”
The sheet is not printed.
table:print=”true” and no print ranges defined
The smallest rectangle cell range is printed, that contains all used cells.
table:print=”true” and print ranges are defined.
The print ranges are printed.

These attributes are not visible to the user, but used in the file format.

The current UI has a lot of short comings:

  • The current item Print Range does not only lead to defining and altering print ranges, but it contains managing of repeat rows and repeat columns too. The user has no hint, that this settings are inside the edit dialog of print ranges and do not find them. Therefore they should be moved away and get an own dialog.
  • The edit dialog of print ranges shows the list of ranges in one long line. The user cannot see the ranges all at once and editing is inconvenient. If the user wants to remove or alter a range, he has to move horizontally in the input field.
  • The input line in the edit dialog does not allow to add a named print range using the name, but the user must type the connected cell range address in the input field.
  • The user cannot set the variant table:print=”true” and no print ranges defined in the first level of the current sub-menu, but has to open the edit dialog.
  • The user cannot remove one single print range with the item Remove, but has to open the edit dialog and edit the print range list.
  • The user does not know, which setting is used, when he removes all print ranges. It should be the setting table:print="true" and no print ranges defined but today it is the setting table:print="false".
  • The value entire sheet is misleading, because not the entire sheet is printed, but only the area of the used cells.
  • The user has no information about the current setting in Normal View.

Format > Repeat Rows/Columns…

Opens the dialog Edit Repeat Rows/Columns.

Dialog Edit Repeat Rows/Columns

Repeat rows and repeat columns belong to the attribute table-header-rows and tab-header-columns respectively in ODF file format.

Mockup Edit Repeat RowColumn.png

Title
Edit Repeat Rows/Columns.
Content
The dialog contains the lower part of the former Edit Print Ranges dialog. It behaves same as in OOo3.2.

Format > Print Ranges ‣

The item Print Ranges opens a sub-menu. This sub-menu contains

No Print
Automatic
User-defined…
--------------
Define
Add
Remove
No Print
Sets table:print=”false”. The sheet is not printed. If any print ranges exist, they are not deleted but only disabled. They can be reused via dialog. Clicking this item effects all selected sheets.
Automatic
Sets table:print=”true”. If any print ranges exist, they are deleted. The list in the dialog Edit Print Ranges has then the only entry - Automatic -. The smallest rectangle cell range is printed, that contains all used cells. Clicking this item effects all selected sheets.
User-defined…
Opens the dialog Edit Print Ranges.
Define
Sets the current selection as print ranges. If the sheet has print ranges defined before, they are deleted. If the sheet was set to No Print the attribute table:print is set to true automatically. Clicking this item effects all selected sheets.
Add
Adds the current selection to the list of print ranges. If the sheet was set to No Print the current selection becomes the first items in the list and the attribute table:print is set to true automatically. Clicking this item effects all selected sheets.
Remove
If a print range exists, that contains all currently selected cells, then this print range is deleted. If no print range meets the condition, nothing is done. If the only print range is deleted, the attribute table:print-ranges is deleted, which corresponds to the print state Automatic. Clicking this item effects all selected sheets.

Status bar

The status bar shows the current state of print ranges for the active sheet. The field has the possible entries No Print / Automatic / User.

Double-Click on the field opens the dialog Edit Print Ranges.

Dialog Edit Print Ranges

Main purpose of the dialog is to control the print ranges and correct errors directly.

Mockup Dialog Edit Print Ranges.png

Title

Edit Print Ranges

List of Print Ranges

If no print ranges are defined but the sheet is set to print, then the list contains the item - Automatic -. If the sheet is set to No Print the list is disabled, but contains the previous defined ranges if any exist and is empty otherwise.

The list allows multiple choice via Shift and Ctrl, but no direct editing of an entry. The print ranges are shown one below the other. The ranges are printed in the order from top of the list to end. The user can mark an entry and drag it to a new position or use the arrow keys on the keyboard to move the entry.

Sheet

The drop-down-list Sheet contains the names of all visible sheets of the document. The names of the currently via tab selected sheets are emphasized in bold. The list allows only single choice. The active sheet is chosen by default.

Multi choice is senseless, because the sheets might have different ranges and different print state. So the list List of Print Ranges would not be possible and the button Enable printing/Disable Printing would have an undefined state. The user can set a couple of sheets to No Print or Automatic in the menu, no need to do it here.

Print Ranges

The list Print Range is a combo-list. The user can edit the input line or choose an entry from the drop-down-list. The list shows all named print ranges, each with name and cell range. If the user has selected cells or cell ranges before he opens the dialog, this corresponding print range list is entered already in the input line, otherwise the input line contains the entry - type or select -. The user can edit the entry in the input line directly or via selection. Selecting works as usual concerning minimization and building a list using the semicolon as delimiter. The user can add a print range name manually.

The input line is disabled when the chosen sheet is set to No Print.

Buttons

The Buttons Add/Remove/Modify are disabled, if the chosen sheet is set to No Print.

Add
The content in the input field is added at the end to the print range list of the chosen sheet. The change is immediately visible in the list. If the input line contains a list, the list items are shown one below the other. Print range names are replaced with the associated addresses followed by the name in round brackets, $A$2:$D$50 (Januar) for example. If the input line contains the default item - type or select - nothing is done. If the input line contains an invalid entry, an error message is shown.
Modify
If more than one entry is chosen in the list List of Print Ranges the Modify button is disabled. The chosen item in the list is replaced with the content of the input field. Print range names are replaced with the associated addresses followed by the name in round brackets, $A$2:$D$50 (Januar) for example. If the input line contains a list, the list items are shown one below the other. If the input line contains the default item - type or select - or no list entry is chosen, nothing is done. If the input line contains an invalid entry, an error message is shown.
Remove
The items, which are chosen in the list, are removed from the selected sheet. The change is immediately visible in the list. If the user removes all print ranges, the item - Automatic - is entered in the list.
There is no button Remove all because the list allows multiple selection via Shift and Ctrl.
Close
The dialog is closed. If a new entry in the input line is not applied yet, it is lost.
The entry is not applied automatically when closing, because the user might have called the dialog only for controlling. Otherwise the current selection would be entered as print range which might then not be intended.
Enable/Disable Printing
If the sheet is set to No Print the button label is Enable Printing. If the sheet is set to print then the label is Disable Printing. Clicking the button toggles the print state.
When printing is enabled via this button, the range list and the input line is enabled. If the range list has been empty, it gets the entry - Automatic -. If the sheet is set to No Print the range list and the input line are disabled, but nothing is erased. This enabling and disabling behavior allows to temporarily exclude a sheet from printing without loosing the print ranges.
Help
Calls the help page of the dialog.

Page Break Preview

When a user drags an edge of a print range in Page Break Preview, this print range is altered immediately in all selected sheets. If the print range has been set via a named cell range, the entry in the list List of print ranges in the dialog Edit Print Ranges does no longer contains the name.

Help | User Interface Element Templates | Example Spec

Accessibility

Accessibility is the responsibility of the I-Team, beginning with UX, DEV and QA, to ensure that the following requirements are fulfilled:

  1. Is the feature fully keyboard accessible?
    (Ex: "I can go everywhere and use every function using the keyboard only"

    <START TYPING HERE>
  2. Have I specified visual alternatives for the case that the specified feature includes audio as output?
    <START TYPING HERE>
  3. Are text alternatives for all icons and graphics available?
    <Start typing here>
  4. Don't provide important information in colors alone
    (Ex: marking important information hard coded in red)

    <START TYPING HERE>
  5. Does the specified feature respect system settings for font, size, and color for all windows and user interface elements?
    <START TYPING HERE>
  6. Have I ensured that flash rates do not exceed 2 hertz for blinking text, objects, or other elements? In any case, try to avoid flashing UI elements
    <START TYPING HERE>
  7. Ensure that assistive technology (AT) (like ZoomText or Orca) is able to read everything.
    <START TYPING HERE>

QUESTIONS?

If you need help while designing, implementing or testing the accessibility of the UI, ask/visit:

  1. The accessibility check list at the OpenOffice.org Wiki
  2. accessibility@ui.openoffice.org (The accessibility mailing lists, preferred)
  3. For specific implementation details, architecture: mt@openoffice.org (Malte Timmermann)
  4. For specific UX and testing questions: es@openoffice.org (Éric Savary)


Migration

<START TYPING HERE --- If this part is irrelevant state a reason for its absence.>

Configuration

<START TYPING HERE --- If this part is irrelevant state a reason for its absence.>

Help | Configuration Table Template

File Format

<START TYPING HERE --- If this part is irrelevant state a reason for its absence.> Help

Help | File Format Table Template

Open Issues

<State a bulleted list of issues Issue here>

Personal tools