35 QSizePolicy sizePolicy(QSizePolicy::Minimum, QSizePolicy::Minimum);
36 sizePolicy.setHorizontalStretch(0);
37 sizePolicy.setVerticalStretch(0);
38 sizePolicy.setHeightForWidth(inSpinBox->sizePolicy().hasHeightForWidth());
39 inSpinBox->setSizePolicy(sizePolicy);
40 outSpinBox->setSizePolicy(sizePolicy);
42 inSpinBox->setMinimumSize(QSize(0, 0));
43 outSpinBox->setMinimumSize(QSize(0, 0));
47 inSpinBox->setFont(font);
48 outSpinBox->setFont(font);
50 QHBoxLayout *inLayout =
new QHBoxLayout(inPlaceholder);
51 inLayout->addWidget(inSpinBox);
52 inLayout->setContentsMargins(0, 0, 0, 0);
54 QHBoxLayout *outLayout =
new QHBoxLayout(outPlaceholder);
55 outLayout->addWidget(outSpinBox);
56 outLayout->setContentsMargins(0, 0, 0, 0);
63 xValueSuffix.bind(std::bind(&SpinBox::setSuffix, inSpinBox, std::placeholders::_1));
64 yValueSuffix.bind(std::bind(&SpinBox::setSuffix, outSpinBox, std::placeholders::_1));
67 std::placeholders::_1, std::placeholders::_2,
68 std::placeholders::_3, std::placeholders::_4)));
72template<
typename SpinBox>
77template<
typename SpinBox>
83 QWidget *inPlaceholder, QWidget *outPlaceholder) {
92template<
typename SpinBox>
97 curveControlsManager.reset(
100 inSpinBox, outSpinBox,
101 KisAlgebra2D::lazyRound<ValueType>(xMin),
102 KisAlgebra2D::lazyRound<ValueType>(xMax),
103 KisAlgebra2D::lazyRound<ValueType>(yMin),
104 KisAlgebra2D::lazyRound<ValueType>(yMax)));