![]() |
![]() |
8 Einträge, 1 Seite |
1
2
3
4
5
6
7
8
9
10
11
12
package Tk::MyHList;
use base qw(Tk::Derived Tk::HList);
Construct Tk::Widget 'MyHList';
sub Populate {
my ($self, $args) = @_;
my $rightClick = delete $args->{-rightClick};
ref($rightClick) and $self->bind('<ButtonPress-3>', $rightClick);
$self->SUPER::Populate($args);
} # Populate
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
my $hlist = $parent->MyHList(-rightClick => \&rightClicked, ...);
sub rightClicked {
my ($w) = @_;
my $event = $w->XEvent();
my $entry = $w->GetNearest($event->y, 1);
return unless defined $entry;
$w->anchorSet($entry);
$w->selectionClear();
$w->selectionSet($entry);
# usw... weiss ich jetzt nicht mehr auswendig, irgendwie ein
# ->Menu erzeugen und das dann mit $menu->Post(x,y) an der
# richtigen stelle posten...
} # rightClicked
1
2
3
4
5
6
7
8
9
10
11
$config{BuddyListPane}->bind(
'<3>' => sub {
my $last_clicked = $config{BuddyListPane}->nearest(shift->{'_XEvent_'}->y);
$popup->Popup(
-popover => "cursor",
-popanchor => 'nw'
);
},
);
![]() |
![]() |
8 Einträge, 1 Seite |