KWayland

shadow_interface.h
1 /*
2  SPDX-FileCopyrightText: 2015 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 KWAYLAND_SERVER_SHADOW_INTERFACE_H
7 #define KWAYLAND_SERVER_SHADOW_INTERFACE_H
8 
9 #include "global.h"
10 #include "resource.h"
11 
12 #include <QMarginsF>
13 #include <QObject>
14 
15 #include <KWayland/Server/kwaylandserver_export.h>
16 
17 namespace KWayland
18 {
19 namespace Server
20 {
21 class BufferInterface;
22 class Display;
23 
24 /**
25  * TODO
26  */
27 class KWAYLANDSERVER_EXPORT ShadowManagerInterface : public Global
28 {
29  Q_OBJECT
30 public:
31  virtual ~ShadowManagerInterface();
32 
33 private:
34  explicit ShadowManagerInterface(Display *display, QObject *parent = nullptr);
35  friend class Display;
36  class Private;
37 };
38 
39 /**
40  * TODO
41  */
42 class KWAYLANDSERVER_EXPORT ShadowInterface : public Resource
43 {
44  Q_OBJECT
45 public:
46  virtual ~ShadowInterface();
47 
48  BufferInterface *left() const;
49  BufferInterface *topLeft() const;
50  BufferInterface *top() const;
51  BufferInterface *topRight() const;
52  BufferInterface *right() const;
53  BufferInterface *bottomRight() const;
54  BufferInterface *bottom() const;
55  BufferInterface *bottomLeft() const;
56 
57  QMarginsF offset() const;
58 
59 private:
60  explicit ShadowInterface(ShadowManagerInterface *parent, wl_resource *parentResource);
61  friend class ShadowManagerInterface;
62 
63  class Private;
64  Private *d_func() const;
65 };
66 
67 }
68 }
69 
70 #endif
Class holding the Wayland server display loop.
Definition: display.h:86
Reference counted representation of a Wayland buffer on Server side.
Base class for all Globals.
Definition: global.h:46
Represents a bound Resource.
Definition: resource.h:31
This file is part of the KDE documentation.
Documentation copyright © 1996-2021 The KDE developers.
Generated on Thu Sep 23 2021 22:51:10 by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.