KWayland

qtsurfaceextension_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 WAYLAND_SERVER_QTSURFACEEXTENSION_INTERFACE_H
7 #define WAYLAND_SERVER_QTSURFACEEXTENSION_INTERFACE_H
8 
9 #include <QObject>
10 
11 #include <KWayland/Server/kwaylandserver_export.h>
12 
13 #include "global.h"
14 #include "resource.h"
15 
16 class QSize;
17 struct wl_resource;
18 
19 namespace KWayland
20 {
21 namespace Server
22 {
23 class Display;
24 class SurfaceInterface;
25 class QtExtendedSurfaceInterface;
26 
27 /**
28  * TODO
29  */
30 class KWAYLANDSERVER_EXPORT QtSurfaceExtensionInterface : public Global
31 {
32  Q_OBJECT
33 public:
34  virtual ~QtSurfaceExtensionInterface();
35 
36 Q_SIGNALS:
37  void surfaceCreated(KWayland::Server::QtExtendedSurfaceInterface *);
38 
39 private:
40  friend class Display;
41  explicit QtSurfaceExtensionInterface(Display *display, QObject *parent);
42  class Private;
43 };
44 
45 /**
46  * TODO
47  */
48 class KWAYLANDSERVER_EXPORT QtExtendedSurfaceInterface : public Resource
49 {
50  Q_OBJECT
51 public:
52  virtual ~QtExtendedSurfaceInterface();
53 
54  SurfaceInterface *surface() const;
55  QtSurfaceExtensionInterface *shell() const;
56 
57  void close();
58 
59 Q_SIGNALS:
60  /**
61  * Requests that the window be raised to appear above other windows.
62  * @since 5.5
63  **/
64  void raiseRequested();
65  /**
66  * Requests that the window be lowered to appear below other windows.
67  * @since 5.5
68  **/
69  void lowerRequested();
70 
71 private:
72  friend class QtSurfaceExtensionInterface;
73  explicit QtExtendedSurfaceInterface(QtSurfaceExtensionInterface *shell, SurfaceInterface *parent, wl_resource *parentResource);
74  class Private;
75  Private *d_func() const;
76 };
77 
78 }
79 }
80 
81 #endif
Resource representing a wl_surface.
Class holding the Wayland server display loop.
Definition: display.h:88
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 May 6 2021 22:50:00 by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.