diff --git a/inc/term.h b/inc/term.h index 95405b9..d875de5 100644 --- a/inc/term.h +++ b/inc/term.h @@ -2,123 +2,107 @@ #ifndef TINYTERM_H #define TINYTERM_H - #include #include #include #include namespace tiny { - - struct ErrorLevel { - int value; - ErrorLevel(int var){ - - this->value=var; - } - void setvalue(int var){ - this->value=var; - } + int value; + ErrorLevel(int var){ + this->value=var; + } + void setvalue(int 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; -#define WHITE "\033[0m" /* White */ -#define BLACK "\033[30m" /* Black */ -#define RED "\033[31m" /* Red */ -#define GREEN "\033[32m" /* Green */ -#define YELLOW "\033[33m" /* Yellow */ -#define BLUE "\033[34m" /* Blue */ -#define MAGENTA "\033[35m" /* Magenta */ -#define CYAN "\033[36m" /* Cyan */ -#define WHITE "\033[37m" /* White */ -#define BGRED "\033[41m" /* Red */ -#define BOLDBLACK "\033[1m\033[30m" /* Bold Black */ -#define BOLDRED "\033[1m\033[31m" /* Bold Red */ -#define BOLDGREEN "\033[1m\033[32m" /* Bold Green */ -#define BOLDYELLOW "\033[1m\033[33m" /* Bold Yellow */ -#define BOLDBLUE "\033[1m\033[34m" /* Bold Blue */ -#define BOLDMAGENTA "\033[1m\033[35m" /* Bold Magenta */ -#define BOLDCYAN "\033[1m\033[36m" /* Bold Cyan */ -#define BOLDWHITE "\033[1m\033[37m" /* Bold White */ +inline const char* WHITE = "\033[0m"; +inline const char* BLACK = "\033[30m"; +inline const char* RED = "\033[31m"; +inline const char* GREEN = "\033[32m"; +inline const char* YELLOW = "\033[33m"; +inline const char* BLUE = "\033[34m"; +inline const char* MAGENTA = "\033[35m"; +inline const char* CYAN = "\033[36m"; +inline const char* BGRED = "\033[41m"; +inline const char* BGBLACK = "\033[40m"; +inline const char* BGGREEN = "\033[42m"; +inline const char* BGYELLOW = "\033[43m"; +inline const char* BGBLUE = "\033[44m"; +inline const char* BGMAGENTA ="\033[45m"; +inline const char* BGCYAN = "\033[46m"; +inline const char* BGWHITE = "\033[47m"; +inline const char* BOLDBLACK = "\033[1m\033[30m"; +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 \ - mixer.append(info); mixer.append("\033[0m\n");\ - const char * finalinfo=mixer.c_str();\ - va_start (arg, finalinfo);\ - vfprintf (stdout, finalinfo, arg);\ - va_end (arg); + mixer.append(info); mixer.append("\033[0m\n");\ + const char * finalinfo=mixer.c_str();\ + va_start (arg, finalinfo);\ + vfprintf (stdout, finalinfo, arg);\ + va_end (arg); inline void echo(char * info,...){ - if (level.value==4) - { - va_list arg; - std::string mixer=info; - mixer.append("\n"); - const char * finalinfo=mixer.c_str(); - va_start (arg, finalinfo); - vfprintf (stdout, finalinfo, arg); - va_end (arg);} + if (level.value==4) + { + va_list arg; + std::string mixer=info; + mixer.append("\n"); + const char * finalinfo=mixer.c_str(); + va_start (arg, finalinfo); + vfprintf (stdout, finalinfo, arg); + va_end (arg);} } inline void warning( char * info,...){ - if (level.value>=1) - { - va_list arg; - std::string mixer=YELLOW;ending + if (level.value>=1) + { + va_list arg; + std::string mixer=YELLOW;ending } } inline void fatal( char * info,...){ - va_list arg; - std::string mixer=BOLDWHITE+std::string(BGRED);ending + va_list arg; + std::string mixer=BOLDWHITE+std::string(BGRED);ending } inline void error( char * info,...){ - if (level.value>=0) - { - va_list arg; - std::string mixer=BOLDRED;ending + if (level.value>=0) + { + va_list arg; + std::string mixer=BOLDRED;ending }} inline void success(char * info , ...){ - if (level.value>=2) - { - va_list arg; - std::string mixer=GREEN;ending} + if (level.value>=2) + { + va_list arg; + std::string mixer=GREEN;ending} } inline void message(char * info , ...){ - if (level.value>=3) - { - va_list arg; - std::string mixer=BOLDWHITE;ending} + if (level.value>=3) + { + va_list arg; + std::string mixer=BOLDWHITE;ending} } inline void startup(char* game,char*version){ int lv=level.value;level.value=6; - echo("%s %s",game,version); - warning("be warned that"); - error("ERRORS MIGHT OCCUR!!!"); - success("but dont worry"); - message("this is not an error"); + echo("%s %s",game,version); + warning("be warned that"); + error("ERRORS MIGHT OCCUR!!!"); + success("but dont worry"); + message("this is not an error"); fatal("I SWEAR"); level.value=lv; } - - - } - -#endif - - - +#endif \ No newline at end of file