2001-12-10 Michael Meeks <michael@ximian.com>
[platform/core/uifw/at-spi2-atk.git] / idl / Table.idl
1 /* 
2  * AT-SPI - Assistive Technology Service Provider Interface 
3  * (Gnome Accessibility Project; http://developer.gnome.org/projects/gap)
4  *
5  * Copyright 2001 Sun Microsystems, Inc.
6  *
7  * This library is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU Library General Public
9  * License as published by the Free Software Foundation; either
10  * version 2 of the License, or (at your option) any later version.
11  *
12  * This library is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15  * Library General Public License for more details.
16  *
17  * You should have received a copy of the GNU Library General Public
18  * License along with this library; if not, write to the
19  * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
20  * Boston, MA 02111-1307, USA.
21  */
22
23 #include <Accessible.idl>
24
25 module Accessibility {
26
27 typedef sequence<long> LongSeq;
28
29  interface Table : Bonobo::Unknown {
30    readonly attribute long nRows;
31    readonly attribute long nColumns;
32    readonly attribute Accessible caption;
33    readonly attribute Accessible summary;
34    readonly attribute long nSelectedRows;
35    readonly attribute long nSelectedColumns;
36
37    Accessible getAccessibleAt (in long row, in long column);
38    long getIndexAt (in long row, in long column);
39    long getRowAtIndex (in long index);
40    long getColumnAtIndex (in long index);
41    string getRowDescription (in long row);
42    string getColumnDescription (in long column);
43    long getRowExtentAt (in long row, in long column);
44    long getColumnExtentAt (in long row, in long column);
45    Accessible getRowHeader (in long row);
46    Accessible getColumnHeader (in long column);
47    LongSeq getSelectedRows ();
48    LongSeq getSelectedColumns ();
49    boolean isRowSelected (in long row);
50    boolean isColumnSelected (in long column);
51    boolean isSelected (in long row, in long column);
52  };
53 };