0fd734af37
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@10776 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
82 lines
2.2 KiB
Plaintext
82 lines
2.2 KiB
Plaintext
*** /home/julians/microwindows/original/microwin/src/mwin/winuser.c Wed Jul 5 00:36:42 2000
|
|
--- winuser.c Tue May 22 00:42:01 2001
|
|
***************
|
|
*** 136,150 ****
|
|
return FALSE;
|
|
}
|
|
|
|
BOOL WINAPI
|
|
! PeekMessage(LPMSG lpMsg, HWND hwnd, UINT uMsgFilterMin, UINT uMsgFilterMax,
|
|
! UINT wRemoveMsg)
|
|
{
|
|
HWND wp;
|
|
PMSG pNxtMsg;
|
|
|
|
/* check if no messages in queue*/
|
|
if(mwMsgHead.head == NULL) {
|
|
#if PAINTONCE
|
|
/* check all windows for pending paint messages*/
|
|
for(wp=listwp; wp; wp=wp->next) {
|
|
--- 136,158 ----
|
|
return FALSE;
|
|
}
|
|
|
|
+ /*
|
|
+ * A helper function for sharing code between PeekMessage and GetMessage
|
|
+ */
|
|
+
|
|
BOOL WINAPI
|
|
! PeekMessageHelper(LPMSG lpMsg, HWND hwnd, UINT uMsgFilterMin, UINT uMsgFilterMax,
|
|
! UINT wRemoveMsg, BOOL returnIfEmptyQueue)
|
|
{
|
|
HWND wp;
|
|
PMSG pNxtMsg;
|
|
|
|
/* check if no messages in queue*/
|
|
if(mwMsgHead.head == NULL) {
|
|
+ /* Added by JACS so it doesn't reach MwSelect */
|
|
+ if (returnIfEmptyQueue)
|
|
+ return FALSE;
|
|
+
|
|
#if PAINTONCE
|
|
/* check all windows for pending paint messages*/
|
|
for(wp=listwp; wp; wp=wp->next) {
|
|
***************
|
|
*** 176,188 ****
|
|
}
|
|
|
|
BOOL WINAPI
|
|
GetMessage(LPMSG lpMsg,HWND hwnd,UINT wMsgFilterMin,UINT wMsgFilterMax)
|
|
{
|
|
/*
|
|
* currently MwSelect() must poll for VT switch reasons,
|
|
* so this code will work
|
|
*/
|
|
! while(!PeekMessage(lpMsg, hwnd, wMsgFilterMin, wMsgFilterMax,PM_REMOVE))
|
|
continue;
|
|
return lpMsg->message != WM_QUIT;
|
|
}
|
|
--- 184,205 ----
|
|
}
|
|
|
|
BOOL WINAPI
|
|
+ PeekMessage(LPMSG lpMsg, HWND hwnd, UINT uMsgFilterMin, UINT uMsgFilterMax,
|
|
+ UINT wRemoveMsg)
|
|
+ {
|
|
+ /* Never wait in MwSelect: pass TRUE */
|
|
+ return PeekMessageHelper(lpMsg, hwnd, uMsgFilterMin, uMsgFilterMax, wRemoveMsg, TRUE);
|
|
+ }
|
|
+
|
|
+ BOOL WINAPI
|
|
GetMessage(LPMSG lpMsg,HWND hwnd,UINT wMsgFilterMin,UINT wMsgFilterMax)
|
|
{
|
|
/*
|
|
* currently MwSelect() must poll for VT switch reasons,
|
|
* so this code will work
|
|
*/
|
|
! /* Always wait in MwSelect if there are messages: pass FALSE */
|
|
! while(!PeekMessageHelper(lpMsg, hwnd, wMsgFilterMin, wMsgFilterMax,PM_REMOVE, FALSE))
|
|
continue;
|
|
return lpMsg->message != WM_QUIT;
|
|
}
|