0
0
Fork 0
mirror of https://github.com/matrix-construct/construct synced 2024-11-26 08:42:34 +01:00
construct/include/ircd/color.h
Jason Volk d9a4f06bf6 ircd: Employ namespace scope extensions from c++1z/gnu++14.
This is not a move to c++17. If the compiler happens to have support
for c++17 namespace scope resolution, they have been kind enough to
backport it to gnu++14. This limits our support for really old c++14
compilers, but that was limited anyway. GCC 6.1 and clang 3.6 tested.
2017-09-08 03:47:46 -07:00

56 lines
1.5 KiB
C++

/**
* Copyright (C) 2014 Jason Volk
* Copyright (C) 2014 Svetlana Tkachenko
* Copyright (C) 2016 Charybdis Development Team
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
#define HAVE_IRCD_COLOR_H
namespace ircd::color
{
enum mode
:uint8_t
{
OFF = 0x0f,
BOLD = 0x02,
COLOR = 0x03,
ITALIC = 0x09,
STRIKE = 0x13,
UNDER = 0x15,
UNDER2 = 0x1f,
REVERSE = 0x16,
};
enum class fg;
enum class bg;
}
enum class ircd::color::fg
{
WHITE, BLACK, BLUE, GREEN,
LRED, RED, MAGENTA, ORANGE,
YELLOW, LGREEN, CYAN, LCYAN,
LBLUE, LMAGENTA, GRAY, LGRAY
};
enum class ircd::color::bg
{
LGRAY_BLINK, BLACK, BLUE, GREEN,
RED_BLINK, RED, MAGENTA, ORANGE,
ORANGE_BLINK, GREEN_BLINK, CYAN, CYAN_BLINK,
BLUE_BLINK, MAGENTA_BLINK, BLACK_BLINK, LGRAY,
};