1 | // Copyright (C) 2017 Pier Luigi Fiorini <pierluigi.fiorini@gmail.com> |
---|---|
2 | // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only |
3 | |
4 | #ifndef QWAYLANDOUTPUTMODE_H |
5 | #define QWAYLANDOUTPUTMODE_H |
6 | |
7 | #include <QtWaylandCompositor/qtwaylandcompositorglobal.h> |
8 | #include <QtCore/QSize> |
9 | |
10 | QT_BEGIN_NAMESPACE |
11 | |
12 | class Q_WAYLANDCOMPOSITOR_EXPORT QWaylandOutputMode |
13 | { |
14 | public: |
15 | explicit QWaylandOutputMode(); |
16 | QWaylandOutputMode(const QSize &size, int refreshRate); |
17 | QWaylandOutputMode(const QWaylandOutputMode &other); |
18 | ~QWaylandOutputMode(); |
19 | |
20 | QWaylandOutputMode &operator=(const QWaylandOutputMode &other); |
21 | bool operator==(const QWaylandOutputMode &other) const; |
22 | bool operator!=(const QWaylandOutputMode &other) const; |
23 | |
24 | bool isValid() const; |
25 | |
26 | QSize size() const; |
27 | int refreshRate() const; |
28 | |
29 | private: |
30 | class QWaylandOutputModePrivate *const d; |
31 | friend class QWaylandOutputPrivate; |
32 | |
33 | void setSize(const QSize &size); |
34 | }; |
35 | Q_DECLARE_TYPEINFO(QWaylandOutputMode, Q_MOVABLE_TYPE); |
36 | |
37 | QT_END_NAMESPACE |
38 | |
39 | #endif // QWAYLANDOUTPUTMODE_H |
40 |