Utility functions, status messages and model list

Ref T247 follow up
This commit is contained in:
Klaus Basan
2019-04-10 00:53:25 +02:00
committed by Mat Sutcliffe
parent 5c870a8404
commit fd1f6bcc84
5 changed files with 18 additions and 3 deletions

View File

@@ -169,7 +169,7 @@ namespace BlackMisc
QString CFileUtils::lastPathSegment(const QString &path)
{
if (path.isEmpty()) { return {}; }
if (path.endsWith('/')) { return CFileUtils::lastPathSegment(path.left(path.length() - 1)); }
if (path.endsWith('/')) { return CFileUtils::lastPathSegment(path.left(path.length() - 1)); }
if (!path.contains('/')) { return path; }
return path.mid(path.lastIndexOf('/') + 1);
}

View File

@@ -742,7 +742,9 @@ namespace BlackMisc
{
if (!this->hasFileName()) { return false; }
const QFileInfo fi(CFileUtils::fixWindowsUncPath(this->getFileName()));
return (fi.exists() && fi.isReadable());
if (!fi.exists()) { return false; }
const bool r = fi.isReadable();
return r;
}
QDir CAircraftModel::getFileDirectory() const

View File

@@ -1325,7 +1325,11 @@ namespace BlackMisc
if (!alreadySortedByFn) { sorted.sortByFileName(); }
const bool caseSensitive = CFileUtils::isFileNameCaseSensitive();
const QString rDir = caseSensitive ? rootDirectory : rootDirectory.toLower();
const QString rDir = CFileUtils::normalizeFilePathToQtStandard(
CFileUtils::stripLeadingSlashOrDriveLetter(
caseSensitive ? rootDirectory : rootDirectory.toLower()
)
);
for (const CAircraftModel &model : as_const(sorted))
{

View File

@@ -133,6 +133,12 @@ namespace BlackMisc
this->sortBy(&CStatusMessage::getSeverity);
}
void CStatusMessageList::sortBySeverityHighestFirst()
{
this->sortBy(&CStatusMessage::getSeverity);
this->reverse();
}
void CStatusMessageList::removeWarningsAndBelow()
{
if (this->isEmpty()) { return; }

View File

@@ -95,6 +95,9 @@ namespace BlackMisc
//! Sort by severity, lowest first
void sortBySeverity();
//! Sort by severity, highest first
void sortBySeverityHighestFirst();
//! Remove warnings and below
void removeWarningsAndBelow();