File indexing completed on 2024-06-16 04:17:30
0001 /* 0002 * SPDX-FileCopyrightText: 2022 Dmitry Kazakov <dimula73@gmail.com> 0003 * 0004 * SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 #ifndef KISMIRROROPTIONDATA_H 0007 #define KISMIRROROPTIONDATA_H 0008 0009 #include "KisCurveOptionData.h" 0010 0011 #include <KisOptionTuple.h> 0012 #include <KisPrefixedOptionDataWrapper.h> 0013 0014 struct PAINTOP_EXPORT KisMirrorOptionMixInImpl 0015 : boost::equality_comparable<KisMirrorOptionMixInImpl> 0016 { 0017 inline friend bool operator==(const KisMirrorOptionMixInImpl &lhs, const KisMirrorOptionMixInImpl &rhs) { 0018 return lhs.enableVerticalMirror == rhs.enableVerticalMirror && 0019 lhs.enableHorizontalMirror == rhs.enableHorizontalMirror; 0020 } 0021 0022 bool enableVerticalMirror {false}; 0023 bool enableHorizontalMirror {false}; 0024 0025 bool read(const KisPropertiesConfiguration *setting); 0026 void write(KisPropertiesConfiguration *setting) const; 0027 }; 0028 0029 using KisMirrorOptionMixIn = KisPrefixedOptionDataWrapper<KisMirrorOptionMixInImpl>; 0030 0031 struct PAINTOP_EXPORT KisMirrorOptionData : KisOptionTuple<KisCurveOptionData, KisMirrorOptionMixIn> 0032 { 0033 KisMirrorOptionData(const QString &prefix = "") 0034 : KisOptionTuple<KisCurveOptionData, KisMirrorOptionMixIn>(prefix, KoID("Mirror", i18n("Mirror"))) 0035 { 0036 } 0037 }; 0038 0039 0040 #endif // KISMIRROROPTIONDATA_H