1/*
2 SPDX-FileCopyrightText: 2015 Martin Gräßlin <mgraesslin@kde.org>
3
4 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
5*/
6#ifndef KWINDOWSYSTEMPLUGININTERFACE_P_H
7#define KWINDOWSYSTEMPLUGININTERFACE_P_H
8#include <kwindowsystem_export.h>
9
10#include <QObject>
11#include <QWidgetList> //For WId
12
13class KWindowEffectsPrivate;
14class KWindowShadowPrivate;
15class KWindowShadowTilePrivate;
16class KWindowSystemPrivate;
17
18#define KWindowSystemPluginInterface_iid "org.kde.kwindowsystem.KWindowSystemPluginInterface"
19
20class KWINDOWSYSTEM_EXPORT KWindowSystemPluginInterface : public QObject
21{
22 Q_OBJECT
23public:
24 explicit KWindowSystemPluginInterface(QObject *parent = nullptr);
25 ~KWindowSystemPluginInterface() override;
26
27 virtual KWindowEffectsPrivate *createEffects();
28 virtual KWindowSystemPrivate *createWindowSystem();
29 virtual KWindowShadowPrivate *createWindowShadow();
30 virtual KWindowShadowTilePrivate *createWindowShadowTile();
31};
32
33Q_DECLARE_INTERFACE(KWindowSystemPluginInterface, KWindowSystemPluginInterface_iid)
34
35#endif
36

source code of kwindowsystem/src/kwindowsystemplugininterface_p.h