Ref T189, context menu "Clear highlighting" only if there are highlighted rows

* added customMenu in template
* added hasHighlightedRows
This commit is contained in:
Klaus Basan
2017-11-12 03:38:43 +01:00
parent e24914cc26
commit 3d76eabac5
6 changed files with 32 additions and 4 deletions

View File

@@ -221,5 +221,9 @@ namespace BlackGui
this->m_highlightStrings.clear();
COrderableListModelDbObjects::clearHighlighting();
}
bool CAircraftModelListModel::hasHighlightedRows() const
{
return !m_highlightStrings.isEmpty();
}
} // namespace
} // namespace

View File

@@ -71,9 +71,12 @@ namespace BlackGui
//! The highlight color
void setHighlightModelStringsColor(const QBrush &brush) { m_highlightColor = brush; }
//! \copydoc CListModelBase::clearHighlighting
//! \copydoc CListModelBaseNonTemplate::clearHighlighting
virtual void clearHighlighting() override;
//! \copydoc CListModelBaseNonTemplate::hasHighlightedRows
virtual bool hasHighlightedRows() const override;
//! Model strings
QStringList getModelStrings(bool sort) const;

View File

@@ -210,6 +210,12 @@ namespace BlackGui
// can be overridden to delete highlighting
}
bool CListModelBaseNonTemplate::hasHighlightedRows() const
{
return false;
// can be overridden to enable highlighting based operations
}
void CListModelBaseNonTemplate::emitDataChanged(int startRowIndex, int endRowIndex)
{
BLACK_VERIFY_X(startRowIndex <= endRowIndex, Q_FUNC_INFO, "check rows");

View File

@@ -114,6 +114,9 @@ namespace BlackGui
//! Remove all highlighting
virtual void clearHighlighting();
//! Has highlighted rows?
virtual bool hasHighlightedRows() const;
//! Drop actions
void setDropActions(Qt::DropActions dropActions) { this->m_dropActions = dropActions; }