Krita Source Code Documentation
Loading...
Searching...
No Matches
KisDynamicSensorFactoryFade.cpp
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2022 Dmitry Kazakov <dimula73@gmail.com>
3 *
4 * SPDX-License-Identifier: GPL-2.0-or-later
5 */
7
8#include "ui_SensorFadeConfiguration.h"
9
12#include <KisKritaSensorPack.h>
13
14namespace {
15 auto safeDereferenceFadeSensor = lager::lenses::getset(
17 const KisKritaSensorPack *pack = dynamic_cast<const KisKritaSensorPack*>(data.sensorData.constData());
18 if (pack) {
19 return pack->constSensorsStruct().sensorFade;
20 } else {
21 qWarning() << "safeDereferenceFadeSensor(get): failed to get a Krita sensor data";
23 }
24 },
26 KisKritaSensorPack *pack = dynamic_cast<KisKritaSensorPack*>(data.sensorData.data());
27 if (pack) {
28 pack->sensorsStruct().sensorFade = sensor;
29 } else {
30 qWarning() << "safeDereferenceFadeSensor(set): failed to get a Krita sensor data";
31 }
32 return data;
33 });
34}
35
41
42QWidget *KisDynamicSensorFactoryFade::createConfigWidget(lager::cursor<KisCurveOptionDataCommon> data, QWidget *parent)
43{
44 QWidget* wdg = new QWidget(parent);
45 Ui_SensorFadeConfiguration stc;
46 stc.setupUi(wdg);
47
49 new KisSensorWithLengthModel(data.zoom(safeDereferenceFadeSensor), wdg);
50
51 using namespace KisWidgetConnectionUtils;
52
53 connectControl(stc.checkBoxRepeat, model, "isPeriodic");
54 connectControl(stc.spinBoxLength, model, "length");
55
56 stc.spinBoxLength->setExponentRatio(3.0);
57
58 return wdg;
59}
60
65
67{
68 return i18n("%1", length);
69}
qreal length(const QPointF &vec)
Definition Ellipse.cc:82
const KoID FadeId("fade", ki18nc("Context: dynamic sensors", "Fade"))
generate a number that increase every time you call it (e.g. per dab)
QString maximumLabel(int length) override
QWidget * createConfigWidget(lager::cursor< KisCurveOptionDataCommon > data, QWidget *parent) override
const KisKritaSensorData & constSensorsStruct() const
KisKritaSensorData & sensorsStruct()
QSharedDataPointer< KisSensorPackInterface > sensorData
KisSensorWithLengthData sensorFade