1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2025-07-05 18:35:26 -04:00

Fix assertion when removing all elements from model

This commit is contained in:
Jon Beniston 2021-04-13 10:14:54 +01:00
parent 6ad057e935
commit 53cccf7298
4 changed files with 36 additions and 24 deletions

View File

@ -378,14 +378,17 @@ public:
} }
void removeAllAirports() { void removeAllAirports() {
beginRemoveRows(QModelIndex(), 0, m_airports.count()); if (m_airports.count() > 0)
m_airports.clear(); {
m_airportDataFreq.clear(); beginRemoveRows(QModelIndex(), 0, m_airports.count() - 1);
m_airportDataFreqRows.clear(); m_airports.clear();
m_showFreq.clear(); m_airportDataFreq.clear();
m_azimuth.clear(); m_airportDataFreqRows.clear();
m_elevation.clear(); m_showFreq.clear();
endRemoveRows(); m_azimuth.clear();
m_elevation.clear();
endRemoveRows();
}
} }
int rowCount(const QModelIndex &parent = QModelIndex()) const override { int rowCount(const QModelIndex &parent = QModelIndex()) const override {

View File

@ -143,12 +143,15 @@ public:
} }
void removeAllVORs() { void removeAllVORs() {
beginRemoveRows(QModelIndex(), 0, m_vors.count()); if (m_vors.count() > 0)
m_vors.clear(); {
m_selected.clear(); beginRemoveRows(QModelIndex(), 0, m_vors.count() - 1);
m_radials.clear(); m_vors.clear();
m_vorGUIs.clear(); m_selected.clear();
endRemoveRows(); m_radials.clear();
m_vorGUIs.clear();
endRemoveRows();
}
} }
QHash<int, QByteArray> roleNames() const { QHash<int, QByteArray> roleNames() const {

View File

@ -351,10 +351,13 @@ public:
void removeAll() void removeAll()
{ {
beginRemoveRows(QModelIndex(), 0, m_items.count()); if (m_items.count() > 0)
m_items.clear(); {
m_selected.clear(); beginRemoveRows(QModelIndex(), 0, m_items.count());
endRemoveRows(); m_items.clear();
m_selected.clear();
endRemoveRows();
}
} }
void setDisplayNames(bool displayNames) void setDisplayNames(bool displayNames)

View File

@ -144,12 +144,15 @@ public:
} }
void removeAllVORs() { void removeAllVORs() {
beginRemoveRows(QModelIndex(), 0, m_vors.count()); if (m_vors.count() > 0)
m_vors.clear(); {
m_selected.clear(); beginRemoveRows(QModelIndex(), 0, m_vors.count() - 1);
m_radials.clear(); m_vors.clear();
m_vorGUIs.clear(); m_selected.clear();
endRemoveRows(); m_radials.clear();
m_vorGUIs.clear();
endRemoveRows();
}
} }
QHash<int, QByteArray> roleNames() const { QHash<int, QByteArray> roleNames() const {