[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
Re: label with context menu (populate-popup)
- From: "muppet" <scott asofyet org>
- To: gtk-perl-list gnome org
- Subject: Re: label with context menu (populate-popup)
- Date: Wed, 28 Mar 2007 16:12:44 -0400 (EDT)
Peter Daum wrote:
> Is there an easy way to get a context menu on a label?
> According to the documentation, it should support a
> 'populate-popup' signal, so it looks like this should be
> painless. If I try the following (which works fine on other
> occasions):
[snip]
> I get no warning, only the signal is never triggered.
> The documentation for GtkLabel doesn't say when this
> signal occurs, I just assumed it would be triggered
> whith the right mouse button...
Labels are "no-window" widgets. You must have a window to receive an event.
Labels have no window and therefore receive no events.
The way to get a Label to have a window is to make it selectable. In fact,
it's when it is selectable that the popup menu is useful, because you can
select clipboard operations.
To wit:
#!/usr/bin/perl -w
use strict;
use Gtk2 -init;
my $window = Gtk2::Window->new;
my $label = Gtk2::Label->new ("Hi, i am a label");
# This is what will make it possible to get the context menu on the label
$label->set_selectable (1);
$label->signal_connect (populate_popup => sub {
my (undef, $menu) = @_;
my $item = Gtk2::MenuItem->new ('Whee');
$menu->append ($item);
$item->show;
});
$window->add ($label);
$window->signal_connect (destroy => sub { Gtk2->main_quit });
$window->show_all;
Gtk2->main;
--
muppet <scott at asofyet dot org>
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]