Moved some more 16-bit functions to user16.c.
A few fixes for -DSTRICT.
diff --git a/controls/menu.c b/controls/menu.c
index 1174665..ed17b43 100644
--- a/controls/menu.c
+++ b/controls/menu.c
@@ -189,7 +189,7 @@
PopupMenuWndProc, /* procW */
sizeof(HMENU), /* extra */
IDC_ARROWA, /* cursor */
- COLOR_MENU+1 /* brush */
+ (HBRUSH)(COLOR_MENU+1) /* brush */
};
@@ -371,7 +371,8 @@
if (hPopupMenu)
{
- InsertMenuA( hMenu, -1, MF_SYSMENU | MF_POPUP | MF_BYPOSITION, hPopupMenu, NULL );
+ InsertMenuA( hMenu, -1, MF_SYSMENU | MF_POPUP | MF_BYPOSITION,
+ (UINT_PTR)hPopupMenu, NULL );
menu->items[0].fType = MF_SYSMENU | MF_POPUP;
menu->items[0].fState = 0;
@@ -593,7 +594,7 @@
POPUPMENU *menu;
UINT i;
MENUITEM *item;
- if (((*hmenu)==0xffff) ||
+ if (((*hmenu)==(HMENU)0xffff) ||
(!(menu = MENU_GetMenu(*hmenu))))
return NO_SELECTED_ITEM;
item = menu->items;
@@ -663,7 +664,7 @@
static UINT MENU_FindItemByKey( HWND hwndOwner, HMENU hmenu,
UINT key, BOOL forceMenuChar )
{
- TRACE("\tlooking for '%c' in [%04x]\n", (char)key, (UINT16)hmenu );
+ TRACE("\tlooking for '%c' in [%x]\n", (char)key, hmenu );
if (!IsMenu( hmenu )) hmenu = GetSubMenu( get_win_sys_menu(hwndOwner), 0);
@@ -693,7 +694,7 @@
}
}
menuchar = SendMessageA( hwndOwner, WM_MENUCHAR,
- MAKEWPARAM( key, menu->wFlags ), hmenu );
+ MAKEWPARAM( key, menu->wFlags ), (LPARAM)hmenu );
if (HIWORD(menuchar) == 2) return LOWORD(menuchar);
if (HIWORD(menuchar) == 1) return (UINT)(-2);
}
@@ -1633,7 +1634,7 @@
/* NOTE: In Windows, top menu popup is not owned. */
menu->hWnd = CreateWindowA( POPUPMENU_CLASS_ATOM, NULL,
WS_POPUP, x, y, width, height,
- hwndOwner, 0, GetWindowLongA(hwndOwner,GWL_HINSTANCE),
+ hwndOwner, 0, (HINSTANCE)GetWindowLongA(hwndOwner,GWL_HINSTANCE),
(LPVOID)hmenu );
if( !menu->hWnd ) return FALSE;
if (!top_popup) top_popup = menu->hWnd;
@@ -1693,7 +1694,7 @@
SendMessageA( hwndOwner, WM_MENUSELECT,
MAKELONG(ip->fType & MF_POPUP ? wIndex: ip->wID,
ip->fType | ip->fState | MF_MOUSESELECT |
- (lppop->wFlags & MF_SYSMENU)), hmenu);
+ (lppop->wFlags & MF_SYSMENU)), (LPARAM)hmenu);
}
}
else if (sendMenuSelect) {
@@ -1704,7 +1705,7 @@
MENUITEM *ip = &ptm->items[pos];
SendMessageA( hwndOwner, WM_MENUSELECT, MAKELONG(pos,
ip->fType | ip->fState | MF_MOUSESELECT |
- (ptm->wFlags & MF_SYSMENU)), topmenu);
+ (ptm->wFlags & MF_SYSMENU)), (LPARAM)topmenu);
}
}
}
@@ -1796,12 +1797,12 @@
else
item->dwItemData = 0;
- if ((item->fType & MF_POPUP) && (flags & MF_POPUP) && (item->hSubMenu != id) )
+ if ((item->fType & MF_POPUP) && (flags & MF_POPUP) && (item->hSubMenu != (HMENU)id) )
DestroyMenu( item->hSubMenu ); /* ModifyMenu() spec */
if (flags & MF_POPUP)
{
- POPUPMENU *menu = MENU_GetMenu((UINT16)id);
+ POPUPMENU *menu = MENU_GetMenu((HMENU)id);
if (menu) menu->wFlags |= MF_POPUP;
else
{
@@ -1814,8 +1815,7 @@
}
item->wID = id;
- if (flags & MF_POPUP)
- item->hSubMenu = id;
+ if (flags & MF_POPUP) item->hSubMenu = (HMENU)id;
if ((item->fType & MF_POPUP) && !(flags & MF_POPUP) )
flags |= MF_POPUP; /* keep popup */
@@ -2074,8 +2074,8 @@
/* Send WM_INITMENUPOPUP message only if TPM_NONOTIFY flag is not specified */
if (!(wFlags & TPM_NONOTIFY))
- SendMessageA( hwndOwner, WM_INITMENUPOPUP, item->hSubMenu,
- MAKELONG( menu->FocusedItem, IS_SYSTEM_MENU(menu) ));
+ SendMessageA( hwndOwner, WM_INITMENUPOPUP, (WPARAM)item->hSubMenu,
+ MAKELONG( menu->FocusedItem, IS_SYSTEM_MENU(menu) ));
item = &menu->items[menu->FocusedItem];
rect = item->rect;
@@ -2981,7 +2981,7 @@
if (!(wFlags & TPM_NONOTIFY))
{
POPUPMENU *menu;
- SendMessageA( hWnd, WM_INITMENU, hMenu, 0 );
+ SendMessageA( hWnd, WM_INITMENU, (WPARAM)hMenu, 0 );
if ((menu = MENU_GetMenu( hMenu )) && (!menu->Height))
{ /* app changed/recreated menu bar entries in WM_INITMENU
Recalculate menu sizes else clicks will not work */
@@ -3101,7 +3101,7 @@
/* Send WM_INITMENUPOPUP message only if TPM_NONOTIFY flag is not specified */
if (!(wFlags & TPM_NONOTIFY))
- SendMessageA( hWnd, WM_INITMENUPOPUP, hMenu, 0);
+ SendMessageA( hWnd, WM_INITMENUPOPUP, (WPARAM)hMenu, 0);
if (MENU_ShowPopup( hWnd, hMenu, 0, x, y, 0, 0 ))
ret = MENU_TrackMenu( hMenu, wFlags | TPM_POPUPMENU, 0, 0, hWnd, lpRect );
@@ -3214,32 +3214,6 @@
/*******************************************************************
- * ChangeMenu (USER.153)
- */
-BOOL16 WINAPI ChangeMenu16( HMENU16 hMenu, UINT16 pos, SEGPTR data,
- UINT16 id, UINT16 flags )
-{
- TRACE("menu=%04x pos=%d data=%08lx id=%04x flags=%04x\n",
- hMenu, pos, (DWORD)data, id, flags );
- if (flags & MF_APPEND) return AppendMenu16( hMenu, flags & ~MF_APPEND,
- id, data );
-
- /* FIXME: Word passes the item id in 'pos' and 0 or 0xffff as id */
- /* for MF_DELETE. We should check the parameters for all others */
- /* MF_* actions also (anybody got a doc on ChangeMenu?). */
-
- if (flags & MF_DELETE) return DeleteMenu16(hMenu, pos, flags & ~MF_DELETE);
- if (flags & MF_CHANGE) return ModifyMenu16(hMenu, pos, flags & ~MF_CHANGE,
- id, data );
- if (flags & MF_REMOVE) return RemoveMenu16(hMenu,
- flags & MF_BYPOSITION ? pos : id,
- flags & ~MF_REMOVE );
- /* Default: MF_INSERT */
- return InsertMenu16( hMenu, pos, flags, id, data );
-}
-
-
-/*******************************************************************
* ChangeMenuA (USER32.@)
*/
BOOL WINAPI ChangeMenuA( HMENU hMenu, UINT pos, LPCSTR data,
@@ -3282,15 +3256,6 @@
/*******************************************************************
- * CheckMenuItem (USER.154)
- */
-BOOL16 WINAPI CheckMenuItem16( HMENU16 hMenu, UINT16 id, UINT16 flags )
-{
- return (BOOL16)CheckMenuItem( hMenu, id, flags );
-}
-
-
-/*******************************************************************
* CheckMenuItem (USER32.@)
*/
DWORD WINAPI CheckMenuItem( HMENU hMenu, UINT id, UINT flags )
@@ -3308,15 +3273,6 @@
/**********************************************************************
- * EnableMenuItem (USER.155)
- */
-UINT16 WINAPI EnableMenuItem16( HMENU16 hMenu, UINT16 wItemID, UINT16 wFlags )
-{
- return EnableMenuItem( hMenu, wItemID, wFlags );
-}
-
-
-/**********************************************************************
* EnableMenuItem (USER32.@)
*/
UINT WINAPI EnableMenuItem( HMENU hMenu, UINT wItemID, UINT wFlags )
@@ -3361,16 +3317,6 @@
/*******************************************************************
- * GetMenuString (USER.161)
- */
-INT16 WINAPI GetMenuString16( HMENU16 hMenu, UINT16 wItemID,
- LPSTR str, INT16 nMaxSiz, UINT16 wFlags )
-{
- return GetMenuStringA( hMenu, wItemID, str, nMaxSiz, wFlags );
-}
-
-
-/*******************************************************************
* GetMenuStringA (USER32.@)
*/
INT WINAPI GetMenuStringA(
@@ -3433,15 +3379,6 @@
/**********************************************************************
- * GetMenuState (USER.250)
- */
-UINT16 WINAPI GetMenuState16( HMENU16 hMenu, UINT16 wItemID, UINT16 wFlags )
-{
- return GetMenuState( hMenu, wItemID, wFlags );
-}
-
-
-/**********************************************************************
* GetMenuState (USER32.@)
*/
UINT WINAPI GetMenuState( HMENU hMenu, UINT wItemID, UINT wFlags )
@@ -3468,19 +3405,6 @@
/**********************************************************************
- * GetMenuItemCount (USER.263)
- */
-INT16 WINAPI GetMenuItemCount16( HMENU16 hMenu )
-{
- LPPOPUPMENU menu = MENU_GetMenu(hMenu);
- if (!menu) return -1;
- TRACE("(%04x) returning %d\n",
- hMenu, menu->nItems );
- return menu->nItems;
-}
-
-
-/**********************************************************************
* GetMenuItemCount (USER32.@)
*/
INT WINAPI GetMenuItemCount( HMENU hMenu )
@@ -3492,13 +3416,6 @@
return menu->nItems;
}
-/**********************************************************************
- * GetMenuItemID (USER.264)
- */
-UINT16 WINAPI GetMenuItemID16( HMENU16 hMenu, INT16 nPos )
-{
- return (UINT16) GetMenuItemID (hMenu, nPos);
-}
/**********************************************************************
* GetMenuItemID (USER32.@)
@@ -3513,19 +3430,6 @@
}
-/*******************************************************************
- * InsertMenu (USER.410)
- */
-BOOL16 WINAPI InsertMenu16( HMENU16 hMenu, UINT16 pos, UINT16 flags,
- UINT16 id, SEGPTR data )
-{
- UINT pos32 = (UINT)pos;
- if ((pos == (UINT16)-1) && (flags & MF_BYPOSITION)) pos32 = (UINT)-1;
- if (IS_STRING_ITEM(flags) && data)
- return InsertMenuA( hMenu, pos32, flags, id, MapSL(data) );
- return InsertMenuA( hMenu, pos32, flags, id, (LPSTR)data );
-}
-
/*******************************************************************
* InsertMenuW (USER32.@)
@@ -3552,7 +3456,7 @@
}
if (flags & MF_POPUP) /* Set the MF_POPUP flag on the popup-menu */
- (MENU_GetMenu((HMENU16)id))->wFlags |= MF_POPUP;
+ (MENU_GetMenu((HMENU)id))->wFlags |= MF_POPUP;
item->hCheckBit = item->hUnCheckBit = 0;
return TRUE;
@@ -3584,15 +3488,6 @@
/*******************************************************************
- * AppendMenu (USER.411)
- */
-BOOL16 WINAPI AppendMenu16(HMENU16 hMenu, UINT16 flags, UINT16 id, SEGPTR data)
-{
- return InsertMenu16( hMenu, -1, flags | MF_BYPOSITION, id, data );
-}
-
-
-/*******************************************************************
* AppendMenuA (USER32.@)
*/
BOOL WINAPI AppendMenuA( HMENU hMenu, UINT flags,
@@ -3613,15 +3508,6 @@
/**********************************************************************
- * RemoveMenu (USER.412)
- */
-BOOL16 WINAPI RemoveMenu16( HMENU16 hMenu, UINT16 nPos, UINT16 wFlags )
-{
- return RemoveMenu( hMenu, nPos, wFlags );
-}
-
-
-/**********************************************************************
* RemoveMenu (USER32.@)
*/
BOOL WINAPI RemoveMenu( HMENU hMenu, UINT nPos, UINT wFlags )
@@ -3658,15 +3544,6 @@
/**********************************************************************
- * DeleteMenu (USER.413)
- */
-BOOL16 WINAPI DeleteMenu16( HMENU16 hMenu, UINT16 nPos, UINT16 wFlags )
-{
- return DeleteMenu( hMenu, nPos, wFlags );
-}
-
-
-/**********************************************************************
* DeleteMenu (USER32.@)
*/
BOOL WINAPI DeleteMenu( HMENU hMenu, UINT nPos, UINT wFlags )
@@ -3681,18 +3558,6 @@
/*******************************************************************
- * ModifyMenu (USER.414)
- */
-BOOL16 WINAPI ModifyMenu16( HMENU16 hMenu, UINT16 pos, UINT16 flags,
- UINT16 id, SEGPTR data )
-{
- if (IS_STRING_ITEM(flags))
- return ModifyMenuA( hMenu, pos, flags, id, MapSL(data) );
- return ModifyMenuA( hMenu, pos, flags, id, (LPSTR)data );
-}
-
-
-/*******************************************************************
* ModifyMenuW (USER32.@)
*/
BOOL WINAPI ModifyMenuW( HMENU hMenu, UINT pos, UINT flags,
@@ -3742,15 +3607,6 @@
/**********************************************************************
- * CreatePopupMenu (USER.415)
- */
-HMENU16 WINAPI CreatePopupMenu16(void)
-{
- return CreatePopupMenu();
-}
-
-
-/**********************************************************************
* CreatePopupMenu (USER32.@)
*/
HMENU WINAPI CreatePopupMenu(void)
@@ -3777,16 +3633,6 @@
/**********************************************************************
- * SetMenuItemBitmaps (USER.418)
- */
-BOOL16 WINAPI SetMenuItemBitmaps16( HMENU16 hMenu, UINT16 nPos, UINT16 wFlags,
- HBITMAP16 hNewUnCheck, HBITMAP16 hNewCheck)
-{
- return SetMenuItemBitmaps( hMenu, nPos, wFlags, hNewUnCheck, hNewCheck );
-}
-
-
-/**********************************************************************
* SetMenuItemBitmaps (USER32.@)
*/
BOOL WINAPI SetMenuItemBitmaps( HMENU hMenu, UINT nPos, UINT wFlags,
@@ -3812,15 +3658,6 @@
/**********************************************************************
- * CreateMenu (USER.151)
- */
-HMENU16 WINAPI CreateMenu16(void)
-{
- return CreateMenu();
-}
-
-
-/**********************************************************************
* CreateMenu (USER32.@)
*/
HMENU WINAPI CreateMenu(void)
@@ -3842,15 +3679,6 @@
/**********************************************************************
- * DestroyMenu (USER.152)
- */
-BOOL16 WINAPI DestroyMenu16( HMENU16 hMenu )
-{
- return DestroyMenu( hMenu );
-}
-
-
-/**********************************************************************
* DestroyMenu (USER32.@)
*/
BOOL WINAPI DestroyMenu( HMENU hMenu )
@@ -4010,15 +3838,6 @@
/**********************************************************************
- * GetSubMenu (USER.159)
- */
-HMENU16 WINAPI GetSubMenu16( HMENU16 hMenu, INT16 nPos )
-{
- return GetSubMenu( hMenu, nPos );
-}
-
-
-/**********************************************************************
* GetSubMenu (USER32.@)
*/
HMENU WINAPI GetSubMenu( HMENU hMenu, INT nPos )
@@ -4106,19 +3925,10 @@
HGLOBAL16 handle;
HMENU16 hMenu;
- TRACE("(%04x,%s)\n", instance, debugstr_a(name) );
-
- if (HIWORD(name))
- {
- if (name[0] == '#') name = (LPCSTR)atoi( name + 1 );
- }
-
+ if (HIWORD(name) && name[0] == '#') name = (LPCSTR)atoi( name + 1 );
if (!name) return 0;
- /* check for Win32 module */
- if (HIWORD(instance)) return LoadMenuA( instance, name );
instance = GetExePtr( instance );
-
if (!(hRsrc = FindResource16( instance, name, RT_MENUA ))) return 0;
if (!(handle = LoadResource16( instance, hRsrc ))) return 0;
hMenu = LoadMenuIndirect16(LockResource16(handle));
@@ -4230,15 +4040,6 @@
/**********************************************************************
- * IsMenu (USER.358)
- */
-BOOL16 WINAPI IsMenu16( HMENU16 hmenu )
-{
- return IsMenu( hmenu );
-}
-
-
-/**********************************************************************
* IsMenu (USER32.@)
*/
BOOL WINAPI IsMenu(HMENU hmenu)
@@ -4580,32 +4381,6 @@
}
-/*******************************************************************
- * InsertMenuItem (USER.441)
- *
- * FIXME: untested
- */
-BOOL16 WINAPI InsertMenuItem16( HMENU16 hmenu, UINT16 pos, BOOL16 byposition,
- const MENUITEMINFO16 *mii )
-{
- MENUITEMINFOA miia;
-
- miia.cbSize = sizeof(miia);
- miia.fMask = mii->fMask;
- miia.dwTypeData = (LPSTR)mii->dwTypeData;
- miia.fType = mii->fType;
- miia.fState = mii->fState;
- miia.wID = mii->wID;
- miia.hSubMenu = mii->hSubMenu;
- miia.hbmpChecked = mii->hbmpChecked;
- miia.hbmpUnchecked = mii->hbmpUnchecked;
- miia.dwItemData = mii->dwItemData;
- miia.cch = mii->cch;
- if (IS_STRING_ITEM(miia.fType))
- miia.dwTypeData = MapSL(mii->dwTypeData);
- return InsertMenuItemA( hmenu, pos, byposition, &miia );
-}
-
/**********************************************************************
* InsertMenuItemA (USER32.@)
@@ -4667,15 +4442,6 @@
return TRUE;
}
-/**********************************************************************
- * CheckMenuRadioItem (USER.666)
- */
-BOOL16 WINAPI CheckMenuRadioItem16(HMENU16 hMenu,
- UINT16 first, UINT16 last, UINT16 check,
- BOOL16 bypos)
-{
- return CheckMenuRadioItem (hMenu, first, last, check, bypos);
-}
/**********************************************************************
* GetMenuItemRect (USER32.@)
@@ -4790,14 +4556,6 @@
return FALSE;
}
-/**********************************************************************
- * SetMenuContextHelpId (USER.384)
- */
-BOOL16 WINAPI SetMenuContextHelpId16( HMENU16 hMenu, DWORD dwContextHelpID)
-{
- return SetMenuContextHelpId( hMenu, dwContextHelpID );
-}
-
/**********************************************************************
* SetMenuContextHelpId (USER32.@)
@@ -4816,13 +4574,6 @@
return FALSE;
}
-/**********************************************************************
- * GetMenuContextHelpId (USER.385)
- */
-DWORD WINAPI GetMenuContextHelpId16( HMENU16 hMenu )
-{
- return GetMenuContextHelpId( hMenu );
-}
/**********************************************************************
* GetMenuContextHelpId (USER32.@)