mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-07 02:35:33 +08:00
Formatting, style
This commit is contained in:
@@ -11,6 +11,7 @@
|
||||
|
||||
#include "directoryutils.h"
|
||||
#include "fileutils.h"
|
||||
#include "stringutils.h"
|
||||
#include "range.h"
|
||||
#include "blackconfig/buildconfig.h"
|
||||
#include <QCoreApplication>
|
||||
@@ -119,7 +120,7 @@ namespace BlackMisc
|
||||
static const QFileInfoList fileInfoList([]
|
||||
{
|
||||
const QDir swiftAppData(CDirectoryUtils::applicationDataDirectory()); // contains 1..n subdirs
|
||||
if (!swiftAppData.isReadable()) return QFileInfoList();
|
||||
if (!swiftAppData.isReadable()) { return QFileInfoList(); }
|
||||
return swiftAppData.entryInfoList({}, QDir::Dirs | QDir::NoDotAndDotDot, QDir::Time);
|
||||
}());
|
||||
return fileInfoList;
|
||||
@@ -143,29 +144,42 @@ namespace BlackMisc
|
||||
return dirs;
|
||||
}
|
||||
|
||||
QMap<QString, CApplicationInfo> CDirectoryUtils::applicationDataDirectoryMap(bool withoutCurrent)
|
||||
const QMap<QString, CApplicationInfo> &CDirectoryUtils::applicationDataDirectoryMapWithoutCurrentVersion()
|
||||
{
|
||||
static const CApplicationInfo nullInfo;
|
||||
QMap<QString, CApplicationInfo> dirs;
|
||||
|
||||
for (const QFileInfo &info : CDirectoryUtils::applicationDataDirectories())
|
||||
static const QMap<QString, CApplicationInfo> dirs = [ = ]
|
||||
{
|
||||
if (withoutCurrent && info.filePath().contains(normalizedApplicationDirectory(), Qt::CaseInsensitive)) continue;
|
||||
const QString appInfoFile = CFileUtils::appendFilePaths(info.filePath(), CApplicationInfo::fileName());
|
||||
const QString appInfoJson = CFileUtils::readFileToString(appInfoFile);
|
||||
if (appInfoJson.isEmpty())
|
||||
QMap<QString, CApplicationInfo> directories;
|
||||
for (const QFileInfo &info : CDirectoryUtils::applicationDataDirectories())
|
||||
{
|
||||
dirs.insert(info.filePath(), nullInfo);
|
||||
if (caseInsensitiveStringCompare(info.filePath(), CDirectoryUtils::normalizedApplicationDataDirectory())) { continue; }
|
||||
|
||||
// the application info will be written by each swift application started
|
||||
// so the application type will always contain that application
|
||||
const QString appInfoFile = CFileUtils::appendFilePaths(info.filePath(), CApplicationInfo::fileName());
|
||||
const QString appInfoJson = CFileUtils::readFileToString(appInfoFile);
|
||||
CApplicationInfo appInfo;
|
||||
if (appInfoJson.isEmpty())
|
||||
{
|
||||
const QString exeDir = CDirectoryUtils::decodeNormalizedDirectory(info.filePath());
|
||||
appInfo.setExecutablePath(exeDir);
|
||||
}
|
||||
else
|
||||
{
|
||||
appInfo = CApplicationInfo::fromJson(appInfoJson);
|
||||
}
|
||||
appInfo.setApplicationDataDirectory(info.filePath());
|
||||
directories.insert(info.filePath(), appInfo);
|
||||
}
|
||||
else
|
||||
{
|
||||
const CApplicationInfo appInfo = CApplicationInfo::fromJson(appInfoJson);
|
||||
dirs.insert(info.filePath(), appInfo);
|
||||
}
|
||||
}
|
||||
return directories;
|
||||
}();
|
||||
return dirs;
|
||||
}
|
||||
|
||||
bool CDirectoryUtils::hasOtherSwiftDataDirectories()
|
||||
{
|
||||
return CDirectoryUtils::applicationDataDirectoryMapWithoutCurrentVersion().size() > 0;
|
||||
}
|
||||
|
||||
const QString &CDirectoryUtils::normalizedApplicationDataDirectory()
|
||||
{
|
||||
static const QString p = CFileUtils::appendFilePaths(applicationDataDirectory(), normalizedApplicationDirectory());
|
||||
|
||||
@@ -46,6 +46,7 @@ namespace BlackMisc
|
||||
static QString executableFilePath(const QString &executable);
|
||||
|
||||
//! swift application data directory, contains 0..n swift installation directories
|
||||
//! \remark use CDirectoryUtils::normalizedApplicationDataDirectory for one specific version
|
||||
static const QString &applicationDataDirectory();
|
||||
|
||||
//! swift application data sub directories
|
||||
@@ -58,13 +59,17 @@ namespace BlackMisc
|
||||
static QStringList applicationDataDirectoryList(bool withoutCurrent = false, bool decodedDirName = false);
|
||||
|
||||
//! swift application data sub directories with info if available
|
||||
static QMap<QString, CApplicationInfo> applicationDataDirectoryMap(bool withoutCurrent = false);
|
||||
static const QMap<QString, CApplicationInfo> &applicationDataDirectoryMapWithoutCurrentVersion();
|
||||
|
||||
//! Other swift data directories
|
||||
static bool hasOtherSwiftDataDirectories();
|
||||
|
||||
//! Is MacOS application bundle?
|
||||
//! \remark: Means the currently running executable is a MacOS bundle, but not all our executables are bundles on MacOS
|
||||
static bool isMacOSAppBundle();
|
||||
|
||||
//! swift application data directory for one specific installation (a version)
|
||||
//! \remark use CDirectoryUtils::applicationDataDirectory for one all swift versions
|
||||
static const QString &normalizedApplicationDataDirectory();
|
||||
|
||||
//! Where resource files (static DB files, ...) etc are located
|
||||
|
||||
@@ -339,6 +339,6 @@ namespace BlackMisc
|
||||
if (in.isEmpty()) { return ignoreEmpty ? e : ea; }
|
||||
return QStringLiteral("\"") % in % QStringLiteral("\"");
|
||||
}
|
||||
}
|
||||
} // ns
|
||||
|
||||
//! \endcond
|
||||
|
||||
@@ -192,7 +192,8 @@ namespace BlackMisc
|
||||
auto *meta = Private::getValueObjectMetaInfo(typeId);
|
||||
if (meta)
|
||||
{
|
||||
CJsonScope scope("value");
|
||||
CJsonScope scope("value"); // tracker
|
||||
Q_UNUSED(scope);
|
||||
m_v = QVariant(typeId, nullptr);
|
||||
|
||||
// this will call convertFromJson if there is no MemoizedJson
|
||||
|
||||
Reference in New Issue
Block a user