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.
 |