707 lines
28 KiB
C++
707 lines
28 KiB
C++
#include "LoggingSettingsPage.h"
|
|
#include "ui_LoggingSettingsPage.h"
|
|
#include "defines.h"
|
|
#include "OtarcikCan.h"
|
|
|
|
CLoggingSettingsPage::CLoggingSettingsPage(QWidget *parent) :
|
|
QWidget(parent),
|
|
ui(new Ui::CLoggingSettingsPage),
|
|
EditMode(false)
|
|
{
|
|
ui->setupUi(this);
|
|
|
|
ui->mCancelBtn->hide();
|
|
ui->mChangeParamsBtn->setText("Modifier");
|
|
ui->mCloudMQTTHostNameEdit->setEnabled(false);
|
|
ui->mCloudMQTTPasswordEdit->setEnabled(false);
|
|
ui->mCloudMQTTPortSpinBx->setEnabled(false);
|
|
ui->mCloudMQTTTopicPrefixEdit->setEnabled(false);
|
|
ui->mCloudMQTTUserNameEdit->setEnabled(false);
|
|
ui->mCloudMQTTRefreshRateSpinBx->setEnabled(false);
|
|
ui->mCloudMQTTActivateBrokerChkBx->setEnabled(false);
|
|
ui->mCloudMQTTActivateBufferingChkBx->setEnabled(false);
|
|
ui->mCloudMQTTClientID->setEnabled(false);
|
|
|
|
ui->mDevicePresCancelBtn->hide();
|
|
ui->mDevicePresenceActive1ChkBx->setEnabled(false);
|
|
ui->mDevicePresenceActive2ChkBx->setEnabled(false);
|
|
ui->mDevicePresenceActive3ChkBx->setEnabled(false);
|
|
ui->mDevicePresenceActive4ChkBx->setEnabled(false);
|
|
ui->mDevicePresenceActive5ChkBx->setEnabled(false);
|
|
ui->mDevicePresenceAdd1LineEdit->setEnabled(false);
|
|
ui->mDevicePresenceAdd2LineEdit->setEnabled(false);
|
|
ui->mDevicePresenceAdd3LineEdit->setEnabled(false);
|
|
ui->mDevicePresenceAdd4LineEdit->setEnabled(false);
|
|
ui->mDevicePresenceAdd5LineEdit->setEnabled(false);
|
|
ui->mDevicePresenceBit1ComboBox->setEnabled(false);
|
|
ui->mDevicePresenceBit2ComboBox->setEnabled(false);
|
|
ui->mDevicePresenceBit3ComboBox->setEnabled(false);
|
|
ui->mDevicePresenceBit4ComboBox->setEnabled(false);
|
|
ui->mDevicePresenceBit5ComboBox->setEnabled(false);
|
|
ui->mInternetPresBitComboBox->setEnabled(false);
|
|
ui->mMQTTPresenceBitComboBox->setEnabled(false);
|
|
ui->mWatchdogMsgIDSpinBx->setEnabled(false);
|
|
|
|
ui->mDevicePresenceAdd1LineEdit->setInputMask("000.000.000.000");
|
|
ui->mDevicePresenceAdd2LineEdit->setInputMask("000.000.000.000");
|
|
ui->mDevicePresenceAdd3LineEdit->setInputMask("000.000.000.000");
|
|
ui->mDevicePresenceAdd4LineEdit->setInputMask("000.000.000.000");
|
|
ui->mDevicePresenceAdd5LineEdit->setInputMask("000.000.000.000");
|
|
|
|
ui->mDevicePresenceAdd1LineEdit->setText("192.168.10.111");
|
|
ui->mDevicePresenceAdd2LineEdit->setText("192.168.10.222");
|
|
ui->mDevicePresenceAdd3LineEdit->setText("192.168.10.333");
|
|
ui->mDevicePresenceAdd4LineEdit->setText("192.168.10.444");
|
|
ui->mDevicePresenceAdd5LineEdit->setText("192.168.10.555");
|
|
|
|
QStringList BitsList;
|
|
for(int i = 32; i < 64; i++)
|
|
{
|
|
//BitsList.append(QString("%1").arg(i));
|
|
|
|
ui->mInternetPresBitComboBox->addItem(QString("%1").arg(i),QVariant(i));
|
|
ui->mMQTTPresenceBitComboBox->addItem(QString("%1").arg(i),QVariant(i));
|
|
ui->mDevicePresenceBit1ComboBox->addItem(QString("%1").arg(i),QVariant(i));
|
|
ui->mDevicePresenceBit2ComboBox->addItem(QString("%1").arg(i),QVariant(i));
|
|
ui->mDevicePresenceBit3ComboBox->addItem(QString("%1").arg(i),QVariant(i));
|
|
ui->mDevicePresenceBit4ComboBox->addItem(QString("%1").arg(i),QVariant(i));
|
|
ui->mDevicePresenceBit5ComboBox->addItem(QString("%1").arg(i),QVariant(i));
|
|
|
|
}
|
|
// ui->mInternetPresBitComboBox->addItems(BitsList);
|
|
// ui->mMQTTPresenceBitComboBox->addItems(BitsList);
|
|
// ui->mDevicePresenceBit1ComboBox->addItems(BitsList);
|
|
// ui->mDevicePresenceBit2ComboBox->addItems(BitsList);
|
|
// ui->mDevicePresenceBit3ComboBox->addItems(BitsList);
|
|
// ui->mDevicePresenceBit4ComboBox->addItems(BitsList);
|
|
// ui->mDevicePresenceBit5ComboBox->addItems(BitsList);
|
|
|
|
#ifndef ENABLE_CHIPSET_DRIVER
|
|
ui->mWDActiveChkBx->setEnabled(false);
|
|
ui->mWDTimerTimeoutSpinBx->setEnabled(false);
|
|
#endif
|
|
|
|
mDevicePresenceEditMode = false;
|
|
|
|
connect(ui->mCancelBtn,&QPushButton::clicked,this,&CLoggingSettingsPage::CancelBtnPressed);
|
|
connect(ui->mChangeParamsBtn,&QPushButton::clicked,this,&CLoggingSettingsPage::ModifyParamsBtnPressed);
|
|
connect(ui->mLogZoneVerbositySpinBx,QOverload<int>::of(&QSpinBox::valueChanged),this,&CLoggingSettingsPage::VerbosityParamsChanged);
|
|
connect(ui->mLogFileVerbositySpinBx,QOverload<int>::of(&QSpinBox::valueChanged),this,&CLoggingSettingsPage::VerbosityParamsChanged);
|
|
connect(ui->mWDActiveChkBx,&QCheckBox::stateChanged,this,&CLoggingSettingsPage::EnableCPUWDCheckBxClicked);
|
|
connect(ui->mWDTimerTimeoutSpinBx,QOverload<int>::of(&QSpinBox::valueChanged),this,&CLoggingSettingsPage::CPUWDTimeoutChanged);
|
|
|
|
connect(ui->mDevicePresenceActive1ChkBx,&QCheckBox::stateChanged,this,&CLoggingSettingsPage::DevicePresenceEnableChkBxChanged);
|
|
connect(ui->mDevicePresenceActive2ChkBx,&QCheckBox::stateChanged,this,&CLoggingSettingsPage::DevicePresenceEnableChkBxChanged);
|
|
connect(ui->mDevicePresenceActive3ChkBx,&QCheckBox::stateChanged,this,&CLoggingSettingsPage::DevicePresenceEnableChkBxChanged);
|
|
connect(ui->mDevicePresenceActive4ChkBx,&QCheckBox::stateChanged,this,&CLoggingSettingsPage::DevicePresenceEnableChkBxChanged);
|
|
connect(ui->mDevicePresenceActive5ChkBx,&QCheckBox::stateChanged,this,&CLoggingSettingsPage::DevicePresenceEnableChkBxChanged);
|
|
connect(ui->mDevicePresChangeParamsBtn,&QPushButton::clicked,this,&CLoggingSettingsPage::DevicePresenceModifyParamsBtnPressed);
|
|
connect(ui->mDevicePresCancelBtn,&QPushButton::clicked,this,&CLoggingSettingsPage::DevicePresenceCancelBtnPressed);
|
|
|
|
connect(ui->mAddMQTTBrokerBtn,&QPushButton::clicked,this,&CLoggingSettingsPage::AddMQTTBrokerBtnPressed);
|
|
connect(ui->mDeleteMQTTBrokerBtn,&QPushButton::clicked,this,&CLoggingSettingsPage::DeleteMQTTBrokerBtnPressed);
|
|
connect(ui->mMQTTBrokersList,&QListWidget::itemSelectionChanged,this,&CLoggingSettingsPage::MQTTBrokerSelected);
|
|
|
|
}
|
|
|
|
CLoggingSettingsPage::~CLoggingSettingsPage()
|
|
{
|
|
while(mCloudParams.size() != 0)
|
|
{
|
|
delete mCloudParams.takeAt(0);
|
|
}
|
|
delete ui;
|
|
}
|
|
|
|
int CLoggingSettingsPage::SetCloudParams(QList<CCloudParams *> *CloudParams)
|
|
{
|
|
if(CloudParams == 0)
|
|
{
|
|
return RET_GENERAL_ERROR;
|
|
}
|
|
|
|
while(mCloudParams.size() != 0)
|
|
{
|
|
delete mCloudParams.takeAt(0);
|
|
}
|
|
|
|
for(int i = 0; i < CloudParams->size(); i++)
|
|
{
|
|
CCloudParams *NewBrokerParam = new CCloudParams;
|
|
*NewBrokerParam = *CloudParams->at(i);
|
|
mCloudParams.append(NewBrokerParam);
|
|
}
|
|
|
|
if(mCloudParams.size() != 0)
|
|
{
|
|
for(int i = 0; i < mCloudParams.size(); i++)
|
|
{
|
|
ui->mMQTTBrokersList->insertItem(i,mCloudParams.at(i)->mMQTTBrokerHostName);
|
|
ui->mMQTTBrokersList->setCurrentRow(0);
|
|
}
|
|
// UpdateCloudConfig();
|
|
}
|
|
return RET_OK;
|
|
}
|
|
|
|
int CLoggingSettingsPage::SetGeneralSettingsParams(const CGeneralSystemParams *GeneralParams)
|
|
{
|
|
if(GeneralParams == 0)
|
|
{
|
|
return RET_GENERAL_ERROR;
|
|
}
|
|
|
|
mGeneralSystemParams = *GeneralParams;
|
|
|
|
UpdateGeneralParams();
|
|
|
|
return RET_OK;
|
|
}
|
|
|
|
int CLoggingSettingsPage::SetCPUWatchdogSettings(const CCPUWatchdogConfig *CPUWatchdogParams)
|
|
{
|
|
if(CPUWatchdogParams == 0)
|
|
{
|
|
return RET_GENERAL_ERROR;
|
|
}
|
|
|
|
mCPUWatchdogParams = *CPUWatchdogParams;
|
|
|
|
UpdateCPUWatchdogParams();
|
|
|
|
return RET_OK;
|
|
|
|
}
|
|
|
|
int CLoggingSettingsPage::SetDeviceConfigSettings(const CDeviceDetectionConfig *DevDetectCfgParams)
|
|
{
|
|
if(DevDetectCfgParams == 0)
|
|
{
|
|
return RET_GENERAL_ERROR;
|
|
}
|
|
|
|
mDeviceDetectConfigHandle = *DevDetectCfgParams;
|
|
|
|
UpdateDevicePresenceParams(true);
|
|
|
|
return RET_OK;
|
|
}
|
|
|
|
void CLoggingSettingsPage::ModifyParamsBtnPressed()
|
|
{
|
|
if(EditMode == false)
|
|
{
|
|
EditMode = true;
|
|
ui->mCancelBtn->show();
|
|
ui->mCloudMQTTHostNameEdit->setEnabled(true);
|
|
ui->mCloudMQTTPasswordEdit->setEnabled(true);
|
|
ui->mCloudMQTTPortSpinBx->setEnabled(true);
|
|
ui->mCloudMQTTTopicPrefixEdit->setEnabled(true);
|
|
ui->mCloudMQTTUserNameEdit->setEnabled(true);
|
|
ui->mCloudMQTTRefreshRateSpinBx->setEnabled(true);
|
|
ui->mCloudMQTTClientID->setEnabled(true);
|
|
ui->mChangeParamsBtn->setText("Appliquer");
|
|
ui->mCloudMQTTActivateBufferingChkBx->setEnabled(true);
|
|
ui->mCloudMQTTActivateBrokerChkBx->setEnabled(true);
|
|
ui->mMQTTBrokersList->setEnabled(false);
|
|
}
|
|
else
|
|
{
|
|
EditMode = false;
|
|
ui->mChangeParamsBtn->setText("Modifier");
|
|
ui->mCancelBtn->hide();
|
|
ui->mCloudMQTTHostNameEdit->setEnabled(false);
|
|
ui->mCloudMQTTPasswordEdit->setEnabled(false);
|
|
ui->mCloudMQTTPortSpinBx->setEnabled(false);
|
|
ui->mCloudMQTTTopicPrefixEdit->setEnabled(false);
|
|
ui->mCloudMQTTUserNameEdit->setEnabled(false);
|
|
ui->mCloudMQTTRefreshRateSpinBx->setEnabled(false);
|
|
ui->mCloudMQTTClientID->setEnabled(false);
|
|
ui->mCloudMQTTActivateBufferingChkBx->setEnabled(false);
|
|
ui->mCloudMQTTActivateBrokerChkBx->setEnabled(false);
|
|
ui->mMQTTBrokersList->setEnabled(true);
|
|
|
|
|
|
|
|
int index = ui->mMQTTBrokersList->currentRow();
|
|
|
|
if(index < 0 || index >= mCloudParams.size())
|
|
{
|
|
qDebug("Big problem in LoggingSettingsPage : invalid broker index");
|
|
return;
|
|
}
|
|
CCloudParams *BrokerParams;
|
|
BrokerParams = mCloudParams[index];
|
|
|
|
BrokerParams->mMQTTBrokerHostName = ui->mCloudMQTTHostNameEdit->text();
|
|
BrokerParams->mMQTTBrokerPassword = ui->mCloudMQTTPasswordEdit->text();
|
|
BrokerParams->mMQTTBrokerPort = (quint32)ui->mCloudMQTTPortSpinBx->value();
|
|
BrokerParams->mMQTTTopicPrefix = ui->mCloudMQTTTopicPrefixEdit->text();
|
|
if(BrokerParams->mMQTTTopicPrefix.isEmpty() == false)
|
|
{
|
|
if(BrokerParams->mMQTTTopicPrefix.endsWith("/") == false)
|
|
{
|
|
BrokerParams->mMQTTTopicPrefix.append("/");
|
|
ui->mCloudMQTTTopicPrefixEdit->setText(BrokerParams->mMQTTTopicPrefix);
|
|
}
|
|
}
|
|
BrokerParams->mMQTTBrokerUserName = ui->mCloudMQTTUserNameEdit->text();
|
|
BrokerParams->mMQTTTransmitTimeout = (quint32)ui->mCloudMQTTRefreshRateSpinBx->value();
|
|
BrokerParams->mMQTTClientID = ui->mCloudMQTTClientID->text();
|
|
BrokerParams->mMQTTBrokerActive = ui->mCloudMQTTActivateBrokerChkBx->isChecked();
|
|
BrokerParams->mMQTTEnableDataLogging = ui->mCloudMQTTActivateBufferingChkBx->isChecked();
|
|
ui->mMQTTBrokersList->item(index)->setText(BrokerParams->mMQTTBrokerHostName);
|
|
|
|
for(int i = 0; i < mCloudParams.size(); i++)
|
|
{
|
|
mCloudParams.at(i)->mMQTTTransmitTimeout = ui->mCloudMQTTRefreshRateSpinBx->value();
|
|
}
|
|
|
|
mProgramHandle->SaveCloudLoggingConfigRequest(&mCloudParams);
|
|
|
|
|
|
|
|
}
|
|
}
|
|
|
|
void CLoggingSettingsPage::CancelBtnPressed()
|
|
{
|
|
EditMode = false;
|
|
ui->mChangeParamsBtn->setText("Modifier");
|
|
ui->mCancelBtn->hide();
|
|
ui->mCloudMQTTHostNameEdit->setEnabled(false);
|
|
ui->mCloudMQTTPasswordEdit->setEnabled(false);
|
|
ui->mCloudMQTTPortSpinBx->setEnabled(false);
|
|
ui->mCloudMQTTTopicPrefixEdit->setEnabled(false);
|
|
ui->mCloudMQTTUserNameEdit->setEnabled(false);
|
|
ui->mCloudMQTTRefreshRateSpinBx->setEnabled(false);
|
|
ui->mCloudMQTTClientID->setEnabled(false);
|
|
ui->mMQTTBrokersList->setEnabled(true);
|
|
ui->mCloudMQTTActivateBrokerChkBx->setEnabled(false);
|
|
ui->mCloudMQTTActivateBufferingChkBx->setEnabled(false);
|
|
|
|
UpdateCloudConfig();
|
|
}
|
|
|
|
int CLoggingSettingsPage::UpdateCloudConfig()
|
|
{
|
|
int index = ui->mMQTTBrokersList->currentRow();
|
|
if(index < 0 || index >= mCloudParams.size())
|
|
{
|
|
return RET_GENERAL_ERROR;
|
|
}
|
|
CCloudParams *BrokerParams = mCloudParams.at(index);
|
|
|
|
ui->mCloudMQTTHostNameEdit->setText(BrokerParams->mMQTTBrokerHostName);
|
|
ui->mCloudMQTTPasswordEdit->setText(BrokerParams->mMQTTBrokerPassword);
|
|
ui->mCloudMQTTPortSpinBx->setValue(BrokerParams->mMQTTBrokerPort);
|
|
ui->mCloudMQTTTopicPrefixEdit->setText(BrokerParams->mMQTTTopicPrefix);
|
|
ui->mCloudMQTTUserNameEdit->setText(BrokerParams->mMQTTBrokerUserName);
|
|
ui->mCloudMQTTRefreshRateSpinBx->setValue(BrokerParams->mMQTTTransmitTimeout);
|
|
ui->mCloudMQTTClientID->setText(BrokerParams->mMQTTClientID);
|
|
ui->mCloudMQTTActivateBrokerChkBx->setChecked(BrokerParams->mMQTTBrokerActive);
|
|
ui->mCloudMQTTActivateBufferingChkBx->setChecked(BrokerParams->mMQTTEnableDataLogging);
|
|
|
|
return RET_OK;
|
|
}
|
|
|
|
int CLoggingSettingsPage::UpdateGeneralParams()
|
|
{
|
|
disconnect(ui->mLogZoneVerbositySpinBx,QOverload<int>::of(&QSpinBox::valueChanged),this,&CLoggingSettingsPage::VerbosityParamsChanged);
|
|
disconnect(ui->mLogFileVerbositySpinBx,QOverload<int>::of(&QSpinBox::valueChanged),this,&CLoggingSettingsPage::VerbosityParamsChanged);
|
|
|
|
ui->mLogFileVerbositySpinBx->setValue(mGeneralSystemParams.mLogFileVerbosity);
|
|
ui->mLogZoneVerbositySpinBx->setValue(mGeneralSystemParams.mLocalLogVerbosity);
|
|
|
|
connect(ui->mLogZoneVerbositySpinBx,QOverload<int>::of(&QSpinBox::valueChanged),this,&CLoggingSettingsPage::VerbosityParamsChanged);
|
|
connect(ui->mLogFileVerbositySpinBx,QOverload<int>::of(&QSpinBox::valueChanged),this,&CLoggingSettingsPage::VerbosityParamsChanged);
|
|
|
|
return RET_OK;
|
|
}
|
|
|
|
int CLoggingSettingsPage::UpdateCPUWatchdogParams()
|
|
{
|
|
disconnect(ui->mWDActiveChkBx,&QCheckBox::stateChanged,this,&CLoggingSettingsPage::EnableCPUWDCheckBxClicked);
|
|
disconnect(ui->mWDTimerTimeoutSpinBx,QOverload<int>::of(&QSpinBox::valueChanged),this,&CLoggingSettingsPage::CPUWDTimeoutChanged);
|
|
|
|
ui->mWDActiveChkBx->setChecked(mCPUWatchdogParams.mWatchdogEnabled);
|
|
ui->mWDTimerTimeoutSpinBx->setValue(mCPUWatchdogParams.mWatchdogTimeout);
|
|
|
|
connect(ui->mWDActiveChkBx,&QCheckBox::stateChanged,this,&CLoggingSettingsPage::EnableCPUWDCheckBxClicked);
|
|
connect(ui->mWDTimerTimeoutSpinBx,QOverload<int>::of(&QSpinBox::valueChanged),this,&CLoggingSettingsPage::CPUWDTimeoutChanged);
|
|
|
|
return RET_OK;
|
|
}
|
|
|
|
int CLoggingSettingsPage::SetLANDevicesPresenceStatus(QList<bool> LANDevicesPresenceList)
|
|
{
|
|
if(LANDevicesPresenceList.size() != MAX_NB_LAN_DEVICE_DETECTION)
|
|
{
|
|
return RET_GENERAL_ERROR;
|
|
}
|
|
|
|
if(ui->mDevicePresenceActive1ChkBx->isChecked())
|
|
{
|
|
if(LANDevicesPresenceList.at(0) == true)
|
|
ui->mLANDevice1PresStatusLbl->setText("ONLINE");
|
|
else
|
|
ui->mLANDevice1PresStatusLbl->setText("OFFLINE");
|
|
}
|
|
else
|
|
{
|
|
ui->mLANDevice1PresStatusLbl->setText("N/A");
|
|
}
|
|
|
|
if(ui->mDevicePresenceActive2ChkBx->isChecked())
|
|
{
|
|
if(LANDevicesPresenceList.at(1) == true)
|
|
ui->mLANDevice2PresStatusLbl->setText("ONLINE");
|
|
else
|
|
ui->mLANDevice2PresStatusLbl->setText("OFFLINE");
|
|
}
|
|
else
|
|
{
|
|
ui->mLANDevice2PresStatusLbl->setText("N/A");
|
|
}
|
|
|
|
if(ui->mDevicePresenceActive3ChkBx->isChecked())
|
|
{
|
|
if(LANDevicesPresenceList.at(2) == true)
|
|
ui->mLANDevice3PresStatusLbl->setText("ONLINE");
|
|
else
|
|
ui->mLANDevice3PresStatusLbl->setText("OFFLINE");
|
|
}
|
|
else
|
|
{
|
|
ui->mLANDevice3PresStatusLbl->setText("N/A");
|
|
}
|
|
|
|
if(ui->mDevicePresenceActive4ChkBx->isChecked())
|
|
{
|
|
if(LANDevicesPresenceList.at(3) == true)
|
|
ui->mLANDevice4PresStatusLbl->setText("ONLINE");
|
|
else
|
|
ui->mLANDevice4PresStatusLbl->setText("OFFLINE");
|
|
}
|
|
else
|
|
{
|
|
ui->mLANDevice4PresStatusLbl->setText("N/A");
|
|
}
|
|
if(ui->mDevicePresenceActive5ChkBx->isChecked())
|
|
{
|
|
if(LANDevicesPresenceList.at(4) == true)
|
|
ui->mLANDevice5PresStatusLbl->setText("ONLINE");
|
|
else
|
|
ui->mLANDevice5PresStatusLbl->setText("OFFLINE");
|
|
}
|
|
else
|
|
{
|
|
ui->mLANDevice5PresStatusLbl->setText("N/A");
|
|
}
|
|
|
|
return RET_OK;
|
|
}
|
|
|
|
void CLoggingSettingsPage::SetInternetPresenceStatus(bool IsPresent)
|
|
{
|
|
if(IsPresent == true)
|
|
{
|
|
ui->mInternetPresenceStatusLbl->setText("ONLINE");
|
|
}
|
|
else
|
|
{
|
|
ui->mInternetPresenceStatusLbl->setText("OFFLINE");
|
|
}
|
|
}
|
|
|
|
int CLoggingSettingsPage::SetMQTTPresenceStatus(bool IsPresent)
|
|
{
|
|
if(IsPresent)
|
|
{
|
|
ui->mMQTTPresenceStatusLbl->setText("ONLINE");
|
|
}
|
|
else
|
|
{
|
|
ui->mMQTTPresenceStatusLbl->setText("OFFLINE");
|
|
}
|
|
return RET_OK;
|
|
}
|
|
|
|
void CLoggingSettingsPage::VerbosityParamsChanged(int value)
|
|
{
|
|
Q_UNUSED(value)
|
|
|
|
mGeneralSystemParams.mLocalLogVerbosity = ui->mLogZoneVerbositySpinBx->value();
|
|
mGeneralSystemParams.mLogFileVerbosity = ui->mLogFileVerbositySpinBx->value();
|
|
|
|
mProgramHandle->SaveGeneralParametersSettingsRequest(&mGeneralSystemParams);
|
|
|
|
qDebug("LogZone: %i, LogFile %i",mGeneralSystemParams.mLocalLogVerbosity,mGeneralSystemParams.mLogFileVerbosity);
|
|
|
|
}
|
|
|
|
void CLoggingSettingsPage::EnableCPUWDCheckBxClicked(int state)
|
|
{
|
|
Q_UNUSED(state)
|
|
mCPUWatchdogParams.mWatchdogEnabled = ui->mWDActiveChkBx->isChecked();
|
|
mProgramHandle->SaveCPUWatchdogSettingsRequest(&mCPUWatchdogParams);
|
|
}
|
|
|
|
void CLoggingSettingsPage::CPUWDTimeoutChanged(int value)
|
|
{
|
|
Q_UNUSED(value)
|
|
mCPUWatchdogParams.mWatchdogTimeout = ui->mWDTimerTimeoutSpinBx->value();
|
|
mProgramHandle->SaveCPUWatchdogSettingsRequest(&mCPUWatchdogParams);
|
|
}
|
|
|
|
int CLoggingSettingsPage::UpdateDevicePresenceParams(bool Restore)
|
|
{
|
|
if(Restore == true)
|
|
{
|
|
ui->mWatchdogMsgIDSpinBx->setValue(mDeviceDetectConfigHandle.mReportingCANMsgID);
|
|
ui->mDevicePresenceAdd1LineEdit->setText(mDeviceDetectConfigHandle.mLANDeviceDetectConfigList[0].mDeviceIPAddress);
|
|
ui->mDevicePresenceAdd2LineEdit->setText(mDeviceDetectConfigHandle.mLANDeviceDetectConfigList[1].mDeviceIPAddress);
|
|
ui->mDevicePresenceAdd3LineEdit->setText(mDeviceDetectConfigHandle.mLANDeviceDetectConfigList[2].mDeviceIPAddress);
|
|
ui->mDevicePresenceAdd4LineEdit->setText(mDeviceDetectConfigHandle.mLANDeviceDetectConfigList[3].mDeviceIPAddress);
|
|
ui->mDevicePresenceAdd5LineEdit->setText(mDeviceDetectConfigHandle.mLANDeviceDetectConfigList[4].mDeviceIPAddress);
|
|
|
|
ui->mDevicePresenceActive1ChkBx->setChecked(mDeviceDetectConfigHandle.mLANDeviceDetectConfigList[0].mIsDetectionActive);
|
|
ui->mDevicePresenceActive2ChkBx->setChecked(mDeviceDetectConfigHandle.mLANDeviceDetectConfigList[1].mIsDetectionActive);
|
|
ui->mDevicePresenceActive3ChkBx->setChecked(mDeviceDetectConfigHandle.mLANDeviceDetectConfigList[2].mIsDetectionActive);
|
|
ui->mDevicePresenceActive4ChkBx->setChecked(mDeviceDetectConfigHandle.mLANDeviceDetectConfigList[3].mIsDetectionActive);
|
|
ui->mDevicePresenceActive5ChkBx->setChecked(mDeviceDetectConfigHandle.mLANDeviceDetectConfigList[4].mIsDetectionActive);
|
|
|
|
ui->mDevicePresenceBit1ComboBox->setCurrentIndex(ui->mDevicePresenceBit1ComboBox->findData(mDeviceDetectConfigHandle.mLANDeviceDetectConfigList[0].mCANStatusBit));
|
|
ui->mDevicePresenceBit2ComboBox->setCurrentIndex(ui->mDevicePresenceBit1ComboBox->findData(mDeviceDetectConfigHandle.mLANDeviceDetectConfigList[1].mCANStatusBit));
|
|
ui->mDevicePresenceBit3ComboBox->setCurrentIndex(ui->mDevicePresenceBit1ComboBox->findData(mDeviceDetectConfigHandle.mLANDeviceDetectConfigList[2].mCANStatusBit));
|
|
ui->mDevicePresenceBit4ComboBox->setCurrentIndex(ui->mDevicePresenceBit1ComboBox->findData(mDeviceDetectConfigHandle.mLANDeviceDetectConfigList[3].mCANStatusBit));
|
|
ui->mDevicePresenceBit5ComboBox->setCurrentIndex(ui->mDevicePresenceBit1ComboBox->findData(mDeviceDetectConfigHandle.mLANDeviceDetectConfigList[4].mCANStatusBit));
|
|
ui->mMQTTPresenceBitComboBox->setCurrentIndex(ui->mMQTTPresenceBitComboBox->findData(mDeviceDetectConfigHandle.mMQTTDetectionCANStatusBit));
|
|
ui->mInternetPresBitComboBox->setCurrentIndex(ui->mInternetPresBitComboBox->findData(mDeviceDetectConfigHandle.mInternetDetectionCANStatusBit));
|
|
}
|
|
|
|
if(ui->mDevicePresenceActive1ChkBx->checkState() == Qt::Checked && mDevicePresenceEditMode == true)
|
|
{
|
|
ui->mDevicePresenceAdd1LineEdit->setEnabled(true);
|
|
ui->mDevicePresenceBit1ComboBox->setEnabled(true);
|
|
}
|
|
else
|
|
{
|
|
ui->mDevicePresenceAdd1LineEdit->setEnabled(false);
|
|
ui->mDevicePresenceBit1ComboBox->setEnabled(false);
|
|
}
|
|
|
|
if(ui->mDevicePresenceActive2ChkBx->checkState() == Qt::Checked && mDevicePresenceEditMode == true)
|
|
{
|
|
ui->mDevicePresenceAdd2LineEdit->setEnabled(true);
|
|
ui->mDevicePresenceBit2ComboBox->setEnabled(true);
|
|
}
|
|
else
|
|
{
|
|
ui->mDevicePresenceAdd2LineEdit->setEnabled(false);
|
|
ui->mDevicePresenceBit2ComboBox->setEnabled(false);
|
|
}
|
|
|
|
if(ui->mDevicePresenceActive3ChkBx->checkState() == Qt::Checked && mDevicePresenceEditMode == true)
|
|
{
|
|
ui->mDevicePresenceAdd3LineEdit->setEnabled(true);
|
|
ui->mDevicePresenceBit3ComboBox->setEnabled(true);
|
|
}
|
|
else
|
|
{
|
|
ui->mDevicePresenceAdd3LineEdit->setEnabled(false);
|
|
ui->mDevicePresenceBit3ComboBox->setEnabled(false);
|
|
}
|
|
|
|
|
|
if(ui->mDevicePresenceActive4ChkBx->checkState() == Qt::Checked && mDevicePresenceEditMode == true)
|
|
{
|
|
ui->mDevicePresenceAdd4LineEdit->setEnabled(true);
|
|
ui->mDevicePresenceBit4ComboBox->setEnabled(true);
|
|
}
|
|
else
|
|
{
|
|
ui->mDevicePresenceAdd4LineEdit->setEnabled(false);
|
|
ui->mDevicePresenceBit4ComboBox->setEnabled(false);
|
|
}
|
|
|
|
|
|
if(ui->mDevicePresenceActive5ChkBx->checkState() == Qt::Checked && mDevicePresenceEditMode == true)
|
|
{
|
|
ui->mDevicePresenceAdd5LineEdit->setEnabled(true);
|
|
ui->mDevicePresenceBit5ComboBox->setEnabled(true);
|
|
}
|
|
else
|
|
{
|
|
ui->mDevicePresenceAdd5LineEdit->setEnabled(false);
|
|
ui->mDevicePresenceBit5ComboBox->setEnabled(false);
|
|
}
|
|
|
|
|
|
return RET_OK;
|
|
}
|
|
|
|
void CLoggingSettingsPage::DevicePresenceEnableChkBxChanged(int state)
|
|
{
|
|
UpdateDevicePresenceParams(false);
|
|
}
|
|
|
|
void CLoggingSettingsPage::DevicePresenceCancelBtnPressed()
|
|
{
|
|
UpdateDevicePresenceParams();
|
|
|
|
mDevicePresenceEditMode = false;
|
|
ui->mDevicePresCancelBtn->hide();
|
|
ui->mDevicePresChangeParamsBtn->setText("Modifier");
|
|
|
|
ui->mDevicePresenceActive1ChkBx->setEnabled(false);
|
|
ui->mDevicePresenceActive2ChkBx->setEnabled(false);
|
|
ui->mDevicePresenceActive3ChkBx->setEnabled(false);
|
|
ui->mDevicePresenceActive4ChkBx->setEnabled(false);
|
|
ui->mDevicePresenceActive5ChkBx->setEnabled(false);
|
|
ui->mDevicePresenceAdd1LineEdit->setEnabled(false);
|
|
ui->mDevicePresenceAdd2LineEdit->setEnabled(false);
|
|
ui->mDevicePresenceAdd3LineEdit->setEnabled(false);
|
|
ui->mDevicePresenceAdd4LineEdit->setEnabled(false);
|
|
ui->mDevicePresenceAdd5LineEdit->setEnabled(false);
|
|
ui->mDevicePresenceBit1ComboBox->setEnabled(false);
|
|
ui->mDevicePresenceBit2ComboBox->setEnabled(false);
|
|
ui->mDevicePresenceBit3ComboBox->setEnabled(false);
|
|
ui->mDevicePresenceBit4ComboBox->setEnabled(false);
|
|
ui->mDevicePresenceBit5ComboBox->setEnabled(false);
|
|
ui->mWatchdogMsgIDSpinBx->setEnabled(false);
|
|
ui->mInternetPresBitComboBox->setEnabled(false);
|
|
ui->mMQTTPresenceBitComboBox->setEnabled(false);
|
|
}
|
|
|
|
void CLoggingSettingsPage::DevicePresenceModifyParamsBtnPressed()
|
|
{
|
|
if(mDevicePresenceEditMode == false)
|
|
{
|
|
mDevicePresenceEditMode = true;
|
|
ui->mDevicePresCancelBtn->show();
|
|
ui->mDevicePresChangeParamsBtn->setText("Appliquer");
|
|
|
|
ui->mDevicePresenceActive1ChkBx->setEnabled(true);
|
|
ui->mDevicePresenceActive2ChkBx->setEnabled(true);
|
|
ui->mDevicePresenceActive3ChkBx->setEnabled(true);
|
|
ui->mDevicePresenceActive4ChkBx->setEnabled(true);
|
|
ui->mDevicePresenceActive5ChkBx->setEnabled(true);
|
|
ui->mWatchdogMsgIDSpinBx->setEnabled(true);
|
|
ui->mInternetPresBitComboBox->setEnabled(true);
|
|
ui->mMQTTPresenceBitComboBox->setEnabled(true);
|
|
|
|
UpdateDevicePresenceParams(false);
|
|
}
|
|
else
|
|
{
|
|
//save data
|
|
|
|
mDevicePresenceEditMode = false;
|
|
ui->mDevicePresCancelBtn->hide();
|
|
ui->mDevicePresChangeParamsBtn->setText("Modifier");
|
|
|
|
ui->mDevicePresenceActive1ChkBx->setEnabled(false);
|
|
ui->mDevicePresenceActive2ChkBx->setEnabled(false);
|
|
ui->mDevicePresenceActive3ChkBx->setEnabled(false);
|
|
ui->mDevicePresenceActive4ChkBx->setEnabled(false);
|
|
ui->mDevicePresenceActive5ChkBx->setEnabled(false);
|
|
ui->mDevicePresenceAdd1LineEdit->setEnabled(false);
|
|
ui->mDevicePresenceAdd2LineEdit->setEnabled(false);
|
|
ui->mDevicePresenceAdd3LineEdit->setEnabled(false);
|
|
ui->mDevicePresenceAdd4LineEdit->setEnabled(false);
|
|
ui->mDevicePresenceAdd5LineEdit->setEnabled(false);
|
|
ui->mDevicePresenceBit1ComboBox->setEnabled(false);
|
|
ui->mDevicePresenceBit2ComboBox->setEnabled(false);
|
|
ui->mDevicePresenceBit3ComboBox->setEnabled(false);
|
|
ui->mDevicePresenceBit4ComboBox->setEnabled(false);
|
|
ui->mDevicePresenceBit5ComboBox->setEnabled(false);
|
|
ui->mWatchdogMsgIDSpinBx->setEnabled(false);
|
|
ui->mInternetPresBitComboBox->setEnabled(false);
|
|
ui->mMQTTPresenceBitComboBox->setEnabled(false);
|
|
|
|
|
|
bool OK;
|
|
|
|
mDeviceDetectConfigHandle.mInternetDetectionCANStatusBit = ui->mInternetPresBitComboBox->currentData().toInt(&OK);
|
|
mDeviceDetectConfigHandle.mMQTTDetectionCANStatusBit = ui->mMQTTPresenceBitComboBox->currentData().toInt(&OK);
|
|
mDeviceDetectConfigHandle.mReportingCANMsgID = ui->mWatchdogMsgIDSpinBx->value();
|
|
|
|
mDeviceDetectConfigHandle.mLANDeviceDetectConfigList.clear();
|
|
CLANDevicePresenceConfig NewLANCfg;
|
|
NewLANCfg.mCANStatusBit = ui->mDevicePresenceBit1ComboBox->currentData().toInt(&OK);
|
|
NewLANCfg.mDeviceIPAddress = ui->mDevicePresenceAdd1LineEdit->text();
|
|
NewLANCfg.mIsDetectionActive = (ui->mDevicePresenceActive1ChkBx->checkState() == Qt::Checked);
|
|
mDeviceDetectConfigHandle.mLANDeviceDetectConfigList.append(NewLANCfg);
|
|
|
|
NewLANCfg = CLANDevicePresenceConfig();
|
|
NewLANCfg.mCANStatusBit = ui->mDevicePresenceBit2ComboBox->currentData().toInt(&OK);
|
|
NewLANCfg.mDeviceIPAddress = ui->mDevicePresenceAdd2LineEdit->text();
|
|
NewLANCfg.mIsDetectionActive = (ui->mDevicePresenceActive2ChkBx->checkState() == Qt::Checked);
|
|
mDeviceDetectConfigHandle.mLANDeviceDetectConfigList.append(NewLANCfg);
|
|
|
|
NewLANCfg = CLANDevicePresenceConfig();
|
|
NewLANCfg.mCANStatusBit = ui->mDevicePresenceBit3ComboBox->currentData().toInt(&OK);
|
|
NewLANCfg.mDeviceIPAddress = ui->mDevicePresenceAdd3LineEdit->text();
|
|
NewLANCfg.mIsDetectionActive = (ui->mDevicePresenceActive3ChkBx->checkState() == Qt::Checked);
|
|
mDeviceDetectConfigHandle.mLANDeviceDetectConfigList.append(NewLANCfg);
|
|
|
|
NewLANCfg = CLANDevicePresenceConfig();
|
|
NewLANCfg.mCANStatusBit = ui->mDevicePresenceBit4ComboBox->currentData().toInt(&OK);
|
|
NewLANCfg.mDeviceIPAddress = ui->mDevicePresenceAdd4LineEdit->text();
|
|
NewLANCfg.mIsDetectionActive = (ui->mDevicePresenceActive4ChkBx->checkState() == Qt::Checked);
|
|
mDeviceDetectConfigHandle.mLANDeviceDetectConfigList.append(NewLANCfg);
|
|
|
|
NewLANCfg = CLANDevicePresenceConfig();
|
|
NewLANCfg.mCANStatusBit = ui->mDevicePresenceBit5ComboBox->currentData().toInt(&OK);
|
|
NewLANCfg.mDeviceIPAddress = ui->mDevicePresenceAdd5LineEdit->text();
|
|
NewLANCfg.mIsDetectionActive = (ui->mDevicePresenceActive5ChkBx->checkState() == Qt::Checked);
|
|
mDeviceDetectConfigHandle.mLANDeviceDetectConfigList.append(NewLANCfg);
|
|
|
|
mProgramHandle->SaveDeviceDetectionSettingsRequest(&mDeviceDetectConfigHandle);
|
|
}
|
|
}
|
|
|
|
void CLoggingSettingsPage::AddMQTTBrokerBtnPressed()
|
|
{
|
|
CCloudParams *NewParam = new CCloudParams;
|
|
mCloudParams.append(NewParam);
|
|
ui->mMQTTBrokersList->addItem("Broker");
|
|
ui->mMQTTBrokersList->setCurrentRow(ui->mMQTTBrokersList->count()-1);
|
|
ModifyParamsBtnPressed();
|
|
|
|
}
|
|
void CLoggingSettingsPage::DeleteMQTTBrokerBtnPressed()
|
|
{
|
|
int index = ui->mMQTTBrokersList->currentRow();
|
|
|
|
if(index < 0 || index >= mCloudParams.size())
|
|
{
|
|
return;
|
|
}
|
|
|
|
delete mCloudParams.takeAt(index);
|
|
ui->mMQTTBrokersList->takeItem(index);
|
|
if(ui->mMQTTBrokersList->count() == 0)
|
|
{
|
|
AddMQTTBrokerBtnPressed();
|
|
}
|
|
else
|
|
{
|
|
ui->mMQTTBrokersList->setCurrentRow(0);
|
|
mProgramHandle->SaveCloudLoggingConfigRequest(&mCloudParams);
|
|
}
|
|
}
|
|
|
|
void CLoggingSettingsPage::MQTTBrokerSelected()
|
|
{
|
|
int index = ui->mMQTTBrokersList->currentRow();
|
|
|
|
if(index < 0 || index >= mCloudParams.size())
|
|
{
|
|
return;
|
|
}
|
|
|
|
UpdateCloudConfig();
|
|
}
|