| Server IP : 170.10.161.225 / Your IP : 216.73.216.78 Web Server : Apache System : Linux vps103298.mylogin.co 4.18.0-513.11.1.el8_9.x86_64 #1 SMP Wed Jan 17 02:00:40 EST 2024 x86_64 User : calvet ( 273824) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : ON Directory : /lib64/perl5/vendor_perl/auto/Tk/Widget/ |
Upload File : |
# NOTE: Derived from blib/lib/Tk/Widget.pm.
# Changes made here will be lost when autosplit is run again.
# See AutoSplit.pm.
package Tk::Widget;
#line 1432 "blib/lib/Tk/Widget.pm (autosplit into blib/lib/auto/Tk/Widget/bindDump.al)"
sub bindDump {
# Dump lots of good binding information. This pretty-print subroutine
# is, essentially, the following code in disguise:
#
# print "Binding information for $w\n";
# foreach my $tag ($w->bindtags) {
# printf "\n Binding tag '$tag' has these bindings:\n";
# foreach my $binding ($w->Tk::bind($tag)) {
# printf " $binding\n";
# }
# }
my ($w) = @_;
my (@bindtags) = $w->bindtags;
my $digits = length( scalar @bindtags );
my ($spc1, $spc2) = ($digits + 33, $digits + 35);
my $format1 = "%${digits}d.";
my $format2 = ' ' x ($digits + 2);
my $n = 0;
my @out;
push @out, sprintf( "\n## Binding information for '%s', %s ##", $w->PathName, $w );
foreach my $tag (@bindtags) {
my (@bindings) = $w->Tk::bind($tag);
$n++; # count this bindtag
if ($#bindings == -1) {
push @out, sprintf( "\n$format1 Binding tag '$tag' has no bindings.\n", $n );
} else {
push @out, sprintf( "\n$format1 Binding tag '$tag' has these bindings:\n", $n );
foreach my $binding ( @bindings ) {
my $callback = $w->Tk::bind($tag, $binding);
push @out, sprintf( "$format2%27s : %-40s\n", $binding, $callback );
if ($callback =~ /SCALAR/) {
if (ref $$callback) {
push @out, sprintf( "%s %s\n", ' ' x $spc1, $$callback );
} else {
push @out, sprintf( "%s '%s'\n", ' ' x $spc1, $$callback );
}
} elsif ($callback =~ /ARRAY/) {
if (ref $callback->[0]) {
push @out, sprintf( "%s %s\n", ' ' x $spc1, $callback->[0] );
} else {
push @out, sprintf( "%s '%s'\n", ' ' x $spc1, $callback->[0] );
}
foreach my $arg (@$callback[1 .. $#$callback]) {
if (ref $arg) {
push @out, sprintf( "%s %-40s", ' ' x $spc2, $arg );
} else {
push @out, sprintf( "%s '%s'", ' ' x $spc2, $arg );
}
if (ref $arg eq 'Tk::Ev') {
if ($arg =~ /SCALAR/) {
push @out, sprintf( ": '$$arg'" );
} else {
push @out, sprintf( ": '%s'", join("' '", @$arg) );
}
}
push @out, sprintf( "\n" );
} # forend callback arguments
} # ifend callback
} # forend all bindings for one tag
} # ifend have bindings
} # forend all tags
push @out, sprintf( "\n" );
return @out;
} # end bindDump
# end of Tk::Widget::bindDump
1;