File indexing completed on 2024-05-12 15:59:02
0001 /* 0002 * SPDX-FileCopyrightText: 2016 Boudewijn Rempt <boud@valdyas.org> 0003 * 0004 * SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #ifndef CompositionsCHECK_H 0008 #define CompositionsCHECK_H 0009 0010 #include "KisExportCheckRegistry.h" 0011 #include <KoID.h> 0012 #include <klocalizedstring.h> 0013 #include <kis_image.h> 0014 0015 class CompositionsCheck : public KisExportCheckBase 0016 { 0017 public: 0018 0019 CompositionsCheck(const QString &id, Level level, const QString &customWarning = QString()) 0020 : KisExportCheckBase(id, level, customWarning) 0021 { 0022 if (customWarning.isEmpty()) { 0023 m_warning = i18nc("image conversion warning", "The image contains <b>compositions</b>. The compositions will not be saved."); 0024 } 0025 } 0026 0027 bool checkNeeded(KisImageSP image) const override 0028 { 0029 return (image->compositions().size() > 0); 0030 } 0031 0032 Level check(KisImageSP /*image*/) const override 0033 { 0034 return m_level; 0035 } 0036 }; 0037 0038 class CompositionsCheckFactory : public KisExportCheckFactory 0039 { 0040 public: 0041 0042 CompositionsCheckFactory() 0043 { 0044 } 0045 0046 ~CompositionsCheckFactory() override {} 0047 0048 KisExportCheckBase *create(KisExportCheckBase::Level level, const QString &customWarning) override 0049 { 0050 return new CompositionsCheck(id(), level, customWarning); 0051 } 0052 0053 QString id() const override { 0054 return "CompositionsCheck"; 0055 } 0056 }; 0057 0058 #endif // CompositionsCHECK_H