File indexing completed on 2024-05-26 04:34:07
0001 /* 0002 * SPDX-FileCopyrightText: 2022 Dmitry Kazakov <dimula73@gmail.com> 0003 * 0004 * SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 #include "KisSpacingOption.h" 0007 0008 #include <kis_properties_configuration.h> 0009 #include <KisSpacingOptionData.h> 0010 0011 #include <KisPaintOpOptionUtils.h> 0012 namespace kpou = KisPaintOpOptionUtils; 0013 0014 0015 KisSpacingOption::KisSpacingOption(const KisPropertiesConfiguration *setting) 0016 : KisSpacingOption(kpou::loadOptionData<KisSpacingOptionData>(setting)) 0017 { 0018 } 0019 0020 KisSpacingOption::KisSpacingOption(const KisSpacingOptionData &data) 0021 : KisCurveOption(data) 0022 , m_isotropicSpacing(data.isotropicSpacing) 0023 , m_useSpacingUpdates(data.useSpacingUpdates) 0024 { 0025 } 0026 0027 qreal KisSpacingOption::apply(const KisPaintInformation &info) const 0028 { 0029 if (!isChecked()) return 1.0; 0030 return computeSizeLikeValue(info); 0031 } 0032 0033 bool KisSpacingOption::isotropicSpacing() const 0034 { 0035 return m_isotropicSpacing; 0036 } 0037 0038 bool KisSpacingOption::usingSpacingUpdates() const 0039 { 0040 return m_useSpacingUpdates; 0041 }