Add help, verbose and quiet args

This commit is contained in:
vaxerski 2023-08-28 16:53:23 +02:00
parent a498822916
commit 965c4614b2
2 changed files with 39 additions and 1 deletions

View file

@ -25,8 +25,18 @@ enum eLogLevel
#define ASSERT(expr) RASSERT(expr, "?")
namespace Debug {
inline bool quiet = false;
inline bool verbose = false;
template <typename... Args>
void log(eLogLevel level, const std::string& fmt, Args&&... args) {
if (!verbose && level == TRACE)
return;
if (quiet)
return;
std::cout << '[';
switch (level) {

View file

@ -3,10 +3,38 @@
#include "helpers/Log.hpp"
#include "core/PortalManager.hpp"
void printHelp() {
std::cout << R"#(| xdg-desktop-portal-hyprland
| --------------------------------------
| -v (--verbose) > enable trace logging
| -q (--quiet) > disable logging
| -h (--help) > print this menu
)#";
}
int main(int argc, char** argv, char** envp) {
g_pPortalManager = std::make_unique<CPortalManager>();
for (int i = 1; i < argc; ++i) {
std::string arg = argv[i];
if (arg == "--verbose" || arg == "-v")
Debug::verbose = true;
else if (arg == "--quiet" || arg == "-q")
Debug::quiet = true;
else if (arg == "--help" || arg == "-h") {
printHelp();
return 0;
} else {
printHelp();
return 1;
}
}
Debug::log(LOG, "Initializing xdph...");
g_pPortalManager = std::make_unique<CPortalManager>();
g_pPortalManager->init();
return 0;