Implement ShowOwnedPopups and ArrangeIconicWindows. Based on Wine. More work is needed on both.

svn path=/trunk/; revision=16630
This commit is contained in:
James Tabor 2005-07-18 03:13:11 +00:00
parent 35b93a79d6
commit d09f528ad2
3 changed files with 17 additions and 20 deletions

View file

@ -1269,14 +1269,15 @@ User32DefWindowProc(HWND hWnd,
if (!lParam) if (!lParam)
return 0; return 0;
Style = GetWindowLongW(hWnd, GWL_STYLE); Style = GetWindowLongW(hWnd, GWL_STYLE);
if (!(Style & WS_POPUP)) // if (!(Style & WS_POPUP))
return 0; // return 0;
if ((Style & WS_VISIBLE) && wParam) if ((Style & WS_VISIBLE) && wParam)
return 0; return 0;
if (!(Style & WS_VISIBLE) && !wParam) if (!(Style & WS_VISIBLE) && !wParam)
return 0; return 0;
if (!GetWindow(hWnd, GW_OWNER)) if (!GetWindow(hWnd, GW_OWNER))
return 0; return 0;
NtUserCallTwoParam((DWORD) hWnd, (DWORD) wParam, TWOPARAM_ROUTINE_ROS_SHOWWINDOW);
ShowWindow(hWnd, wParam ? SW_SHOWNA : SW_HIDE); ShowWindow(hWnd, wParam ? SW_SHOWNA : SW_HIDE);
break; break;
} }

View file

@ -48,17 +48,6 @@ AllowSetForegroundWindow(DWORD dwProcessId)
} }
/*
* @unimplemented
*/
UINT STDCALL
ArrangeIconicWindows(HWND hWnd)
{
UNIMPLEMENTED;
return 0;
}
/* /*
* @unimplemented * @unimplemented
*/ */
@ -1084,15 +1073,15 @@ AnimateWindow(HWND hwnd,
BOOL visible; BOOL visible;
visible = IsWindowVisible(hwnd); visible = IsWindowVisible(hwnd);
// if(!IsWindow(hwnd) || if(!IsWindow(hwnd) ||
// (visible && !(dwFlags & AW_HIDE)) || (visible && !(dwFlags & AW_HIDE)) ||
// (!visible && (dwFlags & AW_HIDE))) (!visible && (dwFlags & AW_HIDE)))
{ {
SetLastError(ERROR_INVALID_PARAMETER); SetLastError(ERROR_INVALID_PARAMETER);
return FALSE; return FALSE;
} }
// ShowWindow(hwnd, (dwFlags & AW_HIDE) ? SW_HIDE : ((dwFlags & AW_ACTIVATE) ? SW_SHOW : SW_SHOWNA)); ShowWindow(hwnd, (dwFlags & AW_HIDE) ? SW_HIDE : ((dwFlags & AW_ACTIVATE) ? SW_SHOW : SW_SHOWNA));
return TRUE; return TRUE;
} }
@ -1273,14 +1262,13 @@ SetWindowTextW(HWND hWnd,
/* /*
* @unimplemented * @implemented
*/ */
BOOL STDCALL BOOL STDCALL
ShowOwnedPopups(HWND hWnd, ShowOwnedPopups(HWND hWnd,
BOOL fShow) BOOL fShow)
{ {
UNIMPLEMENTED; return (BOOL)NtUserCallTwoParam((DWORD)hWnd, fShow, TWOPARAM_ROUTINE_SHOWOWNEDPOPUPS);
return FALSE;
} }

View file

@ -55,3 +55,11 @@ SetActiveWindow(HWND hWnd)
return(NtUserSetActiveWindow(hWnd)); return(NtUserSetActiveWindow(hWnd));
} }
/*
* @unimplemented
*/
UINT STDCALL
ArrangeIconicWindows(HWND hWnd)
{
return NtUserCallHwndLock( hWnd, HWNDLOCK_ROUTINE_ARRANGEICONICWINDOWS);
}