]> git.saurik.com Git - wxWidgets.git/blame - docs/microwin/microwindows.patches
pass event to validators fisrt, before using the dynamic event table
[wxWidgets.git] / docs / microwin / microwindows.patches
CommitLineData
2a7449f4
JS
1diff -rbu2 ../microwindows-0.89pre8.orig/src/config ./src/config
2--- ../microwindows-0.89pre8.orig/src/config Fri Dec 21 14:07:18 2001
3+++ ./src/config Fri Dec 21 14:14:37 2001
4@@ -47,7 +47,7 @@
5 #
6 ####################################################################
7-OPTIMIZE = Y
8-DEBUG = N
9-VERBOSE = N
10+OPTIMIZE = N
11+DEBUG = Y
12+VERBOSE = Y
13
14 ####################################################################
15@@ -191,5 +191,5 @@
16 #
17 ####################################################################
18-ERASEMOVE = Y
19+ERASEMOVE = N
20 UPDATEREGIONS = Y
21
22@@ -216,5 +216,5 @@
23
24 # X Window screen, mouse and kbd drivers
25-X11 = N
26+X11 = Y
27
28 ifeq ($(X11), Y)
29diff -rbu2 ../microwindows-0.89pre8.orig/src/mwin/winevent.c ./src/mwin/winevent.c
30--- ../microwindows-0.89pre8.orig/src/mwin/winevent.c Fri Dec 21 14:07:21 2001
31+++ ./src/mwin/winevent.c Fri Dec 21 14:10:59 2001
32@@ -167,5 +167,5 @@
8cd38986
JS
33
34 /* then possibly send user mouse message*/
35- if(hittest == HTCLIENT) {
36+ if(hittest == HTCLIENT || hwnd == GetCapture()) {
37 pt.x = cursorx;
38 pt.y = cursory;
2a7449f4
JS
39Only in ./src/mwin: winevent.c~
40diff -rbu2 ../microwindows-0.89pre8.orig/src/mwin/winuser.c ./src/mwin/winuser.c
41--- ../microwindows-0.89pre8.orig/src/mwin/winuser.c Fri Dec 21 14:07:21 2001
42+++ ./src/mwin/winuser.c Fri Dec 21 14:10:59 2001
8cd38986
JS
43@@ -137,7 +137,11 @@
44 }
45
46+/*
47+ * A helper function for sharing code between PeekMessage and GetMessage
48+ */
49+
50 BOOL WINAPI
51-PeekMessage(LPMSG lpMsg, HWND hwnd, UINT uMsgFilterMin, UINT uMsgFilterMax,
52- UINT wRemoveMsg)
53+PeekMessageHelper(LPMSG lpMsg, HWND hwnd, UINT uMsgFilterMin, UINT uMsgFilterMax,
54+ UINT wRemoveMsg, BOOL returnIfEmptyQueue)
55 {
56 HWND wp;
57@@ -146,4 +150,8 @@
58 /* check if no messages in queue*/
59 if(mwMsgHead.head == NULL) {
60+ /* Added by JACS so it doesn't reach MwSelect */
61+ if (returnIfEmptyQueue)
62+ return FALSE;
63+
64 #if PAINTONCE
65 /* check all windows for pending paint messages*/
66@@ -177,4 +185,12 @@
67
68 BOOL WINAPI
69+PeekMessage(LPMSG lpMsg, HWND hwnd, UINT uMsgFilterMin, UINT uMsgFilterMax,
70+ UINT wRemoveMsg)
71+{
72+ /* Never wait in MwSelect: pass TRUE */
73+ return PeekMessageHelper(lpMsg, hwnd, uMsgFilterMin, uMsgFilterMax, wRemoveMsg, TRUE);
74+}
75+
76+BOOL WINAPI
77 GetMessage(LPMSG lpMsg,HWND hwnd,UINT wMsgFilterMin,UINT wMsgFilterMax)
78 {
79@@ -183,5 +199,6 @@
80 * so this code will work
81 */
82- while(!PeekMessage(lpMsg, hwnd, wMsgFilterMin, wMsgFilterMax,PM_REMOVE))
83+ /* Always wait in MwSelect if there are messages: pass FALSE */
84+ while(!PeekMessageHelper(lpMsg, hwnd, wMsgFilterMin, wMsgFilterMax,PM_REMOVE, FALSE))
85 continue;
86 return lpMsg->message != WM_QUIT;