Formatting, style

This commit is contained in:
Klaus Basan
2018-05-18 20:35:08 +02:00
parent 7965f67455
commit fc35e8b654
14 changed files with 66 additions and 65 deletions

View File

@@ -111,6 +111,7 @@ namespace BlackCore
Q_ASSERT_X(!sApp, Q_FUNC_INFO, "already initialized");
Q_ASSERT_X(QCoreApplication::instance(), Q_FUNC_INFO, "no application object");
m_applicationInfo.setApplicationDataDirectory(CDirectoryUtils::normalizedApplicationDataDirectory());
QCoreApplication::setApplicationName(m_applicationName);
QCoreApplication::setApplicationVersion(CBuildConfig::getVersionString());
this->setObjectName(m_applicationName);
@@ -138,7 +139,7 @@ namespace BlackCore
const QString tempPath(this->getTemporaryDirectory());
BlackMisc::setMockCacheRootDirectory(tempPath);
}
m_alreadyRunning = CApplication::getRunningApplications().containsApplication(CApplication::getSwiftApplication());
m_alreadyRunning = CApplication::getRunningApplications().containsApplication(CApplication::getApplicationInfo().getApplication());
this->initParser();
this->initLogging();
this->tagApplicationDataDirectory();
@@ -229,12 +230,6 @@ namespace BlackCore
this->gracefulShutdown();
}
const CApplicationInfo &CApplication::getApplicationInfo() const
{
static const CApplicationInfo a(CApplication::getSwiftApplication());
return a;
}
CApplicationInfoList CApplication::getRunningApplications()
{
CApplicationInfoList apps;
@@ -251,7 +246,7 @@ namespace BlackCore
bool CApplication::isAlreadyRunning() const
{
return getRunningApplications().containsBy([this](const CApplicationInfo & info) { return info.getApplication() == getSwiftApplication(); });
return getRunningApplications().containsBy([this](const CApplicationInfo & info) { return info.getApplication() == getApplicationInfo().getApplication(); });
}
bool CApplication::isShuttingDown() const

View File

@@ -111,9 +111,6 @@ namespace BlackCore
//! Destructor
virtual ~CApplication();
//! Application information
const BlackMisc::CApplicationInfo &getApplicationInfo() const;
//! Information about all running apps (including this one only if exec() has already been called)
static BlackMisc::CApplicationInfoList getRunningApplications();
@@ -130,6 +127,9 @@ namespace BlackCore
//! \threadsafe
bool isShuttingDown() const;
//! swift application running
const BlackMisc::CApplicationInfo &getApplicationInfo() const { return m_applicationInfo; }
//! Application name and version
const QString &getApplicationName() const { return m_applicationName; }
@@ -142,9 +142,6 @@ namespace BlackCore
//! Force single application (only one instance)
void setSingleApplication(bool singleApplication);
//! swift application running
BlackMisc::CApplicationInfo::Application getSwiftApplication() const { return m_applicationInfo.getApplication(); }
//! Executable names for the given applications
QString getExecutableForApplication(BlackMisc::CApplicationInfo::Application application) const;

View File

@@ -24,6 +24,7 @@
#include <QFileSystemModel>
#include <QDir>
#include <QDesktopServices>
#include <QPointer>
using namespace BlackMisc;
using namespace BlackMisc::Simulation;
@@ -246,7 +247,6 @@ namespace BlackGui
destinationModel->setNameFilters(this->getSourceFileFilter());
destinationModel->setNameFilterDisables(m_nameFilterDisables);
// source
const QString sourceDir = this->getOtherVersionsSelectedDirectory();
if (!sourceModel || m_initializedSourceDir != sourceDir)
@@ -399,8 +399,8 @@ namespace BlackGui
void CCopyConfigurationComponent::initMultiSimulatorCache(IMultiSimulatorModelCaches *cache, const QString &fileName)
{
const CSimulatorInfo info = cache->getSimulatorForFilename(fileName);
if (info.isNoSimulator()) return;
if (cache->isSaved(info)) return; // already a file and hence in .rev
if (info.isNoSimulator()) { return; }
if (cache->isSaved(info)) { return; } // already a file and hence in .rev
const QFileInfo fi(fileName);
const CStatusMessage msg = cache->setCacheTimestamp(fi.lastModified(), info); // create cache file and timestamp in .rev
if (msg.isFailure())
@@ -412,13 +412,14 @@ namespace BlackGui
void CCopyConfigurationComponent::initOtherSwiftVersions()
{
ui->cb_OtherVersions->clear();
const QMap<QString, CApplicationInfo> otherVersions = CDirectoryUtils::applicationDataDirectoryMap(true);
const QMap<QString, CApplicationInfo> otherVersions = CDirectoryUtils::applicationDataDirectoryMapWithoutCurrentVersion();
for (const QString &directory : otherVersions.keys())
{
const CApplicationInfo info(otherVersions.value(directory));
if (info.isNull())
{
ui->cb_OtherVersions->addItem(CDirectoryUtils::decodeNormalizedDirectory(directory));
const QString infoString = CDirectoryUtils::decodeNormalizedDirectory(directory);
ui->cb_OtherVersions->addItem(infoString);
}
else
{

View File

@@ -119,8 +119,8 @@ namespace BlackGui
//! Set widths
void setWidths();
QStringList m_otherVersionDirs;
QScopedPointer<Ui::CCopyConfigurationComponent> ui;
QStringList m_otherVersionDirs;
QString m_initializedSourceDir;
QString m_initializedDestinationDir;
bool m_logCopiedFiles = true;
@@ -128,8 +128,8 @@ namespace BlackGui
bool m_withBootstrapFile = false;
// caches will be explicitly initialized in initCaches
BlackMisc::Simulation::Data::CModelCaches m_modelCaches{ false, this };
BlackMisc::Simulation::Data::CModelSetCaches m_modelSetCaches{ false, this };
BlackMisc::Simulation::Data::CModelCaches m_modelCaches { false, this };
BlackMisc::Simulation::Data::CModelSetCaches m_modelSetCaches { false, this };
// caches will be initialized so they can be overriden
// those caches do not harm if they exists default initialized

View File

@@ -18,7 +18,6 @@
class QObject;
namespace BlackMisc { namespace Network { class CServer; } }
namespace BlackGui
{
namespace Models

View File

@@ -68,18 +68,10 @@ namespace BlackGui
this->setSortIndicator();
switch (mode)
{
case CAircraftModelListModel::StashModel:
m_menus = MenuDefaultNoClear;
break;
case CAircraftModelListModel::Database:
m_menus = MenuDefaultDbViews;
break;
case CAircraftModelListModel::VPilotRuleModel:
m_menus = MenuDefaultNoClear | MenuStashing;
break;
case CAircraftModelListModel::OwnAircraftModelMappingTool:
m_menus = MenuDefaultNoClear | MenuStashing | MenuLoadAndSave;
break;
case CAircraftModelListModel::StashModel: m_menus = MenuDefaultNoClear; break;
case CAircraftModelListModel::Database: m_menus = MenuDefaultDbViews; break;
case CAircraftModelListModel::VPilotRuleModel: m_menus = MenuDefaultNoClear | MenuStashing; break;
case CAircraftModelListModel::OwnAircraftModelMappingTool: m_menus = MenuDefaultNoClear | MenuStashing | MenuLoadAndSave; break;
case CAircraftModelListModel::OwnAircraftModelClient:
default:
m_menus = MenuDefaultNoClear | MenuBackend;

View File

@@ -7,8 +7,7 @@
* contained in the LICENSE file.
*/
#include "blackgui/models/serverlistmodel.h"
#include "blackgui/views/serverview.h"
#include "serverview.h"
using namespace BlackMisc;
using namespace BlackGui::Models;

View File

@@ -13,13 +13,11 @@
#define BLACKGUI_VIEWS_SERVERVIEW_H
#include "blackgui/blackguiexport.h"
#include "blackgui/models/serverlistmodel.h"
#include "blackgui/views/viewbase.h"
#include "blackmisc/network/serverlist.h"
#include "blackgui/models/serverlistmodel.h"
class QWidget;
namespace BlackMisc { namespace Network { class CServer; } }
namespace BlackGui
{
namespace Views

View File

@@ -104,7 +104,7 @@ namespace BlackGui
saveJson->setContext(Qt::WidgetShortcut);
QShortcut *deleteRow = new QShortcut(CShortcut::keyDelete(), this);
connect(deleteRow, &QShortcut::activated, this, &CViewBaseNonTemplate::ps_removeSelectedRows);
connect(deleteRow, &QShortcut::activated, this, &CViewBaseNonTemplate::removeSelectedRowsChecked);
deleteRow->setObjectName("Remove selected rows for " + this->objectName());
deleteRow->setContext(Qt::WidgetShortcut);
@@ -258,7 +258,7 @@ namespace BlackGui
a->setChecked(this->displayAutomatically());
break;
}
case MenuRemoveSelectedRows: { ma.addAction(CIcons::delete16(), "Remove selected rows", CMenuAction::pathViewAddRemove(), { this, &CViewBaseNonTemplate::ps_removeSelectedRows }, CShortcut::keyDelete()); break; }
case MenuRemoveSelectedRows: { ma.addAction(CIcons::delete16(), "Remove selected rows", CMenuAction::pathViewAddRemove(), { this, &CViewBaseNonTemplate::removeSelectedRowsChecked }, CShortcut::keyDelete()); break; }
case MenuClear: { ma.addAction(CIcons::delete16(), "Clear", CMenuAction::pathViewAddRemove(), { this, &CViewBaseNonTemplate::clear }); break; }
case MenuFilter:
{
@@ -827,7 +827,7 @@ namespace BlackGui
}
}
void CViewBaseNonTemplate::ps_removeSelectedRows()
void CViewBaseNonTemplate::removeSelectedRowsChecked()
{
if (!m_enableDeleteSelectedRows) { return; }
this->removeSelectedRows();

View File

@@ -540,8 +540,8 @@ namespace BlackGui
void setSingleSelection();
//! @}
//! Remove selected rows
void ps_removeSelectedRows();
//! Remove selected rows if enabled
void removeSelectedRowsChecked();
//! Toggle auto display flag
void toggleAutoDisplay();

View File

@@ -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());

View File

@@ -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

View File

@@ -339,6 +339,6 @@ namespace BlackMisc
if (in.isEmpty()) { return ignoreEmpty ? e : ea; }
return QStringLiteral("\"") % in % QStringLiteral("\"");
}
}
} // ns
//! \endcond

View File

@@ -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