> Not sure if it is the "right" way to do it but it works for me.
Actually doesn't work unless I disconnect the model from the tree view before and after the removal. So now I'm using the following: my $model = $tv_sources->get_model; my $selection = $tv_sources->get_selection; my @paths = $selection->get_selected_rows; # Disconnect tree view from data model. $tv_sources->set_model(undef); # Convert paths to row references my @rowrefs; foreach my $p (@paths) { my $treerowreference = Gtk2::TreeRowReference->new ($model, $p); push (@rowrefs, $treerowreference); } # Remove rows based on row references for (my $i = 0; $i < scalar(@paths); $i++) { my $treerowreference = Gtk2::TreeRowReference->new ($model, $paths[$i]); my $path = $rowrefs[$i]->get_path; my ($iter) = $model->get_iter($path); $model->remove($iter); } $tv_sources->set_model($model); Prior to this removing 2 of the 3 rows in the treeview was working. Adding 4 rows and then trying to remove each alternate row was producing strange results until adding the set_model(undef/$model) lines. Again possibly not the best way to do it but *now* it seems to work correctly. __________________________________________________________________________________ See what's on at the movies in your area. Find out now: http://au.movies.yahoo.com/session-times/ _______________________________________________ gtk-perl-list mailing list gtk-perl-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-perl-list