return NULL;
}
- Accel = UserGetObject(gHandleTable, hAccel, otAccel);
+ Accel = UserGetObject(gHandleTable, hAccel, TYPE_ACCELTABLE);
if (!Accel)
{
EngSetLastError(ERROR_INVALID_ACCEL_HANDLE);
UINT Mask = 0, nPos;
HWND hWnd;
HMENU hMenu, hSubMenu;
- PMENU_OBJECT MenuObject, SubMenu;
- PMENU_ITEM MenuItem;
+ PMENU MenuObject;
ASSERT_REFS_CO(Window);
hWnd = Window->head.h;
- TRACE("IntTranslateAccelerator(hwnd %x, message %x, wParam %x, lParam %x, fVirt %d, key %x, cmd %x)\n",
+ TRACE("IntTranslateAccelerator(hwnd %p, message %x, wParam %x, lParam %x, fVirt 0x%x, key %x, cmd %x)\n",
hWnd, pMsg->message, pMsg->wParam, pMsg->lParam, pAccel->fVirt, pAccel->key, pAccel->cmd);
if (UserGetKeyState(VK_CONTROL) & 0x8000) Mask |= FCONTROL;
/* Check if accelerator is associated with menu command */
hMenu = (Window->style & WS_CHILD) ? 0 : (HMENU)Window->IDMenu;
hSubMenu = NULL;
- MenuObject = IntGetMenuObject(hMenu);
+ MenuObject = UserGetMenuObject(hMenu);
+ nPos = pAccel->cmd;
if (MenuObject)
{
- nPos = IntGetMenuItemByFlag(MenuObject,
- pAccel->cmd,
- MF_BYCOMMAND,
- &SubMenu,
- &MenuItem,
- NULL);
- if (nPos != (UINT) - 1)
- hSubMenu = SubMenu->head.h;
+ if ((MENU_FindItem (&MenuObject, &nPos, MF_BYPOSITION)))
+ hSubMenu = MenuObject->head.h;
else
hMenu = NULL;
}
/* Check system menu now */
hMenu = Window->SystemMenu;
hSubMenu = hMenu; /* system menu is a popup menu */
- MenuObject = IntGetMenuObject(hMenu);
+ MenuObject = UserGetMenuObject(hMenu);
+ nPos = pAccel->cmd;
if (MenuObject)
{
- nPos = IntGetMenuItemByFlag(MenuObject,
- pAccel->cmd,
- MF_BYCOMMAND,
- &SubMenu,
- &MenuItem,
- NULL);
- if (nPos != (UINT) - 1)
- hSubMenu = SubMenu->head.h;
+ if ((MENU_FindItem (&MenuObject, &nPos, MF_BYPOSITION)))
+ hSubMenu = MenuObject->head.h;
else
hMenu = NULL;
}
if (hSubMenu)
{
nPos = IntFindSubMenu(&hMenu, hSubMenu);
- TRACE("hSysMenu = %p, hSubMenu = %p, nPos = %d\n", hMenu, hSubMenu, nPos);
+ TRACE("hSysMenu = %p, hSubMenu = %p, nPos = %u\n", hMenu, hSubMenu, nPos);
co_IntSendMessage(hWnd, WM_INITMENUPOPUP, (WPARAM)hSubMenu, MAKELPARAM(nPos, TRUE));
}
}
NTSTATUS Status = STATUS_SUCCESS;
DECLARE_RETURN(HACCEL);
- TRACE("Enter NtUserCreateAcceleratorTable(Entries %p, EntriesCount %d)\n",
+ TRACE("Enter NtUserCreateAcceleratorTable(Entries %p, EntriesCount %u)\n",
Entries, EntriesCount);
UserEnterExclusive();
RETURN( (HACCEL) NULL );
}
- Accel = UserCreateObject(gHandleTable, NULL, (PHANDLE)&hAccel, otAccel, sizeof(ACCELERATOR_TABLE));
+ Accel = UserCreateObject(gHandleTable, NULL, NULL, (PHANDLE)&hAccel, TYPE_ACCELTABLE, sizeof(ACCELERATOR_TABLE));
if (Accel == NULL)
{
if (Accel->Table == NULL)
{
UserDereferenceObject(Accel);
- UserDeleteObject(hAccel, otAccel);
+ UserDeleteObject(hAccel, TYPE_ACCELTABLE);
SetLastNtError(STATUS_NO_MEMORY);
RETURN( (HACCEL) NULL);
}
{
ExFreePoolWithTag(Accel->Table, USERTAG_ACCEL);
UserDereferenceObject(Accel);
- UserDeleteObject(hAccel, otAccel);
+ UserDeleteObject(hAccel, TYPE_ACCELTABLE);
SetLastNtError(Status);
RETURN( (HACCEL) NULL);
}
RETURN(hAccel);
CLEANUP:
- TRACE("Leave NtUserCreateAcceleratorTable(Entries %p, EntriesCount %d) = %x\n",
+ TRACE("Leave NtUserCreateAcceleratorTable(Entries %p, EntriesCount %u) = %p\n",
Entries, EntriesCount, _ret_);
UserLeave();
END_CLEANUP;
FIXME: Destroy only tables created using CreateAcceleratorTable.
*/
- TRACE("NtUserDestroyAcceleratorTable(Table %x)\n", hAccel);
+ TRACE("NtUserDestroyAcceleratorTable(Table %p)\n", hAccel);
UserEnterExclusive();
if (!(Accel = UserGetAccelObject(hAccel)))
Accel->Table = NULL;
}
- UserDeleteObject(hAccel, otAccel);
+ UserDeleteObject(hAccel, TYPE_ACCELTABLE);
RETURN( TRUE);
CLEANUP:
- TRACE("Leave NtUserDestroyAcceleratorTable(Table %x) = %i\n", hAccel, _ret_);
+ TRACE("Leave NtUserDestroyAcceleratorTable(Table %p) = %u\n", hAccel, _ret_);
UserLeave();
END_CLEANUP;
}
USER_REFERENCE_ENTRY AccelRef, WindowRef;
DECLARE_RETURN(int);
- TRACE("NtUserTranslateAccelerator(hWnd %x, Table %x, Message %p)\n",
+ TRACE("NtUserTranslateAccelerator(hWnd %p, hAccel %p, Message %p)\n",
hWnd, hAccel, pUnsafeMessage);
UserEnterShared();