NC Word Processor Software Functional Specification


    Distribution: COMPANY CONFIDENTIAL

    Project:      Applications
    Issue:        0.11
    Author(s):    Owen Love
    Date:         13-Nov-96
    Last Issue:   0.10
  

Contents.


History

	0.01 OL 27-Mar-96 First created.
	0.02 OL 02-Apr-96 A Number of changes made.
	0.03 OL 15-Apr-96 Changes made resulting from feedback 
	                  from Icon Technology.
	0.04 OL 16-Apr-96 Dialogue Box changes.
	0.05 OL 07-Jun-96 Update User Interface.
	0.06 OL 14-Jun-96 Major UI changes required by Oracle.
	0.07 OL 21-Jun-96 Added zoom button/document name menu item.
	0.08 OL 04-Jul-96 Updated UI.
	0.09 OL 09-Jul-96 Feedback from MGB.
	0.10 OL 29-Jul-96 Updated UI.
	0.11 OL 13-Nov-96 Updated UI.

Outstanding issues


Overview

This document contains the software functional specification for the Word Processor included in the system ROM of the Network Computer Model 1. The name of the Word Processor is NC Writer. Italicised text is used where issues are still to be decided or where contents are liable to change.


Technical background

The Word Processor used for the NC Model 1 is based on EasiWriter, a Word Processor originally written for use on Acorn RISC OS machines by Icon Technology Ltd.


User interface

Overview

The Word Processor has been modified so that it always runs full screen on both television displays and monitors and complies with the NC Application Requirements Specification. When using a television display the application uses the NHTwitter module to "anti-twitter" the display.

The Word Processor can be driven with a mouse, a keyboard or an IR handset. When a keyboard is being used, the following key mappings are applied:

        F1              - Display the help page
        F2              - Display the pop-up menu
        F12             - Toggle button bar
        CTRL S          - Save
        CTRL Z          - Undo / Redo
        CTRL P          - Print
        CTRL X          - Cut
        CTRL C          - Copy
        CTRL V          - Paste
        CTRL A          - Select All
        CTRL B          - Bold
        CTRL I          - Italic
        CTRL U          - Underline

        Cursor keys     - Move the caret
        Page up         - Scroll up by a page
        Page down       - Scroll down by a page

When a IR handset is being used, (also read the NC IR Software Functional Specification) the following key mappings are applied:

        Menu            - Display the pop-up menu
        Line up         - Scroll up by a line
        Line down       - Scroll down by a line
        Page up         - Scroll up by a page
        Page down       - Scroll down by a page
        Arrow keys      - Move the highlight
        Select          - Enter key.

Button Bar

A button bar will be displayed along the top of the screen display. This bar can be toggled on/off using a menu item or the function key F12. The button bar takes the form of a window with no borders which covers a small area at the top of the display. It is ensured that all components on this button bar fall within the safe areas for PAL and NTSC televisions. The button bar is anti-twittered if necessary and contains the following components :

        Menu            - Display the pop-up menu
        Save            - Save the current document
        Print         * - Print document
        Undo/Redo     * - Undo/Redo the most recent action
        Cut             - Cut the current selection to the clipboard
        Copy            - Copy the current selection to the clipboard
        Paste           - Paste the contents of the clipboard
        Bold            - Bold text
        Italic          - Italic text
        Underline     * - Underlined text
        Zoom Up         - Increase the current view size
        Zoom Down       - Decrease the current view size
        Help            - Display help page
        Page Up/Down    - scroll up/down by a page.
        Page Left/Right - scroll left/right by a page.
        Close           - Close the word processor window
        Status line     - Showing document title, status info and help

Two different button bars are supported; one for monitor displays and one for television displays. The TV graphics are larger and therefore less buttons can be displayed. The button bar options noted with * are not displayed if you are using a television display.

The button bar for NC Writer displayed on a monitor looks like this:

The button bar displayed on a television looks like this:

The status line along the bottom of the button bar will normally display the name of the document. However, when the user moves the pointer over the icons on the button bar (or items on the menu tree) this icon should be used to give users additional information about the selected icon/item.

Menu

A pop menu will be available giving a complete list of operations that can be peformed. Mouse users will press the menu button on the button bar to invoke the menu whilst keyboard users will have to use F2 and IR handset users, the menu button on their controller. The first menu item will be highlighted, by using either the cursor keys or the mouse pointer, users will be able to navigate the list and confirm their choice by pressing Enter or clicking the mouse button. Pressing Escape, F2, or the menu button will remove the menu. The menu will list the following options:

Main Document, Edit, Font, Font size, Font color, Font style, Alignment, View / Close
Document Save , Save as, Print
Save as (writable field to save document with a new name)
Edit Undo / Cut , Copy , Paste / Start selection , Select all , Select paragraph
Font (A list of the available fonts - names only)
Font size 8 point, 10 point, 12 point, 14 point, 18 point, 24 point, (writable field)
Font color (A list of available colors 0,1,3,7 to 15)
Font style Bold , Italic , Underline
Alignment Left , Center , Right , Fully justify
View 33%, 80%, 100%, 120%, 150%, 200% , (writable field)

Dialogue Boxes

At present no dialogue boxes will be implemented in NC Writer. This means that functionality such as spell checking, find/replace etc.. will not be implemented in the initial version.

Help Pages

NC Writer will broadcast a WIMP message (&4af80) containing the URL of the help page file:/NCHelp:NCWriter/index.html and the Web browser will use this to obtain and display the help pages. Using a system variable allows these pages to be customised and loaded from anywhere on the network rather than being in a fixed place. When the user has finished with the help pages they will be closed and control returned to NC Writer.

General functionality

The complexity of the program EasiWriter has resulted in a requirement for reduced functionality in NC Writer. Some functionality has been removed from the menu structures that will hopefully be re-implemented in a simpler form at a later date e.g. Rulers and margins. See Future enhancements


Programmer interface

NC Writer makes use of the global clipboard to allow the transfer of data between different applications. This allows users to copy text from web pages in the browser into the Word Processor. The Support Group Application Note 240 - 'The RISC OS Selection Model and Clipboard' defines how this should be implemented using the RISC OS message protocol.


Data formats

For future and cross-platform compatibility NC Writer loads and saves files in Word 7.0 format. This does mean that some data could be lost if the file was originally created on a PC and then saved from NC Writer. However, for the first version this is believed to be acceptable.

When loading Word 7.0 format files which contain structures like tables and numbered lists, NC Writer displays these structures using its own internal code but will not allow the user to modify the actual structures.


External dependencies

Many of the proposals outlined in this specification require Icon Technology to implement the changes to the source code of NC Writer under the terms and conditions of the agreement signed with them.


Acceptance test

To be determined.


Development test strategy

To be determined.


Product organisation

The application will be integrated into the RISC OS build tree so that the Word Processor can be built into the NC ROM.


Future enhancements

The following list gives some examples of additional functionality which could be incorporated into NC Writer.