On Mon, Feb 23, 2009 at 11:32:13PM +0100, Anders Broman wrote: > There seems to be quite a performance hit with using the TreeView > Widget:
> Does some one know if it's possible to tweak the code to get better > performance or is it best to back out the new code and retackle The > old bug ? https://bugs.wireshark.org/bugzilla/show_bug.cgi?id=3246 I > don't have a sufficently large RTP trace to test with at the moment. There are a number of tweaks available to speed up the tree view widget. In my testing for replacing the main packet list (a coding project I should really finish up to show to others), I can get nearly the same speeds as the clist with the tweaks and "freezing" of the list while populating it along with other tweaks. I've gone so far as to create custom functions to mamipulate a a GtkTreeModel for the GtkTreeView, which helps somewhat with speed and especially with customization. To freeze & thaw the updating of the GtkTreeView with every update to the GtkTreeModel, use something like the following: void new_packet_list_freeze(void) { /* So we don't lose the model by the time we want to thaw it */ g_object_ref(packetlist); /* Detach view from model */ gtk_tree_view_set_model(GTK_TREE_VIEW(packetlist->view), NULL); } void new_packet_list_thaw(void) { /* Remove the ref added by new_packet_list_freeze() */ g_object_unref(packetlist); /* Re-attach view to the model */ gtk_tree_view_set_model(GTK_TREE_VIEW(packetlist->view), GTK_TREE_MODEL(packetlist)); } Also turn off automatic sizing so that the columns are a fixed with: gtk_tree_view_column_set_sizing(col,GTK_TREE_VIEW_COLUMN_FIXED); I haven't looked at the code you're speaking of to see if these things are already done. If we could get our hands on a big enough capture file, I could take a look at the code. Steve ___________________________________________________________________________ Sent via: Wireshark-dev mailing list <[email protected]> Archives: http://www.wireshark.org/lists/wireshark-dev Unsubscribe: https://wireshark.org/mailman/options/wireshark-dev mailto:[email protected]?subject=unsubscribe
