C++ Utilities
4.12.0
Useful C++ classes and routines such as argument parser, IO and conversion utilities
io
ansiescapecodes.cpp
Go to the documentation of this file.
1
#include "
./ansiescapecodes.h
"
2
6
namespace
EscapeCodes
{
7
20
bool
enabled
=
21
#ifdef CPP_UTILITIES_ESCAPE_CODES_ENABLED_BY_DEFAULT
22
true
23
#else
24
false
25
#endif
26
;
27
31
std::ostream &
operator<<
(std::ostream &stream,
Phrases
phrase)
32
{
33
switch
(phrase) {
34
case
Phrases::Error
:
35
setStyle
(stream,
Color::Red
,
ColorContext::Foreground
,
TextAttribute::Bold
);
36
stream <<
"Error: "
;
37
setStyle
(stream,
TextAttribute::Reset
);
38
setStyle
(stream,
TextAttribute::Bold
);
39
break
;
40
case
Phrases::Warning
:
41
setStyle
(stream,
Color::Yellow
,
ColorContext::Foreground
,
TextAttribute::Bold
);
42
stream <<
"Warning: "
;
43
setStyle
(stream,
TextAttribute::Reset
);
44
setStyle
(stream,
TextAttribute::Bold
);
45
break
;
46
case
Phrases::End
:
47
setStyle
(stream,
TextAttribute::Reset
);
48
stream <<
'\n'
;
49
break
;
50
case
Phrases::PlainMessage
:
51
stream <<
" "
;
52
setStyle
(stream,
TextAttribute::Reset
);
53
setStyle
(stream,
TextAttribute::Bold
);
54
break
;
55
case
Phrases::SuccessMessage
:
56
setStyle
(stream,
Color::Green
,
ColorContext::Foreground
,
TextAttribute::Bold
);
57
stream <<
"==> "
;
58
setStyle
(stream,
TextAttribute::Reset
);
59
setStyle
(stream,
TextAttribute::Bold
);
60
break
;
61
case
Phrases::SubMessage
:
62
setStyle
(stream,
Color::Green
,
ColorContext::Foreground
,
TextAttribute::Bold
);
63
stream <<
" -> "
;
64
setStyle
(stream,
TextAttribute::Reset
);
65
setStyle
(stream,
TextAttribute::Bold
);
66
break
;
67
case
Phrases::ErrorMessage
:
68
setStyle
(stream,
Color::Green
,
ColorContext::Foreground
,
TextAttribute::Bold
);
69
stream <<
"==> ERROR: "
;
70
setStyle
(stream,
TextAttribute::Reset
);
71
setStyle
(stream,
TextAttribute::Bold
);
72
break
;
73
case
Phrases::WarningMessage
:
74
setStyle
(stream,
Color::Green
,
ColorContext::Foreground
,
TextAttribute::Bold
);
75
stream <<
"==> WARNING: "
;
76
setStyle
(stream,
TextAttribute::Reset
);
77
setStyle
(stream,
TextAttribute::Bold
);
78
break
;
79
case
Phrases::EndFlush
:
80
setStyle
(stream,
TextAttribute::Reset
);
81
stream << std::endl;
82
break
;
83
case
Phrases::Info
:
84
setStyle
(stream,
Color::Blue
,
ColorContext::Foreground
,
TextAttribute::Bold
);
85
stream <<
"Info: "
;
86
setStyle
(stream,
TextAttribute::Reset
);
87
setStyle
(stream,
TextAttribute::Bold
);
88
break
;
89
}
90
return
stream;
91
}
92
93
}
// namespace EscapeCodes
EscapeCodes
Encapsulates functions for formatted terminal output using ANSI escape codes.
Definition:
ansiescapecodes.h:9
EscapeCodes::Phrases
Phrases
The Phrases enum contains standard phrases which can be printed to any std::ostream.
Definition:
ansiescapecodes.h:125
ansiescapecodes.h
EscapeCodes::setStyle
void setStyle(std::ostream &stream, TextAttribute displayAttribute=TextAttribute::Reset)
Definition:
ansiescapecodes.h:30
EscapeCodes::Phrases::EndFlush
EscapeCodes::TextAttribute::Reset
EscapeCodes::Phrases::Info
EscapeCodes::Phrases::Error
EscapeCodes::Phrases::SuccessMessage
EscapeCodes::Color::Blue
EscapeCodes::enabled
CPP_UTILITIES_EXPORT bool enabled
Controls whether the functions inside the EscapeCodes namespace actually make use of escape codes...
Definition:
ansiescapecodes.cpp:20
EscapeCodes::Phrases::ErrorMessage
EscapeCodes::Phrases::End
EscapeCodes::Color::Yellow
EscapeCodes::ColorContext::Foreground
EscapeCodes::Color::Red
EscapeCodes::Phrases::Warning
EscapeCodes::TextAttribute::Bold
EscapeCodes::Phrases::PlainMessage
EscapeCodes::Phrases::SubMessage
EscapeCodes::Phrases::WarningMessage
EscapeCodes::Color::Green
EscapeCodes::operator<<
std::ostream & operator<<(std::ostream &stream, TextAttribute displayAttribute)
Definition:
ansiescapecodes.h:103
Generated on Sat Jan 20 2018 20:41:31 for C++ Utilities by
1.8.14