1 #pragma once 2 3 extern ATOM AtomMessage; 4 extern ATOM AtomWndObj; /* WNDOBJ list */ 5 extern ATOM AtomLayer; 6 extern ATOM AtomFlashWndState; 7 8 #define HAS_DLGFRAME(Style, ExStyle) \ 9 (((ExStyle) & WS_EX_DLGMODALFRAME) || \ 10 (((Style) & WS_DLGFRAME) && (!((Style) & WS_THICKFRAME)))) 11 12 #define HAS_THICKFRAME(Style, ExStyle) \ 13 (((Style) & WS_THICKFRAME) && \ 14 (!(((Style) & (WS_DLGFRAME | WS_BORDER)) == WS_DLGFRAME))) 15 16 #define HAS_THINFRAME(Style, ExStyle) \ 17 (((Style) & WS_BORDER) || (!((Style) & (WS_CHILD | WS_POPUP)))) 18 19 #define HAS_CLIENTFRAME(Style, ExStyle) \ 20 (((ExStyle) & WS_EX_CLIENTEDGE) || (!((Style) & (WS_CHILD | WS_POPUP)))) 21 22 #define HAS_MENU(pWnd,style) ((((style) & (WS_CHILD | WS_POPUP)) != WS_CHILD) && (pWnd->IDMenu) && IntIsMenu(UlongToHandle(pWnd->IDMenu))) 23 24 #define IntIsDesktopWindow(WndObj) \ 25 (WndObj->spwndParent == NULL) 26 27 #define IntIsBroadcastHwnd(hWnd) \ 28 (hWnd == HWND_BROADCAST || hWnd == HWND_TOPMOST) 29 30 31 #define IntWndBelongsToThread(WndObj, W32Thread) \ 32 ((WndObj->head.pti) && (WndObj->head.pti == W32Thread)) 33 34 #define IntGetWndThreadId(WndObj) \ 35 PsGetThreadId(WndObj->head.pti->pEThread) 36 37 #define IntGetWndProcessId(WndObj) \ 38 PsGetProcessId(WndObj->head.pti->ppi->peProcess) 39 40 PWND FASTCALL ValidateHwndNoErr(HWND); 41 BOOL FASTCALL UserUpdateUiState(PWND Wnd, WPARAM wParam); 42 BOOL FASTCALL IntIsWindow(HWND hWnd); 43 HWND* FASTCALL IntWinListChildren(PWND Window); 44 VOID FASTCALL IntGetClientRect (PWND WindowObject, RECTL *Rect); 45 INT FASTCALL IntMapWindowPoints(PWND FromWnd, PWND ToWnd, LPPOINT lpPoints, UINT cPoints); 46 BOOL FASTCALL IntIsChildWindow (PWND Parent, PWND Child); 47 VOID FASTCALL IntUnlinkWindow(PWND Wnd); 48 VOID FASTCALL IntLinkHwnd(PWND Wnd, HWND hWndPrev); 49 PWND FASTCALL IntGetParent(PWND Wnd); 50 VOID FASTCALL IntGetWindowBorderMeasures(PWND WindowObject, UINT *cx, UINT *cy); 51 BOOL FASTCALL IntShowOwnedPopups( PWND owner, BOOL fShow ); 52 LRESULT FASTCALL IntDefWindowProc( PWND Window, UINT Msg, WPARAM wParam, LPARAM lParam, BOOL Ansi); 53 VOID FASTCALL IntNotifyWinEvent(DWORD, PWND, LONG, LONG, DWORD); 54 PWND FASTCALL IntCreateWindow(CREATESTRUCTW* Cs, 55 PLARGE_STRING WindowName, 56 PCLS Class, 57 PWND ParentWindow, 58 PWND OwnerWindow, 59 PVOID acbiBuffer, 60 PDESKTOP pdeskCreated); 61 PWND FASTCALL co_UserCreateWindowEx(CREATESTRUCTW* Cs, 62 PUNICODE_STRING ClassName, 63 PLARGE_STRING WindowName, 64 PVOID acbiBuffer); 65 BOOL FASTCALL IntEnableWindow(HWND,BOOL); 66 BOOL FASTCALL IntIsWindowVisible(PWND); 67 DWORD FASTCALL GetNCHitEx(PWND,POINT); 68 ULONG FASTCALL IntSetStyle(PWND,ULONG,ULONG); 69 PWND FASTCALL VerifyWnd(PWND); 70 PWND FASTCALL IntGetNonChildAncestor(PWND); 71 LONG FASTCALL co_UserSetWindowLong(HWND,DWORD,LONG,BOOL); 72 LONG_PTR FASTCALL co_UserSetWindowLongPtr(HWND, DWORD, LONG_PTR, BOOL); 73 HWND FASTCALL IntGetWindow(HWND,UINT); 74 LRESULT co_UserFreeWindow(PWND,PPROCESSINFO,PTHREADINFO,BOOLEAN); 75 76 /* EOF */ 77