File indexing completed on 2024-04-28 05:45:10
0001 /* 0002 * SPDX-FileCopyrightText: 2011 Peter Penz <peter.penz19@gmail.com> 0003 * 0004 * Based on the Itemviews NG project from Trolltech Labs 0005 * 0006 * SPDX-License-Identifier: GPL-2.0-or-later 0007 */ 0008 0009 #include "kitemmodelbase.h" 0010 0011 KItemModelBase::KItemModelBase(QObject *parent) 0012 : QObject(parent) 0013 , m_groupedSorting(false) 0014 , m_sortRole() 0015 , m_sortOrder(Qt::AscendingOrder) 0016 { 0017 } 0018 0019 KItemModelBase::KItemModelBase(const QByteArray &sortRole, QObject *parent) 0020 : QObject(parent) 0021 , m_groupedSorting(false) 0022 , m_sortRole(sortRole) 0023 , m_sortOrder(Qt::AscendingOrder) 0024 { 0025 } 0026 0027 KItemModelBase::~KItemModelBase() 0028 { 0029 } 0030 0031 bool KItemModelBase::setData(int index, const QHash<QByteArray, QVariant> &values) 0032 { 0033 Q_UNUSED(index) 0034 Q_UNUSED(values) 0035 return false; 0036 } 0037 0038 void KItemModelBase::setGroupedSorting(bool grouped) 0039 { 0040 if (m_groupedSorting != grouped) { 0041 m_groupedSorting = grouped; 0042 onGroupedSortingChanged(grouped); 0043 Q_EMIT groupedSortingChanged(grouped); 0044 } 0045 } 0046 0047 bool KItemModelBase::groupedSorting() const 0048 { 0049 return m_groupedSorting; 0050 } 0051 0052 void KItemModelBase::setSortRole(const QByteArray &role, bool resortItems) 0053 { 0054 if (role != m_sortRole) { 0055 const QByteArray previous = m_sortRole; 0056 m_sortRole = role; 0057 onSortRoleChanged(role, previous, resortItems); 0058 Q_EMIT sortRoleChanged(role, previous); 0059 } 0060 } 0061 0062 QByteArray KItemModelBase::sortRole() const 0063 { 0064 return m_sortRole; 0065 } 0066 0067 void KItemModelBase::setSortOrder(Qt::SortOrder order) 0068 { 0069 if (order != m_sortOrder) { 0070 const Qt::SortOrder previous = m_sortOrder; 0071 m_sortOrder = order; 0072 onSortOrderChanged(order, previous); 0073 Q_EMIT sortOrderChanged(order, previous); 0074 } 0075 } 0076 0077 QString KItemModelBase::roleDescription(const QByteArray &role) const 0078 { 0079 return QString::fromLatin1(role); 0080 } 0081 0082 QList<QPair<int, QVariant>> KItemModelBase::groups() const 0083 { 0084 return QList<QPair<int, QVariant>>(); 0085 } 0086 0087 bool KItemModelBase::setExpanded(int index, bool expanded) 0088 { 0089 Q_UNUSED(index) 0090 Q_UNUSED(expanded) 0091 return false; 0092 } 0093 0094 bool KItemModelBase::isExpanded(int index) const 0095 { 0096 Q_UNUSED(index) 0097 return false; 0098 } 0099 0100 bool KItemModelBase::isExpandable(int index) const 0101 { 0102 Q_UNUSED(index) 0103 return false; 0104 } 0105 0106 int KItemModelBase::expandedParentsCount(int index) const 0107 { 0108 Q_UNUSED(index) 0109 return 0; 0110 } 0111 0112 QMimeData *KItemModelBase::createMimeData(const KItemSet &indexes) const 0113 { 0114 Q_UNUSED(indexes) 0115 return nullptr; 0116 } 0117 0118 int KItemModelBase::indexForKeyboardSearch(const QString &text, int startFromIndex) const 0119 { 0120 Q_UNUSED(text) 0121 Q_UNUSED(startFromIndex) 0122 return -1; 0123 } 0124 0125 bool KItemModelBase::supportsDropping(int index) const 0126 { 0127 Q_UNUSED(index) 0128 return false; 0129 } 0130 0131 QString KItemModelBase::blacklistItemDropEventMimeType() const 0132 { 0133 return QStringLiteral("application/x-dolphin-blacklist-drop"); 0134 } 0135 0136 void KItemModelBase::onGroupedSortingChanged(bool current) 0137 { 0138 Q_UNUSED(current) 0139 } 0140 0141 void KItemModelBase::onSortRoleChanged(const QByteArray ¤t, const QByteArray &previous, bool resortItems) 0142 { 0143 Q_UNUSED(current) 0144 Q_UNUSED(previous) 0145 Q_UNUSED(resortItems) 0146 } 0147 0148 void KItemModelBase::onSortOrderChanged(Qt::SortOrder current, Qt::SortOrder previous) 0149 { 0150 Q_UNUSED(current) 0151 Q_UNUSED(previous) 0152 } 0153 0154 QUrl KItemModelBase::url(int index) const 0155 { 0156 return data(index).value("url").toUrl(); 0157 } 0158 0159 bool KItemModelBase::isDir(int index) const 0160 { 0161 return data(index).value("isDir").toBool(); 0162 } 0163 0164 QUrl KItemModelBase::directory() const 0165 { 0166 return QUrl(); 0167 } 0168 0169 #include "moc_kitemmodelbase.cpp"