#include "spindialog.h"
#include <QSpinBox>

SpinDialog::SpinDialog( ) : DialogBase()
{
    m_input = new QSpinBox(inputWidgetParent());
    setInputWidget(m_input);
    setButtons(QDialogButtonBox::Ok|QDialogButtonBox::Cancel);
}

DialogBase *SpinDialog::createWidget(  const QString &text,  const QString &minValue, const QString &maxValue, const QString &defaultValue, const QString &label )
{
    bool isNumber = false;

    int minVal = minValue.toInt(&isNumber);
    if ( isNumber == false )
        return 0;

    int maxVal = maxValue.toInt(&isNumber);
    if ( isNumber == false )
        return 0;

    int defaultVal = defaultValue.toInt(&isNumber);
    if ( isNumber == false )
        return 0;

    SpinDialog *dlg = new SpinDialog();
    dlg->setText(text);
    dlg->m_input->setMinimum( minVal );
    dlg->m_input->setMaximum( maxVal );
    dlg->m_input->setValue( defaultVal );
    dlg->m_input->setSuffix(label);
    return dlg;
}

void SpinDialog::slotInputAccepted()
{
    printOutput( m_input->value() );
}

