File indexing completed on 2024-05-12 16:01:45
0001 /* 0002 * SPDX-FileCopyrightText: 2022 Dmitry Kazakov <dimula73@gmail.com> 0003 * 0004 * SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #ifndef KISDETACHEDSHAPESVIEWCONVERTER_H 0008 #define KISDETACHEDSHAPESVIEWCONVERTER_H 0009 0010 #include <kritaui_export.h> 0011 0012 #include "KisClonableViewConverter.h" 0013 0014 /** 0015 * @brief The KisDetachedShapesViewConverter class is a placeholder 0016 * class for vector layers for the time when they are not attached 0017 * to any image. Otherwise, a shape layer cannot reason about its 0018 * size. 0019 */ 0020 class KRITAUI_EXPORT KisDetachedShapesViewConverter : public KisClonableViewConverter 0021 { 0022 public: 0023 KisDetachedShapesViewConverter(qreal xRes, qreal yRes); 0024 0025 KisClonableViewConverter* clone() const override; 0026 0027 void zoom(qreal *zoomX, qreal *zoomY) const override; 0028 0029 qreal documentToViewX(qreal documentX) const override; 0030 qreal documentToViewY(qreal documentY) const override; 0031 qreal viewToDocumentX(qreal viewX) const override; 0032 qreal viewToDocumentY(qreal viewY) const override; 0033 0034 // This method shouldn't be used for image 0035 qreal zoom() const; 0036 0037 private: 0038 qreal m_xRes {1.0}; 0039 qreal m_yRes {1.0}; 0040 }; 0041 0042 #endif // KISDETACHEDSHAPESVIEWCONVERTER_H