gtktreeview: Why does gtktreeview retrieve all columns although 99% are not visible? (psppire)



Hi,

i currently work on psppire http://savannah.gnu.org/projects/pspp/ and want to use gtktreeview for a large 
number of columns (2000) and rows (10000). I use only a kind of fake tree model while the actual rendering 
and data retrieval is done via gtk_tree_view_column_set_cell_data_func. I noticed that during redraw all 
columns are actually retrieved but only for the visible rows. Here is a log showing the access pattern:

(here columns 0 to 1995)
render_data_cell: row: 6, column: 1996
render_data_cell: row: 6, column: 1997
render_data_cell: row: 6, column: 1998
render_data_cell: row: 6, column: 1999
render_data_cell: row: 6, column: 0
render_data_cell: row: 6, column: 1
render_data_cell: row: 6, column: 2
render_data_cell: row: 6, column: 3
render_data_cell: row: 6, column: 4
render_data_cell: row: 6, column: 5
render_data_cell: row: 6, column: 6
render_data_cell: row: 6, column: 7
render_data_cell: row: 6, column: 8
render_data_cell: row: 6, column: 9
render_data_cell: row: 6, column: 10
render_data_cell: row: 6, column: 11
render_data_cell: row: 6, column: 12
render_data_cell: row: 6, column: 13
render_data_cell: row: 6, column: 14
render_data_cell: row: 6, column: 15

Only columns 0 to 15 are visible in the window. Is there any specific reason why 2000 columns are retrieved 
when only 16 are visible? I configured the columns as GTK_TREE_VIEW_COLUMN_FIXED. The treeview has the 
fixed-height mode activated. I use gtk3 18.5 on macports. Is there a configuration of the columns or the 
treeview that would prevent this?

The code is here: 
http://git.savannah.gnu.org/cgit/pspp.git/tree/src/ui/gui/psppire-data-sheet.c?h=treeview#n244

Friedrich








[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]