# HG changeset patch # User bsmith@81767d24-ef19-dc11-ae90-00e081727c95 # Date 1050057899 0 # Node ID 503d1ac958bbc94e7a08ccc43b2233c5e619ad73 # Parent eff674cb49354fe1b65d011291f45f93225274b3 Call TreeView_SelectItem() instead of dw_tree_item_select() so we get the selection event. diff -r eff674cb4935 -r 503d1ac958bb win/dw.c --- a/win/dw.c Fri Apr 11 09:25:30 2003 +0000 +++ b/win/dw.c Fri Apr 11 10:44:59 2003 +0000 @@ -1511,7 +1511,7 @@ if(tmp->window == tem->hdr.hwndFrom) { int (*containercontextfunc)(HWND, char *, int, int, void *, void *) = tmp->signalfunction; - HTREEITEM hti; + HTREEITEM hti, last; TVITEM tvi; TVHITTESTINFO thi; void **ptrs = NULL; @@ -1524,6 +1524,7 @@ MapWindowPoints(HWND_DESKTOP, tmp->window, &thi.pt, 1); + last = TreeView_GetSelection(tmp->window); hti = TreeView_HitTest(tmp->window, &thi); if(hti) @@ -1532,10 +1533,9 @@ tvi.hItem = hti; TreeView_GetItem(tmp->window, &tvi); - dw_tree_item_select(tmp->window, hti); + TreeView_SelectItem(tmp->window, hti); ptrs = (void **)tvi.lParam; - } containercontextfunc(tmp->window, ptrs ? (char *)ptrs[0] : NULL, x, y, tmp->data, ptrs ? ptrs[1] : NULL); tmp = NULL; @@ -2710,6 +2710,15 @@ switch(msg) { + case WM_CTLCOLORSTATIC: + case WM_CTLCOLORLISTBOX: + case WM_CTLCOLORBTN: + case WM_CTLCOLOREDIT: + case WM_CTLCOLORMSGBOX: + case WM_CTLCOLORSCROLLBAR: + case WM_CTLCOLORDLG: + _wndproc(hwnd, msg, mp1, mp2); + break; case WM_SETFOCUS: _wndproc(hwnd, msg, mp1, mp2); break;