Diff

Not logged in

Differences From Artifact [a1d2dfcf9ddedace]:

To Artifact [418f11163a21e063]:


4 * Windows API header module * 4 * Windows API header module * 5 * * 5 * * 6 * Translated from MinGW Windows headers * 6 * Translated from MinGW Windows headers * 7 * * 7 * * 8 * Placed into public domain * 8 * Placed into public domain * 9 \***********************************************************************/ 9 \***********************************************************************/ 10 module win32.wincon; 10 module win32.wincon; 11 pragma(lib, "kernel32.lib"); | 11 pragma(lib, "kernel32"); 12 12 13 private import win32.w32api, win32.windef; 13 private import win32.w32api, win32.windef; 14 14 15 // FIXME: clean up Windows version support 15 // FIXME: clean up Windows version support 16 16 17 enum { 17 enum { 18 FOREGROUND_BLUE = 1, 18 FOREGROUND_BLUE = 1, ................................................................................................................................................................................ 21 FOREGROUND_INTENSITY = 8, 21 FOREGROUND_INTENSITY = 8, 22 BACKGROUND_BLUE = 16, 22 BACKGROUND_BLUE = 16, 23 BACKGROUND_GREEN = 32, 23 BACKGROUND_GREEN = 32, 24 BACKGROUND_RED = 64, 24 BACKGROUND_RED = 64, 25 BACKGROUND_INTENSITY = 128 25 BACKGROUND_INTENSITY = 128 26 } 26 } 27 27 28 static if (_WIN32_WINNT >= 0x0501) { | 28 static if (_WIN32_WINNT >= 0x501) { 29 enum { 29 enum { 30 CONSOLE_FULLSCREEN_MODE = 1, 30 CONSOLE_FULLSCREEN_MODE = 1, 31 CONSOLE_WINDOWED_MODE = 0 31 CONSOLE_WINDOWED_MODE = 0 32 } 32 } 33 } 33 } 34 34 35 enum { 35 enum { ................................................................................................................................................................................ 205 BOOL ReadConsoleInputA(HANDLE, PINPUT_RECORD, DWORD, PDWORD); 205 BOOL ReadConsoleInputA(HANDLE, PINPUT_RECORD, DWORD, PDWORD); 206 BOOL ReadConsoleInputW(HANDLE, PINPUT_RECORD, DWORD, PDWORD); 206 BOOL ReadConsoleInputW(HANDLE, PINPUT_RECORD, DWORD, PDWORD); 207 BOOL ReadConsoleOutputAttribute(HANDLE, LPWORD, DWORD, COORD, LPDWORD); 207 BOOL ReadConsoleOutputAttribute(HANDLE, LPWORD, DWORD, COORD, LPDWORD); 208 BOOL ReadConsoleOutputCharacterA(HANDLE, LPSTR, DWORD, COORD, PDWORD); 208 BOOL ReadConsoleOutputCharacterA(HANDLE, LPSTR, DWORD, COORD, PDWORD); 209 BOOL ReadConsoleOutputCharacterW(HANDLE, LPWSTR, DWORD, COORD, PDWORD); 209 BOOL ReadConsoleOutputCharacterW(HANDLE, LPWSTR, DWORD, COORD, PDWORD); 210 BOOL ReadConsoleOutputA(HANDLE, PCHAR_INFO, COORD, COORD, PSMALL_RECT); 210 BOOL ReadConsoleOutputA(HANDLE, PCHAR_INFO, COORD, COORD, PSMALL_RECT); 211 BOOL ReadConsoleOutputW(HANDLE, PCHAR_INFO, COORD, COORD, PSMALL_RECT); 211 BOOL ReadConsoleOutputW(HANDLE, PCHAR_INFO, COORD, COORD, PSMALL_RECT); 212 BOOL ScrollConsoleScreenBufferA(HANDLE, CPtr!(SMALL_RECT), CPtr!(SMALL_RECT), CO | 212 BOOL ScrollConsoleScreenBufferA(HANDLE, const(SMALL_RECT)*, const(SMALL_RECT)*, 213 BOOL ScrollConsoleScreenBufferW(HANDLE, CPtr!(SMALL_RECT), CPtr!(SMALL_RECT), CO | 213 BOOL ScrollConsoleScreenBufferW(HANDLE, const(SMALL_RECT)*, const(SMALL_RECT)*, 214 BOOL SetConsoleActiveScreenBuffer(HANDLE); 214 BOOL SetConsoleActiveScreenBuffer(HANDLE); 215 BOOL SetConsoleCP(UINT); 215 BOOL SetConsoleCP(UINT); 216 BOOL SetConsoleCtrlHandler(PHANDLER_ROUTINE, BOOL); 216 BOOL SetConsoleCtrlHandler(PHANDLER_ROUTINE, BOOL); 217 BOOL SetConsoleCursorInfo(HANDLE, CPtr!(CONSOLE_CURSOR_INFO)); | 217 BOOL SetConsoleCursorInfo(HANDLE, const(CONSOLE_CURSOR_INFO)*); 218 BOOL SetConsoleCursorPosition(HANDLE, COORD); 218 BOOL SetConsoleCursorPosition(HANDLE, COORD); 219 219 220 220 221 static if (_WIN32_WINNT >= 0x0500) { | 221 static if (_WIN32_WINNT >= 0x500) { 222 BOOL GetConsoleDisplayMode(LPDWORD); 222 BOOL GetConsoleDisplayMode(LPDWORD); 223 HWND GetConsoleWindow(); 223 HWND GetConsoleWindow(); 224 } 224 } 225 225 226 static if (_WIN32_WINNT >= 0x0501) { | 226 static if (_WIN32_WINNT >= 0x501) { 227 BOOL AttachConsole(DWORD); 227 BOOL AttachConsole(DWORD); 228 BOOL SetConsoleDisplayMode(HANDLE, DWORD, PCOORD); 228 BOOL SetConsoleDisplayMode(HANDLE, DWORD, PCOORD); 229 const DWORD ATTACH_PARENT_PROCESS = cast(DWORD)-1; 229 const DWORD ATTACH_PARENT_PROCESS = cast(DWORD)-1; 230 } 230 } 231 231 232 BOOL SetConsoleMode(HANDLE, DWORD); 232 BOOL SetConsoleMode(HANDLE, DWORD); 233 BOOL SetConsoleOutputCP(UINT); 233 BOOL SetConsoleOutputCP(UINT); 234 BOOL SetConsoleScreenBufferSize(HANDLE, COORD); 234 BOOL SetConsoleScreenBufferSize(HANDLE, COORD); 235 BOOL SetConsoleTextAttribute(HANDLE, WORD); 235 BOOL SetConsoleTextAttribute(HANDLE, WORD); 236 BOOL SetConsoleTitleA(LPCSTR); 236 BOOL SetConsoleTitleA(LPCSTR); 237 BOOL SetConsoleTitleW(LPCWSTR); 237 BOOL SetConsoleTitleW(LPCWSTR); 238 BOOL SetConsoleWindowInfo(HANDLE, BOOL, CPtr!(SMALL_RECT)); | 238 BOOL SetConsoleWindowInfo(HANDLE, BOOL, const(SMALL_RECT)*); 239 BOOL WriteConsoleA(HANDLE, PCVOID, DWORD, PDWORD, PVOID); 239 BOOL WriteConsoleA(HANDLE, PCVOID, DWORD, PDWORD, PVOID); 240 BOOL WriteConsoleW(HANDLE, PCVOID, DWORD, PDWORD, PVOID); 240 BOOL WriteConsoleW(HANDLE, PCVOID, DWORD, PDWORD, PVOID); 241 BOOL WriteConsoleInputA(HANDLE, CPtr!(INPUT_RECORD), DWORD, PDWORD); | 241 BOOL WriteConsoleInputA(HANDLE, const(INPUT_RECORD)*, DWORD, PDWORD); 242 BOOL WriteConsoleInputW(HANDLE, CPtr!(INPUT_RECORD), DWORD, PDWORD); | 242 BOOL WriteConsoleInputW(HANDLE, const(INPUT_RECORD)*, DWORD, PDWORD); 243 BOOL WriteConsoleOutputA(HANDLE, CPtr!(CHAR_INFO), COORD, COORD, PSMALL_RECT); | 243 BOOL WriteConsoleOutputA(HANDLE, const(CHAR_INFO)*, COORD, COORD, PSMALL_RECT); 244 BOOL WriteConsoleOutputW(HANDLE, CPtr!(CHAR_INFO), COORD, COORD, PSMALL_RECT); | 244 BOOL WriteConsoleOutputW(HANDLE, const(CHAR_INFO)*, COORD, COORD, PSMALL_RECT); 245 BOOL WriteConsoleOutputAttribute(HANDLE, CPtr!(WORD), DWORD, COORD, PDWORD); | 245 BOOL WriteConsoleOutputAttribute(HANDLE, const(WORD)*, DWORD, COORD, PDWORD); 246 BOOL WriteConsoleOutputCharacterA(HANDLE, LPCSTR, DWORD, COORD, PDWORD); 246 BOOL WriteConsoleOutputCharacterA(HANDLE, LPCSTR, DWORD, COORD, PDWORD); 247 BOOL WriteConsoleOutputCharacterW(HANDLE, LPCWSTR, DWORD, COORD, PDWORD); 247 BOOL WriteConsoleOutputCharacterW(HANDLE, LPCWSTR, DWORD, COORD, PDWORD); 248 248 249 version (Unicode) { 249 version (Unicode) { 250 alias FillConsoleOutputCharacterW FillConsoleOutputCharacter; 250 alias FillConsoleOutputCharacterW FillConsoleOutputCharacter; 251 alias GetConsoleTitleW GetConsoleTitle; 251 alias GetConsoleTitleW GetConsoleTitle; 252 alias PeekConsoleInputW PeekConsoleInput; 252 alias PeekConsoleInputW PeekConsoleInput;