mirror of
https://github.com/debauchee/barrier.git
synced 2026-02-11 14:15:46 +08:00
Merge 1.4.1 into trunk
This commit is contained in:
@@ -7,12 +7,24 @@
|
||||
const char AppConfig::m_SynergysName[] = "synergys.exe";
|
||||
const char AppConfig::m_SynergycName[] = "synergyc.exe";
|
||||
const char AppConfig::m_SynergyProgramDir[] = "bin/";
|
||||
const char AppConfig::m_SynergyLogDir[] = "log/";
|
||||
#else
|
||||
const char AppConfig::m_SynergysName[] = "synergys";
|
||||
const char AppConfig::m_SynergycName[] = "synergyc";
|
||||
const char AppConfig::m_SynergyProgramDir[] = "/usr/bin/";
|
||||
const char AppConfig::m_SynergyLogDir[] = "/var/log/";
|
||||
#endif
|
||||
|
||||
static const char* logLevelNames[] =
|
||||
{
|
||||
"ERROR",
|
||||
"WARNING",
|
||||
"NOTE",
|
||||
"INFO",
|
||||
"DEBUG",
|
||||
"DEBUG1",
|
||||
"DEBUG2"
|
||||
};
|
||||
|
||||
AppConfig::AppConfig(QSettings* settings) :
|
||||
m_pSettings(settings),
|
||||
@@ -34,6 +46,33 @@ AppConfig::~AppConfig()
|
||||
saveSettings();
|
||||
}
|
||||
|
||||
QString AppConfig::synergyLogDir()
|
||||
{
|
||||
#if defined(Q_OS_WIN)
|
||||
// on windows, we want to log to program files
|
||||
return QString(QDir::currentPath() + "/log/");
|
||||
#else
|
||||
// on unix, we'll log to the standard log dir
|
||||
return "/var/log/";
|
||||
#endif
|
||||
}
|
||||
|
||||
void AppConfig::persistLogDir()
|
||||
{
|
||||
QDir dir = synergyLogDir();
|
||||
|
||||
// persist the log directory
|
||||
if (!dir.exists())
|
||||
{
|
||||
dir.mkpath(dir.path());
|
||||
}
|
||||
}
|
||||
|
||||
QString AppConfig::logLevelText() const
|
||||
{
|
||||
return logLevelNames[logLevel()];
|
||||
}
|
||||
|
||||
void AppConfig::loadSettings()
|
||||
{
|
||||
m_AutoConnect = settings().value("autoConnectChecked", false).toBool();
|
||||
@@ -42,8 +81,10 @@ void AppConfig::loadSettings()
|
||||
m_ScreenName = settings().value("screenName", QHostInfo::localHostName()).toString();
|
||||
m_Port = settings().value("port", 24800).toInt();
|
||||
m_Interface = settings().value("interface").toString();
|
||||
m_LogLevel = settings().value("logLevelIndex", 0).toInt();
|
||||
m_LogLevel = settings().value("logLevel", 2).toInt();
|
||||
m_AutoDetectPaths = settings().value("autoDetectPaths", true).toBool();
|
||||
m_LogToFile = settings().value("logToFile", true).toBool();
|
||||
m_LogFilename = settings().value("logFilename", synergyLogDir() + "synergy.log").toString();
|
||||
}
|
||||
|
||||
void AppConfig::saveSettings()
|
||||
@@ -54,7 +95,30 @@ void AppConfig::saveSettings()
|
||||
settings().setValue("screenName", m_ScreenName);
|
||||
settings().setValue("port", m_Port);
|
||||
settings().setValue("interface", m_Interface);
|
||||
settings().setValue("logLevelIndex", m_LogLevel);
|
||||
settings().setValue("logLevel", m_LogLevel);
|
||||
settings().setValue("autoDetectPaths", m_AutoDetectPaths);
|
||||
settings().setValue("logToFile", m_LogToFile);
|
||||
settings().setValue("logFilename", m_LogFilename);
|
||||
}
|
||||
|
||||
bool AppConfig::detectPath(const QString& name, QString& path)
|
||||
{
|
||||
// look in current working dir and default dir
|
||||
QStringList searchDirs;
|
||||
searchDirs.append("./");
|
||||
searchDirs.append(synergyProgramDir());
|
||||
|
||||
// use the first valid path we find
|
||||
for (int i = 0; i < searchDirs.length(); i++)
|
||||
{
|
||||
QFile f(searchDirs[i] + name);
|
||||
if (f.exists())
|
||||
{
|
||||
path = f.fileName();
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
// nothing found!
|
||||
return false;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user