From 784f3d963a4224620fe3306428fd341b646e3e10 Mon Sep 17 00:00:00 2001 From: Martchus Date: Sat, 30 Sep 2017 19:16:43 +0200 Subject: [PATCH] Add 'makepkg'-style messages to Phrases --- io/ansiescapecodes.cpp | 32 ++++++++++++++++++++++++++++++++ io/ansiescapecodes.h | 16 +++++++++++++--- 2 files changed, 45 insertions(+), 3 deletions(-) diff --git a/io/ansiescapecodes.cpp b/io/ansiescapecodes.cpp index 370cd29..6d6c921 100644 --- a/io/ansiescapecodes.cpp +++ b/io/ansiescapecodes.cpp @@ -2,6 +2,9 @@ namespace EscapeCodes { +/*! + * \brief Prints the specified \a phrase. + */ std::ostream &operator<<(std::ostream &stream, Phrases phrase) { switch (phrase) { @@ -21,6 +24,35 @@ std::ostream &operator<<(std::ostream &stream, Phrases phrase) setStyle(stream, TextAttribute::Reset); stream << '\n'; break; + case Phrases::PlainMessage: + stream << " "; + setStyle(stream, TextAttribute::Reset); + setStyle(stream, TextAttribute::Bold); + break; + case Phrases::SuccessMessage: + setStyle(stream, Color::Green, ColorContext::Foreground, TextAttribute::Bold); + stream << "==> "; + setStyle(stream, TextAttribute::Reset); + setStyle(stream, TextAttribute::Bold); + break; + case Phrases::SubMessage: + setStyle(stream, Color::Green, ColorContext::Foreground, TextAttribute::Bold); + stream << " -> "; + setStyle(stream, TextAttribute::Reset); + setStyle(stream, TextAttribute::Bold); + break; + case Phrases::ErrorMessage: + setStyle(stream, Color::Green, ColorContext::Foreground, TextAttribute::Bold); + stream << "==> ERROR: "; + setStyle(stream, TextAttribute::Reset); + setStyle(stream, TextAttribute::Bold); + break; + case Phrases::WarningMessage: + setStyle(stream, Color::Green, ColorContext::Foreground, TextAttribute::Bold); + stream << "==> WARNING: "; + setStyle(stream, TextAttribute::Reset); + setStyle(stream, TextAttribute::Bold); + break; } return stream; } diff --git a/io/ansiescapecodes.h b/io/ansiescapecodes.h index 950beaf..21f474a 100644 --- a/io/ansiescapecodes.h +++ b/io/ansiescapecodes.h @@ -98,10 +98,20 @@ inline std::ostream &operator<<(std::ostream &stream, std::tuple " */ + SubMessage, /**< bold, blue " -> " */ + ErrorMessage, /**< bold, red "==> ERROR: " */ + WarningMessage, /**< bold, yellow "==> WARNING: " */ }; std::ostream &operator<<(std::ostream &stream, Phrases phrase);