ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/src/perl/confirm-paste
Revision: 1.1
Committed: Sat Jul 24 13:04:27 2010 UTC (13 years, 9 months ago) by sf-exg
Branch: MAIN
CVS Tags: rel-9_09, rel-9_10
Log Message:
Add confirm-paste script.

File Contents

# Content
1 #! perl
2
3 sub msg {
4 my ($self, $msg) = @_;
5
6 $self->{overlay} = $self->overlay (0, -1, $self->strwidth ($msg), 1);
7 $self->{overlay}->set (0, 0, $msg);
8 }
9
10 sub on_tt_paste {
11 my ($self, $str) = @_;
12
13 my $count = ($str =~ tr/\012\015//);
14
15 return unless $count;
16
17 $self->{paste} = \$str;
18 $self->msg ("Paste of $count lines, continue? (y/n)");
19 $self->enable (key_press => \&key_press);
20
21 1
22 }
23
24 sub leave {
25 my ($self) = @_;
26
27 $self->{paste} = undef;
28 delete $self->{overlay};
29 $self->disable ("key_press");
30 }
31
32 sub key_press {
33 my ($self, $event, $keysym, $string) = @_;
34
35 if ($keysym == 121) { # y
36 $self->tt_paste (${$self->{paste}});
37 $self->leave;
38 } elsif ($keysym == 110) { # n
39 $self->leave;
40 }
41
42 1
43 }