diff --git a/winsup/w32api/ChangeLog b/winsup/w32api/ChangeLog index b48502863..36ff5273f 100644 --- a/winsup/w32api/ChangeLog +++ b/winsup/w32api/ChangeLog @@ -1,3 +1,26 @@ +2003-09-25 Dimitri Papadopoulos + + * include/winuser.h (BroadcastSystemMessage, BroadcastSystemMessageA, + BroadcastSystemMessageW, BroadcastSystemMessageEx, + BroadcastSystemMessageExA, BroadcastSystemMessageExW, + BSMINFO, BSF_ALLOWSFW, BSF_SENDNOTIFYMESSAGE, BSF_LUID, + BSF_RETURNHDESK): Add functions and constants. + + * include/winuser.h (EnumDisplaySettingsEx, EnumDisplaySettingsExA, + EnumDisplaySettingsExW, EDS_RAWMODE): Add functions and constant. + + * include/winuser.h (IsGUIThread, IsHungAppWindow, FlashWindowEx, + GetProcessDefaultLayout, SetProcessDefaultLayout, + RealChildWindowFromPoint, SetProcessDefaultLayout, + SwitchToThisWindow): Add functions. + + * lib/user32.def (BroadcastSystemMessageA, BroadcastSystemMessageW, + BroadcastSystemMessageExA, BroadcastSystemMessageExW, + EnumDisplaySettingsExA, EnumDisplaySettingsExW, FlashWindowEx, + GetProcessDefaultLayout, IsGUIThread, IsHungAppWindow, + RealChildWindowFromPoint, SetProcessDefaultLayout, + SwitchToThisWindow): Add function. + 2003-09-25 Dimitri Papadopoulos * include/winuser.h (DeregisterShellHookWindow): Add function. diff --git a/winsup/w32api/include/winuser.h b/winsup/w32api/include/winuser.h index b556bb7f8..18708adcb 100644 --- a/winsup/w32api/include/winuser.h +++ b/winsup/w32api/include/winuser.h @@ -115,13 +115,21 @@ extern "C" { #define MF_USECHECKBITMAPS 512 #define MF_UNHILITE 0 #define MF_HILITE 128 -#define BSF_IGNORECURRENTTASK 2 -#define BSF_QUERY 1 -#define BSF_FLUSHDISK 4 -#define BSF_NOHANG 8 -#define BSF_POSTMESSAGE 16 -#define BSF_FORCEIFHUNG 32 -#define BSF_NOTIMEOUTIFNOTHUNG 64 +#define BSF_FLUSHDISK 0x00000004 +#define BSF_FORCEIFHUNG 0x00000020 +#define BSF_IGNORECURRENTTASK 0x00000002 +#define BSF_NOHANG 0x00000008 +#define BSF_NOTIMEOUTIFNOTHUNG 0x00000040 +#define BSF_POSTMESSAGE 0x00000010 +#define BSF_QUERY 0x00000001 +#if (_WIN32_WINNT >= 0x0500) +#define BSF_ALLOWSFW 0x00000080 +#define BSF_SENDNOTIFYMESSAGE 0x00000100 +#endif /* (_WIN32_WINNT >= 0x0500) */ +#if (_WIN32_WINNT >= 0x0501) +#define BSF_LUID 0x00000400 +#define BSF_RETURNHDESK 0x00000200 +#endif /* (_WIN32_WINNT >= 0x0501) */ #define BSM_ALLCOMPONENTS 0 #define BSM_APPLICATIONS 8 #define BSM_ALLDESKTOPS 16 @@ -382,16 +390,16 @@ extern "C" { #define DDL_POSTMSGS 8192 #define DDL_DRIVES 16384 #define DDL_EXCLUSIVE 32768 -#define DC_ACTIVE 1 -#define DC_SMALLCAP 2 -#define DC_ICON 4 -#define DC_TEXT 8 -#define DC_INBUTTON 16 +#define DC_ACTIVE 0x00000001 +#define DC_SMALLCAP 0x00000002 +#define DC_ICON 0x00000004 +#define DC_TEXT 0x00000008 +#define DC_INBUTTON 0x00000010 #if (_WIN32_WINDOWS >= 0x0410 || _WIN32_WINNT >= 0x0500) -#define DC_GRADIENT 32 +#define DC_GRADIENT 0x00000020 #endif -#if ( _WIN32_WINNT >= 0x0501) -#define DC_BUTTONS 0x1000 +#if (_WIN32_WINNT >= 0x0501) +#define DC_BUTTONS 0x00001000 #endif /* Where are these documented? */ #define DC_CAPTION (DC_ICON|DC_TEXT|DC_BUTTONS) @@ -2090,6 +2098,9 @@ extern "C" { #define MONITOR_DEFAULTTONEAREST 2 #define MONITORINFOF_PRIMARY 1 #endif +#if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410) +#define EDS_RAWMODE 0x00000002 +#endif #ifndef RC_INVOKED typedef BOOL(CALLBACK *DLGPROC)(HWND,UINT,WPARAM,LPARAM); @@ -2860,6 +2871,14 @@ typedef struct tagGUITHREADINFO { RECT rcCaret; } GUITHREADINFO,*PGUITHREADINFO,*LPGUITHREADINFO; #endif /* (WINVER >= 0x0500) */ +#if (_WIN32_WINNT >= 0x0501) +typedef struct { + UINT cbSize; + HDESK hdesk; + HWND hwnd; + LUID luid; +} BSMINFO,*PBSMINFO; +#endif /* (WINVER >= 0x0501) */ #define AnsiToOem CharToOemA #define OemToAnsi OemToCharA @@ -2895,6 +2914,14 @@ HDWP WINAPI BeginDeferWindowPos(int); HDC WINAPI BeginPaint(HWND,LPPAINTSTRUCT); BOOL WINAPI BringWindowToTop(HWND); long WINAPI BroadcastSystemMessage(DWORD,LPDWORD,UINT,WPARAM,LPARAM); +#if (_WIN32_WINNT >= 0x0400) +long WINAPI BroadcastSystemMessageA(DWORD,LPDWORD,UINT,WPARAM,LPARAM); +long WINAPI BroadcastSystemMessageW(DWORD,LPDWORD,UINT,WPARAM,LPARAM); +#endif /* (_WIN32_WINNT >= 0x0400) */ +#if (_WIN32_WINNT >= 0x0501) +long WINAPI BroadcastSystemMessageExA(DWORD,LPDWORD,UINT,WPARAM,LPARAM,PBSMINFO); +long WINAPI BroadcastSystemMessageExW(DWORD,LPDWORD,UINT,WPARAM,LPARAM,PBSMINFO); +#endif /* (_WIN32_WINNT >= 0x0501) */ BOOL WINAPI CallMsgFilter(PMSG,int); LRESULT WINAPI CallNextHookEx(HHOOK,int,WPARAM,LPARAM); LRESULT WINAPI CallWindowProcA(WNDPROC,HWND,UINT,WPARAM,LPARAM); @@ -3050,6 +3077,10 @@ BOOL WINAPI EnumDisplayMonitors(HDC,LPCRECT,MONITORENUMPROC,LPARAM); #ifndef NOGDI BOOL WINAPI EnumDisplaySettingsA(LPCSTR,DWORD,PDEVMODEA); BOOL WINAPI EnumDisplaySettingsW(LPCWSTR,DWORD,PDEVMODEW); +#if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410) +BOOL WINAPI EnumDisplaySettingsExA(LPCSTR,DWORD,LPDEVMODEA,DWORD); +BOOL WINAPI EnumDisplaySettingsExW(LPCWSTR,DWORD,LPDEVMODEW,DWORD); +#endif BOOL WINAPI EnumDisplayDevicesA(LPCSTR,DWORD,PDISPLAY_DEVICEA,DWORD); BOOL WINAPI EnumDisplayDevicesW(LPCWSTR,DWORD,PDISPLAY_DEVICEW,DWORD); #endif @@ -3070,6 +3101,9 @@ HWND WINAPI FindWindowExA(HWND,HWND,LPCSTR,LPCSTR); HWND WINAPI FindWindowExW(HWND,HWND,LPCWSTR,LPCWSTR); HWND WINAPI FindWindowW(LPCWSTR,LPCWSTR); BOOL WINAPI FlashWindow(HWND,BOOL); +#if (_WIN32_WINNT >= 0x0500 || _WIN32_WINDOWS >= 0x0410) +BOOL WINAPI FlashWindowEx(PFLASHWINFO); +#endif int WINAPI FrameRect(HDC,LPCRECT,HBRUSH); BOOL WINAPI FrameRgn(HDC,HRGN,HBRUSH,int,int); HWND WINAPI GetActiveWindow(void); @@ -3201,6 +3235,9 @@ BOOL WINAPI GetLastInputInfo(PLASTINPUTINFO); DWORD WINAPI GetListBoxInfo(HWND); BOOL WINAPI GetMenuBarInfo(HWND,LONG,LONG,PMENUBARINFO); BOOL WINAPI GetMenuInfo(HMENU,LPMENUINFO); +#if (_WIN32_WINNT >= 0x0500) +BOOL WINAPI GetProcessDefaultLayout(DWORD*); +#endif /* (_WIN32_WINNT >= 0x0500) */ BOOL WINAPI GetScrollBarInfo(HWND,LONG,PSCROLLBARINFO); BOOL WINAPI GetTitleBarInfo(HWND,PTITLEBARINFO); BOOL WINAPI GetWindowInfo(HWND,PWINDOWINFO); @@ -3235,6 +3272,12 @@ BOOL WINAPI IsClipboardFormatAvailable(UINT); BOOL WINAPI IsDialogMessageA(HWND,LPMSG); BOOL WINAPI IsDialogMessageW(HWND,LPMSG); UINT WINAPI IsDlgButtonChecked(HWND,int); +#if(_WIN32_WINNT >= 0x0501) +BOOL WINAPI IsGUIThread(BOOL); +#endif /* (_WIN32_WINNT >= 0x0501) */ +#if(_WIN32_WINNT >= 0x0500) +BOOL WINAPI IsHungAppWindow(HWND); +#endif /* (_WIN32_WINNT >= 0x0500) */ BOOL WINAPI IsIconic(HWND); BOOL WINAPI IsMenu(HMENU); BOOL WINAPI IsRectEmpty(LPCRECT); @@ -3313,6 +3356,7 @@ void WINAPI PostQuitMessage(int); BOOL WINAPI PostThreadMessageA(DWORD,UINT,WPARAM,LPARAM); BOOL WINAPI PostThreadMessageW(DWORD,UINT,WPARAM,LPARAM); BOOL WINAPI PtInRect(LPCRECT,POINT); +HWND WINAPI RealChildWindowFromPoint(HWND,POINT); BOOL WINAPI RedrawWindow(HWND,LPCRECT,HRGN,UINT); ATOM WINAPI RegisterClassA(CONST WNDCLASSA*); ATOM WINAPI RegisterClassW(CONST WNDCLASSW*); @@ -3373,6 +3417,9 @@ BOOL WINAPI SetMenuItemInfoW( HMENU,UINT,BOOL,LPCMENUITEMINFOW); LPARAM WINAPI SetMessageExtraInfo(LPARAM); BOOL WINAPI SetMessageQueue(int); HWND WINAPI SetParent(HWND,HWND); +#if (_WIN32_WINNT >= 0x0500) +BOOL WINAPI SetProcessDefaultLayout(DWORD); +#endif /* (_WIN32_WINNT >= 0x0500) */ BOOL WINAPI SetProcessWindowStation(HWINSTA); BOOL WINAPI SetPropA(HWND,LPCSTR,HANDLE); BOOL WINAPI SetPropW(HWND,LPCWSTR,HANDLE); @@ -3417,6 +3464,9 @@ BOOL WINAPI ShowWindowAsync(HWND,int); BOOL WINAPI SubtractRect(LPRECT,LPCRECT,LPCRECT); BOOL WINAPI SwapMouseButton(BOOL); BOOL WINAPI SwitchDesktop(HDESK); +#if(_WIN32_WINNT >= 0x0500) +VOID WINAPI SwitchToThisWindow(HWND,BOOL); +#endif /* (_WIN32_WINNT >= 0x0500) */ BOOL WINAPI SystemParametersInfoA(UINT,UINT,PVOID,UINT); BOOL WINAPI SystemParametersInfoW(UINT,UINT,PVOID,UINT); LONG WINAPI TabbedTextOutA(HDC,int,int,LPCSTR,int,int,LPINT,int); @@ -3494,6 +3544,8 @@ typedef MDICREATESTRUCTW MDICREATESTRUCT,*LPMDICREATESTRUCT; typedef MULTIKEYHELPW MULTIKEYHELP,*PMULTIKEYHELP,*LPMULTIKEYHELP; typedef MONITORINFOEXW MONITORINFOEX, *LPMONITORINFOEX; #define AppendMenu AppendMenuW +#define BroadcastSystemMessage BroadcastSystemMessageW +#define BroadcastSystemMessageEx BroadcastSystemMessageExW #define CallWindowProc CallWindowProcW #define ChangeMenu ChangeMenuW #define CharLower CharLowerW @@ -3627,6 +3679,7 @@ typedef NONCLIENTMETRICSW NONCLIENTMETRICS,*LPNONCLIENTMETRICS; #define ChangeDisplaySettingsEx ChangeDisplaySettingsExW #define CreateDesktop CreateDesktopW #define EnumDisplaySettings EnumDisplaySettingsW +#define EnumDisplaySettingsEx EnumDisplaySettingsExW #define EnumDisplayDevices EnumDisplayDevicesW #endif /* NOGDI */ #else /* UNICODE */ @@ -3652,6 +3705,8 @@ typedef MDICREATESTRUCTA MDICREATESTRUCT,*LPMDICREATESTRUCT; typedef MULTIKEYHELPA MULTIKEYHELP,*PMULTIKEYHELP,*LPMULTIKEYHELP; typedef MONITORINFOEXA MONITORINFOEX, *LPMONITORINFOEX; #define AppendMenu AppendMenuA +#define BroadcastSystemMessage BroadcastSystemMessageA +#define BroadcastSystemMessageEx BroadcastSystemMessageExA #define CallWindowProc CallWindowProcA #define ChangeMenu ChangeMenuA #define CharLower CharLowerA @@ -3785,6 +3840,7 @@ typedef NONCLIENTMETRICSA NONCLIENTMETRICS,*LPNONCLIENTMETRICS; #define ChangeDisplaySettingsEx ChangeDisplaySettingsExA #define CreateDesktop CreateDesktopA #define EnumDisplaySettings EnumDisplaySettingsA +#define EnumDisplaySettingsEx EnumDisplaySettingsExA #define EnumDisplayDevices EnumDisplayDevicesA #endif /* NOGDI */ #endif /* UNICODE */ diff --git a/winsup/w32api/lib/user32.def b/winsup/w32api/lib/user32.def index 0e1cad44b..7a350824e 100644 --- a/winsup/w32api/lib/user32.def +++ b/winsup/w32api/lib/user32.def @@ -14,6 +14,10 @@ BeginDeferWindowPos@4 BeginPaint@8 BringWindowToTop@4 BroadcastSystemMessage@20 +BroadcastSystemMessageA@20 +BroadcastSystemMessageExA@24 +BroadcastSystemMessageExW@24 +BroadcastSystemMessageW@20 CalcChildScroll@8 CallMsgFilter@8 CallMsgFilterA@8 @@ -188,6 +192,8 @@ EnumDisplayDevicesA@16 EnumDisplayDevicesW@16 EnumDisplayMonitors@16 EnumDisplaySettingsA@12 +EnumDisplaySettingsExA@16 +EnumDisplaySettingsExW@16 EnumDisplaySettingsW@12 EnumPropsA@8 EnumPropsExA@12 @@ -206,6 +212,7 @@ FindWindowExA@16 FindWindowExW@16 FindWindowW@8 FlashWindow@8 +FlashWindowEx@4 FrameRect@12 FreeDDElParam@8 GetAltTabInfo@20 @@ -293,6 +300,7 @@ GetNextDlgTabItem@12 GetOpenClipboardWindow@0 GetParent@4 GetPriorityClipboardFormat@8 +GetProcessDefaultLayout@4 GetProcessWindowStation@0 GetPropA@8 GetPropW@8 @@ -365,6 +373,8 @@ IsDialogMessage@8 IsDialogMessageA@8 IsDialogMessageW@8 IsDlgButtonChecked@8 +IsGUIThread@4 +IsHungAppWindow@4 IsIconic@4 IsMenu@4 IsRectEmpty@4 @@ -442,6 +452,7 @@ PostQuitMessage@4 PostThreadMessageA@16 PostThreadMessageW@16 PtInRect@12 +RealChildWindowFromPoint@12 RedrawWindow@16 RegisterClassA@4 RegisterClassExA@4 @@ -508,6 +519,7 @@ SetMenuItemInfoW@16 SetMessageExtraInfo@4 SetMessageQueue@4 SetParent@8 +SetProcessDefaultLayout@4 SetProcessWindowStation@4 SetPropA@12 SetPropW@12 @@ -549,6 +561,7 @@ ShowWindowAsync@8 SubtractRect@12 SwapMouseButton@4 SwitchDesktop@4 +SwitchToThisWindow@8 SystemParametersInfoA@16 SystemParametersInfoW@16 TabbedTextOutA@32