105 lines
4.1 KiB
C++
105 lines
4.1 KiB
C++
#include "CCANWatchdogSettingsPage.h"
|
|
#include "ui_CCANWatchdogSettingsPage.h"
|
|
#include "CANDevice.h"
|
|
#include "OtarcikCan.h"
|
|
|
|
CCANWatchdogSettingsPage::CCANWatchdogSettingsPage(QWidget *parent) :
|
|
QWidget(parent),
|
|
ui(new Ui::CCANWatchdogSettingsPage)
|
|
{
|
|
mProgramHandle = 0;
|
|
ui->setupUi(this);
|
|
|
|
connect(ui->mCANWatchdogChangBtn,&QPushButton::pressed,this,&CCANWatchdogSettingsPage::ChangeSettingsButtonPressed);
|
|
connect(ui->mCANWatchdogCancelBtn,&QPushButton::pressed,this,&CCANWatchdogSettingsPage::CancelButtonPressed);
|
|
|
|
ui->mCANWatchdogBaudrateComboBx->clear();
|
|
ui->mCANWatchdogBaudrateComboBx->addItem("PCAN_BAUD_1M",QVariant(PCAN_BAUD_1M));
|
|
ui->mCANWatchdogBaudrateComboBx->addItem("PCAN_BAUD_800K",QVariant(PCAN_BAUD_800K));
|
|
ui->mCANWatchdogBaudrateComboBx->addItem("PCAN_BAUD_500K",QVariant(PCAN_BAUD_500K));
|
|
ui->mCANWatchdogBaudrateComboBx->addItem("PCAN_BAUD_250K",QVariant(PCAN_BAUD_250K));
|
|
ui->mCANWatchdogBaudrateComboBx->addItem("PCAN_BAUD_125K",QVariant(PCAN_BAUD_125K));
|
|
ui->mCANWatchdogBaudrateComboBx->addItem("PCAN_BAUD_100K",QVariant(PCAN_BAUD_100K));
|
|
ui->mCANWatchdogBaudrateComboBx->addItem("PCAN_BAUD_95K",QVariant(PCAN_BAUD_95K));
|
|
ui->mCANWatchdogBaudrateComboBx->addItem("PCAN_BAUD_83K",QVariant(PCAN_BAUD_83K));
|
|
ui->mCANWatchdogBaudrateComboBx->addItem("PCAN_BAUD_50K",QVariant(PCAN_BAUD_50K));
|
|
ui->mCANWatchdogBaudrateComboBx->addItem("PCAN_BAUD_47K",QVariant(PCAN_BAUD_47K));
|
|
ui->mCANWatchdogBaudrateComboBx->addItem("PCAN_BAUD_33K",QVariant(PCAN_BAUD_33K));
|
|
ui->mCANWatchdogBaudrateComboBx->addItem("PCAN_BAUD_20K",QVariant(PCAN_BAUD_20K));
|
|
ui->mCANWatchdogBaudrateComboBx->addItem("PCAN_BAUD_10K",QVariant(PCAN_BAUD_10K));
|
|
ui->mCANWatchdogBaudrateComboBx->addItem("PCAN_BAUD_5K",QVariant(PCAN_BAUD_5K));
|
|
|
|
ui->mCANWatchdogCancelBtn->setVisible(false);
|
|
|
|
ui->mCANWatchdogBaudrateComboBx->setEnabled(false);
|
|
ui->mCANWatchdogDeviceIDSpinBx->setEnabled(false);
|
|
ui->mCANWatchdogTimeoutSpinBx->setEnabled(false);
|
|
|
|
mIsSettingsChangeMode = false;
|
|
}
|
|
|
|
CCANWatchdogSettingsPage::~CCANWatchdogSettingsPage()
|
|
{
|
|
delete ui;
|
|
}
|
|
|
|
void CCANWatchdogSettingsPage::CancelButtonPressed()
|
|
{
|
|
|
|
mIsSettingsChangeMode = false;
|
|
|
|
ui->mCANWatchdogCancelBtn->setVisible(false);
|
|
ui->mCANWatchdogBaudrateComboBx->setEnabled(false);
|
|
ui->mCANWatchdogDeviceIDSpinBx->setEnabled(false);
|
|
ui->mCANWatchdogTimeoutSpinBx->setEnabled(false);
|
|
ui->mCANWatchdogChangBtn->setText("Modifier");
|
|
}
|
|
|
|
void CCANWatchdogSettingsPage::ChangeSettingsButtonPressed()
|
|
{
|
|
if(mIsSettingsChangeMode == false)
|
|
{
|
|
mIsSettingsChangeMode = true;
|
|
|
|
ui->mCANWatchdogCancelBtn->setVisible(true);
|
|
ui->mCANWatchdogBaudrateComboBx->setEnabled(true);
|
|
ui->mCANWatchdogDeviceIDSpinBx->setEnabled(true);
|
|
ui->mCANWatchdogTimeoutSpinBx->setEnabled(true);
|
|
ui->mCANWatchdogChangBtn->setText("Sauvegarder");
|
|
}
|
|
else
|
|
{
|
|
|
|
mIsSettingsChangeMode = false;
|
|
|
|
ui->mCANWatchdogCancelBtn->setVisible(false);
|
|
ui->mCANWatchdogBaudrateComboBx->setEnabled(false);
|
|
ui->mCANWatchdogDeviceIDSpinBx->setEnabled(false);
|
|
ui->mCANWatchdogTimeoutSpinBx->setEnabled(false);
|
|
ui->mCANWatchdogChangBtn->setText("Modifier");
|
|
|
|
//Save data...
|
|
mCANWatchdogConfig.mCANDeviceID = ui->mCANWatchdogDeviceIDSpinBx->value();
|
|
mCANWatchdogConfig.mWatchdogTimeout = ui->mCANWatchdogTimeoutSpinBx->value();
|
|
mCANWatchdogConfig.mCANDeviceBaudrate = ui->mCANWatchdogBaudrateComboBx->currentData().toInt();
|
|
|
|
mProgramHandle->SaveCANWatchdogSettingsRequest(&mCANWatchdogConfig);
|
|
}
|
|
}
|
|
|
|
int CCANWatchdogSettingsPage::SetCANWatchdogConfig(CCANWatchdogConfig *Config)
|
|
{
|
|
if(Config == 0)
|
|
{
|
|
return RET_GENERAL_ERROR;
|
|
}
|
|
|
|
mCANWatchdogConfig = *Config;
|
|
|
|
ui->mCANWatchdogDeviceIDSpinBx->setValue(mCANWatchdogConfig.mCANDeviceID);
|
|
ui->mCANWatchdogTimeoutSpinBx->setValue(mCANWatchdogConfig.mWatchdogTimeout);
|
|
ui->mCANWatchdogBaudrateComboBx->setCurrentIndex(ui->mCANWatchdogBaudrateComboBx->findData(mCANWatchdogConfig.mCANDeviceBaudrate));
|
|
|
|
return RET_OK;
|
|
}
|