BibleTime
BtMimeData.h
Go to the documentation of this file.
1/*********
2*
3* In the name of the Father, and of the Son, and of the Holy Spirit.
4*
5* This file is part of BibleTime's source code, https://bibletime.info/
6*
7* Copyright 1999-2025 by the BibleTime developers.
8* The BibleTime source code is licensed under the GNU General Public License
9* version 2.0.
10*
11**********/
12
13#pragma once
14
15#include <QMimeData>
16
17#include <QList>
18#include <QObject>
19#include <QString>
20#include "BookmarkItem.h" // IWYU pragma: keep for Qt's moc
21
22
23/**
24* Represents the Drag'n'Drop data.
25* Inherits QMimeData as described in its documentation,
26* "storing custom data in a QMimeData object": approach 3.
27* Any custom data may be added and extracted as with QMimeData, but this class
28* includes also a list of bookmark items.
29* For further documentation see http://doc.trolltech.com/4.3/dnd.html
30*/
31class BTMimeData: public QMimeData {
32
33 Q_OBJECT
34
35public: // types:
36
37 /** Type for bookmark item list. Usage: BTMimeData::ItemList. */
38 using ItemList = QList<BookmarkItem>;
39
40public: // methods:
41
43
44 /** \returns the bookmarks list. */
45 ItemList const & bookmarks() const noexcept { return m_bookmarkList; }
46
47private: // fields:
48
50
51};
ItemList const & bookmarks() const noexcept
Definition BtMimeData.h:45
ItemList m_bookmarkList
Definition BtMimeData.h:49
QList< BookmarkItem > ItemList
Definition BtMimeData.h:38