http://www.perlmonks.org?node_id=682039

jettero has asked for the wisdom of the Perl Monks concerning the following question:

I'm enjoying Gtk2 quite a bit. I'm very new to it, but I've written some semi-fancy things with ease and it's just fun.

I got kinda stumped on tool tips though. I seem to be able to get them working everywhere except Gtk2::SimpleLists (which are really Gtk2::TreeViews).

It seems like I found most of the related topics, but I can't seem to get it to work. I want to add a tooltip to some of the rows of my simplelist.

# This is mostly their SmipleList example. They skipped warnings and +strict, # I only wrote the (non-working) tooltip stuff. use Data::Dumper; use Gtk2 '-init'; use Gtk2::SimpleList; use constant TRUE => 1; use constant FALSE => 0; $categories = Gtk2::SimpleList->new ('Categories' => 'text'); $categories->set_headers_visible(FALSE); @{$categories->{data}} = qw/Meat Beer Pizza Pasta Soda Juice Rabbitfoo +d/; $categories->set_has_tooltip(TRUE); # NOTE: thought this might help (n +ope) $path = Gtk2::TreePath->new_from_indices(0); $tip = new Gtk2::Tooltip; $tip->set_text("tooltip test"); $categories->set_tooltip_row($tip, $path); # NOTE: thought this might help, but I fail to see how it would # $categories->signal_connect( 'query-tooltip' => sub { # warn Dumper({args=>\@_, useless=>{tip=>$tip, path=>$path}}); # }); $window = Gtk2::Window->new; $window->set_title ('SimpleList examples'); $window->signal_connect (delete_event => sub {Gtk2->main_quit; TRUE}); $window->set_default_size (800,600); $window->add($categories); $window->show_all; Gtk2->main;

The documentation for both the C and the .pm is a little light (doxygen?), but I think I might need to do something with the signal? I believe it's been possible to do this since gtk 2.12.0, but I'm clearly missing something. There's some example code in the t/GtkTreeView.t that calls set_tooltip_row(), but it seems to be an example of testing something rather than an example of putting a tooltip on a row.

-Paul