File indexing completed on 2024-05-19 05:32:18
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/item.h" 0010 0011 namespace KWin 0012 { 0013 0014 class ImageItem; 0015 class SurfaceInterface; 0016 class SurfaceItemWayland; 0017 0018 class CursorItem : public Item 0019 { 0020 Q_OBJECT 0021 0022 public: 0023 explicit CursorItem(Scene *scene, Item *parent = nullptr); 0024 ~CursorItem() override; 0025 0026 private: 0027 void refresh(); 0028 void setSurface(SurfaceInterface *surface); 0029 void setImage(const QImage &image); 0030 0031 std::unique_ptr<ImageItem> m_imageItem; 0032 std::unique_ptr<SurfaceItemWayland> m_surfaceItem; 0033 }; 0034 0035 } // namespace KWin