File indexing completed on 2024-05-19 08:11:54
0001 /* SPDX-FileCopyrightText: 2003-2010 Jesper K. Pedersen <blackie@kde.org> 0002 0003 SPDX-License-Identifier: GPL-2.0-or-later 0004 */ 0005 #ifndef CATEGORYLISTVIEW_DRAGITEMINFO_H 0006 #define CATEGORYLISTVIEW_DRAGITEMINFO_H 0007 0008 #include <qhash.h> 0009 #include <qpair.h> 0010 #include <qstring.h> 0011 0012 namespace CategoryListView 0013 { 0014 0015 class DragItemInfo 0016 { 0017 public: 0018 DragItemInfo(); 0019 DragItemInfo(const QString &parent, const QString &child); 0020 QString parent() const; 0021 QString child() const; 0022 void setParent(const QString &str); 0023 void setChild(const QString &str); 0024 bool operator<(const DragItemInfo &other) const; 0025 0026 private: 0027 QString m_parent; 0028 QString m_child; 0029 }; 0030 0031 inline bool operator==(const DragItemInfo &v1, const DragItemInfo &v2) 0032 { 0033 return (v1.parent() == v2.parent()) && (v1.child() == v2.child()); 0034 } 0035 0036 inline uint qHash(const DragItemInfo &key) 0037 { 0038 return qHash(QPair<QString, QString>(key.parent(), key.child())); 0039 } 0040 0041 QDataStream &operator<<(QDataStream &stream, const DragItemInfo &); 0042 QDataStream &operator>>(QDataStream &stream, DragItemInfo &); 0043 0044 typedef QSet<DragItemInfo> DragItemInfoSet; 0045 } 0046 0047 #endif /* CATEGORYLISTVIEW_DRAGITEMINFO_H */ 0048 0049 // vi:expandtab:tabstop=4 shiftwidth=4: