status-desktop/src-cpp/constants.cpp

41 lines
1.1 KiB
C++
Raw Normal View History

2022-01-06 19:29:19 +00:00
#include "constants.h"
#include <QDir>
#include <QFileInfo>
#include <QMessageBox>
#include <QStandardPaths>
#include <QString>
// TODO: merge with constants from backend/
QString Constants::applicationPath(const QString& path)
2022-01-06 19:29:19 +00:00
{
return QFileInfo(QStandardPaths::writableLocation(QStandardPaths::AppDataLocation) + path).absoluteFilePath();
2022-01-06 19:29:19 +00:00
}
QString Constants::tmpPath(const QString& path)
2022-01-06 19:29:19 +00:00
{
return QFileInfo(QStandardPaths::writableLocation(QStandardPaths::TempLocation) + path).absoluteFilePath();
2022-01-06 19:29:19 +00:00
}
QString Constants::cachePath(const QString& path)
2022-01-06 19:29:19 +00:00
{
return QFileInfo(QStandardPaths::writableLocation(QStandardPaths::CacheLocation) + path).absoluteFilePath();
2022-01-06 19:29:19 +00:00
}
bool Constants::ensureDirectories()
{
if(Constants::applicationPath().isEmpty())
{
QDir d{Constants::applicationPath()};
if(!d.mkpath(d.absolutePath()))
{
QMessageBox msgBox;
msgBox.setIcon(QMessageBox::Warning);
msgBox.setText("Cannot determine storage location");
msgBox.exec();
return false;
}
}
return true;
2022-01-06 19:29:19 +00:00
}