From a5931319b6e19fdcbe18e077a2305cf41ccaea9e Mon Sep 17 00:00:00 2001 From: Christopher James Lahey Date: Fri, 12 Oct 2001 21:52:49 +0000 Subject: Use new e_table_header_prioritized_column field. 2001-10-12 Christopher James Lahey * e-table-click-to-add.c (set_initial_selection): Use new e_table_header_prioritized_column field. * e-table-header.c, e-table-header.h (e_table_header_prioritized_column): New function. Refactors the code from ETableClickToAdd to find the column with the highest priority. * e-table-selection-model.c, e-table-selection-model.h (model_changed_idle): Changed this function to use the e_table_header_prioritized_column function. Added an argument to set the "header" on this selection model. * e-table-utils.h: Indentation cleanup. * e-table.c (et_real_construct): Set the "header" argument on the selection model here. * e-table.h: #include svn path=/trunk/; revision=13633 --- widgets/table/e-table-header.c | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'widgets/table/e-table-header.c') diff --git a/widgets/table/e-table-header.c b/widgets/table/e-table-header.c index e29730ac32..2eb7e9e9af 100644 --- a/widgets/table/e-table-header.c +++ b/widgets/table/e-table-header.c @@ -834,3 +834,26 @@ e_table_header_get_type (void) return type; } + +int +e_table_header_prioritized_column (ETableHeader *eth) +{ + int best_model_col = 0; + int best_priority; + int i; + int count; + + count = e_table_header_count (eth); + if (count == 0) + return -1; + best_priority = e_table_header_get_column (eth, 0)->priority; + best_model_col = e_table_header_get_column (eth, 0)->col_idx; + for (i = 1; i < count; i++) { + int priority = e_table_header_get_column (eth, i)->priority; + if (priority > best_priority) { + best_priority = priority; + best_model_col = e_table_header_get_column (eth, i)->col_idx; + } + } + return best_model_col; +} -- cgit v1.2.3