5#include <QDoubleSpinBox>
9#include <albert/export.h>
19template<
typename T,
typename GET,
typename SET>
20static void bind(QCheckBox *checkbox, T *
object, GET get, SET set)
22 checkbox->setChecked((object->*get)());
23 QObject::connect(checkbox, &QCheckBox::toggled,
object, set);
33template<
typename T,
typename GET,
typename SET,
typename SIG>
34static void bind(QCheckBox *checkbox, T *
object, GET get, SET set, SIG sig)
36 bind(checkbox,
object, get, set);
37 QObject::connect(
object, sig, checkbox, &QCheckBox::setChecked);
46template<
typename T,
typename GET,
typename SET>
47static void bind(QLineEdit *lineedit, T *
object, GET get, SET set)
49 lineedit->setText((object->*get)());
50 QObject::connect(lineedit, &QLineEdit::editingFinished,
51 object, [lineedit,
object, set] { (
object->*set)(lineedit->text()); });
61template<
typename T,
typename GET,
typename SET,
typename SIG>
62static void bind(QLineEdit *lineedit, T *
object, GET get, SET set, SIG sig)
64 bind(lineedit,
object, get, set);
65 QObject::connect(
object, sig, lineedit, &QLineEdit::setText);
74template<
typename T,
typename GET,
typename SET>
75static void bind(QSpinBox *spinbox, T *
object, GET get, SET set)
77 spinbox->setValue((object->*get)());
78 QObject::connect(spinbox, QOverload<int>::of(&QSpinBox::valueChanged),
object, set);
88template<
typename T,
typename GET,
typename SET,
typename SIG>
89static void bind(QSpinBox *spinbox, T *
object, GET get, SET set, SIG sig)
91 bind(spinbox,
object, get, set);
92 QObject::connect(
object, sig, spinbox, &QSpinBox::setValue);
101template<
typename T,
typename GET,
typename SET>
102static void bind(QDoubleSpinBox *spinbox, T *
object, GET get, SET set)
104 spinbox->setValue((object->*get)());
105 QObject::connect(spinbox, QOverload<double>::of(&QDoubleSpinBox::valueChanged),
object, set);
115template<
typename T,
typename GET,
typename SET,
typename SIG>
116static void bind(QDoubleSpinBox *spinbox, T *
object, GET get, SET set, SIG sig)
118 bind(spinbox,
object, get, set);
119 QObject::connect(
object, sig, spinbox, &QDoubleSpinBox::setValue);
Definition backgroundexecutor.h:12