making tiny not fuck other libs
This commit is contained in:
parent
e4887c7fa6
commit
2707a41755
1 changed files with 70 additions and 86 deletions
156
inc/term.h
156
inc/term.h
|
|
@ -2,123 +2,107 @@
|
||||||
#ifndef TINYTERM_H
|
#ifndef TINYTERM_H
|
||||||
#define TINYTERM_H
|
#define TINYTERM_H
|
||||||
|
|
||||||
|
|
||||||
#include <cstdio>
|
#include <cstdio>
|
||||||
#include <cstring>
|
#include <cstring>
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
#include <string>
|
#include <string>
|
||||||
|
|
||||||
namespace tiny {
|
namespace tiny {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
struct ErrorLevel {
|
struct ErrorLevel {
|
||||||
int value;
|
int value;
|
||||||
ErrorLevel(int var){
|
ErrorLevel(int var){
|
||||||
|
this->value=var;
|
||||||
this->value=var;
|
}
|
||||||
}
|
void setvalue(int var){
|
||||||
void setvalue(int var){
|
this->value=var;
|
||||||
this->value=var;
|
}
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
/*
|
|
||||||
-1: none
|
|
||||||
0: error
|
|
||||||
1: success
|
|
||||||
2: warning
|
|
||||||
3: message
|
|
||||||
4: echo
|
|
||||||
|
|
||||||
ex (i recommend using on main.cpp):
|
|
||||||
tiny::ErrorLevel tiny::level={1};
|
|
||||||
*/
|
|
||||||
|
|
||||||
extern tiny::ErrorLevel level;
|
extern tiny::ErrorLevel level;
|
||||||
|
|
||||||
#define WHITE "\033[0m" /* White */
|
inline const char* WHITE = "\033[0m";
|
||||||
#define BLACK "\033[30m" /* Black */
|
inline const char* BLACK = "\033[30m";
|
||||||
#define RED "\033[31m" /* Red */
|
inline const char* RED = "\033[31m";
|
||||||
#define GREEN "\033[32m" /* Green */
|
inline const char* GREEN = "\033[32m";
|
||||||
#define YELLOW "\033[33m" /* Yellow */
|
inline const char* YELLOW = "\033[33m";
|
||||||
#define BLUE "\033[34m" /* Blue */
|
inline const char* BLUE = "\033[34m";
|
||||||
#define MAGENTA "\033[35m" /* Magenta */
|
inline const char* MAGENTA = "\033[35m";
|
||||||
#define CYAN "\033[36m" /* Cyan */
|
inline const char* CYAN = "\033[36m";
|
||||||
#define WHITE "\033[37m" /* White */
|
inline const char* BGRED = "\033[41m";
|
||||||
#define BGRED "\033[41m" /* Red */
|
inline const char* BGBLACK = "\033[40m";
|
||||||
#define BOLDBLACK "\033[1m\033[30m" /* Bold Black */
|
inline const char* BGGREEN = "\033[42m";
|
||||||
#define BOLDRED "\033[1m\033[31m" /* Bold Red */
|
inline const char* BGYELLOW = "\033[43m";
|
||||||
#define BOLDGREEN "\033[1m\033[32m" /* Bold Green */
|
inline const char* BGBLUE = "\033[44m";
|
||||||
#define BOLDYELLOW "\033[1m\033[33m" /* Bold Yellow */
|
inline const char* BGMAGENTA ="\033[45m";
|
||||||
#define BOLDBLUE "\033[1m\033[34m" /* Bold Blue */
|
inline const char* BGCYAN = "\033[46m";
|
||||||
#define BOLDMAGENTA "\033[1m\033[35m" /* Bold Magenta */
|
inline const char* BGWHITE = "\033[47m";
|
||||||
#define BOLDCYAN "\033[1m\033[36m" /* Bold Cyan */
|
inline const char* BOLDBLACK = "\033[1m\033[30m";
|
||||||
#define BOLDWHITE "\033[1m\033[37m" /* Bold White */
|
inline const char* BOLDRED = "\033[1m\033[31m";
|
||||||
|
inline const char* BOLDGREEN = "\033[1m\033[32m";
|
||||||
|
inline const char* BOLDYELLOW = "\033[1m\033[33m";
|
||||||
|
inline const char* BOLDBLUE = "\033[1m\033[34m";
|
||||||
|
inline const char* BOLDMAGENTA = "\033[1m\033[35m";
|
||||||
|
inline const char* BOLDCYAN = "\033[1m\033[36m";
|
||||||
|
inline const char* BOLDWHITE = "\033[1m\033[37m";
|
||||||
|
|
||||||
#define ending \
|
#define ending \
|
||||||
mixer.append(info); mixer.append("\033[0m\n");\
|
mixer.append(info); mixer.append("\033[0m\n");\
|
||||||
const char * finalinfo=mixer.c_str();\
|
const char * finalinfo=mixer.c_str();\
|
||||||
va_start (arg, finalinfo);\
|
va_start (arg, finalinfo);\
|
||||||
vfprintf (stdout, finalinfo, arg);\
|
vfprintf (stdout, finalinfo, arg);\
|
||||||
va_end (arg);
|
va_end (arg);
|
||||||
|
|
||||||
inline void echo(char * info,...){
|
inline void echo(char * info,...){
|
||||||
if (level.value==4)
|
if (level.value==4)
|
||||||
{
|
{
|
||||||
va_list arg;
|
va_list arg;
|
||||||
std::string mixer=info;
|
std::string mixer=info;
|
||||||
mixer.append("\n");
|
mixer.append("\n");
|
||||||
const char * finalinfo=mixer.c_str();
|
const char * finalinfo=mixer.c_str();
|
||||||
va_start (arg, finalinfo);
|
va_start (arg, finalinfo);
|
||||||
vfprintf (stdout, finalinfo, arg);
|
vfprintf (stdout, finalinfo, arg);
|
||||||
va_end (arg);}
|
va_end (arg);}
|
||||||
}
|
}
|
||||||
inline void warning( char * info,...){
|
inline void warning( char * info,...){
|
||||||
if (level.value>=1)
|
if (level.value>=1)
|
||||||
{
|
{
|
||||||
va_list arg;
|
va_list arg;
|
||||||
std::string mixer=YELLOW;ending
|
std::string mixer=YELLOW;ending
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
inline void fatal( char * info,...){
|
inline void fatal( char * info,...){
|
||||||
va_list arg;
|
va_list arg;
|
||||||
std::string mixer=BOLDWHITE+std::string(BGRED);ending
|
std::string mixer=BOLDWHITE+std::string(BGRED);ending
|
||||||
}
|
}
|
||||||
inline void error( char * info,...){
|
inline void error( char * info,...){
|
||||||
if (level.value>=0)
|
if (level.value>=0)
|
||||||
{
|
{
|
||||||
va_list arg;
|
va_list arg;
|
||||||
std::string mixer=BOLDRED;ending
|
std::string mixer=BOLDRED;ending
|
||||||
}}
|
}}
|
||||||
inline void success(char * info , ...){
|
inline void success(char * info , ...){
|
||||||
if (level.value>=2)
|
if (level.value>=2)
|
||||||
{
|
{
|
||||||
va_list arg;
|
va_list arg;
|
||||||
std::string mixer=GREEN;ending}
|
std::string mixer=GREEN;ending}
|
||||||
}
|
}
|
||||||
inline void message(char * info , ...){
|
inline void message(char * info , ...){
|
||||||
if (level.value>=3)
|
if (level.value>=3)
|
||||||
{
|
{
|
||||||
va_list arg;
|
va_list arg;
|
||||||
std::string mixer=BOLDWHITE;ending}
|
std::string mixer=BOLDWHITE;ending}
|
||||||
}
|
}
|
||||||
inline void startup(char* game,char*version){
|
inline void startup(char* game,char*version){
|
||||||
int lv=level.value;level.value=6;
|
int lv=level.value;level.value=6;
|
||||||
echo("%s %s",game,version);
|
echo("%s %s",game,version);
|
||||||
warning("be warned that");
|
warning("be warned that");
|
||||||
error("ERRORS MIGHT OCCUR!!!");
|
error("ERRORS MIGHT OCCUR!!!");
|
||||||
success("but dont worry");
|
success("but dont worry");
|
||||||
message("this is not an error");
|
message("this is not an error");
|
||||||
fatal("I SWEAR");
|
fatal("I SWEAR");
|
||||||
level.value=lv;
|
level.value=lv;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue