From 12b63ec4ab27fdfea36a419240dcaa29ae80a73e Mon Sep 17 00:00:00 2001 From: Li Yuan Date: Tue, 19 Jul 2005 07:46:05 +0000 Subject: Fixes #310136 #310138. The first items of e-table are column-header. So we 2005-07-18 Li Yuan Fixes #310136 #310138. * e-table/gal-a11y-e-table-item.c: (eti_get_index_at), (eti_get_row_at_index), (eti_get_n_rows), (eti_rows_inserted), (eti_rows_deleted), (eti_header_structure_changed): The first items of e-table are column-header. So we should add number of columns when change (row, col) to index, or subtract when change index to (row, col). svn path=/trunk/; revision=29794 --- a11y/ChangeLog | 10 ++++++++++ a11y/e-table/gal-a11y-e-table-item.c | 14 +++++++------- 2 files changed, 17 insertions(+), 7 deletions(-) (limited to 'a11y') diff --git a/a11y/ChangeLog b/a11y/ChangeLog index 240d6310f4..0177c5b19b 100644 --- a/a11y/ChangeLog +++ b/a11y/ChangeLog @@ -1,3 +1,13 @@ +2005-07-18 Li Yuan + + Fixes #310136 #310138. + * e-table/gal-a11y-e-table-item.c: (eti_get_index_at), + (eti_get_row_at_index), (eti_get_n_rows), (eti_rows_inserted), + (eti_rows_deleted), (eti_header_structure_changed): + The first items of e-table are column-header. So we should add + number of columns when change (row, col) to index, or subtract + when change index to (row, col). + 2005-06-18 Tor Lillqvist * Makefile.am diff --git a/a11y/e-table/gal-a11y-e-table-item.c b/a11y/e-table/gal-a11y-e-table-item.c index b4882d71bb..7f2ceb0190 100644 --- a/a11y/e-table/gal-a11y-e-table-item.c +++ b/a11y/e-table/gal-a11y-e-table-item.c @@ -377,7 +377,7 @@ eti_get_index_at (AtkTable *table, gint row, gint column) if (!item) return -1; - return column + row * item->cols; + return column + (row + 1) * item->cols; } static gint @@ -401,7 +401,7 @@ eti_get_row_at_index (AtkTable *table, gint index) if (!item) return -1; - return index / item->cols; + return index / item->cols - 1; } static gint @@ -425,7 +425,7 @@ eti_get_n_rows (AtkTable *table) if (!item) return -1; - return item->rows + 1; + return item->rows; } static gint @@ -688,7 +688,7 @@ eti_rows_inserted (ETableModel * model, int row, int count, for (j = 0; j < n_cols; j ++) { g_signal_emit_by_name (table_item, "children_changed::add", - ( (i*n_cols) + j), NULL, NULL); + ( ((i + 1)*n_cols) + j), NULL, NULL); } } @@ -718,7 +718,7 @@ eti_rows_deleted (ETableModel * model, int row, int count, for (j = 0; j < n_cols; j ++) { g_signal_emit_by_name (table_item, "children_changed::remove", - ( (i*n_cols) + j), NULL, NULL); + ( ((i + 1)*n_cols) + j), NULL, NULL); } } g_signal_emit_by_name (table_item, "visible-data-changed"); @@ -833,7 +833,7 @@ eti_header_structure_changed (ETableHeader *eth, AtkObject *a11y) if (prev_state[i] == ETI_HEADER_REMOVED) { g_signal_emit_by_name (G_OBJECT(a11y_item), "column-deleted", i, 1); for (j = 0 ; j < n_rows; j ++) - g_signal_emit_by_name (G_OBJECT(a11y_item), "children_changed::remove", (j*prev_n_cols+i), NULL, NULL); + g_signal_emit_by_name (G_OBJECT(a11y_item), "children_changed::remove", ((j+1)*prev_n_cols+i), NULL, NULL); } } } @@ -843,7 +843,7 @@ eti_header_structure_changed (ETableHeader *eth, AtkObject *a11y) if (state[i] == ETI_HEADER_NEW_ADDED) { g_signal_emit_by_name (G_OBJECT(a11y_item), "column-inserted", i, 1); for (j = 0 ; j < n_rows; j ++) - g_signal_emit_by_name (G_OBJECT(a11y_item), "children_changed::add", (j*n_cols+i), NULL, NULL); + g_signal_emit_by_name (G_OBJECT(a11y_item), "children_changed::add", ((j+1)*n_cols+i), NULL, NULL); } } } -- cgit