Win32 Libraries (Win32 package)Source codeContentsIndex
Graphics.Win32.Window
Portabilityportable
Stabilityprovisional
MaintainerEsa Ilari Vuokko <ei@vuokko.info>
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