#include "kstandarditemmodel.h"
-#include <KDebug>
#include "kstandarditem.h"
-
+#include <QSet>
+#include <QByteArray>
KStandardItemModel::KStandardItemModel(QObject* parent) :
KItemModelBase(parent),
m_items(),
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);
void KStandardItemModel::changeItem(int index, KStandardItem* item)
{
- if (index < 0 || index > count() || !item) {
+ if (index < 0 || index >= count() || !item) {
delete item;
return;
}
}
}
+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()) {
return true;
}
-QMimeData* KStandardItemModel::createMimeData(const QSet<int>& indexes) const
+QMimeData* KStandardItemModel::createMimeData(const KItemSet& indexes) const
{
Q_UNUSED(indexes);
return 0;
{
QList<QPair<int, QVariant> > groups;
- const QByteArray role = sortRole();
+ const QByteArray role = sortRole().isEmpty() ? "group" : sortRole();
bool isFirstGroupValue = true;
QString groupValue;
const int maxIndex = count() - 1;
Q_UNUSED(removedItem);
}
-
-#include "kstandarditemmodel.moc"