static gboolean table_add_row_selection (AtkTable *table, gint row) { ETableItem *item; item = E_TABLE_ITEM (eti_a11y_get_gobject (ATK_OBJECT (table))); if (!item) return FALSE; if (table_is_row_selected (table, row)) return TRUE; e_selection_model_toggle_single_row (item->selection, view_to_model_row (item, row)); return TRUE; }
static gboolean table_is_row_selected (AtkTable *table, gint row) { ETableItem *item; GalA11yETableItemPrivate *priv = GET_PRIVATE (table); if (row < 0) return FALSE; if (atk_state_set_contains_state (priv->state_set, ATK_STATE_DEFUNCT)) return FALSE; item = E_TABLE_ITEM (eti_a11y_get_gobject (ATK_OBJECT (table))); if (!item) return FALSE; return e_selection_model_is_row_selected ( item->selection, view_to_model_row (item, row)); }