http://bugs.winehq.com/show_bug.cgi?id=1486
Summary: Dynamically created menus do not work in Delphi apps Product: Wine Version: 20030508 Platform: Other URL: http://www.starsoft.fi/jarto/wine-menubug.tgz OS/Version: Linux Status: UNCONFIRMED Severity: major Priority: P2 Component: wine-misc AssignedTo: wine-bugs@winehq.com ReportedBy: jarto@starsoft.fi
If you create any menuitem in Delphi dynamically in TForm.Create, all menus stop working in that form. Only the top menus are showed but they don't react to menu clicks.
I made two small demos to demonstrate the bug. Both open a form with a menu and a menuitem. MenuWorks.exe works, MenuBug.exe only shows the menu but refuses to show the menuitem if clicked on the menu. The bug is reproducible always.
This bug is not only in the last wine build. I noticed it first October 2002 but was able to find the reason and make a test app only now.
The tgz contains both executables and some traces created with --debugmsg trace+menu and --debugmsg trace+win
Traces are run:
MenuBug: Start MenuBug.exe, click on the main menu and then close the form MenuWorks: Start MenuWorks.exe, clikc on the main menu, select menuitem which succesfully terminates the app.
The problems seems to be that MENU_FindItemByCoords doesn't find the Rect for the top menu. My guess is that adding menus screwed them up somehow.
The bug exists in executables compiled with at least Delphi 5 and 7. I'm sure that fixing this one lets us run many Delphi apps as they seem to work very well with Wine otherwise.