1 |
root |
1.1 |
package some_plugin; |
2 |
|
|
|
3 |
|
|
use Gtk2::CV::Plugin; |
4 |
|
|
|
5 |
|
|
sub new_imagewindow { |
6 |
|
|
my ($self, $image) = @_; |
7 |
|
|
|
8 |
|
|
warn "new_imagewindow(@_)\n"; |
9 |
|
|
} |
10 |
|
|
|
11 |
|
|
sub new_schnauzer { |
12 |
|
|
my ($self, $schnauzer) = @_; |
13 |
|
|
|
14 |
|
|
warn "new_schnauzer(@_)\n"; |
15 |
|
|
|
16 |
|
|
$schnauzer->signal_connect (key_press_event => sub { |
17 |
|
|
my ($self, $event) = @_; |
18 |
|
|
my $key = $_[1]->keyval; |
19 |
|
|
my $state = $_[1]->state; |
20 |
|
|
|
21 |
|
|
my $ctrl = grep $_ eq "control-mask", @{$_[1]->state}; |
22 |
|
|
if ($ctrl && $key == $Gtk2::Gdk::Keysyms{c}) { |
23 |
|
|
warn "pressed ctrl-c\n"; |
24 |
|
|
} else { |
25 |
|
|
return 0; |
26 |
|
|
} |
27 |
|
|
|
28 |
|
|
1 |
29 |
|
|
}); |
30 |
|
|
|
31 |
|
|
$schnauzer->signal_connect (popup => sub { |
32 |
|
|
my ($self, $menu, $cursor, $event) = @_; |
33 |
|
|
|
34 |
|
|
$menu->append (my $item = new Gtk2::MenuItem "select me"); |
35 |
|
|
$item->signal_connect (activate => sub { warn "activated menu\n" }); |
36 |
|
|
}); |
37 |
|
|
} |
38 |
|
|
|
39 |
|
|
1 |
40 |
|
|
|