KWin
Loading...
Searching...
No Matches
datasource.h
Go to the documentation of this file.
1/*
2 SPDX-FileCopyrightText: 2021 David Redondo <kde@david-redondo.de>
3 SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
4*/
5
6#pragma once
7
9
10namespace KWin
11{
12namespace Xwl
13{
14
23{
24 Q_OBJECT
25
26public:
27 ~XwlDataSource() override;
28
29 void requestData(const QString &mimeType, qint32 fd) override;
30 void cancel() override;
31 QStringList mimeTypes() const override;
32 void setMimeTypes(const QStringList &mimeTypes);
33
34 void accept(const QString &mimeType) override;
35 DataDeviceManagerInterface::DnDActions supportedDragAndDropActions() const override;
36 void setSupportedDndActions(DataDeviceManagerInterface::DnDActions dndActions);
37
40
41 void dropPerformed() override
42 {
43 Q_EMIT dropped();
44 }
45 void dndFinished() override
46 {
47 Q_EMIT finished();
48 }
49 void dndCancelled() override
50 {
51 Q_EMIT cancelled();
52 }
53
54 bool isAccepted() const override;
55
56Q_SIGNALS:
57 void dataRequested(const QString &mimeType, qint32 fd);
58 void dropped();
59 void finished();
60 void cancelled();
61
62private:
63 QStringList m_mimeTypes;
64 DataDeviceManagerInterface::DnDActions m_supportedDndActions;
65 DataDeviceManagerInterface::DnDAction m_dndAction = DataDeviceManagerInterface::DnDAction::None;
66 bool m_accepted = false;
67};
68}
69}
The AbstractDataSource class abstracts the data that can be transferred to another client.
void dropPerformed() override
Definition datasource.h:41
DataDeviceManagerInterface::DnDActions supportedDragAndDropActions() const override
void dataRequested(const QString &mimeType, qint32 fd)
void dndAction(DataDeviceManagerInterface::DnDAction action) override
bool isAccepted() const override
QStringList mimeTypes() const override
void cancel() override
void setMimeTypes(const QStringList &mimeTypes)
void setSupportedDndActions(DataDeviceManagerInterface::DnDActions dndActions)
void dndCancelled() override
Definition datasource.h:49
DataDeviceManagerInterface::DnDAction selectedDndAction() const override
void accept(const QString &mimeType) override
void dndFinished() override
Definition datasource.h:45
void requestData(const QString &mimeType, qint32 fd) override