File indexing completed on 2024-05-26 04:34:06
0001 /* 0002 * SPDX-FileCopyrightText: 2022 Dmitry Kazakov <dimula73@gmail.com> 0003 * 0004 * SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 #ifndef KISPAINTINGMODEOPTIONMODEL_H 0007 #define KISPAINTINGMODEOPTIONMODEL_H 0008 0009 #include <lager/cursor.hpp> 0010 #include <lager/extra/qt.hpp> 0011 0012 #include "KisPaintingModeOptionData.h" 0013 #include "KisWidgetConnectionUtils.h" 0014 0015 using ButtonGroupState = KisWidgetConnectionUtils::ButtonGroupState; 0016 0017 class KisPaintingModeOptionModel : public QObject 0018 { 0019 Q_OBJECT 0020 public: 0021 KisPaintingModeOptionModel(lager::cursor<KisPaintingModeOptionData> optionData, lager::reader<bool> maskingBrushEnabled); 0022 0023 lager::cursor<KisPaintingModeOptionData> optionData; 0024 lager::reader<bool> maskingBrushEnabled; 0025 0026 KisPaintingModeOptionData bakedOptionData() const; 0027 0028 LAGER_QT_CURSOR(int, paintingMode); 0029 LAGER_QT_READER(int, effectivePaintingMode); 0030 LAGER_QT_READER(ButtonGroupState, paintingModeState); 0031 }; 0032 0033 #endif // KISPAINTINGMODEOPTIONMODEL_H