From 1873745f1f74cc0bc09007ae79d43793012c0db5 Mon Sep 17 00:00:00 2001 From: prozacx Date: Sun, 17 Apr 2005 23:45:23 +0000 Subject: [PATCH] Added PrintPrompt() and GetPass() to CUtils git-svn-id: https://znc.svn.sourceforge.net/svnroot/znc/trunk@141 726aef4b-f618-498e-8847-2d620e286838 --- Utils.cpp | 29 ++++++++++++++++++++--------- Utils.h | 2 ++ 2 files changed, 22 insertions(+), 9 deletions(-) diff --git a/Utils.cpp b/Utils.cpp index 19d16039..d95decaf 100644 --- a/Utils.cpp +++ b/Utils.cpp @@ -213,32 +213,43 @@ int CUtils::MakeDir(const string& sPath, mode_t iMode) { return -1; } +char* CUtils::GetPass(const string& sPrompt) { + PrintPrompt(sPrompt); + return getpass(""); +} + void CUtils::PrintError(const string& sMessage) { - fprintf(stdout, "\033[1m\033[31m*\033[39m\033[22m %s", sMessage.c_str()); - PrintStatus(false); + fprintf(stdout, "\033[1m\033[34m[\033[31m ** \033[34m]\033[39m\033[22m %s\n", sMessage.c_str()); +} + +void CUtils::PrintPrompt(const string& sMessage) { + fprintf(stdout, "\033[1m\033[34m[\033[33m ?? \033[34m]\033[39m\033[22m %s\n", sMessage.c_str()); } void CUtils::PrintMessage(const string& sMessage) { - fprintf(stdout, "\033[1m\033[33m*\033[39m\033[22m %s\n", sMessage.c_str()); + fprintf(stdout, "\033[1m\033[34m[\033[33m ** \033[34m]\033[39m\033[22m %s\n", sMessage.c_str()); } void CUtils::PrintAction(const string& sMessage) { - fprintf(stdout, "\033[1m\033[32m*\033[39m\033[22m %s... ", sMessage.c_str()); + fprintf(stdout, "\033[1m\033[34m[\033[32m \033[34m]\033[39m\033[22m %s... ", sMessage.c_str()); fflush(stdout); } void CUtils::PrintStatus(bool bSuccess, const string& sMessage) { if (!sMessage.empty()) { - fprintf(stdout, "%s", sMessage.c_str()); + if (bSuccess) { + fprintf(stdout, "%s", sMessage.c_str()); + } else { + fprintf(stdout, "\033[1m\033[34m[\033[31m %s \033[34m]\033[39m\033[22m", sMessage.c_str()); + } } - fprintf(stdout, "\n\b\b\b\b\b\b"); + fprintf(stdout, "\r"); if (bSuccess) { - fprintf(stdout, "\033[1m\033[34m[ \033[32mok \033[34m]\033[39m\033[22m\n"); + fprintf(stdout, "\033[1m\033[34m[\033[32m ok \033[34m]\033[39m\033[22m\n"); } else { - fprintf(stdout, "\033[1m\033[34m[ \033[31m!! \033[34m]\033[39m\033[22m"); - fprintf(stdout, "\r\033[1m\033[31m*\033[39m\033[22m\n"); + fprintf(stdout, "\033[1m\033[34m[\033[31m !! \033[34m]\033[39m\033[22m\n"); } } diff --git a/Utils.h b/Utils.h index b7576d4b..95382c36 100644 --- a/Utils.h +++ b/Utils.h @@ -31,8 +31,10 @@ public: static int MakeDir(const string& sPath, mode_t iMode = 0700); static void PrintError(const string& sMessage); static void PrintMessage(const string& sMessage); + static void PrintPrompt(const string& sMessage); static void PrintAction(const string& sMessage); static void PrintStatus(bool bSuccess, const string& sMessage = ""); + static char* GetPass(const string& sPrompt); static string ToString(short i); static string ToString(unsigned short i);