{ WM_WINDOWPOSCHANGING, sizeof(WINDOWPOS), MMS_FLAG_READWRITE },
{ WM_SIZING, sizeof(RECT), MMS_FLAG_READWRITE },
{ WM_MOVING, sizeof(RECT), MMS_FLAG_READWRITE },
+ { WM_MEASUREITEM, sizeof(MEASUREITEMSTRUCT), MMS_FLAG_READWRITE },
+ { WM_DRAWITEM, sizeof(DRAWITEMSTRUCT), MMS_FLAG_READWRITE },
+ { WM_HELP, sizeof(HELPINFO), MMS_FLAG_READWRITE },
+ { WM_NEXTMENU, sizeof(MDINEXTMENU), MMS_FLAG_READWRITE },
};
static PMSGMEMORY FASTCALL
pMsg->message,
pMsg->wParam,
pMsg->lParam,
- &retval);
+ &retval);
+ case FNID_MENU:
+ DoCallBack = !PopupMenuWndProc( Window,
+ pMsg->message,
+ pMsg->wParam,
+ pMsg->lParam,
+ &retval);
break;
}
}
return TRUE;
}
-static BOOL FASTCALL
+BOOL FASTCALL
co_IntWaitMessage( PWND Window,
UINT MsgFilterMin,
UINT MsgFilterMax )
case FNID_MESSAGEWND:
DoCallBack = !UserMessageWindowProc(Window, Msg, wParam, lParam,(LRESULT*)&Result);
break;
+ case FNID_MENU:
+ DoCallBack = !PopupMenuWndProc( Window, Msg, wParam, lParam,(LRESULT*)&Result);
+ break;
}
if (!DoCallBack)
{
case FNID_MESSAGEWND:
DoCallBack = !UserMessageWindowProc(Window, Msg, wParam, lParam,(LRESULT*)&Result);
break;
+ case FNID_MENU:
+ DoCallBack = !PopupMenuWndProc( Window, Msg, wParam, lParam,(LRESULT*)&Result);
+ break;
}
}
}
break;
}
-
+ case FNID_MENU:
+ {
+ Window = UserGetWindowObject(hWnd);
+ if (Window)
+ {
+ Ret = PopupMenuWndProc( Window, Msg, wParam, lParam, &lResult);
+ }
+ break;
+ }
case FNID_MESSAGEWND:
{
Window = UserGetWindowObject(hWnd);
if (Window)
{
- Ret = !UserMessageWindowProc(Window, Msg, wParam, lParam,&lResult);
+ Ret = !UserMessageWindowProc(Window, Msg, wParam, lParam, &lResult);
}
break;
}
case FNID_CALLWNDPROCRET:
case FNID_SCROLLBAR:
case FNID_DESKTOP:
+ case FNID_MENU:
if (ResultInfo)
{
_SEH2_TRY