c++/parameter-lister/info/globalcode/terminalCodes/TerminalCodes.h
author František Kučera <franta-hg@frantovo.cz>
Sun, 03 May 2015 14:41:28 +0200
changeset 3 a6b5eb87350b
parent 1 56ae7ed48121
permissions -rw-r--r--
lambda, namespaces
franta-hg@1
     1
#ifndef COLORZ_H
franta-hg@1
     2
#define	COLORZ_H
franta-hg@1
     3
franta-hg@1
     4
#include <ostream>
franta-hg@3
     5
franta-hg@1
     6
namespace info {
franta-hg@3
     7
namespace globalcode {
franta-hg@3
     8
namespace parameterLister {
franta-hg@3
     9
namespace terminalCodes {
franta-hg@1
    10
franta-hg@3
    11
enum Code {
franta-hg@3
    12
	FG_RED = 31,
franta-hg@3
    13
	FG_GREEN = 32,
franta-hg@3
    14
	FG_BLUE = 34,
franta-hg@3
    15
	FG_DEFAULT = 39,
franta-hg@3
    16
	BG_RED = 41,
franta-hg@3
    17
	BG_GREEN = 42,
franta-hg@3
    18
	BG_BLUE = 44,
franta-hg@3
    19
	BG_DEFAULT = 49
franta-hg@3
    20
};
franta-hg@1
    21
franta-hg@3
    22
class Modifier {
franta-hg@3
    23
	Code code;
franta-hg@3
    24
public:
franta-hg@1
    25
franta-hg@3
    26
	Modifier(Code code) : code(code) {
franta-hg@3
    27
	}
franta-hg@1
    28
franta-hg@3
    29
	friend std::ostream&
franta-hg@3
    30
	operator<<(std::ostream& os, const Modifier& mod) {
franta-hg@3
    31
		return os << "\033[" << mod.code << "m";
franta-hg@1
    32
	}
franta-hg@3
    33
};
franta-hg@3
    34
franta-hg@3
    35
}
franta-hg@3
    36
}
franta-hg@3
    37
}
franta-hg@1
    38
}
franta-hg@1
    39
franta-hg@1
    40
#endif	/* COLORZ_H */
franta-hg@1
    41