KWin
Loading...
Searching...
No Matches
contrast.h
Go to the documentation of this file.
1/*
2 SPDX-FileCopyrightText: 2015 Martin Gräßlin <mgraesslin@kde.org>
3 SPDX-FileCopyrightText: 2015 Marco Martin <mart@kde.org>
4
5 SPDX-License-Identifier: LGPL-2.1-only OR LGPL-3.0-only OR LicenseRef-KDE-Accepted-LGPL
6*/
7#pragma once
8
9#include "kwin_export.h"
10
11#include <memory>
12#include <optional>
13
14#include <QColor>
15#include <QObject>
16
17struct wl_resource;
18
19namespace KWin
20{
21class Display;
22class ContrastManagerInterfacePrivate;
23class ContrastInterfacePrivate;
24
33class KWIN_EXPORT ContrastManagerInterface : public QObject
34{
35 Q_OBJECT
36
37public:
38 explicit ContrastManagerInterface(Display *display, QObject *parent = nullptr);
40
41 void remove();
42
43private:
44 std::unique_ptr<ContrastManagerInterfacePrivate> d;
45};
46
59class KWIN_EXPORT ContrastInterface : public QObject
60{
61 Q_OBJECT
62public:
64
65 QRegion region() const;
66 qreal contrast() const;
67 qreal intensity() const;
68 qreal saturation() const;
69 QColor frost() const;
70
71private:
72 explicit ContrastInterface(wl_resource *resource);
74
75 std::unique_ptr<ContrastInterfacePrivate> d;
76};
77
78}
Represents the Resource for the org_kde_kwin_contrast interface.
Definition contrast.h:60
~ContrastInterface() override
Represents the Global for org_kde_kwin_contrast_manager interface.
Definition contrast.h:34
Class holding the Wayland server display loop.
Definition display.h:34
struct _XDisplay Display