gtk_tree_model_get_value called for invisible cells?



Hi,

I am testing simple subclass of GtkTreeModel to allow the user browsing a data tree without prefetching all the information from the database and storing all of it in memory. I understand that GtkTreeView should call gtk_tree_model_get_value() only for the actually displayed rows and columns but I cannot achieve this effect. Has anybody tried something like this?
The application basically has only a GtkTreeView widget in 
GtkScrolledWindow. GtkTreeView is connected to custom GtkTreeModel that 
fetches data from database in chunks. When GtkTreeView processes 
request-size event, it validates all the rows to compute their size:
#1  0x401a5b8b in gtk_tree_model_get_value () #2  0x401cef6f in 
gtk_tree_view_column_cell_set_cell_data () #3  0x401bbe02 in 
validate_row () #4  0x401bcb74 in do_validate_rows ()
#5  0x401bcf55 in validate_rows ()
#6  0x401b7a68 in gtk_tree_view_size_request ()

The iteration over rows is done to compute the height of the widget and I am fine with that but I do not understand why get_value() is called. Isn't possible to fix all the cell widths and heights? There is a gtk_tree_view_column_set_fixed_width() method but it does not appear to change a thing?
Anybody can offer any hints? Has done something like this before? I 
have not seen this issue mentioned in the list archive.
Pawel



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