| ||||||||
| ||||||||
| Description | ||||||||
| A collection of FFI declarations for interfacing with Win32. | ||||||||
| Documentation | ||||||||
| type ClassName = LPCTSTR | ||||||||
| mkClassName :: String -> ClassName | ||||||||
| type ClassStyle = UINT | ||||||||
| cS_VREDRAW :: ClassStyle | ||||||||
| cS_HREDRAW :: ClassStyle | ||||||||
| cS_OWNDC :: ClassStyle | ||||||||
| cS_CLASSDC :: ClassStyle | ||||||||
| cS_PARENTDC :: ClassStyle | ||||||||
| cS_SAVEBITS :: ClassStyle | ||||||||
| cS_DBLCLKS :: ClassStyle | ||||||||
| cS_BYTEALIGNCLIENT :: ClassStyle | ||||||||
| cS_BYTEALIGNWINDOW :: ClassStyle | ||||||||
| cS_NOCLOSE :: ClassStyle | ||||||||
| cS_GLOBALCLASS :: ClassStyle | ||||||||
| type WNDCLASS = (ClassStyle, HINSTANCE, Maybe HICON, Maybe HCURSOR, Maybe HBRUSH, Maybe LPCTSTR, ClassName) | ||||||||
| withWNDCLASS :: WNDCLASS -> (Ptr WNDCLASS -> IO a) -> IO a | ||||||||
| genericWndProc_p :: FunPtr WindowClosure | ||||||||
| registerClass :: WNDCLASS -> IO (Maybe ATOM) | ||||||||
| c_RegisterClass :: Ptr WNDCLASS -> IO ATOM | ||||||||
| unregisterClass :: ClassName -> HINSTANCE -> IO () | ||||||||
| type WindowStyle = DWORD | ||||||||
| wS_OVERLAPPED :: WindowStyle | ||||||||
| wS_POPUP :: WindowStyle | ||||||||
| wS_CHILD :: WindowStyle | ||||||||
| wS_CLIPSIBLINGS :: WindowStyle | ||||||||
| wS_CLIPCHILDREN :: WindowStyle | ||||||||
| wS_VISIBLE :: WindowStyle | ||||||||
| wS_DISABLED :: WindowStyle | ||||||||
| wS_MINIMIZE :: WindowStyle | ||||||||
| wS_MAXIMIZE :: WindowStyle | ||||||||
| wS_CAPTION :: WindowStyle | ||||||||
| wS_BORDER :: WindowStyle | ||||||||
| wS_DLGFRAME :: WindowStyle | ||||||||
| wS_VSCROLL :: WindowStyle | ||||||||
| wS_HSCROLL :: WindowStyle | ||||||||
| wS_SYSMENU :: WindowStyle | ||||||||
| wS_THICKFRAME :: WindowStyle | ||||||||
| wS_MINIMIZEBOX :: WindowStyle | ||||||||
| wS_MAXIMIZEBOX :: WindowStyle | ||||||||
| wS_GROUP :: WindowStyle | ||||||||
| wS_TABSTOP :: WindowStyle | ||||||||
| wS_OVERLAPPEDWINDOW :: WindowStyle | ||||||||
| wS_POPUPWINDOW :: WindowStyle | ||||||||
| wS_CHILDWINDOW :: WindowStyle | ||||||||
| wS_TILED :: WindowStyle | ||||||||
| wS_ICONIC :: WindowStyle | ||||||||
| wS_SIZEBOX :: WindowStyle | ||||||||
| wS_TILEDWINDOW :: WindowStyle | ||||||||
| type WindowStyleEx = DWORD | ||||||||
| wS_EX_DLGMODALFRAME :: WindowStyleEx | ||||||||
| wS_EX_NOPARENTNOTIFY :: WindowStyleEx | ||||||||
| wS_EX_TOPMOST :: WindowStyleEx | ||||||||
| wS_EX_ACCEPTFILES :: WindowStyleEx | ||||||||
| wS_EX_TRANSPARENT :: WindowStyleEx | ||||||||
| wS_EX_MDICHILD :: WindowStyleEx | ||||||||
| wS_EX_TOOLWINDOW :: WindowStyleEx | ||||||||
| wS_EX_WINDOWEDGE :: WindowStyleEx | ||||||||
| wS_EX_CLIENTEDGE :: WindowStyleEx | ||||||||
| wS_EX_CONTEXTHELP :: WindowStyleEx | ||||||||
| wS_EX_RIGHT :: WindowStyleEx | ||||||||
| wS_EX_LEFT :: WindowStyleEx | ||||||||
| wS_EX_RTLREADING :: WindowStyleEx | ||||||||
| wS_EX_LTRREADING :: WindowStyleEx | ||||||||
| wS_EX_LEFTSCROLLBAR :: WindowStyleEx | ||||||||
| wS_EX_RIGHTSCROLLBAR :: WindowStyleEx | ||||||||
| wS_EX_CONTROLPARENT :: WindowStyleEx | ||||||||
| wS_EX_STATICEDGE :: WindowStyleEx | ||||||||
| wS_EX_APPWINDOW :: WindowStyleEx | ||||||||
| wS_EX_OVERLAPPEDWINDOW :: WindowStyleEx | ||||||||
| wS_EX_PALETTEWINDOW :: WindowStyleEx | ||||||||
| cW_USEDEFAULT :: Pos | ||||||||
| type Pos = Int | ||||||||
| type MbPos = Maybe Pos | ||||||||
| maybePos :: Maybe Pos -> Pos | ||||||||
| type WindowClosure = HWND -> WindowMessage -> WPARAM -> LPARAM -> IO LRESULT | ||||||||
| mkWindowClosure :: WindowClosure -> IO (FunPtr WindowClosure) | ||||||||
| setWindowClosure :: HWND -> WindowClosure -> IO () | ||||||||
| c_SetWindowLong :: HWND -> INT -> LONG -> IO LONG | ||||||||
| createWindow :: ClassName -> String -> WindowStyle -> Maybe Pos -> Maybe Pos -> Maybe Pos -> Maybe Pos -> Maybe HWND -> Maybe HMENU -> HINSTANCE -> WindowClosure -> IO HWND | ||||||||
| createWindowEx :: WindowStyle -> ClassName -> String -> WindowStyle -> Maybe Pos -> Maybe Pos -> Maybe Pos -> Maybe Pos -> Maybe HWND -> Maybe HMENU -> HINSTANCE -> WindowClosure -> IO HWND | ||||||||
| c_CreateWindowEx :: WindowStyle -> ClassName -> LPCTSTR -> WindowStyle -> Pos -> Pos -> Pos -> Pos -> HWND -> HMENU -> HINSTANCE -> LPVOID -> IO HWND | ||||||||
| defWindowProc :: Maybe HWND -> WindowMessage -> WPARAM -> LPARAM -> IO LRESULT | ||||||||
| c_DefWindowProc :: HWND -> WindowMessage -> WPARAM -> LPARAM -> IO LRESULT | ||||||||
| getClientRect :: HWND -> IO RECT | ||||||||
| c_GetClientRect :: HWND -> Ptr RECT -> IO Bool | ||||||||
| getWindowRect :: HWND -> IO RECT | ||||||||
| c_GetWindowRect :: HWND -> Ptr RECT -> IO Bool | ||||||||
| invalidateRect :: Maybe HWND -> Maybe LPRECT -> Bool -> IO () | ||||||||
| c_InvalidateRect :: HWND -> LPRECT -> Bool -> IO Bool | ||||||||
| screenToClient :: HWND -> POINT -> IO POINT | ||||||||
| c_ScreenToClient :: HWND -> Ptr POINT -> IO Bool | ||||||||
| clientToScreen :: HWND -> POINT -> IO POINT | ||||||||
| c_ClientToScreen :: HWND -> Ptr POINT -> IO Bool | ||||||||
| setWindowText :: HWND -> String -> IO () | ||||||||
| c_SetWindowText :: HWND -> LPCTSTR -> IO Bool | ||||||||
| type PAINTSTRUCT = (HDC, Bool, RECT) | ||||||||
| type LPPAINTSTRUCT = Addr | ||||||||
| sizeofPAINTSTRUCT :: DWORD | ||||||||
| allocaPAINTSTRUCT :: (LPPAINTSTRUCT -> IO a) -> IO a | ||||||||
| beginPaint :: HWND -> LPPAINTSTRUCT -> IO HDC | ||||||||
| c_BeginPaint :: HWND -> LPPAINTSTRUCT -> IO HDC | ||||||||
| endPaint :: HWND -> LPPAINTSTRUCT -> IO () | ||||||||
| type ShowWindowControl = DWORD | ||||||||
| sW_HIDE :: ShowWindowControl | ||||||||
| sW_SHOWNORMAL :: ShowWindowControl | ||||||||
| sW_SHOWMINIMIZED :: ShowWindowControl | ||||||||
| sW_SHOWMAXIMIZED :: ShowWindowControl | ||||||||
| sW_MAXIMIZE :: ShowWindowControl | ||||||||
| sW_SHOWNOACTIVATE :: ShowWindowControl | ||||||||
| sW_SHOW :: ShowWindowControl | ||||||||
| sW_MINIMIZE :: ShowWindowControl | ||||||||
| sW_SHOWMINNOACTIVE :: ShowWindowControl | ||||||||
| sW_SHOWNA :: ShowWindowControl | ||||||||
| sW_RESTORE :: ShowWindowControl | ||||||||
| showWindow :: HWND -> ShowWindowControl -> IO Bool | ||||||||
| adjustWindowRect :: RECT -> WindowStyle -> Bool -> IO RECT | ||||||||
| c_AdjustWindowRect :: Ptr RECT -> WindowStyle -> Bool -> IO Bool | ||||||||
| adjustWindowRectEx :: RECT -> WindowStyle -> Bool -> WindowStyleEx -> IO RECT | ||||||||
| c_AdjustWindowRectEx :: Ptr RECT -> WindowStyle -> Bool -> WindowStyleEx -> IO Bool | ||||||||
| anyPopup :: IO Bool | ||||||||
| arrangeIconicWindows :: HWND -> IO () | ||||||||
| c_ArrangeIconicWindows :: HWND -> IO Bool | ||||||||
| beginDeferWindowPos :: Int -> IO HDWP | ||||||||
| c_BeginDeferWindowPos :: Int -> IO HDWP | ||||||||
| bringWindowToTop :: HWND -> IO () | ||||||||
| c_BringWindowToTop :: HWND -> IO Bool | ||||||||
| childWindowFromPoint :: HWND -> POINT -> IO (Maybe HWND) | ||||||||
| childWindowFromPointEx :: HWND -> POINT -> DWORD -> IO (Maybe HWND) | ||||||||
| closeWindow :: HWND -> IO () | ||||||||
| deferWindowPos :: HDWP -> HWND -> HWND -> Int -> Int -> Int -> Int -> SetWindowPosFlags -> IO HDWP | ||||||||
| c_DeferWindowPos :: HDWP -> HWND -> HWND -> Int -> Int -> Int -> Int -> SetWindowPosFlags -> IO HDWP | ||||||||
| destroyWindow :: HWND -> IO () | ||||||||
| c_DestroyWindow :: HWND -> IO Bool | ||||||||
| endDeferWindowPos :: HDWP -> IO () | ||||||||
| c_EndDeferWindowPos :: HDWP -> IO Bool | ||||||||
| findWindow :: String -> String -> IO (Maybe HWND) | ||||||||
| c_FindWindow :: LPCTSTR -> LPCTSTR -> IO HWND | ||||||||
| findWindowEx :: HWND -> HWND -> String -> String -> IO (Maybe HWND) | ||||||||
| c_FindWindowEx :: HWND -> HWND -> LPCTSTR -> LPCTSTR -> IO HWND | ||||||||
| flashWindow :: HWND -> Bool -> IO Bool | ||||||||
| moveWindow :: HWND -> Int -> Int -> Int -> Int -> Bool -> IO () | ||||||||
| c_MoveWindow :: HWND -> Int -> Int -> Int -> Int -> Bool -> IO Bool | ||||||||
| getDesktopWindow :: IO HWND | ||||||||
| getForegroundWindow :: IO HWND | ||||||||
| getParent :: HWND -> IO HWND | ||||||||
| c_GetParent :: HWND -> IO HWND | ||||||||
| getTopWindow :: HWND -> IO HWND | ||||||||
| c_GetTopWindow :: HWND -> IO HWND | ||||||||
| type SetWindowPosFlags = UINT | ||||||||
| sWP_NOSIZE :: SetWindowPosFlags | ||||||||
| sWP_NOMOVE :: SetWindowPosFlags | ||||||||
| sWP_NOZORDER :: SetWindowPosFlags | ||||||||
| sWP_NOREDRAW :: SetWindowPosFlags | ||||||||
| sWP_NOACTIVATE :: SetWindowPosFlags | ||||||||
| sWP_FRAMECHANGED :: SetWindowPosFlags | ||||||||
| sWP_SHOWWINDOW :: SetWindowPosFlags | ||||||||
| sWP_HIDEWINDOW :: SetWindowPosFlags | ||||||||
| sWP_NOCOPYBITS :: SetWindowPosFlags | ||||||||
| sWP_NOOWNERZORDER :: SetWindowPosFlags | ||||||||
| sWP_NOSENDCHANGING :: SetWindowPosFlags | ||||||||
| sWP_DRAWFRAME :: SetWindowPosFlags | ||||||||
| sWP_NOREPOSITION :: SetWindowPosFlags | ||||||||
| type GetDCExFlags = DWORD | ||||||||
| dCX_WINDOW :: GetDCExFlags | ||||||||
| dCX_CACHE :: GetDCExFlags | ||||||||
| dCX_CLIPCHILDREN :: GetDCExFlags | ||||||||
| dCX_CLIPSIBLINGS :: GetDCExFlags | ||||||||
| dCX_PARENTCLIP :: GetDCExFlags | ||||||||
| dCX_EXCLUDERGN :: GetDCExFlags | ||||||||
| dCX_INTERSECTRGN :: GetDCExFlags | ||||||||
| dCX_LOCKWINDOWUPDATE :: GetDCExFlags | ||||||||
| getDCEx :: HWND -> HRGN -> GetDCExFlags -> IO HDC | ||||||||
| c_GetDCEx :: HWND -> PRGN -> GetDCExFlags -> IO HDC | ||||||||
| getDC :: Maybe HWND -> IO HDC | ||||||||
| c_GetDC :: HWND -> IO HDC | ||||||||
| getWindowDC :: Maybe HWND -> IO HDC | ||||||||
| c_GetWindowDC :: HWND -> IO HDC | ||||||||
| releaseDC :: Maybe HWND -> HDC -> IO () | ||||||||
| c_ReleaseDC :: HWND -> HDC -> IO Bool | ||||||||
| getDCOrgEx :: HDC -> IO POINT | ||||||||
| c_GetDCOrgEx :: HDC -> Ptr POINT -> IO Bool | ||||||||
| hideCaret :: HWND -> IO () | ||||||||
| c_HideCaret :: HWND -> IO Bool | ||||||||
| showCaret :: HWND -> IO () | ||||||||
| c_ShowCaret :: HWND -> IO Bool | ||||||||
| createCaret :: HWND -> HBITMAP -> Maybe INT -> Maybe INT -> IO () | ||||||||
| c_CreateCaret :: HWND -> HBITMAP -> INT -> INT -> IO Bool | ||||||||
| destroyCaret :: IO () | ||||||||
| c_DestroyCaret :: IO Bool | ||||||||
| getCaretPos :: IO POINT | ||||||||
| c_GetCaretPos :: Ptr POINT -> IO Bool | ||||||||
| setCaretPos :: POINT -> IO () | ||||||||
| c_SetCaretPos :: LONG -> LONG -> IO Bool | ||||||||
| type LPMSG = Addr | ||||||||
| allocaMessage :: (LPMSG -> IO a) -> IO a | ||||||||
| getMessage :: LPMSG -> Maybe HWND -> IO Bool | ||||||||
| c_GetMessage :: LPMSG -> HWND -> UINT -> UINT -> IO LONG | ||||||||
| peekMessage :: LPMSG -> Maybe HWND -> UINT -> UINT -> UINT -> IO () | ||||||||
| c_PeekMessage :: LPMSG -> HWND -> UINT -> UINT -> UINT -> IO LONG | ||||||||
| translateMessage :: LPMSG -> IO BOOL | ||||||||
| updateWindow :: HWND -> IO () | ||||||||
| c_UpdateWindow :: HWND -> IO Bool | ||||||||
| dispatchMessage :: LPMSG -> IO LONG | ||||||||
| sendMessage :: HWND -> WindowMessage -> WPARAM -> LPARAM -> IO LRESULT | ||||||||
| Produced by Haddock version 0.8 |