File indexing completed on 2024-05-12 15:56:48
0001 /* This file is part of the KDE project 0002 SPDX-FileCopyrightText: 2006-2007 Jan Hambrecht <jaham@gmx.net> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #ifndef __KOSHAPELAYER_H__ 0008 #define __KOSHAPELAYER_H__ 0009 0010 #include "KoShapeContainer.h" 0011 #include "kritaflake_export.h" 0012 0013 /** 0014 * Provides arranging shapes into layers. 0015 * This makes it possible to have a higher key of a number of objects 0016 * in a document. 0017 * A layer is always invisible and unselectable. 0018 */ 0019 class KRITAFLAKE_EXPORT KoShapeLayer : public KoShapeContainer 0020 { 0021 public: 0022 /// The default constructor 0023 KoShapeLayer(); 0024 /** 0025 * Constructor with custom model 0026 * @param model the custom modem 0027 */ 0028 explicit KoShapeLayer(KoShapeContainerModel *model); 0029 0030 /** 0031 * Empty implementation, as the layer itself is not visible 0032 */ 0033 void paintComponent(QPainter &painter) const override; 0034 bool hitTest(const QPointF &position) const override; 0035 QRectF boundingRect() const override; 0036 }; 0037 0038 #endif // __KOSHAPELAYER_H__ 0039