File indexing completed on 2024-06-16 04:17:16

0001 /*
0002  *  SPDX-FileCopyrightText: 2022 Dmitry Kazakov <dimula73@gmail.com>
0003  *
0004  *  SPDX-License-Identifier: GPL-2.0-or-later
0005  */
0006 #include "KisPaintThicknessOption.h"
0007 
0008 #include <KisPaintOpOptionUtils.h>
0009 namespace kpou = KisPaintOpOptionUtils;
0010 
0011 
0012 KisPaintThicknessOption::KisPaintThicknessOption(const KisPropertiesConfiguration *setting)
0013     : KisPaintThicknessOption(kpou::loadOptionData<KisPaintThicknessOptionData>(setting))
0014 {
0015 }
0016 
0017 KisPaintThicknessOption::KisPaintThicknessOption(const KisPaintThicknessOptionData &data)
0018     : KisCurveOption(data),
0019       m_mode(data.mode)
0020 {
0021 }
0022 
0023 qreal KisPaintThicknessOption::apply(const KisPaintInformation & info) const
0024 {
0025     if (!isChecked()) return 1.0;
0026     return computeSizeLikeValue(info);
0027 }
0028 
0029 KisPaintThicknessOptionData::ThicknessMode KisPaintThicknessOption::mode() const
0030 {
0031     return m_mode;
0032 }