# HG changeset patch # User bsmith@81767d24-ef19-dc11-ae90-00e081727c95 # Date 1045644410 0 # Node ID c097ffe6cfeb10641fe421473156c24b2bd7b744 # Parent bdaaa06285fdb3c0ecfac19275eaef414d97bfed Implemented dw_window_from_id() on Windows. diff -r bdaaa06285fd -r c097ffe6cfeb win/dw.c --- a/win/dw.c Wed Feb 19 08:28:00 2003 +0000 +++ b/win/dw.c Wed Feb 19 08:46:50 2003 +0000 @@ -4487,6 +4487,18 @@ EnableWindow(handle, TRUE); } +static HWND _dw_wfid_hwnd = NULL; + +BOOL CALLBACK _wfid(HWND handle, LPARAM lParam) +{ + if(GetWindowLong(handle, GWL_ID) == lParam) + { + _dw_wfid_hwnd = handle; + return FALSE; + } + return TRUE; +} + /* * Gets the child window handle with specified ID. * Parameters: @@ -4495,7 +4507,9 @@ */ HWND API dw_window_from_id(HWND handle, int id) { - return 0L; + _dw_wfid_hwnd = NULL; + EnumChildWindows(handle, _wfid, (LPARAM)id); + return _dw_wfid_hwnd; } /* * Pack windows (widgets) into a box from the start (or top).