Esempio n. 1
0
void AppenderConsole::InitColors(std::string const& str)
{
    if (str.empty())
    {
        _colored = false;
        return;
    }

    int color[MaxLogLevels];

    std::istringstream ss(str);

    for (uint8 i = 0; i < MaxLogLevels; ++i)
    {
        ss >> color[i];

        if (!ss)
            return;

        if (color[i] < 0 || color[i] >= MaxColors)
            return;
    }

    for (uint8 i = 0; i < MaxLogLevels; ++i)
        _colors[i] = ColorTypes(color[i]);

    _colored = true;
}
Esempio n. 2
0
void Log::InitColors(const std::string& str)
{
    if(str.empty())
    {
        m_colored = false;
        return;
    }

    int color[4];

    std::istringstream ss(str);

    for(uint8 i = 0; i < LogLevels; ++i)
    {
        ss >> color[i];

        if(!ss)
            return;

        if(color[i] < 0 || color[i] >= Colors)
            return;
    }

    for(uint8 i = 0; i < LogLevels; ++i)
        m_colors[i] = ColorTypes(color[i]);

    m_colored = true;
}
AppenderConsole::AppenderConsole(uint8 id, std::string const& name, LogLevel level, AppenderFlags flags, std::vector<char const*> extraArgs)
    : Appender(id, name, level, flags), _colored(false)
{
    for (uint8 i = 0; i < NUM_ENABLED_LOG_LEVELS; ++i)
        _colors[i] = ColorTypes(MaxColors);

    if (!extraArgs.empty())
        InitColors(extraArgs[0]);
}
Esempio n. 4
0
AppenderConsole::AppenderConsole(uint8 id, std::string const& name, LogLevel level, AppenderFlags flags, ExtraAppenderArgs extraArgs)
    : Appender(id, name, level, flags), _colored(false)
{
    for (uint8 i = 0; i < MaxLogLevels; ++i)
        _colors[i] = ColorTypes(MaxColors);

    if (!extraArgs.empty())
        InitColors(extraArgs[0]);
}
Esempio n. 5
0
/// Sets color for upcoming output
void Log::SetColor(ColorTypes color)
{
    if (sConsole.IsEnabled())
    {
        fputc(0xFF, stderr);
		#if defined(__PDCURSES__) && !defined(PDC_RGB)
		// BGR mode, convert from RGB then
		int clr = int(color);
		int rgb = (clr & 0x07);
		clr &= ~0x07;
		clr |= (rgb & 0x1) << 2; // red
		clr |= (rgb & 0x2);      // green
		clr |= (rgb & 0x4) >> 2; // blue
		color = ColorTypes(clr);
		#endif
        fputc((char) color, stderr);
        return;
    }
Esempio n. 6
0
void Log::InitColors(const std::string& str)
{
    std::stringstream ss(str);
    
    for (uint8 i = 0; i < MAX_LOG_TYPES; ++i)
    {
        int color;
        ss >> color;

        if (ss.eof() || ss.fail() || ss.bad())
            break;

        if (color < 0 || color >= MAX_COLORS)
            break;
        
        m_colors[i] = ColorTypes (color);
    }
    }
Esempio n. 7
0
AppenderConsole::AppenderConsole(uint8 id, std::string const& name, LogLevel level, AppenderFlags flags):
Appender(id, name, APPENDER_CONSOLE, level, flags), _colored(false)
{
    for (uint8 i = 0; i < MaxLogLevels; ++i)
        _colors[i] = ColorTypes(MaxColors);
}