Copyright | (c) University of Glasgow 2006 |
---|---|
License | BSD-style (see the file LICENSE) |
Maintainer | Esa Ilari Vuokko <ei@vuokko.info> |
Stability | provisional |
Portability | portable |
Safe Haskell | Trustworthy |
Language | Haskell2010 |
System.Win32.Console
Description
A collection of FFI declarations for interfacing with Win32 Console API
Synopsis
- getConsoleMode :: HANDLE -> IO DWORD
- setConsoleMode :: HANDLE -> DWORD -> IO ()
- eNABLE_ECHO_INPUT :: DWORD
- eNABLE_EXTENDED_FLAGS :: DWORD
- eNABLE_INSERT_MODE :: DWORD
- eNABLE_LINE_INPUT :: DWORD
- eNABLE_MOUSE_INPUT :: DWORD
- eNABLE_PROCESSED_INPUT :: DWORD
- eNABLE_QUICK_EDIT_MODE :: DWORD
- eNABLE_WINDOW_INPUT :: DWORD
- eNABLE_VIRTUAL_TERMINAL_INPUT :: DWORD
- eNABLE_PROCESSED_OUTPUT :: DWORD
- eNABLE_WRAP_AT_EOL_OUTPUT :: DWORD
- eNABLE_VIRTUAL_TERMINAL_PROCESSING :: DWORD
- dISABLE_NEWLINE_AUTO_RETURN :: DWORD
- eNABLE_LVB_GRID_WORLDWIDE :: DWORD
- getConsoleCP :: IO UINT
- setConsoleCP :: UINT -> IO ()
- getConsoleOutputCP :: IO UINT
- setConsoleOutputCP :: UINT -> IO ()
- type CtrlEvent = DWORD
- cTRL_C_EVENT :: CtrlEvent
- cTRL_BREAK_EVENT :: CtrlEvent
- generateConsoleCtrlEvent :: CtrlEvent -> DWORD -> IO ()
- commandLineToArgv :: String -> IO [String]
- getCommandLineW :: IO LPWSTR
- getArgs :: IO [String]
- data CONSOLE_SCREEN_BUFFER_INFO = CONSOLE_SCREEN_BUFFER_INFO {
- dwSize :: COORD
- dwCursorPosition :: COORD
- wAttributes :: WORD
- srWindow :: SMALL_RECT
- dwMaximumWindowSize :: COORD
- data CONSOLE_SCREEN_BUFFER_INFOEX = CONSOLE_SCREEN_BUFFER_INFOEX {
- dwSizeEx :: COORD
- dwCursorPositionEx :: COORD
- wAttributesEx :: WORD
- srWindowEx :: SMALL_RECT
- dwMaximumWindowSizeEx :: COORD
- wPopupAttributes :: WORD
- bFullscreenSupported :: BOOL
- colorTable :: [COLORREF]
- data COORD = COORD {}
- data SMALL_RECT = SMALL_RECT {}
- type COLORREF = Word32
- getConsoleScreenBufferInfo :: HANDLE -> IO CONSOLE_SCREEN_BUFFER_INFO
- getCurrentConsoleScreenBufferInfo :: IO CONSOLE_SCREEN_BUFFER_INFO
- getConsoleScreenBufferInfoEx :: HANDLE -> IO CONSOLE_SCREEN_BUFFER_INFOEX
- getCurrentConsoleScreenBufferInfoEx :: IO CONSOLE_SCREEN_BUFFER_INFOEX
- getEnv :: String -> IO (Maybe String)
- getEnvironment :: IO [(String, String)]
Console mode
getConsoleMode :: HANDLE -> IO DWORD Source #
setConsoleMode :: HANDLE -> DWORD -> IO () Source #
Console code pages
getConsoleCP :: IO UINT Source #
setConsoleCP :: UINT -> IO () Source #
getConsoleOutputCP :: IO UINT Source #
setConsoleOutputCP :: UINT -> IO () Source #
Ctrl events
generateConsoleCtrlEvent :: CtrlEvent -> DWORD -> IO () Source #
Command line
commandLineToArgv :: String -> IO [String] Source #
This function can be used to parse command line arguments and return the split up arguments as elements in a list.
getCommandLineW :: IO LPWSTR Source #
getArgs :: IO [String] Source #
Based on GetCommandLineW
. This behaves slightly different
than getArgs
. See the online documentation:
https://learn.microsoft.com/en-us/windows/win32/api/processenv/nf-processenv-getcommandlinew
Screen buffer
data CONSOLE_SCREEN_BUFFER_INFO Source #
Constructors
Fields
- dwSize :: COORD
- dwCursorPosition :: COORD
- wAttributes :: WORD
- srWindow :: SMALL_RECT
- dwMaximumWindowSize :: COORD
Instances
Instances details
Instance details
Defined in System.Win32.Console.Internal
Methods
(==) :: CONSOLE_SCREEN_BUFFER_INFO -> CONSOLE_SCREEN_BUFFER_INFO -> Bool
(/=) :: CONSOLE_SCREEN_BUFFER_INFO -> CONSOLE_SCREEN_BUFFER_INFO -> Bool
Instance details
Defined in System.Win32.Console.Internal
Methods
showsPrec :: Int -> CONSOLE_SCREEN_BUFFER_INFO -> ShowS
show :: CONSOLE_SCREEN_BUFFER_INFO -> String
showList :: [CONSOLE_SCREEN_BUFFER_INFO] -> ShowS
Instance details
Defined in System.Win32.Console.Internal
Methods
sizeOf :: CONSOLE_SCREEN_BUFFER_INFO -> Int
alignment :: CONSOLE_SCREEN_BUFFER_INFO -> Int
peekElemOff :: Ptr CONSOLE_SCREEN_BUFFER_INFO -> Int -> IO CONSOLE_SCREEN_BUFFER_INFO
pokeElemOff :: Ptr CONSOLE_SCREEN_BUFFER_INFO -> Int -> CONSOLE_SCREEN_BUFFER_INFO -> IO ()
peekByteOff :: Ptr b -> Int -> IO CONSOLE_SCREEN_BUFFER_INFO
pokeByteOff :: Ptr b -> Int -> CONSOLE_SCREEN_BUFFER_INFO -> IO ()
peek :: Ptr CONSOLE_SCREEN_BUFFER_INFO -> IO CONSOLE_SCREEN_BUFFER_INFO
poke :: Ptr CONSOLE_SCREEN_BUFFER_INFO -> CONSOLE_SCREEN_BUFFER_INFO -> IO ()
data CONSOLE_SCREEN_BUFFER_INFOEX Source #
Constructors
Fields
- dwSizeEx :: COORD
- dwCursorPositionEx :: COORD
- wAttributesEx :: WORD
- srWindowEx :: SMALL_RECT
- dwMaximumWindowSizeEx :: COORD
- wPopupAttributes :: WORD
- bFullscreenSupported :: BOOL
- colorTable :: [COLORREF]
Only the first 16
COLORREF
values passed to the Windows Console API. If fewer than 16 values, the remainder are padded with0
when passed to the API.
Instances
Instances details
Instance details
Defined in System.Win32.Console.Internal
Methods
(==) :: CONSOLE_SCREEN_BUFFER_INFOEX -> CONSOLE_SCREEN_BUFFER_INFOEX -> Bool
(/=) :: CONSOLE_SCREEN_BUFFER_INFOEX -> CONSOLE_SCREEN_BUFFER_INFOEX -> Bool
Instance details
Defined in System.Win32.Console.Internal
Methods
showsPrec :: Int -> CONSOLE_SCREEN_BUFFER_INFOEX -> ShowS
show :: CONSOLE_SCREEN_BUFFER_INFOEX -> String
showList :: [CONSOLE_SCREEN_BUFFER_INFOEX] -> ShowS
Instance details
Defined in System.Win32.Console.Internal
Methods
sizeOf :: CONSOLE_SCREEN_BUFFER_INFOEX -> Int
alignment :: CONSOLE_SCREEN_BUFFER_INFOEX -> Int
peekElemOff :: Ptr CONSOLE_SCREEN_BUFFER_INFOEX -> Int -> IO CONSOLE_SCREEN_BUFFER_INFOEX
pokeElemOff :: Ptr CONSOLE_SCREEN_BUFFER_INFOEX -> Int -> CONSOLE_SCREEN_BUFFER_INFOEX -> IO ()
peekByteOff :: Ptr b -> Int -> IO CONSOLE_SCREEN_BUFFER_INFOEX
pokeByteOff :: Ptr b -> Int -> CONSOLE_SCREEN_BUFFER_INFOEX -> IO ()
peek :: Ptr CONSOLE_SCREEN_BUFFER_INFOEX -> IO CONSOLE_SCREEN_BUFFER_INFOEX
poke :: Ptr CONSOLE_SCREEN_BUFFER_INFOEX -> CONSOLE_SCREEN_BUFFER_INFOEX -> IO ()
Instances
Instances details
Instance details
Defined in System.Win32.Console.Internal
Methods
peekElemOff :: Ptr COORD -> Int -> IO COORD
pokeElemOff :: Ptr COORD -> Int -> COORD -> IO ()
peekByteOff :: Ptr b -> Int -> IO COORD
pokeByteOff :: Ptr b -> Int -> COORD -> IO ()
data SMALL_RECT Source #
Instances
Instances details
Instance details
Defined in System.Win32.Console.Internal
Instance details
Defined in System.Win32.Console.Internal
Methods
showsPrec :: Int -> SMALL_RECT -> ShowS
show :: SMALL_RECT -> String
showList :: [SMALL_RECT] -> ShowS
Instance details
Defined in System.Win32.Console.Internal
Methods
sizeOf :: SMALL_RECT -> Int
alignment :: SMALL_RECT -> Int
peekElemOff :: Ptr SMALL_RECT -> Int -> IO SMALL_RECT
pokeElemOff :: Ptr SMALL_RECT -> Int -> SMALL_RECT -> IO ()
peekByteOff :: Ptr b -> Int -> IO SMALL_RECT
pokeByteOff :: Ptr b -> Int -> SMALL_RECT -> IO ()
peek :: Ptr SMALL_RECT -> IO SMALL_RECT
poke :: Ptr SMALL_RECT -> SMALL_RECT -> IO ()
Env
getEnvironment :: IO [(String, String)] Source #