Ref T515, highlight by models and changed naming

This commit is contained in:
Klaus Basan
2019-01-23 15:41:42 +01:00
committed by Mat Sutcliffe
parent 6acde8799f
commit 019cc6259e
6 changed files with 52 additions and 36 deletions

View File

@@ -570,10 +570,10 @@ namespace BlackGui
void CDbMappingComponent::onStashedModelsChangedDigest()
{
const bool highlightVPilot = ui->tvp_AircraftModelsForVPilot->derivedModel()->highlightModelStrings();
const bool highlightOwnModels = ui->comp_OwnAircraftModels->view()->derivedModel()->highlightModelStrings();
const bool highlightModelSet = ui->comp_OwnModelSet->view()->derivedModel()->highlightModelStrings();
const bool highlight = highlightOwnModels || highlightModelSet || highlightVPilot;
const bool highlightVPilot = ui->tvp_AircraftModelsForVPilot->derivedModel()->highlightModels();
const bool highlightOwnModels = ui->comp_OwnAircraftModels->view()->derivedModel()->highlightModels();
const bool highlightModelSet = ui->comp_OwnModelSet->view()->derivedModel()->highlightModels();
const bool highlight = highlightOwnModels || highlightModelSet || highlightVPilot;
if (!highlight) { return; }
const QStringList stashedModels(ui->comp_StashAircraft->getStashedModelStrings());
if (highlightVPilot)
@@ -657,7 +657,7 @@ namespace BlackGui
QString o(ot);
const QString sim(ui->comp_OwnAircraftModels->getOwnModelsSimulator().toQString(true));
if (!sim.isEmpty()) { o = o.append(" ").append(sim); }
QString f = ui->comp_OwnAircraftModels->view()->hasFilter() ? "F" : "";
const QString f = ui->comp_OwnAircraftModels->view()->hasFilter() ? "F" : "";
o = CGuiUtility::replaceTabCountValue(o, ui->comp_OwnAircraftModels->view()->rowCount()) + f;
ui->tw_ModelsToBeMapped->setTabText(i, o);
}

View File

@@ -75,8 +75,8 @@ namespace BlackGui
ui->tvp_StashAircraftModels->setAcceptedMetaTypeIds();
ui->tvp_StashAircraftModels->menuAddItems(CAircraftModelView::MenuLoadAndSave);
ui->tvp_StashAircraftModels->menuAddItems(CAircraftModelView::MenuRemoveSelectedRows);
ui->tvp_StashAircraftModels->setHighlightModelStrings(true);
ui->tvp_StashAircraftModels->setHighlightModelStringsColor(Qt::red);
ui->tvp_StashAircraftModels->setHighlight(true);
ui->tvp_StashAircraftModels->setHighlightColor(Qt::red);
ui->tvp_StashAircraftModels->setSettingsDirectoryIndex(CDirectories::IndexDirLastModelStashJsonOrDefault);
this->enableButtonRow();

View File

@@ -173,12 +173,17 @@ namespace BlackGui
this->endResetModel();
}
void CAircraftModelListModel::setHighlightModelStrings(bool highlightModelStrings)
void CAircraftModelListModel::setHighlightModels(const CAircraftModelList &highlightModels)
{
if (m_highlightModelStrings == highlightModelStrings) { return; }
this->setHighlightModelStrings(highlightModels.getModelStringList(true));
}
void CAircraftModelListModel::setHighlight(bool highlightModels)
{
if (m_highlightModels == highlightModels) { return; }
this->beginResetModel();
m_highlightModelStrings = highlightModelStrings;
m_highlightModels = highlightModels;
this->endResetModel();
}
@@ -201,7 +206,7 @@ namespace BlackGui
{
if (role == Qt::BackgroundRole)
{
const bool ms = highlightModelStrings() && !m_highlightStrings.isEmpty();
const bool ms = highlightModels() && !m_highlightStrings.isEmpty();
if (!ms) { return CListModelDbObjects::data(index, role); }
// the underlying model object
@@ -226,7 +231,7 @@ namespace BlackGui
void CAircraftModelListModel::clearHighlighting()
{
m_highlightModelStrings = false;
m_highlightModels = false;
m_highlightStrings.clear();
COrderableListModelDbObjects::clearHighlighting();
}

View File

@@ -64,13 +64,16 @@ namespace BlackGui
void setHighlightModelStrings(const QStringList &modelStrings = QStringList());
//! Highlight models
bool highlightModelStrings() const { return m_highlightModelStrings; }
void setHighlightModels(const BlackMisc::Simulation::CAircraftModelList &highlightModels);
//! Highlight models
void setHighlightModelStrings(bool highlightModelStrings);
bool highlightModels() const { return m_highlightModels; }
//! Highlight models
void setHighlight(bool highlightModels);
//! The highlight color
void setHighlightModelStringsColor(const QBrush &brush) { m_highlightColor = brush; }
void setHighlightColor(const QBrush &brush) { m_highlightColor = brush; }
//! \copydoc CListModelBaseNonTemplate::clearHighlighting
virtual void clearHighlighting() override;
@@ -91,10 +94,10 @@ namespace BlackGui
virtual bool isOrderable() const override { return true; }
private:
AircraftModelMode m_mode = NotSet; //!< current mode
bool m_highlightModelStrings = false; //!< highlight if in m_highlightStrings
QStringList m_highlightStrings; //!< model strings to highlight
QBrush m_highlightColor{Qt::yellow}; //!< how to highlight
AircraftModelMode m_mode = NotSet; //!< current mode
bool m_highlightModels = false; //!< highlight if in m_highlightStrings
QStringList m_highlightStrings; //!< model strings to highlight
QBrush m_highlightColor{Qt::yellow}; //!< how to highlight
};
} // ns
} // ns

View File

@@ -172,19 +172,24 @@ namespace BlackGui
this->derivedModel()->setHighlightModelStrings(highlightModels);
}
void CAircraftModelView::setHighlightModelStrings(bool highlight)
void CAircraftModelView::setHighlightModels(const CAircraftModelList &highlightModels)
{
this->derivedModel()->setHighlightModelStrings(highlight);
this->derivedModel()->setHighlightModels(highlightModels);
}
void CAircraftModelView::setHighlightModelStringsColor(const QBrush &brush)
void CAircraftModelView::setHighlight(bool highlight)
{
this->derivedModel()->setHighlightModelStringsColor(brush);
this->derivedModel()->setHighlight(highlight);
}
bool CAircraftModelView::highlightModelStrings() const
void CAircraftModelView::setHighlightColor(const QBrush &brush)
{
return this->derivedModel()->highlightModelStrings();
this->derivedModel()->setHighlightColor(brush);
}
bool CAircraftModelView::highlightModels() const
{
return this->derivedModel()->highlightModels();
}
void CAircraftModelView::dropEvent(QDropEvent *event)
@@ -332,7 +337,7 @@ namespace BlackGui
m_menuFlagActions.insert(MenuHighlightStashed, ma);
}
QAction *a = menuActions.addActions(initMenuActions(CViewBaseNonTemplate::MenuHighlightStashed)).first();
a->setChecked(this->derivedModel()->highlightModelStrings());
a->setChecked(this->derivedModel()->highlightModels());
addStashMenu = true;
}
@@ -390,15 +395,15 @@ namespace BlackGui
void CAircraftModelView::toggleHighlightStashedModels()
{
const bool h = derivedModel()->highlightModelStrings();
derivedModel()->setHighlightModelStrings(!h);
const bool h = derivedModel()->highlightModels();
derivedModel()->setHighlight(!h);
emit toggledHighlightStashedModels();
}
void CAircraftModelView::toggleHighlightInvalidModels()
{
const bool h = this->highlightModelStrings();
this->setHighlightModelStrings(!h);
const bool h = this->highlightModels();
this->setHighlight(!h);
}
void CAircraftModelView::stashingClearsSelection()

View File

@@ -95,17 +95,20 @@ namespace BlackGui
//! Replace models with sme model string, otherwise add
int replaceOrAddModelsWithString(const BlackMisc::Simulation::CAircraftModelList &models, Qt::CaseSensitivity sensitivity = Qt::CaseInsensitive);
//! \copydoc BlackGui::Models::CAircraftModelListModel::setHighlightModels
void setHighlightModels(const BlackMisc::Simulation::CAircraftModelList &highlightModels);
//! \copydoc BlackGui::Models::CAircraftModelListModel::setHighlightModelStrings(const QStringList &)
void setHighlightModelStrings(const QStringList &highlightModels);
//! \copydoc BlackGui::Models::CAircraftModelListModel::setHighlightModelStrings(bool)
void setHighlightModelStrings(bool highlight);
//! \copydoc BlackGui::Models::CAircraftModelListModel::setHighlight
void setHighlight(bool highlight);
//! \copydoc BlackGui::Models::CAircraftModelListModel::setHighlightModelStringsColor
void setHighlightModelStringsColor(const QBrush &brush);
//! \copydoc BlackGui::Models::CAircraftModelListModel::setHighlightColor
void setHighlightColor(const QBrush &brush);
//! \copydoc BlackGui::Models::CAircraftModelListModel::highlightModelStrings
bool highlightModelStrings() const;
//! \copydoc BlackGui::Models::CAircraftModelListModel::highlightModels
bool highlightModels() const;
//! Loading data will be restricted to simulator
void setSimulatorForLoading(const BlackMisc::Simulation::CSimulatorInfo &simulator) { m_loadingRequiresSimulator = simulator; }