Antonio,
it seems the menu items move a little to the right when there is a submenu attached to it, is this intentionally?
Saludos,
John.
oMenu acts differently in February build
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
John,
It is a side effect caused by a recent change.
Please search for this code in classes\menu.prg and change it as shown:
( /* .f. .and. */ IsWinNT() .and. ! lRoot .and. ! ::lSysMenu ),;
It is a side effect caused by a recent change.
Please search for this code in classes\menu.prg and change it as shown:
( /* .f. .and. */ IsWinNT() .and. ! lRoot .and. ! ::lSysMenu ),;
Last edited by Antonio Linares on Sat Feb 11, 2006 5:52 pm, edited 1 time in total.
- Enrico Maria Giordano
- Posts: 7355
- Joined: Thu Oct 06, 2005 8:17 pm
- Location: Roma - Italia
- Contact:
This still is not a fix but seems to solve the problem:
EMG
Code: Select all
METHOD Add( oMenuItem, lRoot ) CLASS TMenu
DEFAULT lRoot := .f.
AAdd( ::aItems, oMenuItem )
oMenuItem:oMenu = Self
if ValType( oMenuItem:bAction ) == "O" .and. ;
Upper( oMenuItem:bAction:ClassName() ) == "TMENU"
if oMenuItem:cPrompt != nil
AppendMenu( ::hMenu, nOr( MF_POPUP, MF_ENABLED,;
If( oMenuItem:hBitmap != 0 .or. ( .f. .and. IsWinNT() .and. ! lRoot .and. !::lSysmenu), MF_OWNERDRAW, 0 ),; //EMG
If( oMenuItem:lHelp, MF_HELP, 0 ),;
If( oMenuItem:lChecked, MF_CHECKED, 0 ),;
If( ! oMenuItem:lActive, MF_GRAYED, 0 ),;
If( oMenuItem:lBreak, MF_BREAK, 0 ) ),;
oMenuItem:bAction:hMenu,;
oMenuItem:cPrompt )
else
AppendMenu( ::hMenu, nOR( MF_POPUP, MF_BITMAP,;
If( oMenuItem:lChecked, MF_CHECKED, 0 ),;
If( ! oMenuItem:lActive, MF_GRAYED, 0 ),;
If( oMenuItem:lHelp, MF_HELP, 0 ),;
If( oMenuItem:lBreak, MF_BREAK, 0 ) ),;
oMenuItem:bAction:hMenu, oMenuItem:hBitmap )
endif
AAdd( aPopups, oMenuItem:bAction )
else
if oMenuItem:cPrompt != nil
AppendMenu( ::hMenu,;
nOR( If( oMenuItem:lActive,;
nOr( MF_ENABLED, If( oMenuItem:hBitmap != 0 .or. ;
( .f. .and. IsWinNT() .and. ! lRoot .and. ! ::lSysMenu ),; //EMG
MF_OWNERDRAW, 0 ) ),;
nOR( MF_DISABLED, MF_GRAYED ) ),;
If( oMenuItem:lChecked, MF_CHECKED, 0 ),;
If( oMenuItem:lHelp, MF_HELP, 0 ),;
If( oMenuItem:lBreak, MF_BREAK, 0 ) ),;
oMenuItem:nId, oMenuItem:cPrompt )
else
if oMenuItem:hBitmap != 0
#ifdef __XPP__
if oMenuItem:lBreak == nil
oMenuItem:lBreak = .f.
endif
#endif
AppendMenu( ::hMenu, nOr( MF_BITMAP,;
If( oMenuItem:lBreak, MF_BREAK, 0 ) ),;
oMenuItem:nId, oMenuItem:hBitmap )
else
AppendMenu( ::hMenu, MF_SEPARATOR, oMenuItem:nId, "" )
endif
endif
endif
return nil