mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-26 10:45:37 +08:00
Ref T472, support for aircraft category flag
This commit is contained in:
committed by
Mat Sutcliffe
parent
bada0c2f59
commit
210df12889
@@ -16,7 +16,8 @@ namespace BlackCore
|
|||||||
CWebReaderFlags::WebReader CWebReaderFlags::entitiesToReaders(CEntityFlags::Entity entities)
|
CWebReaderFlags::WebReader CWebReaderFlags::entitiesToReaders(CEntityFlags::Entity entities)
|
||||||
{
|
{
|
||||||
WebReader f = None;
|
WebReader f = None;
|
||||||
if (entities.testFlag(CEntityFlags::AircraftIcaoEntity) || entities.testFlag(CEntityFlags::AirlineIcaoEntity) || entities.testFlag(CEntityFlags::CountryEntity))
|
if (entities.testFlag(CEntityFlags::AircraftIcaoEntity) || entities.testFlag(CEntityFlags::AirlineIcaoEntity) ||
|
||||||
|
entities.testFlag(CEntityFlags::CountryEntity) || entities.testFlag(CEntityFlags::AircraftCategoryEntity))
|
||||||
{
|
{
|
||||||
f |= IcaoDataReader;
|
f |= IcaoDataReader;
|
||||||
}
|
}
|
||||||
@@ -32,10 +33,10 @@ namespace BlackCore
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (entities.testFlag(CEntityFlags::DbInfoObjectEntity)) { f |= DbInfoDataReader; }
|
if (entities.testFlag(CEntityFlags::DbInfoObjectEntity)) { f |= DbInfoDataReader; }
|
||||||
if (entities.testFlag(CEntityFlags::BookingEntity)) { f |= VatsimBookingReader; }
|
if (entities.testFlag(CEntityFlags::BookingEntity)) { f |= VatsimBookingReader; }
|
||||||
if (entities.testFlag(CEntityFlags::VatsimDataFile)) { f |= VatsimDataReader; }
|
if (entities.testFlag(CEntityFlags::VatsimDataFile)) { f |= VatsimDataReader; }
|
||||||
if (entities.testFlag(CEntityFlags::VatsimStatusFile)) { f |= VatsimStatusReader; }
|
if (entities.testFlag(CEntityFlags::VatsimStatusFile)) { f |= VatsimStatusReader; }
|
||||||
if (entities.testFlag(CEntityFlags::MetarEntity)) { f |= VatsimMetarReader; }
|
if (entities.testFlag(CEntityFlags::MetarEntity)) { f |= VatsimMetarReader; }
|
||||||
|
|
||||||
return f;
|
return f;
|
||||||
}
|
}
|
||||||
@@ -48,14 +49,14 @@ namespace BlackCore
|
|||||||
CEntityFlags::Entity CWebReaderFlags::allEntitiesForReaders(WebReader readers)
|
CEntityFlags::Entity CWebReaderFlags::allEntitiesForReaders(WebReader readers)
|
||||||
{
|
{
|
||||||
CEntityFlags::Entity entities = CEntityFlags::NoEntity;
|
CEntityFlags::Entity entities = CEntityFlags::NoEntity;
|
||||||
if (readers.testFlag(IcaoDataReader)) { entities |= CEntityFlags::AllIcaoAndCountries; }
|
if (readers.testFlag(IcaoDataReader)) { entities |= CEntityFlags::AllIcaoAndCountries; }
|
||||||
if (readers.testFlag(ModelReader)) { entities |= CEntityFlags::DistributorLiveryModel; }
|
if (readers.testFlag(ModelReader)) { entities |= CEntityFlags::DistributorLiveryModel; }
|
||||||
if (readers.testFlag(AirportReader)) { entities |= CEntityFlags::AirportEntity; }
|
if (readers.testFlag(AirportReader)) { entities |= CEntityFlags::AirportEntity; }
|
||||||
if (readers.testFlag(DbInfoDataReader)) { entities |= CEntityFlags::DbInfoObjectEntity; }
|
if (readers.testFlag(DbInfoDataReader)) { entities |= CEntityFlags::DbInfoObjectEntity; }
|
||||||
if (readers.testFlag(VatsimBookingReader)) { entities |= CEntityFlags::BookingEntity; }
|
if (readers.testFlag(VatsimBookingReader)) { entities |= CEntityFlags::BookingEntity; }
|
||||||
if (readers.testFlag(VatsimMetarReader)) { entities |= CEntityFlags::MetarEntity; }
|
if (readers.testFlag(VatsimMetarReader)) { entities |= CEntityFlags::MetarEntity; }
|
||||||
if (readers.testFlag(VatsimDataReader)) { entities |= CEntityFlags::VatsimDataFile; }
|
if (readers.testFlag(VatsimDataReader)) { entities |= CEntityFlags::VatsimDataFile; }
|
||||||
if (readers.testFlag(VatsimStatusReader)) { entities |= CEntityFlags::VatsimStatusFile; }
|
if (readers.testFlag(VatsimStatusReader)) { entities |= CEntityFlags::VatsimStatusFile; }
|
||||||
return entities;
|
return entities;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -76,9 +77,9 @@ namespace BlackCore
|
|||||||
int CWebReaderFlags::numberOfReaders(WebReader readers)
|
int CWebReaderFlags::numberOfReaders(WebReader readers)
|
||||||
{
|
{
|
||||||
int n = 0;
|
int n = 0;
|
||||||
if (readers.testFlag(ModelReader)) { n++; }
|
if (readers.testFlag(ModelReader)) { n++; }
|
||||||
if (readers.testFlag(IcaoDataReader)) { n++; }
|
if (readers.testFlag(IcaoDataReader)) { n++; }
|
||||||
if (readers.testFlag(AirportReader)) { n++; }
|
if (readers.testFlag(AirportReader)) { n++; }
|
||||||
if (readers.testFlag(DbInfoDataReader)) { n++; }
|
if (readers.testFlag(DbInfoDataReader)) { n++; }
|
||||||
return n;
|
return n;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -159,7 +159,7 @@ namespace BlackGui
|
|||||||
|
|
||||||
void CDataInfoAreaComponent::requestUpdateOfAllDbData()
|
void CDataInfoAreaComponent::requestUpdateOfAllDbData()
|
||||||
{
|
{
|
||||||
sGui->getWebDataServices()->triggerLoadingDirectlyFromDb(CEntityFlags::AllDbEntitiesNoInfoObjectsNoAirports, QDateTime());
|
sGui->getWebDataServices()->triggerLoadingDirectlyFromDb(CEntityFlags::AllDbEntitiesNoInfoObjectsNoAirportsAndCategories, QDateTime());
|
||||||
}
|
}
|
||||||
|
|
||||||
void CDataInfoAreaComponent::requestUpdatedData(CEntityFlags::Entity entity)
|
void CDataInfoAreaComponent::requestUpdatedData(CEntityFlags::Entity entity)
|
||||||
|
|||||||
@@ -142,7 +142,7 @@ namespace BlackMisc
|
|||||||
|
|
||||||
const QStringList &CDbInfo::sharedFileNames()
|
const QStringList &CDbInfo::sharedFileNames()
|
||||||
{
|
{
|
||||||
static const QStringList names({"aircrafticao.json", "airlineicao.json", "airports.json", "countries.json", "distributors.json", "liveries.json", "models.json" });
|
static const QStringList names({"aircrafticao.json", "airlineicao.json", "airports.json", "countries.json", "distributors.json", "liveries.json", "models.json", "aircraftcategory.json" });
|
||||||
return names;
|
return names;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -154,7 +154,7 @@ namespace BlackMisc
|
|||||||
|
|
||||||
const QStringList &CDbInfo::serviceNames()
|
const QStringList &CDbInfo::serviceNames()
|
||||||
{
|
{
|
||||||
static const QStringList names({"jsonaircrafticao.php", "jsonairlineicao.php", "jsonairport.php", "jsoncountry.php", "jsondistributor.php", "jsonlivery.php", "jsonaircraftmodel.php" });
|
static const QStringList names({"jsonaircrafticao.php", "jsonairlineicao.php", "jsonairport.php", "jsoncountry.php", "jsondistributor.php", "jsonlivery.php", "jsonaircraftmodel.php", "jsonaircraftcategory.php" });
|
||||||
return names;
|
return names;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -163,15 +163,15 @@ namespace BlackMisc
|
|||||||
static const QString empty;
|
static const QString empty;
|
||||||
switch (entity)
|
switch (entity)
|
||||||
{
|
{
|
||||||
case CEntityFlags::AircraftIcaoEntity: return sharedFileNames().at(0);
|
case CEntityFlags::AircraftIcaoEntity: return sharedFileNames().at(0);
|
||||||
case CEntityFlags::AirlineIcaoEntity: return sharedFileNames().at(1);
|
case CEntityFlags::AirlineIcaoEntity: return sharedFileNames().at(1);
|
||||||
case CEntityFlags::AirportEntity: return sharedFileNames().at(2);
|
case CEntityFlags::AirportEntity: return sharedFileNames().at(2);
|
||||||
case CEntityFlags::CountryEntity: return sharedFileNames().at(3);
|
case CEntityFlags::CountryEntity: return sharedFileNames().at(3);
|
||||||
case CEntityFlags::DistributorEntity: return sharedFileNames().at(4);
|
case CEntityFlags::DistributorEntity: return sharedFileNames().at(4);
|
||||||
case CEntityFlags::LiveryEntity: return sharedFileNames().at(5);
|
case CEntityFlags::LiveryEntity: return sharedFileNames().at(5);
|
||||||
case CEntityFlags::ModelEntity: return sharedFileNames().at(6);
|
case CEntityFlags::ModelEntity: return sharedFileNames().at(6);
|
||||||
default:
|
case CEntityFlags::AircraftCategoryEntity: return sharedFileNames().at(7);
|
||||||
break;
|
default: break;
|
||||||
}
|
}
|
||||||
return empty;
|
return empty;
|
||||||
}
|
}
|
||||||
@@ -182,14 +182,14 @@ namespace BlackMisc
|
|||||||
switch (entity)
|
switch (entity)
|
||||||
{
|
{
|
||||||
case CEntityFlags::AircraftIcaoEntity: return serviceNames().at(0);
|
case CEntityFlags::AircraftIcaoEntity: return serviceNames().at(0);
|
||||||
case CEntityFlags::AirlineIcaoEntity: return serviceNames().at(1);
|
case CEntityFlags::AirlineIcaoEntity: return serviceNames().at(1);
|
||||||
case CEntityFlags::AirportEntity: return serviceNames().at(2);
|
case CEntityFlags::AirportEntity: return serviceNames().at(2);
|
||||||
case CEntityFlags::CountryEntity: return serviceNames().at(3);
|
case CEntityFlags::CountryEntity: return serviceNames().at(3);
|
||||||
case CEntityFlags::DistributorEntity: return serviceNames().at(4);
|
case CEntityFlags::DistributorEntity: return serviceNames().at(4);
|
||||||
case CEntityFlags::LiveryEntity: return serviceNames().at(5);
|
case CEntityFlags::LiveryEntity: return serviceNames().at(5);
|
||||||
case CEntityFlags::ModelEntity: return serviceNames().at(6);
|
case CEntityFlags::ModelEntity: return serviceNames().at(6);
|
||||||
default:
|
case CEntityFlags::AircraftCategoryEntity: return serviceNames().at(7);
|
||||||
break;
|
default: break;
|
||||||
}
|
}
|
||||||
return empty;
|
return empty;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -23,6 +23,7 @@ namespace BlackMisc
|
|||||||
switch (flag)
|
switch (flag)
|
||||||
{
|
{
|
||||||
case AircraftIcaoEntity: return QStringLiteral("Aircraft ICAO");
|
case AircraftIcaoEntity: return QStringLiteral("Aircraft ICAO");
|
||||||
|
case AircraftCategoryEntity: return QStringLiteral("Aircraft category");
|
||||||
case AirlineIcaoEntity: return QStringLiteral("Airline ICAO");
|
case AirlineIcaoEntity: return QStringLiteral("Airline ICAO");
|
||||||
case AirportEntity: return QStringLiteral("Airport");
|
case AirportEntity: return QStringLiteral("Airport");
|
||||||
case AllEntities: return QStringLiteral("All");
|
case AllEntities: return QStringLiteral("All");
|
||||||
@@ -53,6 +54,7 @@ namespace BlackMisc
|
|||||||
{
|
{
|
||||||
QStringList list;
|
QStringList list;
|
||||||
if (entities.testFlag(AircraftIcaoEntity)) list << QStringLiteral("Aircraft ICAO");
|
if (entities.testFlag(AircraftIcaoEntity)) list << QStringLiteral("Aircraft ICAO");
|
||||||
|
if (entities.testFlag(AircraftCategoryEntity)) list << QStringLiteral("Aircraft category");
|
||||||
if (entities.testFlag(AirlineIcaoEntity)) list << QStringLiteral("Airline ICAO");
|
if (entities.testFlag(AirlineIcaoEntity)) list << QStringLiteral("Airline ICAO");
|
||||||
if (entities.testFlag(AirportEntity)) list << QStringLiteral("Airport");
|
if (entities.testFlag(AirportEntity)) list << QStringLiteral("Airport");
|
||||||
if (entities.testFlag(BookingEntity)) list << QStringLiteral("VATSIM bookings");
|
if (entities.testFlag(BookingEntity)) list << QStringLiteral("VATSIM bookings");
|
||||||
@@ -155,6 +157,7 @@ namespace BlackMisc
|
|||||||
if (entities.testFlag(CountryEntity)) { entities &= ~CountryEntity; return CountryEntity; }
|
if (entities.testFlag(CountryEntity)) { entities &= ~CountryEntity; return CountryEntity; }
|
||||||
if (entities.testFlag(ModelEntity)) { entities &= ~ModelEntity; return ModelEntity; }
|
if (entities.testFlag(ModelEntity)) { entities &= ~ModelEntity; return ModelEntity; }
|
||||||
if (entities.testFlag(DistributorEntity)) { entities &= ~DistributorEntity; return DistributorEntity; }
|
if (entities.testFlag(DistributorEntity)) { entities &= ~DistributorEntity; return DistributorEntity; }
|
||||||
|
if (entities.testFlag(AircraftCategoryEntity)) { entities &= ~AircraftCategoryEntity; return AircraftCategoryEntity; }
|
||||||
return NoEntity;
|
return NoEntity;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -180,13 +183,14 @@ namespace BlackMisc
|
|||||||
CEntityFlags::Entity CEntityFlags::singleEntityByName(const QString &name)
|
CEntityFlags::Entity CEntityFlags::singleEntityByName(const QString &name)
|
||||||
{
|
{
|
||||||
// order here is crucial
|
// order here is crucial
|
||||||
if (name.contains("model", Qt::CaseInsensitive)) { return ModelEntity; }
|
if (name.contains("model", Qt::CaseInsensitive)) { return ModelEntity; }
|
||||||
|
if (name.contains("category", Qt::CaseInsensitive)) { return AircraftCategoryEntity; }
|
||||||
if (name.contains("aircraft", Qt::CaseInsensitive)) { return AircraftIcaoEntity; }
|
if (name.contains("aircraft", Qt::CaseInsensitive)) { return AircraftIcaoEntity; }
|
||||||
if (name.contains("airline", Qt::CaseInsensitive)) { return AirlineIcaoEntity; }
|
if (name.contains("airline", Qt::CaseInsensitive)) { return AirlineIcaoEntity; }
|
||||||
if (name.contains("airport", Qt::CaseInsensitive)) { return AirportEntity; }
|
if (name.contains("airport", Qt::CaseInsensitive)) { return AirportEntity; }
|
||||||
if (name.contains("distributor", Qt::CaseInsensitive)) { return DistributorEntity; }
|
if (name.contains("distributor", Qt::CaseInsensitive)) { return DistributorEntity; }
|
||||||
if (name.contains("countr", Qt::CaseInsensitive)) { return CountryEntity; } // singular/plural
|
if (name.contains("countr", Qt::CaseInsensitive)) { return CountryEntity; } // singular/plural
|
||||||
if (name.contains("liver", Qt::CaseInsensitive)) { return LiveryEntity; } // singular/plural
|
if (name.contains("liver", Qt::CaseInsensitive)) { return LiveryEntity; } // singular/plural
|
||||||
return NoEntity;
|
return NoEntity;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -46,14 +46,15 @@ namespace BlackMisc
|
|||||||
VatsimDataFile = 1 << 10, //!< the VATSIM data file (multiple data entities)
|
VatsimDataFile = 1 << 10, //!< the VATSIM data file (multiple data entities)
|
||||||
VatsimStatusFile = 1 << 11, //!< the VATSIM status file (URLs for data files etc.)
|
VatsimStatusFile = 1 << 11, //!< the VATSIM status file (URLs for data files etc.)
|
||||||
AirportEntity = 1 << 12, //!< airports
|
AirportEntity = 1 << 12, //!< airports
|
||||||
AllEntities = ((1 << 13) - 1), //!< everything
|
AircraftCategoryEntity = 1 << 13, //!< aircraft category entities
|
||||||
AllIcaoEntities = AircraftIcaoEntity | AirlineIcaoEntity, //!< all ICAO codes
|
AllEntities = ((1 << 14) - 1), //!< everything
|
||||||
AllIcaoAndCountries = AircraftIcaoEntity | AirlineIcaoEntity | CountryEntity, //!< all ICAO codes and countries
|
AllIcaoEntities = AircraftIcaoEntity | AirlineIcaoEntity, //!< all ICAO codes
|
||||||
DistributorLiveryModel = DistributorEntity | LiveryEntity | ModelEntity, //!< Combinded
|
AllIcaoAndCountries = AircraftIcaoEntity | AirlineIcaoEntity | CountryEntity, //!< all ICAO codes and countries
|
||||||
ModelMatchingEntities = AllIcaoEntities | LiveryEntity | ModelEntity, //!< all needed for model matching
|
DistributorLiveryModel = DistributorEntity | LiveryEntity | ModelEntity, //!< Combined
|
||||||
AllDbEntities = AllIcaoAndCountries | DistributorLiveryModel | DbInfoObjectEntity | AirportEntity, //!< All DB stuff
|
ModelMatchingEntities = AllIcaoEntities | LiveryEntity | ModelEntity, //!< all needed for model matching
|
||||||
AllDbEntitiesNoInfoObjects = AllIcaoAndCountries | DistributorLiveryModel | AirportEntity, //!< All DB entities, no info objects
|
AllDbEntitiesNoInfoObjects = AllIcaoAndCountries | DistributorLiveryModel | AirportEntity | AircraftCategoryEntity, //!< all DB entities, no info objects
|
||||||
AllDbEntitiesNoInfoObjectsNoAirports = AllIcaoAndCountries | DistributorLiveryModel //!< All DB entities, no info objects and airports
|
AllDbEntities = AllDbEntitiesNoInfoObjects | DbInfoObjectEntity, //!< all DB stuff
|
||||||
|
AllDbEntitiesNoInfoObjectsNoAirportsAndCategories = AllIcaoAndCountries | DistributorLiveryModel //!< all DB entities, no info objects and airports
|
||||||
};
|
};
|
||||||
Q_DECLARE_FLAGS(Entity, EntityFlag)
|
Q_DECLARE_FLAGS(Entity, EntityFlag)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user