configresttimeformatdlg.cpp 1.94 KB
#include "configresttimeformatdlg.h"
#include "ui_configresttimeformatdlg.h"
#include "config.h"
#include "soundplayer.h"

using namespace Define;

configResttimeFormatDlg::configResttimeFormatDlg(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::configResttimeFormatDlg)
{
    Config* cfg = Config::getInstance();
    config_item item;
    item = cfg->getConfigValue(config_resttime_format);
    m_nCurSel = item.d32;
    ui->setupUi(this);
    this->setWindowFlags( Qt::FramelessWindowHint);
    this->setAttribute( Qt::WA_DeleteOnClose);

    foreach (QPushButton *button, findChildren<QPushButton *>())
        connect(button, &QPushButton::pressed, SoundPlayer::playClick);

    ui->pushButton_1->setText(QCoreApplication::translate("Config",rest_time_type_menu[0]));
    ui->pushButton_2->setText(QCoreApplication::translate("Config", rest_time_type_menu[1]));

    reloadUi();

    m_pSignalMapper = new QSignalMapper(this);
    m_pSignalMapper->setMapping(ui->pushButton_1,0);
    m_pSignalMapper->setMapping(ui->pushButton_2,1);

    connect(ui->pushButton_1,SIGNAL(clicked(bool)),m_pSignalMapper,SLOT(map()));
    connect(ui->pushButton_2,SIGNAL(clicked(bool)),m_pSignalMapper,SLOT(map()));

    connect(m_pSignalMapper,SIGNAL(mapped(int)),this,SLOT(onConfigBtnClicked(int)));
}

configResttimeFormatDlg::~configResttimeFormatDlg()
{
    delete ui;
}

void configResttimeFormatDlg::on_ctrBtnOk_clicked()
{
    Config* cfg = Config::getInstance();
    config_item item;
    item.d32 = m_nCurSel;
    cfg->setConfigValue(config_resttime_format,item);
    accept();
}

void configResttimeFormatDlg::on_ctrBtnCancel_clicked()
{
    reject();
}

void configResttimeFormatDlg::onConfigBtnClicked(const int sel){
      m_nCurSel = sel;
}

void configResttimeFormatDlg::reloadUi(){
    switch(m_nCurSel){
    case 0:
        ui->pushButton_1->setChecked(true);
        break;
   case 1:
        ui->pushButton_2->setChecked(true);
        break;
    default:
        break;
    }
}