Laurent, and others,
Here is a patch that gives a default event name to every item for which
the user supplies an empty string, instead of just the ones that have a
text string of '-'. It even saves a little code, I think.
It helps a system I am building, and is fully upward compatible with the
existing functionality, so I would appreciate it if it could get into
the next bug-fix release of Win32::GUI. Thanks.
diff -c D:\Win32-GUI-rel-0.0.665\gui.pm gui.pm
*** D:\Win32-GUI-rel-0.0.665\gui.pm Wed Feb 27 04:06:10 2002
--- gui.pm Tue Dec 30 00:16:00 2003
***************
*** 423,431 ****
if(ref($menudata[$i+1])) {
%data = %{$menudata[$i+1]};
} else {
! $data{-name} = $menudata[$i+1];
}
! $level = 0;
$level++ while($text =~ s/^\s*>\s*//);
# print "PM(MakeMenu) processing '$data{-name}',
level=$level\n";
--- 436,448 ----
if(ref($menudata[$i+1])) {
%data = %{$menudata[$i+1]};
} else {
! if ( $menudata[$i+1] eq '' )
! { $data{-name} = "dummy$MenuIdCounter";
! } else
! { $data{-name} = $menudata[$i+1];
! }
}
! $level=0;
$level++ while($text =~ s/^\s*>\s*//);
# print "PM(MakeMenu) processing '$data{-name}',
level=$level\n";
***************
*** 441,452 ****
} elsif($level == 1) {
$parent = $last{$level-1};
if($text eq "-") {
- $data{-name} = "dummy$MenuIdCounter";
$M->{$data{-name}} = $M->{$parent}->AddMenuItem(
-item => 0,
-id => $MenuIdCounter++,
-separator => 1,
! -name => $data{-name},
);
} else {
$M->{$data{-name}} = $M->{$parent}->AddMenuItem(
--- 458,468 ----
} elsif($level == 1) {
$parent = $last{$level-1};
if($text eq "-") {
$M->{$data{-name}} = $M->{$parent}->AddMenuItem(
-item => 0,
-id => $MenuIdCounter++,
-separator => 1,
! -name => $data{-name},
);
} else {
$M->{$data{-name}} = $M->{$parent}->AddMenuItem(
***************
*** 473,485 ****
);
}
if($text eq "-") {
- $data{-name} = "dummy$MenuIdCounter";
$M->{$data{-name}} =
$M->{$parent."_SubmenuButton"}->AddMenuItem(
-item => 0,
-id => $MenuIdCounter++,
-separator => 1,
! -name => $data{-name},
);
} else {
$M->{$data{-name}} =
--- 489,500 ----
);
}
if($text eq "-") {
$M->{$data{-name}} =
$M->{$parent."_SubmenuButton"}->AddMenuItem(
-item => 0,
-id => $MenuIdCounter++,
-separator => 1,
! -name => $data{-name},
);
} else {
$M->{$data{-name}} =
***************
--
Glenn -- http://nevcal.com/
===========================
The best part about procrastination is that you are never bored,
because you have all kinds of things that you should be doing.