X-Git-Url: https://cloud.milkyroute.net/gitweb/dolphin.git/blobdiff_plain/727fd64e121f97b32d645e2fb26c4e93c413a849..ccb3658b3aa7f5b0f0b71cb6e91808bdfe58af64:/src/kitemviews/kstandarditemmodel.cpp diff --git a/src/kitemviews/kstandarditemmodel.cpp b/src/kitemviews/kstandarditemmodel.cpp index cde86af49..25288e50f 100644 --- a/src/kitemviews/kstandarditemmodel.cpp +++ b/src/kitemviews/kstandarditemmodel.cpp @@ -19,9 +19,9 @@ #include "kstandarditemmodel.h" -#include #include "kstandarditem.h" - +#include +#include KStandardItemModel::KStandardItemModel(QObject* parent) : KItemModelBase(parent), m_items(), @@ -43,7 +43,7 @@ void KStandardItemModel::insertItem(int index, KStandardItem* item) return; } - if (item && !m_indexesForItems.contains(item)) { + if (!m_indexesForItems.contains(item)) { item->m_model = this; m_items.insert(index, item); m_indexesForItems.insert(item, index); @@ -63,7 +63,7 @@ void KStandardItemModel::insertItem(int index, KStandardItem* item) void KStandardItemModel::changeItem(int index, KStandardItem* item) { - if (index < 0 || index > count() || !item) { + if (index < 0 || index >= count() || !item) { delete item; return; } @@ -122,6 +122,15 @@ void KStandardItemModel::removeItem(int index) } } +void KStandardItemModel::clear() +{ + int size = m_items.size(); + m_items.clear(); + m_indexesForItems.clear(); + + emit itemsRemoved(KItemRangeList() << KItemRange(0, size)); +} + KStandardItem* KStandardItemModel::item(int index) const { if (index < 0 || index >= m_items.count()) { @@ -166,7 +175,7 @@ bool KStandardItemModel::setData(int index, const QHash& v return true; } -QMimeData* KStandardItemModel::createMimeData(const QSet& indexes) const +QMimeData* KStandardItemModel::createMimeData(const KItemSet& indexes) const { Q_UNUSED(indexes); return 0; @@ -195,7 +204,7 @@ QList > KStandardItemModel::groups() const { QList > groups; - const QByteArray role = sortRole(); + const QByteArray role = sortRole().isEmpty() ? "group" : sortRole(); bool isFirstGroupValue = true; QString groupValue; const int maxIndex = count() - 1; @@ -228,5 +237,3 @@ void KStandardItemModel::onItemRemoved(int index, KStandardItem* removedItem) Q_UNUSED(removedItem); } - -#include "kstandarditemmodel.moc"