KWayland

slide_interface.h
1 /*
2  SPDX-FileCopyrightText: 2015 Marco Martin <[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_SLIDE_INTERFACE_H
7 #define KWAYLAND_SERVER_SLIDE_INTERFACE_H
8 
9 #include "global.h"
10 #include "resource.h"
11 
12 #include <KWayland/Server/kwaylandserver_export.h>
13 
14 namespace KWayland
15 {
16 namespace Server
17 {
18 class Display;
19 
20 /**
21  * TODO
22  */
23 class KWAYLANDSERVER_EXPORT SlideManagerInterface : public Global
24 {
25  Q_OBJECT
26 public:
27  virtual ~SlideManagerInterface();
28 
29 private:
30  explicit SlideManagerInterface(Display *display, QObject *parent = nullptr);
31  friend class Display;
32  class Private;
33 };
34 
35 /**
36  * TODO
37  */
38 class KWAYLANDSERVER_EXPORT SlideInterface : public Resource
39 {
40  Q_OBJECT
41 public:
42  enum Location {
43  Left = 0, /**< Slide from the left edge of the screen */
44  Top, /**< Slide from the top edge of the screen */
45  Right, /**< Slide from the bottom edge of the screen */
46  Bottom, /**< Slide from the bottom edge of the screen */
47  };
48 
49  virtual ~SlideInterface();
50 
51  /**
52  * @returns the location the window will be slided from
53  */
54  Location location() const;
55 
56  /**
57  * @returns the offset from the screen edge the window will
58  * be slided from
59  */
60  qint32 offset() const;
61 
62 private:
63  explicit SlideInterface(SlideManagerInterface *parent, wl_resource *parentResource);
64  friend class SlideManagerInterface;
65 
66  class Private;
67  Private *d_func() const;
68 };
69 
70 }
71 }
72 
73 #endif
Slide from the bottom edge of the screen.
Left
Class holding the Wayland server display loop.
Definition: display.h:86
Base class for all Globals.
Definition: global.h:46
Slide from the top edge of the screen.
Represents a bound Resource.
Definition: resource.h:31
Slide from the bottom edge of the screen.
This file is part of the KDE documentation.
Documentation copyright © 1996-2021 The KDE developers.
Generated on Sun Sep 26 2021 22:51:15 by doxygen 1.8.11 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.