mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-01 21:56:43 +08:00
Ref T348, setup "remove from set if failed"
This commit is contained in:
@@ -46,6 +46,7 @@ namespace BlackGui
|
||||
CGuiUtility::checkBoxReadOnly(ui->cb_ByForceCivilian, readonly);
|
||||
CGuiUtility::checkBoxReadOnly(ui->cb_ScoreIgnoreZeros, readonly);
|
||||
CGuiUtility::checkBoxReadOnly(ui->cb_ScorePreferColorLiveries, readonly);
|
||||
CGuiUtility::checkBoxReadOnly(ui->cb_ModelSetRemoveFailed, readonly);
|
||||
|
||||
const bool enabled = !readonly;
|
||||
ui->rb_Reduction->setEnabled(enabled);
|
||||
@@ -80,6 +81,7 @@ namespace BlackGui
|
||||
ui->cb_ScorePreferColorLiveries->setChecked(mode.testFlag(CAircraftMatcherSetup::ScorePreferColorLiveries));
|
||||
ui->cb_ExclNoExcludedModels->setChecked(mode.testFlag(CAircraftMatcherSetup::ExcludeNoExcluded));
|
||||
ui->cb_ExclNoDbData->setChecked(mode.testFlag(CAircraftMatcherSetup::ExcludeNoDbData));
|
||||
ui->cb_ModelSetRemoveFailed->setChecked(mode.testFlag(CAircraftMatcherSetup::ModelSetRemoveFailedModel));
|
||||
|
||||
this->setMatchingAlgorithm(setup);
|
||||
this->setPickStrategy(setup);
|
||||
@@ -115,7 +117,8 @@ namespace BlackGui
|
||||
ui->cb_ByForceCivilian->isChecked(),
|
||||
ui->cb_ByVtol->isChecked(),
|
||||
ui->cb_ScoreIgnoreZeros->isChecked(), ui->cb_ScorePreferColorLiveries->isChecked(),
|
||||
ui->cb_ExclNoDbData->isChecked(), ui->cb_ExclNoExcludedModels->isChecked()
|
||||
ui->cb_ExclNoDbData->isChecked(), ui->cb_ExclNoExcludedModels->isChecked(),
|
||||
ui->cb_ModelSetRemoveFailed->isChecked()
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
<x>0</x>
|
||||
<y>0</y>
|
||||
<width>293</width>
|
||||
<height>375</height>
|
||||
<height>438</height>
|
||||
</rect>
|
||||
</property>
|
||||
<property name="windowTitle">
|
||||
@@ -105,10 +105,40 @@
|
||||
<string>Reduction</string>
|
||||
</property>
|
||||
<layout class="QGridLayout" name="gl_Mode">
|
||||
<item row="0" column="1">
|
||||
<widget class="QRadioButton" name="rb_ByIcaoDataAirline1st">
|
||||
<item row="3" column="1" colspan="2">
|
||||
<widget class="QCheckBox" name="cb_ByVtol">
|
||||
<property name="toolTip">
|
||||
<string>Vertical Takeoff or Landing</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>by ICAO: airline first</string>
|
||||
<string>VTOL (helicopters and such)</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="0">
|
||||
<widget class="QCheckBox" name="cb_ByForceMilitary">
|
||||
<property name="toolTip">
|
||||
<string>inbound military force matched military</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>force military</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="1">
|
||||
<widget class="QCheckBox" name="cb_ByForceCivilian">
|
||||
<property name="toolTip">
|
||||
<string>inbound civilian force matched civilian</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>force civilian</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="1">
|
||||
<widget class="QCheckBox" name="cb_ByLivery">
|
||||
<property name="text">
|
||||
<string> livery</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -119,6 +149,13 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="0" column="1">
|
||||
<widget class="QRadioButton" name="rb_ByIcaoDataAirline1st">
|
||||
<property name="text">
|
||||
<string>by ICAO: airline first</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="0">
|
||||
<widget class="QCheckBox" name="cb_ByCombinedCode">
|
||||
<property name="text">
|
||||
@@ -126,10 +163,10 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="1">
|
||||
<widget class="QCheckBox" name="cb_ByLivery">
|
||||
<item row="2" column="2">
|
||||
<widget class="QCheckBox" name="cb_ByFamily">
|
||||
<property name="text">
|
||||
<string> livery</string>
|
||||
<string>family</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
@@ -147,40 +184,19 @@
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="2" column="2">
|
||||
<widget class="QCheckBox" name="cb_ByFamily">
|
||||
</layout>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QGroupBox" name="gb_FailureHandling">
|
||||
<property name="title">
|
||||
<string>Failure handling</string>
|
||||
</property>
|
||||
<layout class="QHBoxLayout" name="hFailureHandling">
|
||||
<item>
|
||||
<widget class="QCheckBox" name="cb_ModelSetRemoveFailed">
|
||||
<property name="text">
|
||||
<string>family</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="0">
|
||||
<widget class="QCheckBox" name="cb_ByForceMilitary">
|
||||
<property name="toolTip">
|
||||
<string>inbound military force matched military</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>force military</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="3" column="1" colspan="2">
|
||||
<widget class="QCheckBox" name="cb_ByVtol">
|
||||
<property name="toolTip">
|
||||
<string>Vertical Takeoff or Landing</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>VTOL (helicopters and such)</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item row="4" column="1">
|
||||
<widget class="QCheckBox" name="cb_ByForceCivilian">
|
||||
<property name="toolTip">
|
||||
<string>inbound civilian force matched civilian</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>force civilian</string>
|
||||
<string>removed failed from set</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
|
||||
@@ -134,6 +134,7 @@ namespace BlackMisc
|
||||
static const QString preferColorLiveries("scoring, prefer color liveries");
|
||||
static const QString exNoDb("excl.without DB data");
|
||||
static const QString exExcl("excl.excluded");
|
||||
static const QString remModelSet("rem.from model set");
|
||||
|
||||
switch (modeFlag)
|
||||
{
|
||||
@@ -151,6 +152,7 @@ namespace BlackMisc
|
||||
case ScorePreferColorLiveries: return preferColorLiveries;
|
||||
case ExcludeNoDbData: return exNoDb;
|
||||
case ExcludeNoExcluded: return exExcl;
|
||||
case ModelSetRemoveFailedModel: return remModelSet;
|
||||
default: break;
|
||||
}
|
||||
|
||||
@@ -172,7 +174,8 @@ namespace BlackMisc
|
||||
if (mode.testFlag(ByForceMilitary)) { modes << modeFlagToString(ByForceMilitary); }
|
||||
if (mode.testFlag(ByVtol)) { modes << modeFlagToString(ByVtol); }
|
||||
if (mode.testFlag(ScoreIgnoreZeros)) { modes << modeFlagToString(ScoreIgnoreZeros); }
|
||||
if (mode.testFlag(ScorePreferColorLiveries)) { modes << modeFlagToString(ScorePreferColorLiveries); }
|
||||
if (mode.testFlag(ScorePreferColorLiveries)) { modes << modeFlagToString(ScorePreferColorLiveries); }
|
||||
if (mode.testFlag(ModelSetRemoveFailedModel)) { modes << modeFlagToString(ModelSetRemoveFailedModel); }
|
||||
return modes.join(", ");
|
||||
}
|
||||
|
||||
@@ -198,7 +201,8 @@ namespace BlackMisc
|
||||
bool byForceMilitary, bool byForceCivilian,
|
||||
bool byVtol,
|
||||
bool scoreIgnoreZeros, bool scorePreferColorLiveries,
|
||||
bool excludeNoDbData, bool excludeNoExcluded)
|
||||
bool excludeNoDbData, bool excludeNoExcluded,
|
||||
bool modelSetRemoveFailedModel)
|
||||
{
|
||||
MatchingMode mode = byModelString ? ByModelString : ModeNone;
|
||||
if (byIcaoDataAircraft1st) { mode |= ByIcaoOrderAircraftFirst; }
|
||||
@@ -213,6 +217,7 @@ namespace BlackMisc
|
||||
if (scorePreferColorLiveries) { mode |= ScorePreferColorLiveries; }
|
||||
if (excludeNoDbData) { mode |= ExcludeNoDbData; }
|
||||
if (excludeNoExcluded) { mode |= ExcludeNoExcluded; }
|
||||
if (modelSetRemoveFailedModel) { mode |= ModelSetRemoveFailedModel; }
|
||||
return mode;
|
||||
}
|
||||
} // namespace
|
||||
|
||||
@@ -54,6 +54,8 @@ namespace BlackMisc
|
||||
ExcludeNoDbData = 1 << 13,
|
||||
ExcludeNoExcluded = 1 << 14,
|
||||
ExcludeDefault = ExcludeNoExcluded | ExcludeNoDbData,
|
||||
// --- model set ---
|
||||
ModelSetRemoveFailedModel = 1 << 15,
|
||||
// --- others ---
|
||||
ModeNone = 0,
|
||||
ModeByFLags = ByMilitary | ByVtol,
|
||||
@@ -106,6 +108,9 @@ namespace BlackMisc
|
||||
//! Dynamic offset values?
|
||||
void setMatchingMode(MatchingMode mode) { m_mode = static_cast<int>(mode); }
|
||||
|
||||
//! Remove if failed?
|
||||
bool removeFromSetIfFailed() const { return this->getMatchingMode().testFlag(ModelSetRemoveFailedModel); }
|
||||
|
||||
//! Strategy among equally suitable models
|
||||
PickSimilarStrategy getPickStrategy() const { return static_cast<PickSimilarStrategy>(m_strategy); }
|
||||
|
||||
@@ -144,7 +149,8 @@ namespace BlackMisc
|
||||
bool byFamily, bool byLivery, bool byCombinedType,
|
||||
bool byForceMilitary, bool byForceCivilian,
|
||||
bool byVtol,
|
||||
bool scoreIgnoreZeros, bool scorePreferColorLiveries, bool excludeNoDbData, bool excludeNoExcluded);
|
||||
bool scoreIgnoreZeros, bool scorePreferColorLiveries, bool excludeNoDbData, bool excludeNoExcluded,
|
||||
bool modelSetRemoveFailedModel);
|
||||
|
||||
private:
|
||||
int m_algorithm = static_cast<int>(MatchingStepwiseReducePlusScoreBased);
|
||||
|
||||
Reference in New Issue
Block a user