mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-03-31 04:25:35 +08:00
Settings for reverse lookup + fixes
Ref T658 related
This commit is contained in:
committed by
Mat Sutcliffe
parent
5507aa05ee
commit
ee9f1188d7
@@ -61,6 +61,10 @@ namespace BlackGui
|
||||
CGuiUtility::checkBoxReadOnly(ui->cb_ModelSetVerificationOnlyErrorWarning, readonly);
|
||||
CGuiUtility::checkBoxReadOnly(ui->cb_CategoryGlider, readonly);
|
||||
CGuiUtility::checkBoxReadOnly(ui->cb_CategoryMilitaryAircraft, readonly);
|
||||
CGuiUtility::checkBoxReadOnly(ui->cb_ReverseUseModelString, readonly);
|
||||
CGuiUtility::checkBoxReadOnly(ui->cb_ReverseUseSwiftLiveryIds, readonly);
|
||||
CGuiUtility::checkBoxReadOnly(ui->cb_MsReverseLookup, readonly);
|
||||
CGuiUtility::checkBoxReadOnly(ui->cb_MsMatching, readonly);
|
||||
|
||||
const bool enabled = !readonly;
|
||||
ui->rb_Reduction->setEnabled(enabled);
|
||||
@@ -68,17 +72,16 @@ namespace BlackGui
|
||||
ui->rb_ScoreOnly->setEnabled(enabled);
|
||||
ui->rb_ByIcaoDataAircraft1st->setEnabled(enabled);
|
||||
ui->rb_ByIcaoDataAirline1st->setEnabled(enabled);
|
||||
ui->rb_AirlineGroupAsAirline->setEnabled(enabled); ui->rb_PickFirst->setEnabled(enabled);
|
||||
ui->rb_AirlineGroupAsAirline->setEnabled(enabled);
|
||||
ui->rb_AirlineGroupNo->setEnabled(enabled);
|
||||
ui->rb_AirlineGroupIfNoAirline->setEnabled(enabled);
|
||||
|
||||
ui->rb_PickFirst->setEnabled(enabled);
|
||||
ui->rb_PickByOrder->setEnabled(enabled);
|
||||
ui->rb_PickRandom->setEnabled(enabled);
|
||||
|
||||
ui->le_MsReverseLookup->setEnabled(enabled);
|
||||
ui->le_MsMatching->setEnabled(enabled);
|
||||
CGuiUtility::checkBoxReadOnly(ui->cb_MsReverseLookup, readonly);
|
||||
CGuiUtility::checkBoxReadOnly(ui->cb_MsMatching, readonly);
|
||||
}
|
||||
|
||||
CStatusMessageList CMatchingForm::validate(bool withNestedForms) const
|
||||
@@ -113,6 +116,7 @@ namespace BlackGui
|
||||
ui->cb_ByForceCivilian->setChecked(mode.testFlag(CAircraftMatcherSetup::ByForceCivilian));
|
||||
ui->cb_CategoryGlider->setChecked(mode.testFlag(CAircraftMatcherSetup::ByCategoryGlider));
|
||||
ui->cb_CategoryMilitaryAircraft->setChecked(mode.testFlag(CAircraftMatcherSetup::ByCategoryMilitary));
|
||||
ui->cb_CategorySmallAircraft->setChecked(mode.testFlag(CAircraftMatcherSetup::ByCategorySmallAircraft));
|
||||
ui->cb_ByVtol->setChecked(mode.testFlag(CAircraftMatcherSetup::ByVtol));
|
||||
ui->cb_ScoreIgnoreZeros->setChecked(mode.testFlag(CAircraftMatcherSetup::ScoreIgnoreZeros));
|
||||
ui->cb_ScorePreferColorLiveries->setChecked(mode.testFlag(CAircraftMatcherSetup::ScorePreferColorLiveries));
|
||||
@@ -122,6 +126,8 @@ namespace BlackGui
|
||||
ui->cb_ModelFailedFailover->setChecked(mode.testFlag(CAircraftMatcherSetup::ModelFailoverIfNoModelCanBeAdded));
|
||||
ui->cb_ModelSetVerification->setChecked(mode.testFlag(CAircraftMatcherSetup::ModelVerificationAtStartup));
|
||||
ui->cb_ModelSetVerificationOnlyErrorWarning->setChecked(mode.testFlag(CAircraftMatcherSetup::ModelVerificationOnlyWarnError));
|
||||
ui->cb_ReverseUseModelString->setChecked(mode.testFlag(CAircraftMatcherSetup::ReverseLookupModelString));
|
||||
ui->cb_ReverseUseSwiftLiveryIds->setChecked(mode.testFlag(CAircraftMatcherSetup::ReverseLookupSwiftLiveryIds));
|
||||
|
||||
this->setMatchingAlgorithm(setup);
|
||||
this->setPickStrategy(setup);
|
||||
@@ -187,6 +193,7 @@ namespace BlackGui
|
||||
CAircraftMatcherSetup::MatchingMode CMatchingForm::matchingMode() const
|
||||
{
|
||||
return CAircraftMatcherSetup::matchingMode(
|
||||
ui->cb_ReverseUseModelString->isChecked(), ui->cb_ReverseUseSwiftLiveryIds->isChecked(),
|
||||
ui->cb_ByModelString->isChecked(),
|
||||
ui->rb_ByIcaoDataAircraft1st->isChecked(), ui->rb_ByIcaoDataAirline1st->isChecked(),
|
||||
ui->cb_ByFamily->isChecked(), ui->cb_ByLivery->isChecked(),
|
||||
@@ -196,6 +203,7 @@ namespace BlackGui
|
||||
ui->cb_ByVtol->isChecked(),
|
||||
ui->cb_CategoryGlider->isChecked(),
|
||||
ui->cb_CategoryMilitaryAircraft->isChecked(),
|
||||
ui->cb_CategorySmallAircraft->isChecked(),
|
||||
ui->cb_ScoreIgnoreZeros->isChecked(), ui->cb_ScorePreferColorLiveries->isChecked(),
|
||||
ui->cb_ExclNoDbData->isChecked(), ui->cb_ExclNoExcludedModels->isChecked(),
|
||||
ui->cb_ModelSetVerification->isChecked(), ui->cb_ModelSetVerificationOnlyErrorWarning->isChecked(),
|
||||
@@ -206,7 +214,7 @@ namespace BlackGui
|
||||
|
||||
CAircraftMatcherSetup::PickSimilarStrategy CMatchingForm::pickStrategy() const
|
||||
{
|
||||
if (ui->rb_PickRandom->isChecked()) { return CAircraftMatcherSetup::PickRandom; }
|
||||
if (ui->rb_PickRandom->isChecked()) { return CAircraftMatcherSetup::PickRandom; }
|
||||
if (ui->rb_PickByOrder->isChecked()) { return CAircraftMatcherSetup::PickByOrder; }
|
||||
return CAircraftMatcherSetup::PickFirst;
|
||||
}
|
||||
@@ -216,7 +224,7 @@ namespace BlackGui
|
||||
switch (setup.getPickStrategy())
|
||||
{
|
||||
case CAircraftMatcherSetup::PickByOrder: ui->rb_PickByOrder->setChecked(true); break;
|
||||
case CAircraftMatcherSetup::PickRandom: ui->rb_PickRandom->setChecked(true); break;
|
||||
case CAircraftMatcherSetup::PickRandom: ui->rb_PickRandom->setChecked(true); break;
|
||||
case CAircraftMatcherSetup::PickFirst:
|
||||
default:
|
||||
ui->rb_PickFirst->setChecked(true); break;
|
||||
|
||||
@@ -6,8 +6,8 @@
|
||||
<rect>
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>323</width>
|
||||
<height>667</height>
|
||||
<width>315</width>
|
||||
<height>664</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
@@ -45,6 +45,18 @@
|
||||
<string>Algorithm</string>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gl_Algorithm">
|
||||
<property name="leftMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item row="0" column="1">
|
||||
<widget class="QRadioButton" name="rb_ScoreOnly">
|
||||
<property name="text">
|
||||
@@ -88,6 +100,18 @@
|
||||
<string>Matching script</string>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gl_MatchingScript" columnstretch="0,1,0,0">
|
||||
<property name="leftMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item row="1" column="0">
|
||||
<widget class="QLabel" name="lbl_MsMatching">
|
||||
<property name="text">
|
||||
@@ -147,12 +171,59 @@
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="gb_ReverseLookup">
|
||||
<property name="title">
|
||||
<string>Reverse lookup</string>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gl_ReverseLookup">
|
||||
<property name="leftMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item row="0" column="0">
|
||||
<widget class="QCheckBox" name="cb_ReverseUseModelString">
|
||||
<property name="text">
|
||||
<string>use model string</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QCheckBox" name="cb_ReverseUseSwiftLiveryIds">
|
||||
<property name="text">
|
||||
<string>use swift livery ids</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="gb_PickStrategy">
|
||||
<property name="title">
|
||||
<string>Similar results (strategy)</string>
|
||||
</property>
|
||||
<layout class="QHBoxLayout" name="hl_PickStrategy">
|
||||
<property name="leftMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QRadioButton" name="rb_PickFirst">
|
||||
<property name="text">
|
||||
@@ -189,6 +260,18 @@
|
||||
<string>Reduction</string>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gl_Mode">
|
||||
<property name="leftMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item row="2" column="0" colspan="2">
|
||||
<widget class="Line" name="line_Reduction">
|
||||
<property name="orientation">
|
||||
@@ -313,13 +396,18 @@
|
||||
<string>Matching by categories</string>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gl_MacthingCategories">
|
||||
<item row="0" column="0">
|
||||
<widget class="QCheckBox" name="cb_CategoryGlider">
|
||||
<property name="text">
|
||||
<string>Glider</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<property name="leftMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item row="0" column="1">
|
||||
<widget class="QCheckBox" name="cb_CategoryMilitaryAircraft">
|
||||
<property name="text">
|
||||
@@ -327,6 +415,20 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="0">
|
||||
<widget class="QCheckBox" name="cb_CategoryGlider">
|
||||
<property name="text">
|
||||
<string>glider</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="2">
|
||||
<widget class="QCheckBox" name="cb_CategorySmallAircraft">
|
||||
<property name="text">
|
||||
<string>small aircraft</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -342,6 +444,18 @@
|
||||
<string>Failure handling and verification</string>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gl_FailureHandling">
|
||||
<property name="leftMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item row="1" column="0">
|
||||
<widget class="QCheckBox" name="cb_ModelSetRemoveFailed">
|
||||
<property name="toolTip">
|
||||
@@ -377,16 +491,25 @@
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="gb_Exclusion">
|
||||
<widget class="QGroupBox" name="gbExclusion">
|
||||
<property name="title">
|
||||
<string>Exclusion</string>
|
||||
</property>
|
||||
<layout class="QHBoxLayout" name="hl_Exclude">
|
||||
<layout class="QHBoxLayout" name="hl_Exclusion">
|
||||
<property name="leftMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QCheckBox" name="cb_ExclNoExcludedModels">
|
||||
<property name="toolTip">
|
||||
<string>models marked as excluded are ignored</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>excluded models</string>
|
||||
</property>
|
||||
@@ -394,11 +517,8 @@
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QCheckBox" name="cb_ExclNoDbData">
|
||||
<property name="toolTip">
|
||||
<string>models without DB data are ignored</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>exclude if no DB data</string>
|
||||
<string>exclude if no DB models</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -411,6 +531,18 @@
|
||||
<string>Scoring</string>
|
||||
</property>
|
||||
<layout class="QHBoxLayout" name="hl_Scoring">
|
||||
<property name="leftMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="topMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="rightMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<property name="bottomMargin">
|
||||
<number>3</number>
|
||||
</property>
|
||||
<item>
|
||||
<widget class="QCheckBox" name="cb_ScorePreferColorLiveries">
|
||||
<property name="text">
|
||||
@@ -442,6 +574,8 @@
|
||||
<tabstop>le_MsMatching</tabstop>
|
||||
<tabstop>cb_MsMatching</tabstop>
|
||||
<tabstop>pb_MsMatching</tabstop>
|
||||
<tabstop>cb_ReverseUseModelString</tabstop>
|
||||
<tabstop>cb_ReverseUseSwiftLiveryIds</tabstop>
|
||||
<tabstop>rb_PickFirst</tabstop>
|
||||
<tabstop>rb_PickRandom</tabstop>
|
||||
<tabstop>rb_PickByOrder</tabstop>
|
||||
@@ -459,6 +593,7 @@
|
||||
<tabstop>cb_ByForceCivilian</tabstop>
|
||||
<tabstop>cb_CategoryGlider</tabstop>
|
||||
<tabstop>cb_CategoryMilitaryAircraft</tabstop>
|
||||
<tabstop>cb_CategorySmallAircraft</tabstop>
|
||||
<tabstop>cb_ModelSetVerification</tabstop>
|
||||
<tabstop>cb_ModelSetVerificationOnlyErrorWarning</tabstop>
|
||||
<tabstop>cb_ModelSetRemoveFailed</tabstop>
|
||||
@@ -471,7 +606,7 @@
|
||||
<resources/>
|
||||
<connections/>
|
||||
<buttongroups>
|
||||
<buttongroup name="bg_AirlineGroup"/>
|
||||
<buttongroup name="bg_ICAOfirst"/>
|
||||
<buttongroup name="bg_AirlineGroup"/>
|
||||
</buttongroups>
|
||||
</ui>
|
||||
|
||||
@@ -68,13 +68,6 @@ namespace BlackMisc
|
||||
this->setMatchingMode(m);
|
||||
}
|
||||
|
||||
void CAircraftMatcherSetup::setReverseLookup(bool useModelLookup)
|
||||
{
|
||||
MatchingMode m = this->getMatchingMode();
|
||||
m.setFlag(ReverseLookupModelString, useModelLookup);
|
||||
this->setMatchingMode(m);
|
||||
}
|
||||
|
||||
void CAircraftMatcherSetup::setAirlineGroupBehaviour(bool ifNoAirline, bool sameAsAirline)
|
||||
{
|
||||
MatchingMode m = this->getMatchingMode();
|
||||
@@ -118,11 +111,11 @@ namespace BlackMisc
|
||||
const ColumnIndex i = index.frontCasted<ColumnIndex>();
|
||||
switch (i)
|
||||
{
|
||||
case IndexMatchingAlgorithm: m_algorithm = variant.toInt(); break;
|
||||
case IndexMatchingMode: m_mode = variant.toInt(); break;
|
||||
case IndexPickStrategy: m_strategy = variant.toInt(); break;
|
||||
case IndexMatchingAlgorithm: m_algorithm = variant.toInt(); break;
|
||||
case IndexMatchingMode: m_mode = variant.toInt(); break;
|
||||
case IndexPickStrategy: m_strategy = variant.toInt(); break;
|
||||
case IndexMsNetworkEntryFile: m_msReverseLookupFile = variant.toQString(); break;
|
||||
case IndexMsMatchingStageFile: m_msMatchingStageFile = variant.toQString(); break;
|
||||
case IndexMsMatchingStageFile: m_msMatchingStageFile = variant.toQString(); break;
|
||||
case IndexMsNetworkEnabled: m_msReverseEnabled = variant.toBool(); break;
|
||||
case IndexMsMatchingStageEnabled: m_msReverseEnabled = variant.toBool(); break;
|
||||
default: break;
|
||||
@@ -201,32 +194,36 @@ namespace BlackMisc
|
||||
static const QString modelFailedAdded("Replace models failed to be added");
|
||||
static const QString categoryGlider("glider categories");
|
||||
static const QString categoryMilitary("military categories");
|
||||
static const QString categorySmallAircraft("small aircraft categories");
|
||||
static const QString revModelString("reverse model lookup");
|
||||
static const QString revLiveryIds("reverse livery ids");
|
||||
static const QString agSameAsAirline("group as airline");
|
||||
static const QString agIfNoAirline("group if no airline");
|
||||
|
||||
switch (modeFlag)
|
||||
{
|
||||
case ReverseLookupModelString: return revModelString;
|
||||
case ByModelString: return ms;
|
||||
case ByIcaoData: return icao;
|
||||
case ByFamily: return family;
|
||||
case ByLivery: return livery;
|
||||
case ByCombinedType: return combined;
|
||||
case ByIcaoOrderAircraftFirst: return icaoAircraft;
|
||||
case ByIcaoOrderAirlineFirst: return icaoAirline;
|
||||
case ByForceCivilian: return forceCiv;
|
||||
case ByForceMilitary: return forceMil;
|
||||
case ByVtol: return vtol;
|
||||
case ByCategoryGlider: return categoryGlider;
|
||||
case ByCategoryMilitary: return categoryMilitary;
|
||||
case ScoreIgnoreZeros: return noZeros;
|
||||
case ScorePreferColorLiveries: return preferColorLiveries;
|
||||
case ExcludeNoDbData: return exNoDb;
|
||||
case ExcludeNoExcluded: return exExcl;
|
||||
case ModelSetRemoveFailedModel: return removeFromModelSet;
|
||||
case ModelVerificationAtStartup: return verification;
|
||||
case ByAirlineGroupIfNoAirline: return agIfNoAirline;
|
||||
case ReverseLookupModelString: return revModelString;
|
||||
case ReverseLookupSwiftLiveryIds: return revLiveryIds;
|
||||
case ByModelString: return ms;
|
||||
case ByIcaoData: return icao;
|
||||
case ByFamily: return family;
|
||||
case ByLivery: return livery;
|
||||
case ByCombinedType: return combined;
|
||||
case ByIcaoOrderAircraftFirst: return icaoAircraft;
|
||||
case ByIcaoOrderAirlineFirst: return icaoAirline;
|
||||
case ByForceCivilian: return forceCiv;
|
||||
case ByForceMilitary: return forceMil;
|
||||
case ByVtol: return vtol;
|
||||
case ByCategoryGlider: return categoryGlider;
|
||||
case ByCategoryMilitary: return categoryMilitary;
|
||||
case ByCategorySmallAircraft: return categorySmallAircraft;
|
||||
case ScoreIgnoreZeros: return noZeros;
|
||||
case ScorePreferColorLiveries: return preferColorLiveries;
|
||||
case ExcludeNoDbData: return exNoDb;
|
||||
case ExcludeNoExcluded: return exExcl;
|
||||
case ModelSetRemoveFailedModel: return removeFromModelSet;
|
||||
case ModelVerificationAtStartup: return verification;
|
||||
case ByAirlineGroupIfNoAirline: return agIfNoAirline;
|
||||
case ByAirlineGroupSameAsAirline: return agSameAsAirline;
|
||||
case ModelVerificationOnlyWarnError: return verificationWarn;
|
||||
case ModelFailoverIfNoModelCanBeAdded: return modelFailedAdded;
|
||||
@@ -240,25 +237,27 @@ namespace BlackMisc
|
||||
QString CAircraftMatcherSetup::modeToString(MatchingMode mode)
|
||||
{
|
||||
QStringList modes;
|
||||
if (mode.testFlag(ReverseLookupModelString)) { modes << modeFlagToString(ReverseLookupModelString); }
|
||||
if (mode.testFlag(ByModelString)) { modes << modeFlagToString(ByModelString); }
|
||||
if (mode.testFlag(ByIcaoData)) { modes << modeFlagToString(ByIcaoData); }
|
||||
if (mode.testFlag(ByIcaoOrderAircraftFirst)) { modes << modeFlagToString(ByIcaoOrderAircraftFirst); }
|
||||
if (mode.testFlag(ByIcaoOrderAirlineFirst)) { modes << modeFlagToString(ByIcaoOrderAirlineFirst); }
|
||||
if (mode.testFlag(ByFamily)) { modes << modeFlagToString(ByFamily); }
|
||||
if (mode.testFlag(ByLivery)) { modes << modeFlagToString(ByLivery); }
|
||||
if (mode.testFlag(ByCombinedType)) { modes << modeFlagToString(ByCombinedType); }
|
||||
if (mode.testFlag(ByForceCivilian)) { modes << modeFlagToString(ByForceCivilian); }
|
||||
if (mode.testFlag(ByForceMilitary)) { modes << modeFlagToString(ByForceMilitary); }
|
||||
if (mode.testFlag(ByCategoryGlider)) { modes << modeFlagToString(ByCategoryGlider); }
|
||||
if (mode.testFlag(ByCategoryMilitary)) { modes << modeFlagToString(ByCategoryMilitary); }
|
||||
if (mode.testFlag(ByVtol)) { modes << modeFlagToString(ByVtol); }
|
||||
if (mode.testFlag(ScoreIgnoreZeros)) { modes << modeFlagToString(ScoreIgnoreZeros); }
|
||||
if (mode.testFlag(ScorePreferColorLiveries)) { modes << modeFlagToString(ScorePreferColorLiveries); }
|
||||
if (mode.testFlag(ModelSetRemoveFailedModel)) { modes << modeFlagToString(ModelSetRemoveFailedModel); }
|
||||
if (mode.testFlag(ModelVerificationAtStartup)) { modes << modeFlagToString(ModelVerificationAtStartup); }
|
||||
if (mode.testFlag(ByAirlineGroupIfNoAirline)) { modes << modeFlagToString(ByAirlineGroupIfNoAirline); }
|
||||
if (mode.testFlag(ByAirlineGroupSameAsAirline)) { modes << modeFlagToString(ByAirlineGroupSameAsAirline); }
|
||||
if (mode.testFlag(ReverseLookupModelString)) { modes << modeFlagToString(ReverseLookupModelString); }
|
||||
if (mode.testFlag(ReverseLookupSwiftLiveryIds)) { modes << modeFlagToString(ReverseLookupSwiftLiveryIds); }
|
||||
if (mode.testFlag(ByModelString)) { modes << modeFlagToString(ByModelString); }
|
||||
if (mode.testFlag(ByIcaoData)) { modes << modeFlagToString(ByIcaoData); }
|
||||
if (mode.testFlag(ByIcaoOrderAircraftFirst)) { modes << modeFlagToString(ByIcaoOrderAircraftFirst); }
|
||||
if (mode.testFlag(ByIcaoOrderAirlineFirst)) { modes << modeFlagToString(ByIcaoOrderAirlineFirst); }
|
||||
if (mode.testFlag(ByFamily)) { modes << modeFlagToString(ByFamily); }
|
||||
if (mode.testFlag(ByLivery)) { modes << modeFlagToString(ByLivery); }
|
||||
if (mode.testFlag(ByCombinedType)) { modes << modeFlagToString(ByCombinedType); }
|
||||
if (mode.testFlag(ByForceCivilian)) { modes << modeFlagToString(ByForceCivilian); }
|
||||
if (mode.testFlag(ByForceMilitary)) { modes << modeFlagToString(ByForceMilitary); }
|
||||
if (mode.testFlag(ByCategoryGlider)) { modes << modeFlagToString(ByCategoryGlider); }
|
||||
if (mode.testFlag(ByCategoryMilitary)) { modes << modeFlagToString(ByCategoryMilitary); }
|
||||
if (mode.testFlag(ByCategorySmallAircraft)) { modes << modeFlagToString(ByCategorySmallAircraft); }
|
||||
if (mode.testFlag(ByVtol)) { modes << modeFlagToString(ByVtol); }
|
||||
if (mode.testFlag(ScoreIgnoreZeros)) { modes << modeFlagToString(ScoreIgnoreZeros); }
|
||||
if (mode.testFlag(ScorePreferColorLiveries)) { modes << modeFlagToString(ScorePreferColorLiveries); }
|
||||
if (mode.testFlag(ModelSetRemoveFailedModel)) { modes << modeFlagToString(ModelSetRemoveFailedModel); }
|
||||
if (mode.testFlag(ModelVerificationAtStartup)) { modes << modeFlagToString(ModelVerificationAtStartup); }
|
||||
if (mode.testFlag(ByAirlineGroupIfNoAirline)) { modes << modeFlagToString(ByAirlineGroupIfNoAirline); }
|
||||
if (mode.testFlag(ByAirlineGroupSameAsAirline)) { modes << modeFlagToString(ByAirlineGroupSameAsAirline); }
|
||||
if (mode.testFlag(ModelVerificationOnlyWarnError)) { modes << modeFlagToString(ModelVerificationOnlyWarnError); }
|
||||
if (mode.testFlag(ModelFailoverIfNoModelCanBeAdded)) { modes << modeFlagToString(ModelFailoverIfNoModelCanBeAdded); }
|
||||
return modes.join(", ");
|
||||
@@ -283,35 +282,39 @@ namespace BlackMisc
|
||||
}
|
||||
|
||||
CAircraftMatcherSetup::MatchingMode CAircraftMatcherSetup::matchingMode(
|
||||
bool byModelString, bool byIcaoDataAircraft1st, bool byIcaoDataAirline1st, bool byFamily, bool byLivery, bool byCombinedType,
|
||||
bool byForceMilitary, bool byForceCivilian, bool byVtol,
|
||||
bool byGliderCategory, bool byMilitaryCategory,
|
||||
bool scoreIgnoreZeros, bool scorePreferColorLiveries,
|
||||
bool excludeNoDbData, bool excludeNoExcluded,
|
||||
bool revModelString, bool revLiveryIds,
|
||||
bool byModelString, bool byIcaoDataAircraft1st, bool byIcaoDataAirline1st, bool byFamily, bool byLivery, bool byCombinedType,
|
||||
bool byForceMilitary, bool byForceCivilian, bool byVtol,
|
||||
bool byGliderCategory, bool byMilitaryCategory, bool bySmallAircraftCategory,
|
||||
bool scoreIgnoreZeros, bool scorePreferColorLiveries,
|
||||
bool excludeNoDbData, bool excludeNoExcluded,
|
||||
bool modelVerification, bool modelVerificationWarnError,
|
||||
bool modelSetRemoveFailedModel, bool modelFailover)
|
||||
{
|
||||
if (modelFailover) { modelSetRemoveFailedModel = true; } // otherwise this does not make sense
|
||||
|
||||
MatchingMode mode = byModelString ? ByModelString : ModeNone;
|
||||
if (byIcaoDataAircraft1st) { mode |= ByIcaoOrderAircraftFirst; }
|
||||
if (byIcaoDataAirline1st) { mode |= ByIcaoOrderAirlineFirst; }
|
||||
if (byFamily) { mode |= ByFamily; }
|
||||
if (byLivery) { mode |= ByLivery; }
|
||||
if (byCombinedType) { mode |= ByCombinedType; }
|
||||
if (byForceMilitary) { mode |= ByForceMilitary; }
|
||||
if (byForceCivilian) { mode |= ByForceCivilian; }
|
||||
if (byVtol) { mode |= ByVtol; }
|
||||
if (byGliderCategory) { mode |= ByCategoryGlider; }
|
||||
if (byMilitaryCategory) { mode |= ByCategoryMilitary; }
|
||||
if (scoreIgnoreZeros) { mode |= ScoreIgnoreZeros; }
|
||||
if (scorePreferColorLiveries) { mode |= ScorePreferColorLiveries; }
|
||||
if (excludeNoDbData) { mode |= ExcludeNoDbData; }
|
||||
if (excludeNoExcluded) { mode |= ExcludeNoExcluded; }
|
||||
if (modelSetRemoveFailedModel) { mode |= ModelSetRemoveFailedModel; }
|
||||
if (modelVerification) { mode |= ModelVerificationAtStartup; }
|
||||
if (byIcaoDataAircraft1st) { mode |= ByIcaoOrderAircraftFirst; }
|
||||
if (byIcaoDataAirline1st) { mode |= ByIcaoOrderAirlineFirst; }
|
||||
if (byFamily) { mode |= ByFamily; }
|
||||
if (byLivery) { mode |= ByLivery; }
|
||||
if (byCombinedType) { mode |= ByCombinedType; }
|
||||
if (byForceMilitary) { mode |= ByForceMilitary; }
|
||||
if (byForceCivilian) { mode |= ByForceCivilian; }
|
||||
if (byVtol) { mode |= ByVtol; }
|
||||
if (byGliderCategory) { mode |= ByCategoryGlider; }
|
||||
if (byMilitaryCategory) { mode |= ByCategoryMilitary; }
|
||||
if (bySmallAircraftCategory) { mode |= ByCategorySmallAircraft; }
|
||||
if (scoreIgnoreZeros) { mode |= ScoreIgnoreZeros; }
|
||||
if (scorePreferColorLiveries) { mode |= ScorePreferColorLiveries; }
|
||||
if (excludeNoDbData) { mode |= ExcludeNoDbData; }
|
||||
if (excludeNoExcluded) { mode |= ExcludeNoExcluded; }
|
||||
if (modelSetRemoveFailedModel) { mode |= ModelSetRemoveFailedModel; }
|
||||
if (modelVerification) { mode |= ModelVerificationAtStartup; }
|
||||
if (modelVerificationWarnError) { mode |= ModelVerificationOnlyWarnError; }
|
||||
if (modelFailover) { mode |= ModelFailoverIfNoModelCanBeAdded; }
|
||||
if (revModelString) { mode |= ReverseLookupModelString; }
|
||||
if (revLiveryIds) { mode |= ReverseLookupSwiftLiveryIds; }
|
||||
return mode;
|
||||
}
|
||||
} // namespace
|
||||
|
||||
@@ -43,16 +43,10 @@ namespace BlackMisc
|
||||
ByForceCivilian = 1 << 7, //!< civilian (in) will only search in civilian
|
||||
ByMilitary = ByForceCivilian | ByForceMilitary,
|
||||
ByVtol = 1 << 8,
|
||||
ByIcaoOrderAircraftFirst = (1 << 9) | ByIcaoData,
|
||||
ByIcaoOrderAircraftFirst = (1 << 9) | ByIcaoData,
|
||||
ByIcaoOrderAirlineFirst = (1 << 10) | ByIcaoData,
|
||||
ByAirlineGroupSameAsAirline = (1 << 11) | ByIcaoData,
|
||||
ByAirlineGroupIfNoAirline = (1 << 12) | ByIcaoData,
|
||||
ByCategoryGlider = 1 << 20,
|
||||
ByCategoryMilitary = 1 << 21,
|
||||
|
||||
// --- score based matching ---
|
||||
ScoreIgnoreZeros = 1 << 11, //!< zero scores are ignored
|
||||
ScorePreferColorLiveries = 1 << 12, //!< prefer color liveries
|
||||
|
||||
// --- exclusion ---
|
||||
ExcludeNoDbData = 1 << 13,
|
||||
@@ -62,12 +56,22 @@ namespace BlackMisc
|
||||
// --- model set ---
|
||||
ModelSetRemoveFailedModel = 1 << 15,
|
||||
ModelVerificationAtStartup = 1 << 16,
|
||||
ModelVerificationOnlyWarnError = 1 << 18, // later added, hence 18
|
||||
ModelFailoverIfNoModelCanBeAdded = 1 << 17,
|
||||
ModelVerificationOnlyWarnError = 1 << 18, // later added, hence 18
|
||||
|
||||
// --- categories ---
|
||||
ByCategoryGlider = 1 << 20,
|
||||
ByCategoryMilitary = 1 << 21,
|
||||
ByCategorySmallAircraft = 1 << 22,
|
||||
|
||||
// --- reverse lookup ---
|
||||
ReverseLookupModelString = 1 << 19,
|
||||
ReverseLookupDefault = ReverseLookupModelString,
|
||||
ReverseLookupModelString = 1 << 25,
|
||||
ReverseLookupSwiftLiveryIds = 1 << 26,
|
||||
ReverseLookupDefault = ReverseLookupModelString | ReverseLookupSwiftLiveryIds,
|
||||
|
||||
// --- score based matching ---
|
||||
ScoreIgnoreZeros = 1 << 28, //!< zero scores are ignored
|
||||
ScorePreferColorLiveries = 1 << 29, //!< prefer color liveries
|
||||
|
||||
// --- others ---
|
||||
ModeNone = 0,
|
||||
@@ -77,7 +81,7 @@ namespace BlackMisc
|
||||
ModeDefaultSet = ModelSetRemoveFailedModel | ModelVerificationAtStartup | ModelFailoverIfNoModelCanBeAdded,
|
||||
|
||||
// default depending on algorithm
|
||||
ModeDefaultScore = ScoreIgnoreZeros | ScorePreferColorLiveries | ExcludeDefault | ReverseLookupDefault,
|
||||
ModeDefaultScore = ScoreIgnoreZeros | ScorePreferColorLiveries | ExcludeDefault | ReverseLookupDefault,
|
||||
ModeDefaultReduce = ModeByFLags | ByModelString | ByFamily | ByManufacturer | ByCombinedType | ByIcaoOrderAircraftFirst | ByAirlineGroupIfNoAirline | ReverseLookupDefault | ExcludeDefault | ByLivery,
|
||||
ModeDefaultReducePlusScore = ModeByFLags | ByModelString | ByFamily | ByManufacturer | ByCombinedType | ByIcaoOrderAircraftFirst | ByAirlineGroupIfNoAirline | ReverseLookupDefault | ExcludeDefault | ModeDefaultScore,
|
||||
};
|
||||
@@ -185,9 +189,6 @@ namespace BlackMisc
|
||||
//! Set the strategy
|
||||
void setPickStrategy(PickSimilarStrategy strategy) { m_strategy = static_cast<int>(strategy); }
|
||||
|
||||
//! Set reverse lookup flags
|
||||
void setReverseLookup(bool useModelLookup);
|
||||
|
||||
//! Airline group behaviour
|
||||
void setAirlineGroupBehaviour(bool ifNoAirline, bool sameAsAirline);
|
||||
|
||||
@@ -222,10 +223,11 @@ namespace BlackMisc
|
||||
static const QString &strategyToString(PickSimilarStrategy strategy);
|
||||
|
||||
//! Mode by flags
|
||||
static MatchingMode matchingMode(bool byModelString, bool byIcaoDataAircraft1st, bool byIcaoDataAirline1st,
|
||||
static MatchingMode matchingMode(bool revModelString, bool revLiveryIds,
|
||||
bool byModelString, bool byIcaoDataAircraft1st, bool byIcaoDataAirline1st,
|
||||
bool byFamily, bool byLivery, bool byCombinedType,
|
||||
bool byForceMilitary, bool byForceCivilian,
|
||||
bool byVtol, bool byGliderCategory, bool byMilitaryCategory,
|
||||
bool byVtol, bool byGliderCategory, bool byMilitaryCategory, bool bySmallAircraftCategory,
|
||||
bool scoreIgnoreZeros, bool scorePreferColorLiveries, bool excludeNoDbData, bool excludeNoExcluded,
|
||||
bool modelVerification, bool modelVerificationWarnError, bool modelSetRemoveFailedModel, bool modelFailover);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user