File indexing completed on 2024-12-01 13:36:42
0001 /* 0002 SPDX-FileCopyrightText: 2022 Vlad Zahorodnii <vlad.zahorodnii@kde.org> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #pragma once 0008 0009 #include "scene/scene.h" 0010 0011 namespace KWin 0012 { 0013 0014 class CursorItem; 0015 0016 class KWIN_EXPORT CursorScene : public Scene 0017 { 0018 Q_OBJECT 0019 0020 public: 0021 explicit CursorScene(std::unique_ptr<ItemRenderer> &&renderer); 0022 ~CursorScene() override; 0023 0024 void initialize(); 0025 0026 void prePaint(SceneDelegate *delegate) override; 0027 void postPaint() override; 0028 void paint(RenderTarget *renderTarget, const QRegion ®ion) override; 0029 0030 private: 0031 std::unique_ptr<CursorItem> m_rootItem; 0032 }; 0033 0034 } // namespace KWin