sub menu { my (undef, $event) = @_; if ($event->{type} =~ /button[-_]press/ and ($event->{button} == 2 or $event->{button} == 3)) { my $menu_menu = new Gtk::Menu; my $menu_item = new Gtk::MenuItem('Delete it.'); $menu_item->show; $menu_menu->append($menu_item); $menu_menu->show; $menu_item->signal_connect("activate" => \&do_remove); $menu_menu->popup(undef, undef, $event, $event->{'time'}); } return 1; } #### sub do_remove { my ($x, $y) = $main_clist->get_pointer; my ($row, $column) = $main_clist->get_selection_info($x, $y); $column = 0; if (defined $row && defined $column) { my $text = $main_clist->get_text($row, $column) || undef; if (defined $text) { print $text . "\n"; } } }