:pserver:cvsanon@mok.lvcm.com:/CVS/ReactOS reactos
[reactos.git] / include / ntos / console.h
1 /*
2  * COPYRIGHT:    See COPYING in the top level directory
3  * PROJECT:      ReactOS kernel
4  * FILE:         include/console.h
5  * PURPOSE:      Console declarations used by all the parts of the 
6  *               system
7  * PROGRAMMER:   David Welch <welch@cwcom.net>
8  * UPDATE HISTORY: 
9  *               27/06/00: Created
10  */
11
12
13 #ifndef __INCLUDE_CONSOLE_H
14 #define __INCLUDE_CONSOLE_H
15
16 /* GetConsoleMode */
17 #define ENABLE_LINE_INPUT         (0x02)
18 #define ENABLE_ECHO_INPUT         (0x04)
19 #define ENABLE_PROCESSED_INPUT    (0x01)
20 #define ENABLE_WINDOW_INPUT       (0x08)
21 #define ENABLE_MOUSE_INPUT        (0x0f)
22 #define CONSOLE_INPUT_MODE_VALID  (0x0f)
23 #define ENABLE_PROCESSED_OUTPUT   (0x01)
24 #define ENABLE_WRAP_AT_EOL_OUTPUT (0x02)
25 #define CONSOLE_OUTPUT_MODE_VALID (0x03)
26
27 typedef struct _CONSOLE_SCREEN_BUFFER_INFO {
28   COORD      dwSize;
29   COORD      dwCursorPosition;
30   WORD       wAttributes;
31   SMALL_RECT srWindow;
32   COORD      dwMaximumWindowSize;
33 } CONSOLE_SCREEN_BUFFER_INFO, *PCONSOLE_SCREEN_BUFFER_INFO ;
34
35 typedef struct _CONSOLE_CURSOR_INFO {
36   DWORD  dwSize;
37   BOOL   bVisible;
38 } CONSOLE_CURSOR_INFO, *PCONSOLE_CURSOR_INFO;
39
40 typedef struct _CONSOLE_FONT_INFO {
41   DWORD nFont;
42   COORD dwFontSize;
43 } CONSOLE_FONT_INFO, *PCONSOLE_FONT_INFO;
44
45 typedef struct _CONSOLE_SELECTION_INFO {
46   DWORD dwFlags;
47   COORD dwSelectionAnchor;
48   SMALL_RECT srSelection;
49 } CONSOLE_SELECTION_INFO, *PCONSOLE_SELECTION_INFO;
50
51 #endif /* __INCLUDE_CONSOLE_H */
52
53
54