diff --git a/src/blackgui/models/listmodelbase.cpp b/src/blackgui/models/listmodelbase.cpp index 45ce9bbf2..5e3fbc65b 100644 --- a/src/blackgui/models/listmodelbase.cpp +++ b/src/blackgui/models/listmodelbase.cpp @@ -197,19 +197,6 @@ namespace BlackGui return m_modelDestroyed; } - void CListModelBaseNonTemplate::setHoveredRow(int row) - { - if (this->m_hoverRow == row) { return; } - this->m_hoverRow = row; - const int columns = columnCount(); - if (columns < 1) { return; } - if (row < 0) { return; } - - const QModelIndex topLeft(createIndex(row, 0)); - const QModelIndex bottomRight(createIndex(row, columns - 1)); - emit this->dataChanged(topLeft, bottomRight); - } - void CListModelBaseNonTemplate::clearHighlighting() { // can be overridden to delete highlighting @@ -245,20 +232,6 @@ namespace BlackGui connect(this, &CListModelBaseNonTemplate::dataChanged, this, &CListModelBaseNonTemplate::ps_onDataChanged); } - bool CListModelBaseNonTemplate::isHoveredRow(int row) const - { - if (this->m_hoverRow < 0) { return false; } - if (row < 0) { return false; } - return row == this->m_hoverRow; - } - - bool CListModelBaseNonTemplate::isHoveredRow(const QModelIndex &modelIndex) const - { - if (this->m_hoverRow < 0) { return false; } - if (!modelIndex.isValid()) { return false; } - return modelIndex.row() == this->m_hoverRow; - } - template CListModelBase::CListModelBase(const QString &translationContext, QObject *parent) : CListModelBaseNonTemplate(translationContext, parent) @@ -316,16 +289,9 @@ namespace BlackGui { // check / init if (!this->isValidIndex(index)) { return QVariant(); } - const int row = index.row(); - const int col = index.column(); - // Hover effect if (role == Qt::BackgroundRole) { - if (this->isHoveredRow(row)) - { - return QBrush(Qt::red); - } return CListModelBaseNonTemplate::data(index, role); } @@ -337,6 +303,8 @@ namespace BlackGui if (!formatter || !formatter->supportsRole(role)) { return CListModelBaseNonTemplate::data(index, role); } // index, updront checking + const int row = index.row(); + const int col = index.column(); const BlackMisc::CPropertyIndex propertyIndex = this->columnToPropertyIndex(col); if (static_cast(CPropertyIndex::GlobalIndexLineNumber) == propertyIndex.frontCasted()) { diff --git a/src/blackgui/models/listmodelbase.h b/src/blackgui/models/listmodelbase.h index cda23cb65..2b6b21b49 100644 --- a/src/blackgui/models/listmodelbase.h +++ b/src/blackgui/models/listmodelbase.h @@ -108,9 +108,6 @@ namespace BlackGui //! Model about to be destroyed? bool isModelDestroyed(); - //! Hovered role - void setHoveredRow(int row); - //! Remove all highlighting virtual void clearHighlighting(); @@ -167,14 +164,7 @@ namespace BlackGui //! Helper method with template free signature virtual int performUpdateContainer(const BlackMisc::CVariant &variant, bool sort) = 0; - //! Row to be hovered? - bool isHoveredRow(int row) const; - - //! Row to be hovered? - bool isHoveredRow(const QModelIndex &modelIndex) const; - CColumns m_columns; //!< columns metadata - int m_hoverRow = -1; //!< hovered row number int m_sortedColumn; //!< currently sorted column bool m_modelDestroyed = false; //!< model is about to be destroyed Qt::SortOrder m_sortOrder; //!< sort order (asc/desc) diff --git a/src/blackgui/views/viewbase.cpp b/src/blackgui/views/viewbase.cpp index 31ed17881..e7e8753f6 100644 --- a/src/blackgui/views/viewbase.cpp +++ b/src/blackgui/views/viewbase.cpp @@ -1172,15 +1172,9 @@ namespace BlackGui template void CViewBase::mouseOverCallback(const QModelIndex &index, bool mouseOver) { - if (mouseOver && index.isValid()) - { - const int row = index.row(); - this->m_model->setHoveredRow(row); - } - else - { - // this->m_model->setHoveredRow(-1); - } + // void + Q_UNUSED(index); + Q_UNUSED(mouseOver); } template diff --git a/src/blackmisc/simulation/aircraftmodel.cpp b/src/blackmisc/simulation/aircraftmodel.cpp index d97f22265..e0322e659 100644 --- a/src/blackmisc/simulation/aircraftmodel.cpp +++ b/src/blackmisc/simulation/aircraftmodel.cpp @@ -465,6 +465,13 @@ namespace BlackMisc return this->m_modelType == TypeManuallySet && this->hasModelString(); } + bool CAircraftModel::hasDescription(bool ignoreAutoGenerated) const + { + if (this->m_description.isEmpty()) { return false; } + if (!ignoreAutoGenerated) { return true; } + return (!this->getDescription().startsWith(autoGenerated(), Qt::CaseInsensitive)); + } + bool CAircraftModel::hasValidSimulator() const { return m_simulator.isAnySimulator(); diff --git a/src/blackmisc/simulation/aircraftmodel.h b/src/blackmisc/simulation/aircraftmodel.h index 98220b0be..fe75e7166 100644 --- a/src/blackmisc/simulation/aircraftmodel.h +++ b/src/blackmisc/simulation/aircraftmodel.h @@ -305,7 +305,7 @@ namespace BlackMisc bool hasModelString() const { return !m_modelString.isEmpty(); } //! Description - bool hasDescription() const { return !m_description.isEmpty(); } + bool hasDescription(bool ignoreAutoGenerated = false) const; //! Valid simulator bool hasValidSimulator() const;