Mercurial > dwindows
diff win/dw.c @ 93:98cce029a611
Changed handling of menu item click events.
author | bsmith@81767d24-ef19-dc11-ae90-00e081727c95 |
---|---|
date | Thu, 25 Apr 2002 02:10:49 +0000 |
parents | eeb98f881663 |
children | 636c37ca7238 |
line wrap: on
line diff
--- a/win/dw.c Mon Apr 22 08:41:47 2002 +0000 +++ b/win/dw.c Thu Apr 25 02:10:49 2002 +0000 @@ -22,7 +22,7 @@ /* make sure you always match the calling convention! */ int (*filterfunc)(HWND, UINT, WPARAM, LPARAM) = 0L; -HWND hwndBubble = (HWND)NULL, hwndBubbleLast, DW_HWND_OBJECT = (HWND)NULL; +HWND popup = (HWND)NULL, hwndBubble = (HWND)NULL, hwndBubbleLast, DW_HWND_OBJECT = (HWND)NULL; HINSTANCE DWInstance = NULL; @@ -1499,7 +1499,7 @@ } /* Make sure it's the right window, and the right ID */ else if(tmp->window < (HWND)65536 && command == tmp->window) { - result = clickfunc(tmp->window, tmp->data); + result = clickfunc(popup ? popup : tmp->window, tmp->data); tmp = NULL; } } @@ -3622,6 +3622,7 @@ { if(menu && *menu) { + popup = parent; TrackPopupMenu((*menu)->menu, 0, x, y, 0, parent, NULL); free(*menu); *menu = NULL;