DtkGui
DTK Gui module
载入中...
搜索中...
未找到
dfiledrag.h
1// SPDX-FileCopyrightText: 2022 UnionTech Software Technology Co., Ltd.
2//
3// SPDX-License-Identifier: LGPL-3.0-or-later
4
5#ifndef DFILEDRAG_H
6#define DFILEDRAG_H
7
8#include <dtkgui_global.h>
9
10#include <DObject>
11
12#include <QDrag>
13#include <QUrl>
14
15DGUI_BEGIN_NAMESPACE
16
17class DFileDragServer;
18class DFileDragPrivate;
19
20class DFileDrag : public QDrag, public DCORE_NAMESPACE::DObject
21{
22 Q_OBJECT
23public:
24 explicit DFileDrag(QObject *source, DFileDragServer *server);
25
26 QUrl targetUrl();
27 void setMimeData(QMimeData *data);
28
29Q_SIGNALS:
30 void targetUrlChanged(QUrl url);
31
32private:
33 D_DECLARE_PRIVATE(DFileDrag)
34};
35
36DGUI_END_NAMESPACE
37
38#endif // DFILEDRAG_H
提供拖拽文件时与文件接收方交互的接口.
Definition dfiledragserver.h:22
继承自QDrag,一般在文件拖拽发送方 mouseMoveEvent 中发起拖拽,设置发送数据 和 DFileDragServer 配合使用.
Definition dfiledrag.h:21
void targetUrlChanged(QUrl url)
信号会在接收方调用 setTargetUrl 时被发送. 可以用于获取被拖拽至的目标目录