File indexing completed on 2024-05-26 04:33:49

0001 /*
0002  *  SPDX-FileCopyrightText: 2022 Dmitry Kazakov <dimula73@gmail.com>
0003  *
0004  *  SPDX-License-Identifier: GPL-2.0-or-later
0005  */
0006 #ifndef KISBRUSHPROPERTIESMODEL_H
0007 #define KISBRUSHPROPERTIESMODEL_H
0008 
0009 #include <KisBrushModel.h>
0010 #include <lager/cursor.hpp>
0011 
0012 class KisBrushPropertiesModel
0013 {
0014 public:
0015     KisBrushPropertiesModel(lager::reader<KisBrushModel::BrushData> _brushData,
0016                             KisResourcesInterfaceSP _resourcesInterface);
0017 private:
0018     KisResourcesInterfaceSP resourcesInterface;
0019 
0020 public:
0021     lager::reader<KisBrushModel::BrushData> brushData;
0022     lager::reader<bool> isBrushPierced;
0023     lager::reader<enumBrushApplication> brushApplication;
0024 
0025 private:
0026     bool calcBrushPierced(const KisBrushModel::BrushData &data);
0027 
0028     enumBrushApplication calcBrushApplication(const KisBrushModel::BrushData &data);
0029 };
0030 #endif // KISBRUSHPROPERTIESMODEL_H