File indexing completed on 2024-05-26 04:34:02

0001 /*
0002  *  SPDX-FileCopyrightText: 2022 Dmitry Kazakov <dimula73@gmail.com>
0003  *
0004  *  SPDX-License-Identifier: GPL-2.0-or-later
0005  */
0006 #ifndef KISAIRBRUSHOPTIONDATA_H
0007 #define KISAIRBRUSHOPTIONDATA_H
0008 
0009 #include <QtGlobal>
0010 #include <boost/operators.hpp>
0011 #include <kritapaintop_export.h>
0012 
0013 class KisPropertiesConfiguration;
0014 
0015 
0016 struct PAINTOP_EXPORT KisAirbrushOptionData : boost::equality_comparable<KisAirbrushOptionData>
0017 {
0018     inline friend bool operator==(const KisAirbrushOptionData &lhs, const KisAirbrushOptionData &rhs) {
0019         return lhs.isChecked == rhs.isChecked &&
0020                 qFuzzyCompare(lhs.airbrushRate, rhs.airbrushRate) &&
0021                 lhs.ignoreSpacing == rhs.ignoreSpacing;
0022     }
0023 
0024     bool isChecked {false};
0025     qreal airbrushRate {50.0};
0026     bool ignoreSpacing {false};
0027 
0028     bool read(const KisPropertiesConfiguration *setting);
0029     void write(KisPropertiesConfiguration *setting) const;
0030 };
0031 
0032 #endif // KISAIRBRUSHOPTIONDATA_H