AtkTable

Name

AtkTable -- The ATK interface implemented for UI components which contain tabular or row/column information.

Synopsis



struct      AtkTable;
struct      AtkTableIface;
AtkObject*  atk_table_ref_at                (AtkTable *table,
                                             gint row,
                                             gint column);
gint        atk_table_get_index_at          (AtkTable *table,
                                             gint row,
                                             gint column);
gint        atk_table_get_column_at_index   (AtkTable *table,
                                             gint index);
gint        atk_table_get_row_at_index      (AtkTable *table,
                                             gint index);
gint        atk_table_get_n_columns         (AtkTable *table);
gint        atk_table_get_n_rows            (AtkTable *table);
gint        atk_table_get_column_extent_at  (AtkTable *table,
                                             gint row,
                                             gint column);
gint        atk_table_get_row_extent_at     (AtkTable *table,
                                             gint row,
                                             gint column);
AtkObject*  atk_table_get_caption           (AtkTable *table);
G_CONST_RETURN gchar* atk_table_get_column_description
                                            (AtkTable *table,
                                             gint column);
G_CONST_RETURN gchar* atk_table_get_row_description
                                            (AtkTable *table,
                                             gint row);
AtkObject*  atk_table_get_column_header     (AtkTable *table,
                                             gint column);
AtkObject*  atk_table_get_row_header        (AtkTable *table,
                                             gint row);
AtkObject*  atk_table_get_summary           (AtkTable *table);
void        atk_table_set_caption           (AtkTable *table,
                                             AtkObject *caption);
void        atk_table_set_row_description   (AtkTable *table,
                                             gint row,
                                             const gchar *description);
void        atk_table_set_column_description
                                            (AtkTable *table,
                                             gint column,
                                             const gchar *description);
void        atk_table_set_row_header        (AtkTable *table,
                                             gint row,
                                             AtkObject *header);
void        atk_table_set_column_header     (AtkTable *table,
                                             gint column,
                                             AtkObject *header);
void        atk_table_set_summary           (AtkTable *table,
                                             AtkObject *accessible);
gint        atk_table_get_selected_columns  (AtkTable *table,
                                             gint **selected);
gint        atk_table_get_selected_rows     (AtkTable *table,
                                             gint **selected);
gboolean    atk_table_is_column_selected    (AtkTable *table,
                                             gint column);
gboolean    atk_table_is_row_selected       (AtkTable *table,
                                             gint row);
gboolean    atk_table_is_selected           (AtkTable *table,
                                             gint row,
                                             gint column);
gboolean    atk_table_add_column_selection  (AtkTable *table,
                                             gint column);
gboolean    atk_table_add_row_selection     (AtkTable *table,
                                             gint row);
gboolean    atk_table_remove_column_selection
                                            (AtkTable *table,
                                             gint column);
gboolean    atk_table_remove_row_selection  (AtkTable *table,
                                             gint row);

Description

AtkTable should be implemented by components which present elements ordered via rows and columns. It may also be used to present tree-structured information if the nodes of the trees can be said to contain multiple "columns". Individual elements of an AtkTable are typically referred to as "cells", and these cells are exposed by AtkTable as child AtkObjects of the AtkTable. Both row/column and child-index-based access to these children is provided.

Children of AtkTable are frequently "lightweight" objects, that is, they may not have backing widgets in the host UI toolkit. They are therefore often transient.

Since tables are often very complex, AtkTable includes provision for offering simplified summary information, as well as row and column headers and captions. Headers and captions are AtkObjects which may implement other interfaces (AtkText, AtkImage, etc.) as appropriate. AtkTable summaries may themselves be (simplified) AtkTables, etc.

Details

struct AtkTable

struct AtkTable;


struct AtkTableIface

struct AtkTableIface
{
  GTypeInterface parent;

  AtkObject*        (* ref_at)                   (AtkTable      *table,
                                                  gint          row,
                                                  gint          column);
  gint              (* get_index_at)             (AtkTable      *table,
                                                  gint          row,
                                                  gint          column);
  gint              (* get_column_at_index)      (AtkTable      *table,
                                                  gint          index);
  gint              (* get_row_at_index)         (AtkTable      *table,
                                                  gint          index);
  gint              (* get_n_columns)           (AtkTable      *table);
  gint              (* get_n_rows)               (AtkTable      *table);
  gint              (* get_column_extent_at)     (AtkTable      *table,
                                                  gint          row,
                                                  gint          column);
  gint              (* get_row_extent_at)        (AtkTable      *table,
                                                  gint          row,
                                                  gint          column);
  AtkObject*
                    (* get_caption)              (AtkTable      *table);
  G_CONST_RETURN gchar*
                    (* get_column_description)   (AtkTable      *table,
                                                  gint          column);
  AtkObject*        (* get_column_header)        (AtkTable      *table,
						  gint		column);
  G_CONST_RETURN gchar*
                    (* get_row_description)      (AtkTable      *table,
                                                  gint          row);
  AtkObject*        (* get_row_header)           (AtkTable      *table,
						  gint		row);
  AtkObject*        (* get_summary)              (AtkTable      *table);
  void              (* set_caption)              (AtkTable      *table,
                                                  AtkObject     *caption);
  void              (* set_column_description)   (AtkTable      *table,
                                                  gint          column,
                                                  const gchar   *description);
  void              (* set_column_header)        (AtkTable      *table,
                                                  gint          column,
                                                  AtkObject     *header);
  void              (* set_row_description)      (AtkTable      *table,
                                                  gint          row,
                                                  const gchar   *description);
  void              (* set_row_header)           (AtkTable      *table,
                                                  gint          row,
                                                  AtkObject     *header);
  void              (* set_summary)              (AtkTable      *table,
                                                  AtkObject     *accessible);
  gint              (* get_selected_columns)     (AtkTable      *table,
                                                  gint          **selected);
  gint              (* get_selected_rows)        (AtkTable      *table,
                                                  gint          **selected);
  gboolean          (* is_column_selected)       (AtkTable      *table,
                                                  gint          column);
  gboolean          (* is_row_selected)          (AtkTable      *table,
                                                  gint          row);
  gboolean          (* is_selected)              (AtkTable      *table,
                                                  gint          row,
                                                  gint          column);
  gboolean          (* add_row_selection)        (AtkTable      *table,
                                                  gint          row);
  gboolean          (* remove_row_selection)     (AtkTable      *table,
                                                  gint          row);
  gboolean          (* add_column_selection)     (AtkTable      *table,
                                                  gint          column);
  gboolean          (* remove_column_selection)  (AtkTable      *table,
                                                  gint          column);

  /*
   * signal handlers
   */
  void              (* row_inserted)             (AtkTable      *table,
                                                  gint          row,
                                                  gint          num_inserted);
  void              (* column_inserted)          (AtkTable      *table,
                                                  gint          column,
                                                  gint          num_inserted);
  void              (* row_deleted)              (AtkTable      *table,
                                                  gint          row,
                                                  gint          num_deleted);
  void              (* column_deleted)           (AtkTable      *table,
                                                  gint          column,
                                                  gint          num_deleted);
  void              (* row_reordered)            (AtkTable      *table);
  void              (* column_reordered)         (AtkTable      *table);
  void              (* model_changed)            (AtkTable      *table);

  AtkFunction       pad1;
  AtkFunction       pad2;
  AtkFunction       pad3;
  AtkFunction       pad4;
};


atk_table_ref_at ()

AtkObject*  atk_table_ref_at                (AtkTable *table,
                                             gint row,
                                             gint column);

Get a reference to the table cell at row, column.


atk_table_get_index_at ()

gint        atk_table_get_index_at          (AtkTable *table,
                                             gint row,
                                             gint column);

Gets a gint representing the index at the specified row and column. The value -1 is returned if the object at row,column is not a child of table or table does not implement this interface.


atk_table_get_column_at_index ()

gint        atk_table_get_column_at_index   (AtkTable *table,
                                             gint index);

Gets a gint representing the column at the specified index, or -1 if the table does not implement this interface


atk_table_get_row_at_index ()

gint        atk_table_get_row_at_index      (AtkTable *table,
                                             gint index);

Gets a gint representing the row at the specified index, or -1 if the table does not implement this interface


atk_table_get_n_columns ()

gint        atk_table_get_n_columns         (AtkTable *table);

Gets the number of columns in the table.


atk_table_get_n_rows ()

gint        atk_table_get_n_rows            (AtkTable *table);

Gets the number of rows in the table.


atk_table_get_column_extent_at ()

gint        atk_table_get_column_extent_at  (AtkTable *table,
                                             gint row,
                                             gint column);

Gets the number of columns occupied by the accessible object at the specified row and column in the table.


atk_table_get_row_extent_at ()

gint        atk_table_get_row_extent_at     (AtkTable *table,
                                             gint row,
                                             gint column);

Gets the number of rows occupied by the accessible object at a specified row and column in the table.


atk_table_get_caption ()

AtkObject*  atk_table_get_caption           (AtkTable *table);

Gets the caption for the table.


atk_table_get_column_description ()

G_CONST_RETURN gchar* atk_table_get_column_description
                                            (AtkTable *table,
                                             gint column);

Gets the description text of the specified column in the table


atk_table_get_row_description ()

G_CONST_RETURN gchar* atk_table_get_row_description
                                            (AtkTable *table,
                                             gint row);

Gets the description text of the specified row in the table


atk_table_get_column_header ()

AtkObject*  atk_table_get_column_header     (AtkTable *table,
                                             gint column);

Gets the column header of a specified column in an accessible table.


atk_table_get_row_header ()

AtkObject*  atk_table_get_row_header        (AtkTable *table,
                                             gint row);

Gets the row header of a specified row in an accessible table.


atk_table_get_summary ()

AtkObject*  atk_table_get_summary           (AtkTable *table);

Gets the summary description of the table.


atk_table_set_caption ()

void        atk_table_set_caption           (AtkTable *table,
                                             AtkObject *caption);

Sets the caption for the table.


atk_table_set_row_description ()

void        atk_table_set_row_description   (AtkTable *table,
                                             gint row,
                                             const gchar *description);

Sets the description text for the specified row of table.


atk_table_set_column_description ()

void        atk_table_set_column_description
                                            (AtkTable *table,
                                             gint column,
                                             const gchar *description);

Sets the description text for the specified column of the table.


atk_table_set_row_header ()

void        atk_table_set_row_header        (AtkTable *table,
                                             gint row,
                                             AtkObject *header);

Sets the specified row header to header.


atk_table_set_column_header ()

void        atk_table_set_column_header     (AtkTable *table,
                                             gint column,
                                             AtkObject *header);

Sets the specified column header to header.


atk_table_set_summary ()

void        atk_table_set_summary           (AtkTable *table,
                                             AtkObject *accessible);

Sets the summary description of the table.


atk_table_get_selected_columns ()

gint        atk_table_get_selected_columns  (AtkTable *table,
                                             gint **selected);

Gets the selected columns of the table by initializing **selected with the selected column numbers. This array should be freed by the caller.


atk_table_get_selected_rows ()

gint        atk_table_get_selected_rows     (AtkTable *table,
                                             gint **selected);

Gets the selected rows of the table by initializing **selected with the selected row numbers. This array should be freed by the caller.


atk_table_is_column_selected ()

gboolean    atk_table_is_column_selected    (AtkTable *table,
                                             gint column);

Gets a boolean value indicating whether the specified column is selected


atk_table_is_row_selected ()

gboolean    atk_table_is_row_selected       (AtkTable *table,
                                             gint row);

Gets a boolean value indicating whether the specified row is selected


atk_table_is_selected ()

gboolean    atk_table_is_selected           (AtkTable *table,
                                             gint row,
                                             gint column);

Gets a boolean value indicating whether the accessible object at the specified row and column is selected


atk_table_add_column_selection ()

gboolean    atk_table_add_column_selection  (AtkTable *table,
                                             gint column);

Adds the specified column to the selection.


atk_table_add_row_selection ()

gboolean    atk_table_add_row_selection     (AtkTable *table,
                                             gint row);

Adds the specified row to the selection.


atk_table_remove_column_selection ()

gboolean    atk_table_remove_column_selection
                                            (AtkTable *table,
                                             gint column);

Adds the specified column to the selection.


atk_table_remove_row_selection ()

gboolean    atk_table_remove_row_selection  (AtkTable *table,
                                             gint row);

Removes the specified row from the selection.

See Also

AtkObject, ATK_STATE_TRANSIENT