#pragma once
#include <QtCore/QObject>
#include <QtWidgets/QSpinBox>
#include <QtCore/QString>
#include <string>
#include "signal.h"
inline QSpinBox *QSpinBox_new(QWidget *parent) {
return new QSpinBox(parent);
}
inline void QSpinBox_setValue(QSpinBox *sb, int value) {
sb->setValue(value);
}
inline int QSpinBox_value(QSpinBox *sb) {
return sb->value();
}
inline void QSpinBox_setRange(QSpinBox *sb, int min, int max) {
sb->setRange(min, max);
}
inline void QSpinBox_setSuffix(QSpinBox *sb, const std::string &suffix) {
sb->setSuffix(QString::fromStdString(suffix));
}
inline void QSpinBox_delete(QSpinBox *sb) {
delete sb;
}
inline void QSpinBox_onValueChanged(QSpinBox *sb, uint64_t ctx) {
QObject::connect(sb, QOverload<int>::of(&QSpinBox::valueChanged),
[ctx](int value) {
if (g_hasIntTrampoline) g_intTrampoline(ctx, value);
});
}