Qt 5.10 Book Examples
chapter29
WidgetDragAndDrop
WidgetDrag.h
Go to the documentation of this file.
1
// ======================================================================
2
// WidgetDrag.h
3
// ======================================================================
4
// This file is a part of the book
5
// "Qt 5.10 Professional programming with C++"
6
// http://qt-book.com
7
// ======================================================================
8
// Copyright (c) 2017 by Max Schlee
9
// ======================================================================
10
11
#pragma once
12
13
#include <QDrag>
14
15
// ======================================================================
16
class
WidgetMimeData
:
public
QMimeData {
17
private
:
18
QWidget* m_pwgt;
19
20
public
:
21
WidgetMimeData
() : QMimeData()
22
{
23
}
24
25
virtual
~WidgetMimeData
()
26
{
27
}
28
29
static
QString
mimeType
()
30
{
31
return
"application/widget"
;
32
}
33
34
void
setWidget
(QWidget* pwgt)
35
{
36
m_pwgt = pwgt;
37
setData(
mimeType
(), QByteArray());
38
}
39
40
QWidget*
widget
()
const
41
{
42
return
m_pwgt;
43
}
44
};
45
46
// ======================================================================
47
class
WidgetDrag
:
public
QDrag {
48
public
:
49
WidgetDrag
(QWidget* pwgtDragSource = 0) : QDrag(pwgtDragSource)
50
{
51
}
52
53
void
setWidget
(QWidget* pwgt)
54
{
55
WidgetMimeData
* pmd =
new
WidgetMimeData
;
56
pmd->
setWidget
(pwgt);
57
setMimeData(pmd);
58
}
59
};
60
WidgetMimeData::WidgetMimeData
WidgetMimeData()
Definition:
WidgetDrag.h:21
WidgetMimeData
Definition:
WidgetDrag.h:16
WidgetDrag::WidgetDrag
WidgetDrag(QWidget *pwgtDragSource=0)
Definition:
WidgetDrag.h:49
WidgetMimeData::~WidgetMimeData
virtual ~WidgetMimeData()
Definition:
WidgetDrag.h:25
WidgetDrag
Definition:
WidgetDrag.h:47
WidgetMimeData::widget
QWidget * widget() const
Definition:
WidgetDrag.h:40
WidgetMimeData::setWidget
void setWidget(QWidget *pwgt)
Definition:
WidgetDrag.h:34
WidgetDrag::setWidget
void setWidget(QWidget *pwgt)
Definition:
WidgetDrag.h:53
WidgetMimeData::mimeType
static QString mimeType()
Definition:
WidgetDrag.h:29
Generated by
1.8.14