The BEAM XVI-SB Screen Reader Software
Introduction
The BEAM XVI-SB screen reader application is responsible for providing the user with a "view" of the computers display by use of a speech and/or braille display unit. The screen reader builds up a model of the on screen display and allows the user to interrogate this model to determine the screens contents. A number of features are provided to ease usage of the system. The screen reader has been designed so that the user views and operates the application in a similar manner to sighted users. This aids training on the system and allows sighted people to work with or assist blind or visually impaired people easily.The Screen Model
The XVISB screen reader generates and updates an internal model of the screens contents. The model consists of a hierarchy of information on each applications on screen windows. Information such as position, stacking order and any text written into the window is kept.User Navigation
In general the screen reader application is designed to follow the applications normal operation. It will track the applications object that has the keyboard focus automatically and in most cases the user operates the application by means of the standard applications key presses. However, sometimes more control is required. Some applications are designed to be operated with a mouse and the keyboard interface is poor or non existent. Also the user may wish to look around the displayed window for additional information or functions that are not apparent when the application is driven by a keyboard.The XVISB screen reader provides the user with the means to navigate through the information contained within the real time model by means of special key presses and keys on the braille display. The system has the concept of a current application window and a current object within the application. The applications top level windows are considered as a sequential list and the user can move the center of attention from one to the next by means of simple key stokes. Each applications top level window is considered to contain a number of objects laid out in a the dimensional plan. These objects are things such as buttons, labels, lists text fields etc. The user is able, by means of the numeric keypad and braille display keys, to move around the windows objects and read their contents. The mouse cursor is moved around over the objects of interest so that mouse buttons can be pressed in the conventional way (the numeric keypad has three keys that operate the mouse buttons).
Application Windows
All of the running applications top level windows are considered as a sequential list and the user can move the screen readers center of attention from one to the next by means of simple key stokes. This automatically de-iconifies the window, if necessary, and moves the window to the front of all other windows on the display.Object Navigation
Each applications top level window is considered to be a number of objects laid out in lines from top to bottom. The screen reader provides the ability to move left, right, up and down through these objects when in object mode. The numeric keypad and the main braille display keys are used for this purpose. Once on an object the objects contents and information on the object is displayed on the braille display and spoken through the speech unit. If the object contains many lines of text, the user can navigate through the text in text mode.Text Navigation
When an object contains many lines of text, such as a multi-line address field, the user can switch the system to text mode to navigate. Once in text mode the user can navigate left, right, up and down through lines, words and individual characters of the text. The numeric keypad and the main braille display keys are used for this purpose. This is especially useful when editing text or using applications that use a conventional text only 80x24 display.Mouse Operation
Whenever the screen readers center of attention is moved, either by user navigation or tracking an applications focus change, the mouse cursor is moved over the object of interest. This enables the user to press the mouse buttons to operate the object if necessary. The mouse buttons can be driven from the numeric keypad or the braille displays keys.System Information
Information on various aspects of the screens display and individual object are provided. The system will provide spoken information when important aspects of the screens display changes such as a window popping up or disappearing. The system will also provide information on the current application window and the current object.As well as speech output the braille used can move back an forward through the list of information messages.
Speech Interface
The speech interface has been designed to provide a simple system that can provide the user with information on the on screen displayed data as well as general information on the display and what is going on. The system employs three voices. One is used to speck out the on screen data another is used for information on the displayed objects or screen activity such as windows popping up and the final one is used to speck out user key presses to aid keyboard feedback. As well as speaking out the on screen data, the system attempts to provide more information about the object whose data is being accessed. Labels and object types can be associated with the objects and, if available, this would be spoken out using the information voice. For example, when over a text field containing a name the following could be spoken: "Name text field, Terry". This aids screen navigation giving the user automatic feedback on where they are.The user can change the voice used, the speed of the speech and the loudness. Numbers can be spoken as the individual digits or spoken as whole numbers. The system attempts to understand telephone numbers, money and dates.
Braille Interface
The braille display interface has been designed to provide the user with both on screen data and information as well as a convenient set of keys for navigating the display. The braille display provides three status cells and 40 or more data display cells. The first status cell gives status on the operational mode of the system. The second cell provides information on the current objects type and if it has keyboard focus. The third status cell provides a line number which aids on screen navigation. As well as displaying the on screen data within the data cells, the system attempts to provide more information about the object whose data is being accessed. A Label can be associated with each on screen object and, if available, this would be displayed before the on screen data. For example, when over a text field containing a name the following could be displayed: "Name Terry". This aids screen navigation giving the user automatic feedback on where they are. The text cursor is displayed by raising the lower two pins of the appropriate status cell.The braille front keys are used for screen navigation allowing the user to move up, down, left and right both objects and text. The status cell buttons provide additional features such as moving the on screen mouse cursor over a particular character, moving between application windows, pressing the mouse buttons and running simple macro commands.