1 /*
2  * COPYRIGHT:       See COPYING in the top level directory
3  * PROJECT:         ReactOS Console Server DLL
4  * FILE:            win32ss/user/winsrv/consrv/include/settings.h
5  * PURPOSE:         Public Console Settings Management Interface
6  * PROGRAMMERS:     Johannes Anderwald
7  *                  Hermes Belusca-Maito (hermes.belusca@sfr.fr)
8  */
9 
10 #pragma once
11 
12 #include "concfg/settings.h"
13 
14 /* MACROS *********************************************************************/
15 
16 // WARNING! Redefinitions of macros from concfg/settings.h
17 
18 /*
19  * BYTE Foreground = LOBYTE(Attributes) & 0x0F;
20  * BYTE Background = (LOBYTE(Attributes) & 0xF0) >> 4;
21  */
22 #define RGBFromAttrib(Console, Attribute)   ((Console)->Colors[(Attribute) & 0xF])
23 #define TextAttribFromAttrib(Attribute)     ( !((Attribute) & COMMON_LVB_REVERSE_VIDEO) ? (Attribute) & 0xF : ((Attribute) >> 4) & 0xF )
24 #define BkgdAttribFromAttrib(Attribute)     ( !((Attribute) & COMMON_LVB_REVERSE_VIDEO) ? ((Attribute) >> 4) & 0xF : (Attribute) & 0xF )
25 #define MakeAttrib(TextAttrib, BkgdAttrib)  (USHORT)((((BkgdAttrib) & 0xF) << 4) | ((TextAttrib) & 0xF))
26 
27 /* FUNCTIONS ******************************************************************/
28 
29 VOID ConSrvApplyUserSettings(IN PCONSOLE Console,
30                              IN PCONSOLE_STATE_INFO ConsoleInfo);
31 
32 /* EOF */
33