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-2021 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 */
31 class BTMimeData: public QMimeData {
32 
33  Q_OBJECT
34 
35 public: // types:
36 
37  /** Type for bookmark item list. Usage: BTMimeData::ItemList. */
39 
40 public: // methods:
41 
43 
44  /** \returns the bookmarks list. */
45  ItemList const & bookmarks() const noexcept { return m_bookmarkList; }
46 
47 private: // fields:
48 
50 
51 };
ItemList m_bookmarkList
Definition: BtMimeData.h:49
QList< BookmarkItem > ItemList
Definition: BtMimeData.h:38
BTMimeData(ItemList bookmarks)
Definition: BtMimeData.cpp:18
ItemList const & bookmarks() const noexcept
Definition: BtMimeData.h:45