Graphics.Win32.Window

Win32-2.5.4.1: A binding to part of the Win32 library

Copyright | (c) Alastair Reid 1997-2003
License | BSD-style (see the file libraries/base/LICENSE)
Maintainer | Esa Ilari Vuokko <ei@vuokko.info>
Stability | provisional
Portability | portable
Safe Haskell | Trustworthy
Language | Haskell98

Graphics.Win32.Window

Description

A collection of FFI declarations for interfacing with Win32.

# Documentation

type ClassName = LPCTSTR Source #

mkClassName :: String -> ClassName Source #

type ClassStyle = UINT Source #

cS_VREDRAW :: ClassStyle Source #

cS_HREDRAW :: ClassStyle Source #

cS_OWNDC :: ClassStyle Source #

cS_CLASSDC :: ClassStyle Source #

cS_PARENTDC :: ClassStyle Source #

cS_SAVEBITS :: ClassStyle Source #

cS_DBLCLKS :: ClassStyle Source #

cS_BYTEALIGNCLIENT :: ClassStyle Source #

cS_BYTEALIGNWINDOW :: ClassStyle Source #

cS_NOCLOSE :: ClassStyle Source #

cS_GLOBALCLASS :: ClassStyle Source #

type WNDCLASS = (ClassStyle, HINSTANCE, Maybe HICON, Maybe HCURSOR, Maybe HBRUSH, Maybe LPCTSTR, ClassName) Source #

withWNDCLASS :: WNDCLASS -> (Ptr WNDCLASS -> IO a) -> IO a Source #

genericWndProc_p :: FunPtr WindowClosure Source #

registerClass :: WNDCLASS -> IO (Maybe ATOM) Source #

c_RegisterClass :: Ptr WNDCLASS -> IO ATOM Source #

unregisterClass :: ClassName -> HINSTANCE -> IO () Source #

type WindowStyle = DWORD Source #

wS_OVERLAPPED :: WindowStyle Source #

wS_POPUP :: WindowStyle Source #

wS_CHILD :: WindowStyle Source #

wS_CLIPSIBLINGS :: WindowStyle Source #

wS_CLIPCHILDREN :: WindowStyle Source #

wS_VISIBLE :: WindowStyle Source #

wS_DISABLED :: WindowStyle Source #

wS_MINIMIZE :: WindowStyle Source #

wS_MAXIMIZE :: WindowStyle Source #

wS_CAPTION :: WindowStyle Source #

wS_BORDER :: WindowStyle Source #

wS_DLGFRAME :: WindowStyle Source #

wS_VSCROLL :: WindowStyle Source #

wS_HSCROLL :: WindowStyle Source #

wS_SYSMENU :: WindowStyle Source #

type WindowStyleEx = DWORD Source #

wS_THICKFRAME :: WindowStyle Source #

wS_MINIMIZEBOX :: WindowStyle Source #

wS_EX_DLGMODALFRAME :: WindowStyleEx Source #

wS_MAXIMIZEBOX :: WindowStyle Source #

wS_EX_NOPARENTNOTIFY :: WindowStyleEx Source #

wS_GROUP :: WindowStyle Source #

wS_EX_TOPMOST :: WindowStyleEx Source #

wS_TABSTOP :: WindowStyle Source #

wS_EX_ACCEPTFILES :: WindowStyleEx Source #

wS_OVERLAPPEDWINDOW :: WindowStyle Source #

wS_EX_TRANSPARENT :: WindowStyleEx Source #

wS_POPUPWINDOW :: WindowStyle Source #

wS_EX_MDICHILD :: WindowStyleEx Source #

wS_CHILDWINDOW :: WindowStyle Source #

wS_EX_TOOLWINDOW :: WindowStyleEx Source #

wS_TILED :: WindowStyle Source #

wS_EX_WINDOWEDGE :: WindowStyleEx Source #

wS_ICONIC :: WindowStyle Source #

wS_EX_CLIENTEDGE :: WindowStyleEx Source #

wS_SIZEBOX :: WindowStyle Source #

wS_EX_CONTEXTHELP :: WindowStyleEx Source #

wS_TILEDWINDOW :: WindowStyle Source #

wS_EX_RIGHT :: WindowStyleEx Source #

wS_EX_LEFT :: WindowStyleEx Source #

wS_EX_RTLREADING :: WindowStyleEx Source #

cW_USEDEFAULT :: Pos Source #

wS_EX_LTRREADING :: WindowStyleEx Source #

wS_EX_LEFTSCROLLBAR :: WindowStyleEx Source #

wS_EX_RIGHTSCROLLBAR :: WindowStyleEx Source #

type Pos = Int Source #

wS_EX_CONTROLPARENT :: WindowStyleEx Source #

type MbPos = Maybe Pos Source #

wS_EX_STATICEDGE :: WindowStyleEx Source #

maybePos :: Maybe Pos -> Pos Source #

wS_EX_APPWINDOW :: WindowStyleEx Source #

wS_EX_OVERLAPPEDWINDOW :: WindowStyleEx Source #

type WindowClosure = HWND -> WindowMessage -> WPARAM -> LPARAM -> IO LRESULT Source #

wS_EX_PALETTEWINDOW :: WindowStyleEx Source #

mkWindowClosure :: WindowClosure -> IO (FunPtr WindowClosure) Source #

setWindowClosure :: HWND -> WindowClosure -> IO () Source #

c_SetWindowLongPtr :: HWND -> INT -> Ptr LONG -> IO (Ptr LONG) Source #

createWindow :: ClassName -> String -> WindowStyle -> Maybe Pos -> Maybe Pos -> Maybe Pos -> Maybe Pos -> Maybe HWND -> Maybe HMENU -> HINSTANCE -> WindowClosure -> IO HWND Source #

createWindowEx :: WindowStyle -> ClassName -> String -> WindowStyle -> Maybe Pos -> Maybe Pos -> Maybe Pos -> Maybe Pos -> Maybe HWND -> Maybe HMENU -> HINSTANCE -> WindowClosure -> IO HWND Source #

c_CreateWindowEx :: WindowStyle -> ClassName -> LPCTSTR -> WindowStyle -> Pos -> Pos -> Pos -> Pos -> HWND -> HMENU -> HINSTANCE -> LPVOID -> IO HWND Source #

defWindowProc :: Maybe HWND -> WindowMessage -> WPARAM -> LPARAM -> IO LRESULT Source #

c_DefWindowProc :: HWND -> WindowMessage -> WPARAM -> LPARAM -> IO LRESULT Source #

getClientRect :: HWND -> IO RECT Source #

c_GetClientRect :: HWND -> Ptr RECT -> IO Bool Source #

getWindowRect :: HWND -> IO RECT Source #

c_GetWindowRect :: HWND -> Ptr RECT -> IO Bool Source #

invalidateRect :: Maybe HWND -> Maybe LPRECT -> Bool -> IO () Source #

c_InvalidateRect :: HWND -> LPRECT -> Bool -> IO Bool Source #

screenToClient :: HWND -> POINT -> IO POINT Source #

c_ScreenToClient :: HWND -> Ptr POINT -> IO Bool Source #

clientToScreen :: HWND -> POINT -> IO POINT Source #

c_ClientToScreen :: HWND -> Ptr POINT -> IO Bool Source #

setWindowText :: HWND -> String -> IO () Source #

c_SetWindowText :: HWND -> LPCTSTR -> IO Bool Source #

type PAINTSTRUCT = (HDC, Bool, RECT) Source #

type LPPAINTSTRUCT = Addr Source #

sizeofPAINTSTRUCT :: DWORD Source #

allocaPAINTSTRUCT :: (LPPAINTSTRUCT -> IO a) -> IO a Source #

beginPaint :: HWND -> LPPAINTSTRUCT -> IO HDC Source #

c_BeginPaint :: HWND -> LPPAINTSTRUCT -> IO HDC Source #

endPaint :: HWND -> LPPAINTSTRUCT -> IO () Source #

type ShowWindowControl = DWORD Source #

sW_HIDE :: ShowWindowControl Source #

sW_SHOWNORMAL :: ShowWindowControl Source #

sW_SHOWMINIMIZED :: ShowWindowControl Source #

sW_SHOWMAXIMIZED :: ShowWindowControl Source #

sW_MAXIMIZE :: ShowWindowControl Source #

sW_SHOWNOACTIVATE :: ShowWindowControl Source #

sW_SHOW :: ShowWindowControl Source #

sW_MINIMIZE :: ShowWindowControl Source #

showWindow :: HWND -> ShowWindowControl -> IO Bool Source #

sW_SHOWMINNOACTIVE :: ShowWindowControl Source #

sW_SHOWNA :: ShowWindowControl Source #

sW_RESTORE :: ShowWindowControl Source #

adjustWindowRect :: RECT -> WindowStyle -> Bool -> IO RECT Source #

c_AdjustWindowRect :: Ptr RECT -> WindowStyle -> Bool -> IO Bool Source #

adjustWindowRectEx :: RECT -> WindowStyle -> Bool -> WindowStyleEx -> IO RECT Source #

c_AdjustWindowRectEx :: Ptr RECT -> WindowStyle -> Bool -> WindowStyleEx -> IO Bool Source #

anyPopup :: IO Bool Source #

arrangeIconicWindows :: HWND -> IO () Source #

c_ArrangeIconicWindows :: HWND -> IO Bool Source #

beginDeferWindowPos :: Int -> IO HDWP Source #

c_BeginDeferWindowPos :: Int -> IO HDWP Source #

bringWindowToTop :: HWND -> IO () Source #

c_BringWindowToTop :: HWND -> IO Bool Source #

childWindowFromPoint :: HWND -> POINT -> IO (Maybe HWND) Source #

childWindowFromPointEx :: HWND -> POINT -> DWORD -> IO (Maybe HWND) Source #

closeWindow :: HWND -> IO () Source #

deferWindowPos :: HDWP -> HWND -> HWND -> Int -> Int -> Int -> Int -> SetWindowPosFlags -> IO HDWP Source #

c_DeferWindowPos :: HDWP -> HWND -> HWND -> Int -> Int -> Int -> Int -> SetWindowPosFlags -> IO HDWP Source #

destroyWindow :: HWND -> IO () Source #

c_DestroyWindow :: HWND -> IO Bool Source #

endDeferWindowPos :: HDWP -> IO () Source #

c_EndDeferWindowPos :: HDWP -> IO Bool Source #

findWindow :: String -> String -> IO (Maybe HWND) Source #

findWindowByName :: String -> IO (Maybe HWND) Source #

c_FindWindow :: LPCTSTR -> LPCTSTR -> IO HWND Source #

findWindowEx :: HWND -> HWND -> String -> String -> IO (Maybe HWND) Source #

c_FindWindowEx :: HWND -> HWND -> LPCTSTR -> LPCTSTR -> IO HWND Source #

flashWindow :: HWND -> Bool -> IO Bool Source #

moveWindow :: HWND -> Int -> Int -> Int -> Int -> Bool -> IO () Source #

c_MoveWindow :: HWND -> Int -> Int -> Int -> Int -> Bool -> IO Bool Source #

getDesktopWindow :: IO HWND Source #

getForegroundWindow :: IO HWND Source #

getParent :: HWND -> IO HWND Source #

c_GetParent :: HWND -> IO HWND Source #

getTopWindow :: HWND -> IO HWND Source #

c_GetTopWindow :: HWND -> IO HWND Source #

type SetWindowPosFlags = UINT Source #

sWP_NOSIZE :: SetWindowPosFlags Source #

sWP_NOMOVE :: SetWindowPosFlags Source #

sWP_NOZORDER :: SetWindowPosFlags Source #

sWP_NOREDRAW :: SetWindowPosFlags Source #

sWP_NOACTIVATE :: SetWindowPosFlags Source #

sWP_FRAMECHANGED :: SetWindowPosFlags Source #

sWP_SHOWWINDOW :: SetWindowPosFlags Source #

sWP_HIDEWINDOW :: SetWindowPosFlags Source #

sWP_NOCOPYBITS :: SetWindowPosFlags Source #

sWP_NOOWNERZORDER :: SetWindowPosFlags Source #

type GetDCExFlags = DWORD Source #

sWP_NOSENDCHANGING :: SetWindowPosFlags Source #

dCX_WINDOW :: GetDCExFlags Source #

sWP_DRAWFRAME :: SetWindowPosFlags Source #

dCX_CACHE :: GetDCExFlags Source #

sWP_NOREPOSITION :: SetWindowPosFlags Source #

dCX_CLIPCHILDREN :: GetDCExFlags Source #

dCX_CLIPSIBLINGS :: GetDCExFlags Source #

dCX_PARENTCLIP :: GetDCExFlags Source #

dCX_EXCLUDERGN :: GetDCExFlags Source #

dCX_INTERSECTRGN :: GetDCExFlags Source #

getDCEx :: HWND -> HRGN -> GetDCExFlags -> IO HDC Source #

dCX_LOCKWINDOWUPDATE :: GetDCExFlags Source #

c_GetDCEx :: HWND -> PRGN -> GetDCExFlags -> IO HDC Source #

getDC :: Maybe HWND -> IO HDC Source #

c_GetDC :: HWND -> IO HDC Source #

getWindowDC :: Maybe HWND -> IO HDC Source #

c_GetWindowDC :: HWND -> IO HDC Source #

releaseDC :: Maybe HWND -> HDC -> IO () Source #

c_ReleaseDC :: HWND -> HDC -> IO Bool Source #

getDCOrgEx :: HDC -> IO POINT Source #

c_GetDCOrgEx :: HDC -> Ptr POINT -> IO Bool Source #

hideCaret :: HWND -> IO () Source #

c_HideCaret :: HWND -> IO Bool Source #

showCaret :: HWND -> IO () Source #

c_ShowCaret :: HWND -> IO Bool Source #

createCaret :: HWND -> HBITMAP -> Maybe INT -> Maybe INT -> IO () Source #

c_CreateCaret :: HWND -> HBITMAP -> INT -> INT -> IO Bool Source #

destroyCaret :: IO () Source #

c_DestroyCaret :: IO Bool Source #

getCaretPos :: IO POINT Source #

c_GetCaretPos :: Ptr POINT -> IO Bool Source #

setCaretPos :: POINT -> IO () Source #

c_SetCaretPos :: LONG -> LONG -> IO Bool Source #

type LPMSG = Addr Source #

allocaMessage :: (LPMSG -> IO a) -> IO a Source #

getMessage :: LPMSG -> Maybe HWND -> IO Bool Source #

c_GetMessage :: LPMSG -> HWND -> UINT -> UINT -> IO LONG Source #

peekMessage :: LPMSG -> Maybe HWND -> UINT -> UINT -> UINT -> IO () Source #

c_PeekMessage :: LPMSG -> HWND -> UINT -> UINT -> UINT -> IO LONG Source #

translateMessage :: LPMSG -> IO BOOL Source #

updateWindow :: HWND -> IO () Source #

c_UpdateWindow :: HWND -> IO Bool Source #

dispatchMessage :: LPMSG -> IO LONG Source #

sendMessage :: HWND -> WindowMessage -> WPARAM -> LPARAM -> IO LRESULT Source #