149 lines
6.5 KiB
Plaintext
149 lines
6.5 KiB
Plaintext
|
<page xmlns="http://projectmallard.org/1.0/" type="topic" id="howto_tables">
|
||
|
<info>
|
||
|
<link type="guide" xref="index#reading"/>
|
||
|
<link type="next" xref="howto_forms" />
|
||
|
<title type="sort">4. Tables</title>
|
||
|
<desc>
|
||
|
Navigating and setting dynamic headers
|
||
|
</desc>
|
||
|
<credit type="author">
|
||
|
<name>Joanmarie Diggs</name>
|
||
|
<email>joanied@gnome.org</email>
|
||
|
</credit>
|
||
|
<license>
|
||
|
<p>Creative Commons Share Alike 3.0</p>
|
||
|
</license>
|
||
|
</info>
|
||
|
<title>Tables</title>
|
||
|
<p>
|
||
|
<app>Cthulhu</app> provides several features specifically designed to improve
|
||
|
access to tables found in web pages and other documents: configurable cell
|
||
|
versus row reading, <link xref="howto_structural_navigation">Structural
|
||
|
Navigation</link> and Dynamic Headers.
|
||
|
</p>
|
||
|
<section id="cell_row">
|
||
|
<title>Cell Versus Row Reading</title>
|
||
|
<p>
|
||
|
Consider the process of examining the list of messages in your Inbox.
|
||
|
In order to have Cthulhu announce the sender, subject, date, and presence
|
||
|
of attachments you would need <app>Cthulhu</app> to speak the row. On the
|
||
|
other hand, when navigating amongst rows in a spreadsheet, hearing the
|
||
|
full row may not be desired if for no other reason than the sheer number
|
||
|
of cells in each row. Thus in that case, you would want <app>Cthulhu</app>
|
||
|
to only speak the cell with focus. Similar situations occur in document
|
||
|
tables.
|
||
|
</p>
|
||
|
<p>
|
||
|
<app>Cthulhu</app> allows you to customize whether only the cell should be
|
||
|
read, or if the full row should be, for GUI tables, document tables,
|
||
|
and spreadsheets. Because these settings are independent of one another,
|
||
|
you do not have to choose one table reading mode to fit multiple types of
|
||
|
tables.
|
||
|
</p>
|
||
|
<p>
|
||
|
You can set each of <app>Cthulhu</app>'s table reading preferences <app>Cthulhu</app>
|
||
|
wide as well as on an application-by-application basis. How to do each is
|
||
|
described in the guide on <link xref="preferences"><app>Cthulhu</app>'s preferences
|
||
|
dialogs</link>. The settings can be found on the <link xref="preferences_speech">
|
||
|
<gui>Speech</gui> page</link>.
|
||
|
</p>
|
||
|
<p>
|
||
|
Lastly, there is also an <app>Cthulhu</app> command which allows you to toggle
|
||
|
cell versus row reading on the fly for the currently-active table:
|
||
|
<keyseq><key>Cthulhu Modifier</key><key>F11</key></keyseq>.
|
||
|
</p>
|
||
|
</section>
|
||
|
<section id="structural_navigation">
|
||
|
<title>Structural Navigation</title>
|
||
|
<p>
|
||
|
<app>Cthulhu</app>'s <link xref="commands_structural_navigation#tables">table
|
||
|
Structural Navigation commands</link> make it possible for you to quickly
|
||
|
locate tables, jump immediately to a table's first or last cell, and
|
||
|
move to the next cell in any direction.
|
||
|
</p>
|
||
|
<p>
|
||
|
As you navigate amongst and within tables using Structural Navigation,
|
||
|
<app>Cthulhu</app> will announce additional details to help you understand
|
||
|
your position, such as the dimensions of the table you just entered and
|
||
|
the fact that you have reached the edge of the table in the direction you
|
||
|
are moving.
|
||
|
</p>
|
||
|
<p>
|
||
|
In addition, <app>Cthulhu</app> provides configurable
|
||
|
<link xref="preferences_table_navigation">presentation options</link>
|
||
|
which work in conjunction with Structural Navigation and allow you to
|
||
|
control whether or not cell coordinates are presented, multiple cell spans
|
||
|
are indicated, and cell headers are announced.
|
||
|
</p>
|
||
|
<note style="tip">
|
||
|
<title>Don't Forget To Toggle Structural Navigation On!</title>
|
||
|
<p>
|
||
|
Depending on where you are, it may be necessary for you to explicitly
|
||
|
toggle Structural Navigation on before you can use it. To learn more, read
|
||
|
<link xref="howto_structural_navigation#toggling_required">
|
||
|
when toggling Structural Navigation on is required.</link>
|
||
|
</p>
|
||
|
</note>
|
||
|
</section>
|
||
|
<section id="dynamic_headers">
|
||
|
<title>Dynamic Headers</title>
|
||
|
<p>
|
||
|
Many of the tables you will encounter while reading have cells which serve
|
||
|
as the header for a row or a column. Whether or not the creator of that
|
||
|
table correctly marked those cells as headers is hard to say. In many
|
||
|
cases, the text was simply formatted to be larger and/or bold. And even if
|
||
|
the table is correctly marked up, that is no guarantee that the application
|
||
|
or toolkit exposes that text as header information to assistive technologies.
|
||
|
<app>Cthulhu</app>'s Dynamic Header support makes it possible to overcome these
|
||
|
challenges.
|
||
|
</p>
|
||
|
<steps>
|
||
|
<title>Setting Column Headers</title>
|
||
|
<item>
|
||
|
<p>
|
||
|
Move to the row which contains all of the column headers.
|
||
|
</p>
|
||
|
</item>
|
||
|
<item>
|
||
|
<p>
|
||
|
Press <keyseq><key>Cthulhu Modifier</key><key>R</key></keyseq> to tell
|
||
|
<app>Cthulhu</app> that the current row is the one with the headers.
|
||
|
</p>
|
||
|
</item>
|
||
|
</steps>
|
||
|
<steps>
|
||
|
<title>Setting Row Headers</title>
|
||
|
<item>
|
||
|
<p>
|
||
|
Move to the column which contains all of the row headers.
|
||
|
</p>
|
||
|
</item>
|
||
|
<item>
|
||
|
<p>
|
||
|
Press <keyseq><key>Cthulhu Modifier</key><key>C</key></keyseq> to tell
|
||
|
<app>Cthulhu</app> that the current column is the one with the headers.
|
||
|
</p>
|
||
|
</item>
|
||
|
</steps>
|
||
|
<p>
|
||
|
Having set either the column headers or the row headers, you should find
|
||
|
that as you navigate amongst the cells, <app>Cthulhu</app> will present each
|
||
|
header that has changed. Or to put it another way, <app>Cthulhu</app> will
|
||
|
not present the column header over and over again as you move up or down
|
||
|
within the current column. Likewise, it will not present the row header
|
||
|
over and over again as you move left or right within the current row.
|
||
|
However, if you change rows and there are row headers, the header
|
||
|
associated with the new row will be presented. And if you change columns
|
||
|
and there are column headers, the header associated with the new column
|
||
|
will be presented.
|
||
|
</p>
|
||
|
<p>
|
||
|
To clear headers, simply double-click the command you used to set them.
|
||
|
Thus double-clicking <keyseq><key>Cthulhu Modifier</key><key>R</key></keyseq>
|
||
|
tells <app>Cthulhu</app> there are no column headers. Double-clicking
|
||
|
<keyseq><key>Cthulhu Modifier</key><key>C</key></keyseq> tells <app>Cthulhu</app>
|
||
|
there are no row headers.
|
||
|
</p>
|
||
|
</section>
|
||
|
</page>
|