File indexing completed on 2024-04-28 15:39:50
0001 // SPDX-FileCopyrightText: 2003-2022 Jesper K. Pedersen <blackie@kde.org> 0002 // 0003 // SPDX-License-Identifier: GPL-2.0-or-later 0004 0005 #ifndef CATEGORYLISTVIEW_DragableTreeWidget_H 0006 #define CATEGORYLISTVIEW_DragableTreeWidget_H 0007 #include <DB/CategoryPtr.h> 0008 0009 #include <QTreeWidget> 0010 0011 namespace CategoryListView 0012 { 0013 class DragableTreeWidget : public QTreeWidget 0014 { 0015 Q_OBJECT 0016 0017 public: 0018 DragableTreeWidget(const DB::CategoryPtr &category, QWidget *parent); 0019 DB::CategoryPtr category() const; 0020 void emitItemsChanged(); 0021 0022 protected: 0023 QMimeData *mimeData(const QList<QTreeWidgetItem *> items) const override; 0024 QStringList mimeTypes() const override; 0025 bool dropMimeData(QTreeWidgetItem *parent, int index, const QMimeData *data, Qt::DropAction action) override; 0026 void dragMoveEvent(QDragMoveEvent *event) override; 0027 0028 Q_SIGNALS: 0029 void itemsChanged(); 0030 0031 private: 0032 const DB::CategoryPtr m_category; 0033 }; 0034 0035 } 0036 0037 #endif /* CATEGORYLISTVIEW_DragableTreeWidget_H */ 0038 // vi:expandtab:tabstop=4 shiftwidth=4: