DtkGui
DTK Gui module
载入中...
搜索中...
未找到
dfiledragserver.h
1// SPDX-FileCopyrightText: 2022 UnionTech Software Technology Co., Ltd.
2//
3// SPDX-License-Identifier: LGPL-3.0-or-later
4
5#ifndef DFILEDRAGSERVER_H
6#define DFILEDRAGSERVER_H
7
8#include "dfiledragcommon.h"
9
10#include <dtkgui_global.h>
11#include <DObject>
12
13#include <QObject>
14
15class QMimeData;
16
17DGUI_BEGIN_NAMESPACE
18
19class DFileDragServerPrivate;
20
21class DFileDragServer : public QObject, public DCORE_NAMESPACE::DObject
22{
23 Q_OBJECT
24public:
25 explicit DFileDragServer(QObject *parent = nullptr);
27 QVariant targetData(const QString &key) const;
28
29public Q_SLOTS:
30 void setProgress(int progress);
31 void setState(DFileDragState state);
32
33Q_SIGNALS:
34 void targetDataChanged(const QString &key);
35
36private:
37 D_DECLARE_PRIVATE(DFileDragServer)
38 friend class DDndSourceInterface;
39 friend class DFileDrag;
40};
41
42DGUI_END_NAMESPACE
43
44#endif // DFILEDRAGSERVER_H
Definition dfiledragserver.cpp:49
提供拖拽文件时与文件接收方交互的接口.
Definition dfiledragserver.h:22
void targetDataChanged(const QString &key)
信号会在接收方调用 setData 变化时被发送, key 为改变的键值.
继承自QDrag,一般在文件拖拽发送方 mouseMoveEvent 中发起拖拽,设置发送数据 和 DFileDragServer 配合使用.
Definition dfiledrag.h:21