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 "KisPaintThicknessOptionModel.h"
0007 
0008 namespace {
0009 
0010 auto paintThicknessLens = lager::lenses::getset (
0011     [] (const KisPaintThicknessOptionData::ThicknessMode &mode) {
0012         return mode == KisPaintThicknessOptionData::OVERWRITE ?
0013             0 :
0014             1;
0015     },
0016     [] (KisPaintThicknessOptionData::ThicknessMode, int value) {
0017          return value == 0 ?
0018             KisPaintThicknessOptionData::OVERWRITE :
0019             KisPaintThicknessOptionData::OVERLAY;
0020     });
0021 
0022 } // namespace
0023 
0024 KisPaintThicknessOptionModel::KisPaintThicknessOptionModel(lager::cursor<KisPaintThicknessOptionMixIn> _optionData)
0025     : optionData(_optionData)
0026     , LAGER_QT(mode) {optionData[&KisPaintThicknessOptionMixIn::mode].zoom(paintThicknessLens)}
0027 {
0028 }