KDecoration2

decorationbridge.h
1 /*
2  * SPDX-FileCopyrightText: 2014 Martin Gräßlin <[email protected]>
3  *
4  * SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
5  */
6 #ifndef KDECORATION2_DECORATION_BRIDGE_H
7 #define KDECORATION2_DECORATION_BRIDGE_H
8 
9 #include <QObject>
10 
11 #include <memory>
12 
13 #include <kdecoration2/private/kdecoration2_private_export.h>
14 
15 //
16 // W A R N I N G
17 // -------------
18 //
19 // This file is not part of the KDecoration2 API. It exists purely as an
20 // implementation detail. This header file may change from version to
21 // version without notice, or even be removed.
22 //
23 // We mean it.
24 //
25 
26 class QRect;
27 
28 namespace KDecoration2
29 {
30 class Decoration;
31 class DecorationSettings;
32 class DecorationSettingsPrivate;
33 class DecoratedClient;
34 class DecoratedClientPrivate;
35 
36 class KDECORATIONS_PRIVATE_EXPORT DecorationBridge : public QObject
37 {
38  Q_OBJECT
39 public:
40  ~DecorationBridge() override;
41 
42  virtual std::unique_ptr<DecoratedClientPrivate> createClient(DecoratedClient *client, Decoration *decoration) = 0;
43  virtual std::unique_ptr<DecorationSettingsPrivate> settings(DecorationSettings *parent) = 0;
44 
45 protected:
46  explicit DecorationBridge(QObject *parent = nullptr);
47 };
48 
49 } // namespace
50 
51 Q_DECLARE_METATYPE(KDecoration2::DecorationBridge *)
52 
53 #endif
Framework for creating window decorations.
This file is part of the KDE documentation.
Documentation copyright © 1996-2021 The KDE developers.
Generated on Sun Jun 20 2021 23:07:39 by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.