Pete, I'll try to formulate my question more precisely. You said "table would have to be generated dynamically (or kept separately and provided as needed)". Ok, what interfaces should implement this table object? I can see two choices: 1) IAccessibleTable only 2) IAccessibleTable + IAccessible/IAccessible2
Alex. On Thu, May 7, 2009 at 9:34 PM, Pete Brunet <[email protected]> wrote: > Alex, > > I'm not following this question about accessible trees. Please provide more > detail. > > Row/column headers are aren't children of the table, they are part of the > table (usually the first row/col), but when the IA2 call is made to get the > headers a table would have to be generated dynamically (or kept separately > and provided as needed). > > I don't think you can implement row/column descriptions with HTML, but I > assume you could with WAI-ARIA using a relation. > > Pete > > Alexander Surkov wrote: > > Hi, Pete. > > 1. "the table of row headers and the table of column headers would be > kept as objects separate from the primary table". How may accessible > tree look? Does it mean tables of row/column headers isn't a child of > primary table accessible? If so how will row/column headers tables > share children (rows and cells) with primary table? Otherwise > row/column headers tables should implement IAccessibleTable interface > only. How are such tables useful in this case? > > 2. Can you bring an example how column/row description can be > specified? It would be great to get HTML or ARIA example. > > Alex. > > > On Sat, Apr 25, 2009 at 12:27 PM, Pete Brunet <[email protected]> wrote: > > > Alex, > > Neither IATable::modelChange nor object attributes are good for out of > process AT. We could solve this for IA2 v2 by inventing a new event > system. I'd leave the values until the next time the event is fired. > > My understanding is the table of row headers and the table of column headers > would be kept as objects separate from the primary table. The text you have > specified as "caption" would be returned in the text of the single cell of > the returned table of column headers. There is no column description in > this case. If there was one, it would be a separate text object describing > the column. > > Pete > > Alexander Surkov wrote: > > Hi, Pete. > > What's the difference between IATable::modelChange and object > attributes for out-process AT? If we'll start to expose object > attributes then should set their values before we fire event but when > we need to drop their values? > > If I have > > <table> > <tr> > <th>caption1</th> > </tr> > <tr> > <td>cell1</td> > </tr> > </table> > > then the first tr element should implement IAccessibleTable, text of > th element is COLUMN header description, the first tr element is ROW > header. Or? > > Alex. > > > On Sat, Apr 25, 2009 at 11:09 AM, Pete Brunet <[email protected]> wrote: > > > Alexander, > > The table would fire the IA2_EVENT_TABLE_* events. > > I see there is a problem with the four row/column events, i.e. > IA2_EVENT_TABLE_ROW/COLUMN_DESCRIPTION/HEADER_CHANGED, because you don't > know which row/column changed. This is due to the fact that the concepts > were taken from OpenOffice/Linux where the row/column is provided in an > event object. At least for in-process AT we solved the problem for > MODEL_CHANGED with IATable::modelChange. How about if we add some > additional object attributes to the table such as > row-description-changed-index, column-description-changed-index, > row-header-changed-index, and column-header-changed-index? > > Row/column headers are a subset of cells in the table. For > ROW/COLUMN_HEADER_CHANGED, IATable::row/columnHeader returns the entire set > (a table) of row/column headers. > > Row/column descriptions are text objects (one per row/column) and they are > separate from the table object. For ROW/COLUMN_DESCRIPTION_CHANGED, > IATable::row/columnDescription is used. > > Pete > > Alexander Surkov wrote: > > Hi. > > 1. IA2 proposes couple of events started with IA2_EVENT_TABLE_ prefix > (like IA2_EVENT_TABLE_CAPTION_CHANGED). I assume events target is > table, i.e. accessible implementing IAccessible interface. Is it > correct? > > 2. What's difference between row description and row header? IA2 > suggests different events for this > (IA2_EVENT_TABLE_ROW_DESCRIPTION_CHANGED and > IA2_EVENT_TABLE_ROW_HEADER_ > CHANGED) and IAccessibleTable has different > mehtods (rowDescription returning BSTR and rowHeader returning > accessible). > > Thank you. > Alex. > _______________________________________________ > Accessibility-ia2 mailing list > [email protected] > https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2 > > > > > -- > Pete Brunet > > a11ysoft - Accessibility Architecture and Development > (512) 238-6967 > pete @ a11ysoft.com > http://www.a11ysoft.com/about/ > http://www.linkedin.com/in/petebrunet > Ionosphere: WS4G > > _______________________________________________ > Accessibility-ia2 mailing list > [email protected] > https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2 > > > > > > > -- > Pete Brunet > > a11ysoft - Accessibility Architecture and Development > (512) 238-6967 > pete @ a11ysoft.com > http://www.a11ysoft.com/about/ > http://www.linkedin.com/in/petebrunet > Ionosphere: WS4G > > _______________________________________________ > Accessibility-ia2 mailing list > [email protected] > https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2 > > > > > > > -- > Pete Brunet > > a11ysoft - Accessibility Architecture and Development > (512) 238-6967 > pete @ a11ysoft.com > http://www.a11ysoft.com/about/ > http://www.linkedin.com/in/petebrunet > Ionosphere: WS4G > > _______________________________________________ > Accessibility-ia2 mailing list > [email protected] > https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2 > > _______________________________________________ Accessibility-ia2 mailing list [email protected] https://lists.linux-foundation.org/mailman/listinfo/accessibility-ia2
