- Timestamp:
- Jan 8, 2000, 1:06:53 PM (26 years ago)
- Location:
- trunk/src/user32
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/user32/new/winmenu.cpp
r2350 r2363 1 /* $Id: winmenu.cpp,v 1.1 0 2000-01-07 00:24:34sandervl Exp $ */1 /* $Id: winmenu.cpp,v 1.11 2000-01-08 12:06:53 sandervl Exp $ */ 2 2 3 3 /* … … 41 41 HMENU ODIN_INTERNAL ODIN_CreatePopupMenu(void); 42 42 BOOL ODIN_INTERNAL ODIN_DestroyMenu(HMENU); 43 BOOL ODIN_INTERNAL ODIN_DeleteMenu(HMENU, UINT, UINT); 43 44 44 45 //@@@PH: experiment with WINE LoadMenuIndirect code … … 633 634 ODINFUNCTION5(BOOL, ModifyMenuA, 634 635 HMENU, hMenu, 635 UINT, arg2, 636 UINT, arg3, 637 UINT, arg4, 638 LPCSTR, arg5) 639 { 640 dprintf(("USER32: OS2ModifyMenuA\n")); 641 if(hMenu == 0) 642 { 643 SetLastError(ERROR_INVALID_PARAMETER); 644 return 0; 645 } 646 return O32_ModifyMenu(hMenu, arg2, arg3, arg4, arg5); 636 UINT, uItem, 637 UINT, fuFlags, 638 UINT, idNewItem, 639 LPCSTR, lpszNewItem) 640 { 641 if(hMenu == 0) 642 { 643 SetLastError(ERROR_INVALID_PARAMETER); 644 return 0; 645 } 646 if(IS_STRING_ITEM(fuFlags) && HIWORD(lpszNewItem) != 0) { 647 dprintf(("ModifyMenuA %s", lpszNewItem)); 648 } 649 650 if(((fuFlags & (MF_BYCOMMAND|MF_BYPOSITION|MF_POPUP)) == MF_BYCOMMAND) && uItem != idNewItem) { 651 DWORD pos = OSLibGetMenuItemPos(hMenu, uItem); 652 ODIN_DeleteMenu(hMenu, uItem, MF_BYCOMMAND); 653 return ODIN_InsertMenuA(hMenu, pos, fuFlags | MF_BYPOSITION, idNewItem, lpszNewItem); 654 } 655 return O32_ModifyMenu(hMenu, uItem, fuFlags, idNewItem, lpszNewItem); 647 656 } 648 657 //****************************************************************************** … … 682 691 UINT, arg3) 683 692 { 684 dprintf(("USER32: OS2RemoveMenu\n"));685 693 if(hMenu == 0) 686 694 { … … 698 706 UINT, arg3) 699 707 { 700 dprintf(("USER32: OS2DeleteMenu\n"));701 708 if(hMenu == 0) 702 709 { -
trunk/src/user32/winmenu.cpp
r2350 r2363 1 /* $Id: winmenu.cpp,v 1.2 1 2000-01-07 00:24:34sandervl Exp $ */1 /* $Id: winmenu.cpp,v 1.22 2000-01-08 12:05:57 sandervl Exp $ */ 2 2 3 3 /* … … 41 41 HMENU ODIN_INTERNAL ODIN_CreatePopupMenu(void); 42 42 BOOL ODIN_INTERNAL ODIN_DestroyMenu(HMENU); 43 BOOL ODIN_INTERNAL ODIN_DeleteMenu(HMENU, UINT, UINT); 43 44 44 45 //@@@PH: experiment with WINE LoadMenuIndirect code … … 633 634 ODINFUNCTION5(BOOL, ModifyMenuA, 634 635 HMENU, hMenu, 635 UINT, arg2, 636 UINT, arg3, 637 UINT, arg4, 638 LPCSTR, arg5) 639 { 640 dprintf(("USER32: OS2ModifyMenuA\n")); 641 if(hMenu == 0) 642 { 643 SetLastError(ERROR_INVALID_PARAMETER); 644 return 0; 645 } 646 return O32_ModifyMenu(hMenu, arg2, arg3, arg4, arg5); 636 UINT, uItem, 637 UINT, fuFlags, 638 UINT, idNewItem, 639 LPCSTR, lpszNewItem) 640 { 641 if(hMenu == 0) 642 { 643 SetLastError(ERROR_INVALID_PARAMETER); 644 return 0; 645 } 646 if(IS_STRING_ITEM(fuFlags) && HIWORD(lpszNewItem) != 0) { 647 dprintf(("ModifyMenuA %s", lpszNewItem)); 648 } 649 650 if(((fuFlags & (MF_BYCOMMAND|MF_BYPOSITION|MF_POPUP)) == MF_BYCOMMAND) && uItem != idNewItem) { 651 DWORD pos = OSLibGetMenuItemPos(hMenu, uItem); 652 ODIN_DeleteMenu(hMenu, uItem, MF_BYCOMMAND); 653 return ODIN_InsertMenuA(hMenu, pos, fuFlags | MF_BYPOSITION, idNewItem, lpszNewItem); 654 } 655 return O32_ModifyMenu(hMenu, uItem, fuFlags, idNewItem, lpszNewItem); 647 656 } 648 657 //****************************************************************************** … … 682 691 UINT, arg3) 683 692 { 684 dprintf(("USER32: OS2RemoveMenu\n"));685 693 if(hMenu == 0) 686 694 { … … 698 706 UINT, arg3) 699 707 { 700 dprintf(("USER32: OS2DeleteMenu\n"));701 708 if(hMenu == 0) 702 709 {
Note:
See TracChangeset
for help on using the changeset viewer.