Dear all, I have an application where I use a tree-view to display some data from an external hardware. Different Objects can be added or removed to the treestore, each existing object in the treestore has a specific id which is used to get data over some communication interface.
It can easily happen, the the user deselects an object in the treestore while this communication is ongoing. This means that my treepath or iter which I rembered befor is not valid anymore after the communication has finished (*1). To avoid access to not existing memory (*2) I currently use gtk_tree_store_iter_is_valid, but the documentation recommends to no use this function. Even I didn't notice any increase of cpu load or timing influence, I want to follow this recommendation. Of course I can think about implementing a selfmade locking mechanism, but every alternative I considered so far which is under all circumstances is not inconvenient for the user requires a queue to store the add / deselect events. For my feeling this is to much overhead for just this function, does anyone see an other alternative? Maybe there is existing some g_lib stuff for this? In my current implementation it would be very good, if gtk_tree_model_filter_convert_iter_to_child_iter would have a return value. It already produces an gtk_warning if the iter could not be converted so why no return value? *1 (the communication itself is handled in a functions called from g_idle_add, so no thread issue etc.) *2 (my application can crash at gtk_tree_model_get, if the iter is not valid) ps: One other Idea I just had while writing this is to add a boolean column to the treestore where I mark columns which should be removed. This I can handle in my communication callback function, together with a column visible flag this will not be noticeable. I allready have 18 columns in the treestore, this would be the 19th, no problem or? Well, If there is no other Idea, thanks for listening. regards Arne _______________________________________________ gtk-app-devel-list mailing list gtk-app-devel-list@gnome.org https://mail.gnome.org/mailman/listinfo/gtk-app-devel-list