Krita Source Code Documentation
Loading...
Searching...
No Matches
KisRootSurfaceInfoProxy.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2025 Dmitry Kazakov <dimula73@gmail.com>
3 *
4 * SPDX-License-Identifier: GPL-2.0-or-later
5 */
6#ifndef KISROOTSURFACEINFOPROXY_H
7#define KISROOTSURFACEINFOPROXY_H
8
9#include <kritaui_export.h>
11
13class KoColorProfile;
14namespace KisSurfaceColorimetry {
15struct SurfaceDescription;
16}
17
44{
45 Q_OBJECT
46public:
47 KisRootSurfaceInfoProxy(QWidget *watched, QObject *parent = nullptr);
49 const KoColorProfile* rootSurfaceProfile() const;
50 bool isReady() const;
51
52 QString colorManagementReport() const;
53 QString osPreferredColorSpaceReport() const;
54
55 std::optional<KisSurfaceColorimetry::SurfaceDescription> currentSurfaceDescription() const;
56
57Q_SIGNALS:
58 void sigRootSurfaceProfileChanged(const KoColorProfile *profile) const;
59
60private:
61
62 void connectToNativeWindow(QWindow *nativeWindow) override;
63 void disconnectFromNativeWindow() override;
64 void tryUpdateRootSurfaceProfile();
65
66private:
68 QMetaObject::Connection m_surfaceManagerConnection;
69
70 const KoColorProfile* m_rootSurfaceProfile {nullptr};
71};
72
73#endif /* KISROOTSURFACEINFOPROXY_H */
QMetaObject::Connection m_surfaceManagerConnection
QPointer< KisSRGBSurfaceColorSpaceManager > m_topLevelSurfaceManager
void sigRootSurfaceProfileChanged(const KoColorProfile *profile) const
virtual void disconnectFromNativeWindow()=0
virtual void connectToNativeWindow(QWindow *nativeWindow)=0