Linux web0273.sh.tyo1 4.18.0-553.141.2.lve.el7h.x86_64 #1 SMP Wed Jul 8 17:20:31 UTC 2026 x86_64
Apache
: 127.0.0.1 | : 216.73.216.77
Cant Read [ /etc/named.conf ]
8.3.31
r2745769
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
README
+ Create Folder
+ Create File
/
lib64 /
perl5 /
vendor_perl /
Tk /
[ HOME SHELL ]
Name
Size
Permission
Action
DragDrop
[ DIR ]
drwxr-xr-x
Event
[ DIR ]
drwxr-xr-x
Menu
[ DIR ]
drwxr-xr-x
TableMatrix
[ DIR ]
drwxr-xr-x
Text
[ DIR ]
drwxr-xr-x
pTk
[ DIR ]
drwxr-xr-x
804delta.pod
2.65
KB
-rw-r--r--
Adjuster.pm
10.91
KB
-rw-r--r--
Adjuster.pod
6.92
KB
-rw-r--r--
After.pm
1.9
KB
-rw-r--r--
Animation.pm
4.91
KB
-rw-r--r--
Animation.pod
2.84
KB
-rw-r--r--
Balloon.pm
20.7
KB
-rw-r--r--
Balloon.pod
9.96
KB
-rw-r--r--
Bitmap.pm
225
B
-rw-r--r--
Bitmap.pod
2.88
KB
-rw-r--r--
BrowseEntry.pm
13.32
KB
-rw-r--r--
BrowseEntry.pod
5.07
KB
-rw-r--r--
Button.pm
5.95
KB
-rw-r--r--
Button.pod
7.62
KB
-rw-r--r--
Camel.xpm
1.3
KB
-rw-r--r--
Canvas.pm
28.22
KB
-rw-r--r--
Canvas.pod
86.71
KB
-rw-r--r--
Checkbutton.pm
997
B
-rw-r--r--
Checkbutton.pod
11.08
KB
-rw-r--r--
Clipboard.pm
1.83
KB
-rw-r--r--
Clipboard.pod
2.83
KB
-rw-r--r--
CmdLine.pm
15.82
KB
-rw-r--r--
CmdLine.pod
14.12
KB
-rw-r--r--
ColorEdit.xpm
2.62
KB
-rw-r--r--
ColorEditor.pm
22.8
KB
-rw-r--r--
ColorEditor.pod
3.67
KB
-rw-r--r--
Common.pod
266
B
-rw-r--r--
Compound.pm
712
B
-rw-r--r--
Compound.pod
8.61
KB
-rw-r--r--
Config.pm
414
B
-rw-r--r--
ConfigSpecs.pod
7.94
KB
-rw-r--r--
Configure.pm
1.21
KB
-rw-r--r--
Credits
149
B
-rw-r--r--
DItem.pod
11.98
KB
-rw-r--r--
Derived.pm
11.83
KB
-rw-r--r--
Derived.pod
2.2
KB
-rw-r--r--
Dialog.pm
1.66
KB
-rw-r--r--
Dialog.pod
2.82
KB
-rw-r--r--
DialogBox.pm
4.54
KB
-rw-r--r--
DialogBox.pod
4.39
KB
-rw-r--r--
DirTree.pm
6.47
KB
-rw-r--r--
DirTree.pod
4.14
KB
-rw-r--r--
Dirlist.pm
1.89
KB
-rw-r--r--
DragDrop.pm
7.18
KB
-rw-r--r--
DropSite.pm
4.96
KB
-rw-r--r--
DropSite.pod
641
B
-rw-r--r--
DummyEncode.pm
729
B
-rw-r--r--
English.pm
9.63
KB
-rw-r--r--
Entry.pm
15.56
KB
-rw-r--r--
Entry.pod
22.23
KB
-rw-r--r--
Error.pod
4.98
KB
-rw-r--r--
ErrorDialog.pm
3.39
KB
-rw-r--r--
Event.pm
458
B
-rw-r--r--
Eventloop.pod
1.18
KB
-rw-r--r--
FBox.pm
29.84
KB
-rw-r--r--
FBox.pod
1.59
KB
-rw-r--r--
FileSelect.pm
14.76
KB
-rw-r--r--
FileSelect.pod
4.44
KB
-rw-r--r--
FloatEntry.pm
1.99
KB
-rw-r--r--
Font.pm
2.8
KB
-rw-r--r--
Font.pod
15.2
KB
-rw-r--r--
Frame.pm
7.99
KB
-rw-r--r--
Frame.pod
3.99
KB
-rw-r--r--
HList.pm
13.34
KB
-rw-r--r--
HList.pod
35.38
KB
-rw-r--r--
IO.pm
2.97
KB
-rw-r--r--
IO.pod
1.21
KB
-rw-r--r--
IconList.pm
19.2
KB
-rw-r--r--
IconList.pod
1.36
KB
-rw-r--r--
Image.pm
1.48
KB
-rw-r--r--
Image.pod
4.07
KB
-rw-r--r--
InputO.pm
275
B
-rw-r--r--
InputO.pod
1.27
KB
-rw-r--r--
Internals.pod
5.62
KB
-rw-r--r--
ItemStyle.pm
703
B
-rw-r--r--
JPEG.pm
926
B
-rw-r--r--
LabEntry.pm
773
B
-rw-r--r--
LabFrame.pm
3.47
KB
-rw-r--r--
LabFrame.pod
2.34
KB
-rw-r--r--
LabRadio.pm
1.6
KB
-rw-r--r--
Label.pm
386
B
-rw-r--r--
Label.pod
3.57
KB
-rw-r--r--
Labelframe.pm
292
B
-rw-r--r--
Labelframe.pod
5.87
KB
-rw-r--r--
Listbox.pm
22.07
KB
-rw-r--r--
Listbox.pod
26.01
KB
-rw-r--r--
MMtry.pm
1.61
KB
-rw-r--r--
MMutil.pm
13.13
KB
-rw-r--r--
MainWindow.pm
5.6
KB
-rw-r--r--
MainWindow.pod
2.2
KB
-rw-r--r--
MakeDepend.pm
5.52
KB
-rw-r--r--
Menu.pm
29.71
KB
-rw-r--r--
Menu.pod
32.08
KB
-rw-r--r--
Menubar.pm
382
B
-rw-r--r--
Menubutton.pm
10.66
KB
-rw-r--r--
Menubutton.pod
8.16
KB
-rw-r--r--
Message.pm
419
B
-rw-r--r--
Message.pod
5.13
KB
-rw-r--r--
MsgBox.pm
18.05
KB
-rw-r--r--
MsgBox.pod
1.48
KB
-rw-r--r--
Mwm.pm
311
B
-rw-r--r--
Mwm.pod
3.28
KB
-rw-r--r--
NBFrame.pm
368
B
-rw-r--r--
NoteBook.pm
10.27
KB
-rw-r--r--
NoteBook.pod
5.75
KB
-rw-r--r--
Optionmenu.pm
2.9
KB
-rw-r--r--
Optionmenu.pod
1.94
KB
-rw-r--r--
PNG.pm
726
B
-rw-r--r--
Pane.pm
12.9
KB
-rw-r--r--
Panedwindow.pm
5.03
KB
-rw-r--r--
Panedwindow.pod
10.56
KB
-rw-r--r--
Photo.pm
415
B
-rw-r--r--
Photo.pod
18.08
KB
-rw-r--r--
Pixmap.pm
266
B
-rw-r--r--
Pixmap.pod
1.81
KB
-rw-r--r--
Popup.pod
3.07
KB
-rw-r--r--
Pretty.pm
1.74
KB
-rw-r--r--
ProgressBar.pm
11.52
KB
-rw-r--r--
README.Adjust
3.28
KB
-rw-r--r--
ROText.pm
1.06
KB
-rw-r--r--
ROText.pod
725
B
-rw-r--r--
Radiobutton.pm
1.03
KB
-rw-r--r--
Radiobutton.pod
10.69
KB
-rw-r--r--
Region.pm
2.95
KB
-rw-r--r--
Reindex.pm
5.19
KB
-rw-r--r--
ReindexedROText.pm
255
B
-rw-r--r--
ReindexedText.pm
245
B
-rw-r--r--
Scale.pm
6.68
KB
-rw-r--r--
Scale.pod
10.05
KB
-rw-r--r--
Scrollbar.pm
9.97
KB
-rw-r--r--
Scrollbar.pod
13.71
KB
-rw-r--r--
Scrolled.pod
1.86
KB
-rw-r--r--
Spinbox.pm
2.26
KB
-rw-r--r--
Spinbox.pod
25.74
KB
-rw-r--r--
Stats.pm
407
B
-rw-r--r--
Submethods.pm
744
B
-rw-r--r--
Submethods.pod
662
B
-rw-r--r--
SunConst.pod
405
B
-rw-r--r--
TList.pm
7.1
KB
-rw-r--r--
TList.pod
18.48
KB
-rw-r--r--
Table.pm
11.69
KB
-rw-r--r--
Table.pod
2.41
KB
-rw-r--r--
TableMatrix.pm
26.1
KB
-rw-r--r--
TableMatrix.pod
56.32
KB
-rw-r--r--
Tcl-perl.pod
5.16
KB
-rw-r--r--
Text.pm
43.07
KB
-rw-r--r--
Text.pod
79.41
KB
-rw-r--r--
TextEdit.pm
14.06
KB
-rw-r--r--
TextList.pm
25.78
KB
-rw-r--r--
TextUndo.pm
24.76
KB
-rw-r--r--
TextUndo.pod
1.59
KB
-rw-r--r--
Tiler.pm
4.07
KB
-rw-r--r--
Tiler.pod
689
B
-rw-r--r--
TixGrid.pm
28.23
KB
-rw-r--r--
TixGrid.pod
15.77
KB
-rw-r--r--
Tk.xbm
3.07
KB
-rw-r--r--
Tk.xpm
1.29
KB
-rw-r--r--
TkXSUB.def
3.09
KB
-rw-r--r--
Toplevel.pm
5.15
KB
-rw-r--r--
Toplevel.pod
5.66
KB
-rw-r--r--
Trace.pm
12.21
KB
-rw-r--r--
Tree.pm
5.9
KB
-rw-r--r--
Tree.pod
7.87
KB
-rw-r--r--
UserGuide.pod
19.43
KB
-rw-r--r--
Widget.pm
42.71
KB
-rw-r--r--
Widget.pod
25.06
KB
-rw-r--r--
WidgetDemo.pod
1.7
KB
-rw-r--r--
WinPhoto.pm
1.28
KB
-rw-r--r--
Wm.pm
3.75
KB
-rw-r--r--
Wm.pod
29.5
KB
-rw-r--r--
X.pm
5.73
KB
-rw-r--r--
X.pod
5.37
KB
-rw-r--r--
X11Font.pm
3.04
KB
-rw-r--r--
X11Font.pod
1.6
KB
-rw-r--r--
Xcamel.gif
4.09
KB
-rw-r--r--
Xlib.pm
276
B
-rw-r--r--
Xrm.pm
121
B
-rw-r--r--
Xrm.pod
1.06
KB
-rw-r--r--
act_folder.xbm
227
B
-rw-r--r--
act_folder.xpm
438
B
-rw-r--r--
after.pod
6
KB
-rw-r--r--
anim.gif
2.47
KB
-rw-r--r--
arrowdownwin.xbm
234
B
-rw-r--r--
balArrow.xbm
123
B
-rw-r--r--
bind.pod
21.88
KB
-rw-r--r--
bindtags.pod
4.09
KB
-rw-r--r--
callbacks.pod
2.91
KB
-rw-r--r--
cbxarrow.xbm
263
B
-rw-r--r--
chooseColor.pod
1.81
KB
-rw-r--r--
chooseDirectory.pod
2.79
KB
-rw-r--r--
composite.pod
5.01
KB
-rw-r--r--
event.pod
14.93
KB
-rw-r--r--
exit.pod
974
B
-rw-r--r--
file.xbm
233
B
-rw-r--r--
file.xpm
298
B
-rw-r--r--
fileevent.pod
4.61
KB
-rw-r--r--
focus.pod
6.22
KB
-rw-r--r--
folder.xbm
215
B
-rw-r--r--
folder.xpm
414
B
-rw-r--r--
form.pod
13.05
KB
-rw-r--r--
getOpenFile.pod
6.86
KB
-rw-r--r--
grab.pod
4.86
KB
-rw-r--r--
grid.pod
16.43
KB
-rw-r--r--
icon.gif
1.88
KB
-rw-r--r--
install.pm
764
B
-rw-r--r--
license.terms
1.75
KB
-rw-r--r--
mega.pod
10.61
KB
-rw-r--r--
messageBox.pod
1.89
KB
-rw-r--r--
openfile.xbm
245
B
-rw-r--r--
openfolder.xbm
227
B
-rw-r--r--
openfolder.xpm
418
B
-rw-r--r--
option.pod
8.4
KB
-rw-r--r--
options.pod
24.28
KB
-rw-r--r--
overview.pod
4.55
KB
-rw-r--r--
pTk.pod
16.81
KB
-rw-r--r--
pack.pod
10.31
KB
-rw-r--r--
palette.pod
3.3
KB
-rw-r--r--
place.pod
10.46
KB
-rw-r--r--
prolog.ps
9.32
KB
-rw-r--r--
selection.pod
6.79
KB
-rw-r--r--
send.pod
4.35
KB
-rw-r--r--
srcfile.xpm
302
B
-rw-r--r--
textfile.xpm
310
B
-rw-r--r--
tixWm.pod
1.95
KB
-rw-r--r--
tkGlue.def
2.38
KB
-rw-r--r--
tkGlue.h
2.34
KB
-rw-r--r--
tkGlue.m
1.46
KB
-rw-r--r--
tkGlue.t
2.3
KB
-rw-r--r--
tkGlue_f.h
341
B
-rw-r--r--
tkvars.pod
3.52
KB
-rw-r--r--
tranicon.gif
1.68
KB
-rw-r--r--
typemap
1.61
KB
-rw-r--r--
vtab.def
4.04
KB
-rw-r--r--
widgets.pm
309
B
-rw-r--r--
widgets.pod
286
B
-rw-r--r--
win.xbm
284
B
-rw-r--r--
winfolder.xpm
719
B
-rw-r--r--
wintext.xpm
743
B
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : Menubutton.pm
# Converted from menu.tcl -- # # This file defines the default bindings for Tk menus and menubuttons. # It also implements keyboard traversal of menus and implements a few # other utility procedures related to menus. # # @(#) menu.tcl 1.34 94/12/19 17:09:09 # # Copyright (c) 1992-1994 The Regents of the University of California. # Copyright (c) 1994 Sun Microsystems, Inc. # # See the file "license.terms" for information on usage and redistribution # of this file, and for a DISCLAIMER OF ALL WARRANTIES. package Tk::Menubutton; require Tk; use vars qw($VERSION); $VERSION = '4.005'; # $Id: //depot/Tkutf8/Menubutton/Menubutton.pm#4 $ use base qw(Tk::Widget); Construct Tk::Widget 'Menubutton'; import Tk qw(&Ev $XS_VERSION); bootstrap Tk::Menubutton; sub Tk_cmd { \&Tk::menubutton } sub InitObject { my ($mb,$args) = @_; my $menuitems = delete $args->{-menuitems}; my $tearoff = delete $args->{-tearoff}; $mb->SUPER::InitObject($args); if ((defined($menuitems) || defined($tearoff)) && %$args) { $mb->configure(%$args); %$args = (); } $mb->menu(-tearoff => $tearoff) if (defined $tearoff); $mb->AddItems(@$menuitems) if (defined $menuitems) } # #------------------------------------------------------------------------- # Elements of tkPriv that are used in this file: # # cursor - Saves the -cursor option for the posted menubutton. # focus - Saves the focus during a menu selection operation. # Focus gets restored here when the menu is unposted. # inMenubutton - The name of the menubutton widget containing # the mouse, or an empty string if the mouse is # not over any menubutton. # popup - If a menu has been popped up via tk_popup, this # gives the name of the menu. Otherwise this # value is empty. # postedMb - Name of the menubutton whose menu is currently # posted, or an empty string if nothing is posted # A grab is set on this widget. # relief - Used to save the original relief of the current # menubutton. # window - When the mouse is over a menu, this holds the # name of the menu; it's cleared when the mouse # leaves the menu. #------------------------------------------------------------------------- #------------------------------------------------------------------------- # Overall note: # This file is tricky because there are four different ways that menus # can be used: # # 1. As a pulldown from a menubutton. This is the most common usage. # In this style, the variable tkPriv(postedMb) identifies the posted # menubutton. # 2. As a torn-off menu copied from some other menu. In this style # tkPriv(postedMb) is empty, and the top-level menu is no # override-redirect. # 3. As an option menu, triggered from an option menubutton. In thi # style tkPriv(postedMb) identifies the posted menubutton. # 4. As a popup menu. In this style tkPriv(postedMb) is empty and # the top-level menu is override-redirect. # # The various binding procedures use the state described above to # distinguish the various cases and take different actions in each # case. #------------------------------------------------------------------------- # Menu::Bind -- # This procedure is invoked the first time the mouse enters a menubutton # widget or a menubutton widget receives the input focus. It creates # all of the class bindings for both menubuttons and menus. # # Arguments: # w - The widget that was just entered or just received # the input focus. # event - Indicates which event caused the procedure to be invoked # (Enter or FocusIn). It is used so that we can carry out # the functions of that event in addition to setting up # bindings. sub ClassInit { my ($class,$mw) = @_; $mw->bind($class,'<FocusIn>','NoOp'); $mw->bind($class,'<Enter>','Enter'); $mw->bind($class,'<Leave>','Leave'); $mw->bind($class,'<1>','ButtonDown'); $mw->bind($class,'<Motion>',['Motion','up',Ev('X'),Ev('Y')]); $mw->bind($class,'<B1-Motion>',['Motion','down',Ev('X'),Ev('Y')]); $mw->bind($class,'<ButtonRelease-1>','ButtonUp'); $mw->bind($class,'<space>','PostFirst'); $mw->bind($class,'<Return>','PostFirst'); return $class; } sub ButtonDown {my $w = shift; my $Ev = $w->XEvent; $Tk::inMenubutton->Post($Ev->X,$Ev->Y) if (defined $Tk::inMenubutton); } sub PostFirst { my $w = shift; my $menu = $w->cget('-menu'); $w->Post(); $menu->FirstEntry() if (defined $menu); } # Enter -- # This procedure is invoked when the mouse enters a menubutton # widget. It activates the widget unless it is disabled. Note: # this procedure is only invoked when mouse button 1 is *not* down. # The procedure B1Enter is invoked if the button is down. # # Arguments: # w - The name of the widget. sub Enter { my $w = shift; $Tk::inMenubutton->Leave if (defined $Tk::inMenubutton); $Tk::inMenubutton = $w; if ($w->cget('-state') ne 'disabled') { $w->configure('-state','active') } } sub Leave { my $w = shift; $Tk::inMenubutton = undef; return unless Tk::Exists($w); if ($w->cget('-state') eq 'active') { $w->configure('-state','normal') } } # Post -- # Given a menubutton, this procedure does all the work of posting # its associated menu and unposting any other menu that is currently # posted. # # Arguments: # w - The name of the menubutton widget whose menu # is to be posted. # x, y - Root coordinates of cursor, used for positioning # option menus. If not specified, then the center # of the menubutton is used for an option menu. sub Post { my $w = shift; my $x = shift; my $y = shift; return if ($w->cget('-state') eq 'disabled'); return if (defined $Tk::postedMb && $w == $Tk::postedMb); my $menu = $w->cget('-menu'); return unless (defined($menu) && $menu->index('last') ne 'none'); my $tearoff = $Tk::platform eq 'unix' || $menu->cget('-type') eq 'tearoff'; my $wpath = $w->PathName; my $mpath = $menu->PathName; unless (index($mpath,"$wpath.") == 0) { die "Cannot post $mpath : not a descendant of $wpath"; } my $cur = $Tk::postedMb; if (defined $cur) { Tk::Menu->Unpost(undef); # fixme } $Tk::cursor = $w->cget('-cursor'); $Tk::relief = $w->cget('-relief'); $w->configure('-cursor','arrow'); $w->configure('-relief','raised'); $Tk::postedMb = $w; $Tk::focus = $w->focusCurrent; $menu->activate('none'); $menu->GenerateMenuSelect; # If this looks like an option menubutton then post the menu so # that the current entry is on top of the mouse. Otherwise post # the menu just below the menubutton, as for a pull-down. eval {local $SIG{'__DIE__'}; my $dir = $w->cget('-direction'); if ($dir eq 'above') { $menu->post($w->rootx, $w->rooty - $menu->ReqHeight); } elsif ($dir eq 'below') { $menu->post($w->rootx, $w->rooty + $w->Height); } elsif ($dir eq 'left') { my $x = $w->rootx - $menu->ReqWidth; my $y = int((2*$w->rooty + $w->Height) / 2); if ($w->cget('-indicatoron') == 1 && defined($w->cget('-textvariable'))) { $menu->PostOverPoint($x,$y,$menu->FindName($w->cget('-text'))) } else { $menu->post($x,$y); } } elsif ($dir eq 'right') { my $x = $w->rootx + $w->Width; my $y = int((2*$w->rooty + $w->Height) / 2); if ($w->cget('-indicatoron') == 1 && defined($w->cget('-textvariable'))) { $menu->PostOverPoint($x,$y,$menu->FindName($w->cget('-text'))) } else { $menu->post($x,$y); } } else { if ($w->cget('-indicatoron') == 1 && defined($w->cget('-textvariable'))) { if (!defined($y)) { $x = $w->rootx+$w->width/2; $y = $w->rooty+$w->height/2 } $menu->PostOverPoint($x,$y,$menu->FindName($w->cget('-text'))) } else { $menu->post($w->rootx,$w->rooty+$w->height); } } }; if ($@) { Tk::Menu->Unpost; die $@ } $Tk::tearoff = $tearoff; if ($tearoff) { $menu->focus; if ($w->viewable) { $w->SaveGrabInfo; $w->grabGlobal; } } } # Motion -- # This procedure handles mouse motion events inside menubuttons, and # also outside menubuttons when a menubutton has a grab (e.g. when a # menu selection operation is in progress). # # Arguments: # w - The name of the menubutton widget. # upDown - "down" means button 1 is pressed, "up" means # it isn't. # rootx, rooty - Coordinates of mouse, in (virtual?) root window. sub Motion { my $w = shift; my $upDown = shift; my $rootx = shift; my $rooty = shift; return if (defined($Tk::inMenubutton) && $Tk::inMenubutton == $w); my $new = $w->Containing($rootx,$rooty); if (defined($Tk::inMenubutton)) { if (!defined($new) || ($new != $Tk::inMenubutton && $w->toplevel != $new->toplevel)) { $Tk::inMenubutton->Leave(); } } if (defined($new) && $new->IsMenubutton && $new->cget('-indicatoron') == 0 && $w->cget('-indicatoron') == 0) { if ($upDown eq 'down') { $new->Post($rootx,$rooty); } else { $new->Enter(); } } } # ButtonUp -- # This procedure is invoked to handle button 1 releases for menubuttons. # If the release happens inside the menubutton then leave its menu # posted with element 0 activated. Otherwise, unpost the menu. # # Arguments: # w - The name of the menubutton widget. sub ButtonUp { my $w = shift; my $tearoff = $Tk::platform eq 'unix' || (defined($w->cget('-menu')) && $w->cget('-menu')->cget('-type') eq 'tearoff'); if ($tearoff && (defined($Tk::postedMb) && $Tk::postedMb == $w) && (defined($Tk::inMenubutton) && $Tk::inMenubutton == $w)) { $Tk::postedMb->cget(-menu)->FirstEntry(); } else { Tk::Menu->Unpost(undef); } } # end ButtonUp # Some convenience methods sub menu { my ($w,%args) = @_; my $menu = $w->cget('-menu'); if (!defined $menu) { require Tk::Menu; $w->ColorOptions(\%args) if ($Tk::platform eq 'unix'); $menu = $w->Menu(%args); $w->configure('-menu'=>$menu); } else { $menu->configure(%args); } return $menu; } sub separator { require Tk::Menu::Item; shift->menu->Separator(@_); } sub command { require Tk::Menu::Item; shift->menu->Command(@_); } sub cascade { require Tk::Menu::Item; shift->menu->Cascade(@_); } sub checkbutton { require Tk::Menu::Item; shift->menu->Checkbutton(@_); } sub radiobutton { require Tk::Menu::Item; shift->menu->Radiobutton(@_); } sub AddItems { shift->menu->AddItems(@_); } sub entryconfigure { shift->menu->entryconfigure(@_); } sub entrycget { shift->menu->entrycget(@_); } sub FindMenu { my $child = shift; my $char = shift; my $ul = $child->cget('-underline'); if (defined $ul && $ul >= 0 && $child->cget('-state') ne 'disabled') { my $char2 = $child->cget('-text'); $char2 = substr("\L$char2",$ul,1) if (defined $char2); if (!defined($char) || $char eq '' || (defined($char2) && "\l$char" eq $char2)) { $child->PostFirst; return $child; } } return undef; } 1; __END__
Close