[Win32k|User32]

- Implement NtUserGetMenuIndex, see Bug 5528.

svn path=/trunk/; revision=49005
This commit is contained in:
James Tabor 2010-10-05 20:13:32 +00:00
parent 44e3333652
commit 76bac9c7df
2 changed files with 28 additions and 13 deletions

View file

@ -538,12 +538,11 @@ BOOL WINAPI CliImmSetHotKey(DWORD dwID, UINT uModifiers, UINT uVirtualKey, HKL h
} }
/* /*
* @unimplemented * @implemented
*/ */
DWORD WINAPI GetMenuIndex(HMENU hMenu, HMENU hSubMenu) DWORD WINAPI GetMenuIndex(HMENU hMenu, HMENU hSubMenu)
{ {
UNIMPLEMENTED; return NtUserGetMenuIndex(hMenu, hSubMenu);
return 0;
} }
/* /*

View file

@ -2034,20 +2034,40 @@ CLEANUP:
END_CLEANUP; END_CLEANUP;
} }
/* /*
* @unimplemented * @implemented
*/ */
UINT APIENTRY UINT APIENTRY
NtUserGetMenuIndex( NtUserGetMenuIndex(
HMENU hMenu, HMENU hMenu,
UINT wID) HMENU hSubMenu)
{ {
UNIMPLEMENTED PMENU_OBJECT Menu, SubMenu;
PMENU_ITEM MenuItem;
DECLARE_RETURN(UINT);
return 0; DPRINT("Enter NtUserGetMenuIndex\n");
UserEnterShared();
if ( !(Menu = UserGetMenuObject(hMenu)) ||
!(SubMenu = UserGetMenuObject(hSubMenu)) )
RETURN(0xFFFFFFFF);
MenuItem = Menu->MenuItemList;
while(MenuItem)
{
if (MenuItem->hSubMenu == hSubMenu)
RETURN(MenuItem->wID);
MenuItem = MenuItem->Next;
} }
RETURN(0xFFFFFFFF);
CLEANUP:
DPRINT("Leave NtUserGetMenuIndex, ret=%i\n",_ret_);
UserLeave();
END_CLEANUP;
}
/* /*
* @implemented * @implemented
@ -2218,10 +2238,6 @@ UserMenuInfo(
return( Res); return( Res);
} }
/* /*
* @implemented * @implemented
*/ */