Krita Source Code Documentation
Loading...
Searching...
No Matches
KisCurveOptionInputControlsStrategy.h
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
*/
6
7
#ifndef KISCURVEOPTIONINPUTCONTROLSSTRATEGY_H
8
#define KISCURVEOPTIONINPUTCONTROLSSTRATEGY_H
9
10
#include <
kritapaintop_export_instance.h
>
11
12
#include <lager/reader.hpp>
13
#include <QScopedPointer>
14
#include <
KisCurveOptionInputControlsStrategyInterface.h
>
15
#include <QString>
16
17
class
KisCurveWidgetControlsManagerBase
;
18
class
QSpinBox;
19
class
QDoubleSpinBox;
20
21
template
<
typename
SpinBox>
22
class
PAINTOP_EXPORT_TEMPLATE
KisCurveOptionInputControlsStrategy
23
:
public
KisCurveOptionInputControlsStrategyInterface
24
{
25
public
:
26
KisCurveOptionInputControlsStrategy
(
KisCurveRangeModelInterface
*rangeInterface,
27
KisCurveWidget
*curveWidget,
28
QWidget *inPlaceholder, QWidget *outPlaceholder);
29
~KisCurveOptionInputControlsStrategy
();
30
31
static
KisCurveOptionInputControlsStrategyFactory
factory();
32
33
private
:
34
void
updateCurveLabels(qreal xMin, qreal xMax, qreal yMin, qreal yMax);
35
36
private
:
37
SpinBox *
inSpinBox
;
38
SpinBox *
outSpinBox
;
39
KisCurveWidget
*curveWidget {
nullptr
};
40
QScopedPointer<KisCurveWidgetControlsManagerBase>
curveControlsManager
;
41
lager::reader<QString>
xValueSuffix
;
42
lager::reader<QString>
yValueSuffix
;
43
lager::reader<std::tuple<qreal, qreal, qreal, qreal>>
rangeValues
;
44
};
45
46
extern
template
class
KisCurveOptionInputControlsStrategy<QSpinBox>
;
47
extern
template
class
KisCurveOptionInputControlsStrategy<QDoubleSpinBox>
;
48
49
class
KisCurveOptionInputControlsStrategyInt
:
public
KisCurveOptionInputControlsStrategy<QSpinBox>
50
{
51
public
:
52
using
KisCurveOptionInputControlsStrategy::KisCurveOptionInputControlsStrategy
;
53
};
54
55
class
KisCurveOptionInputControlsStrategyDouble
:
public
KisCurveOptionInputControlsStrategy<QDoubleSpinBox>
56
{
57
public
:
58
using
KisCurveOptionInputControlsStrategy::KisCurveOptionInputControlsStrategy
;
59
};
60
61
62
#endif
// KISCURVEOPTIONINPUTCONTROLSSTRATEGY_H
KisCurveOptionInputControlsStrategyInterface.h
KisCurveOptionInputControlsStrategyFactory
std::function< KisCurveOptionInputControlsStrategyInterface *( KisCurveRangeModelInterface *, KisCurveWidget *, QWidget *, QWidget *)> KisCurveOptionInputControlsStrategyFactory
Definition
KisCurveOptionInputControlsStrategyInterface.h:27
KisCurveOptionInputControlsStrategyDouble
Definition
KisCurveOptionInputControlsStrategy.h:56
KisCurveOptionInputControlsStrategyInt
Definition
KisCurveOptionInputControlsStrategy.h:50
KisCurveOptionInputControlsStrategyInterface
Definition
KisCurveOptionInputControlsStrategyInterface.h:18
KisCurveOptionInputControlsStrategy
Definition
KisCurveOptionInputControlsStrategy.h:24
KisCurveOptionInputControlsStrategy::curveControlsManager
QScopedPointer< KisCurveWidgetControlsManagerBase > curveControlsManager
Definition
KisCurveOptionInputControlsStrategy.h:40
KisCurveOptionInputControlsStrategy::xValueSuffix
lager::reader< QString > xValueSuffix
Definition
KisCurveOptionInputControlsStrategy.h:41
KisCurveOptionInputControlsStrategy::KisCurveOptionInputControlsStrategy
KisCurveOptionInputControlsStrategy(KisCurveRangeModelInterface *rangeInterface, KisCurveWidget *curveWidget, QWidget *inPlaceholder, QWidget *outPlaceholder)
Definition
KisCurveOptionInputControlsStrategy.cpp:26
KisCurveOptionInputControlsStrategy::inSpinBox
SpinBox * inSpinBox
Definition
KisCurveOptionInputControlsStrategy.h:37
KisCurveOptionInputControlsStrategy::outSpinBox
SpinBox * outSpinBox
Definition
KisCurveOptionInputControlsStrategy.h:38
KisCurveOptionInputControlsStrategy::rangeValues
lager::reader< std::tuple< qreal, qreal, qreal, qreal > > rangeValues
Definition
KisCurveOptionInputControlsStrategy.h:43
KisCurveOptionInputControlsStrategy::yValueSuffix
lager::reader< QString > yValueSuffix
Definition
KisCurveOptionInputControlsStrategy.h:42
KisCurveRangeModelInterface
Definition
KisCurveRangeModelInterface.h:19
KisCurveWidgetControlsManagerBase
Definition
KisCurveWidgetControlsManager.h:48
KisCurveWidget
Definition
kis_curve_widget.h:41
kritapaintop_export_instance.h
PAINTOP_EXPORT_TEMPLATE
#define PAINTOP_EXPORT_TEMPLATE
Definition
kritapaintop_export_instance.h:22
plugins
paintops
libpaintop
KisCurveOptionInputControlsStrategy.h
Generated at
2025-11-04 02:30:02+01:00
from
Krita
branch
master
, commit
c9dde2e79561a8aea4a7e8d9ac99c98a7bac9e52