Modification de la configuration système et ajout des paramètres Cloud.

This commit is contained in:
2023-02-17 16:30:47 -05:00
parent 74b6a23045
commit 3ec5677dca
30 changed files with 13461 additions and 348 deletions
+42 -23
View File
@@ -37,6 +37,7 @@ COtarcikCan::~COtarcikCan()
int COtarcikCan::Start()
{
mMainWindow.mCANbusSettingsPage->mProgramPtr = this;
mMainWindow.show();
@@ -47,13 +48,13 @@ int COtarcikCan::Start()
CGeneralMessagesLogDispatcher::instance()->AddLogMessage(QString("Démarrage du logiciel OtarcikCAN"));
if(mSystemConfig.LoadConfig(&mCANDevicesList) == RET_OK)
if(mSystemConfig.LoadConfig() == RET_OK)
{
for(int i = 0; i < mCANDevicesList.size(); i++)
QList<CCANDeviceConfig*> *CANDeviceConfigList;
CANDeviceConfigList = mSystemConfig.GetCANDevicesConfigList();
if(CANDeviceConfigList != 0)
{
mCANDevicesList[i]->mProgramPtr = this;
mCANDevicesList.at(i)->Init();
PopulateCANDevicesList(CANDeviceConfigList);
}
@@ -95,30 +96,25 @@ int COtarcikCan::InitCANViewer(QList<CCANMessage *> *MsgList)
//The device configuration has been modified directly in the master list
//Just save it and refresh display.
int COtarcikCan::SaveSystemConfigRequest(QList<CCANDeviceConfig *> *DevicesConfigList)
int COtarcikCan::SaveCANDevicesConfigRequest(QList<CCANDeviceConfig *> *DevicesConfigList)
{
if(mSystemConfig.SaveConfig(DevicesConfigList) == RET_OK)
if(DevicesConfigList == 0)
{
// mMainWindow.mProgramSettingsPage->UpdatePage();
return RET_GENERAL_ERROR;
}
if(mSystemConfig.SetCANDevicesConfigList(DevicesConfigList) != RET_OK)
{
return RET_GENERAL_ERROR;
}
if(mSystemConfig.SaveConfig() == RET_OK)
{
//Config saving is successful. To apply changes we need to reload the devices.
//The easiest way is to delete everything and reload.
while(mCANDevicesList.size() != 0)
{
delete mCANDevicesList.takeFirst();
}
if(mSystemConfig.LoadConfig(&mCANDevicesList) == RET_OK)
{
for(int i = 0; i < mCANDevicesList.size(); i++)
{
mCANDevicesList[i]->mProgramPtr = this;
mCANDevicesList.at(i)->Init();
}
mMainWindow.mCANbusSettingsPage->SetDevicesList(&mCANDevicesList);
}
PopulateCANDevicesList(DevicesConfigList);
mMainWindow.mCANbusSettingsPage->SetDevicesList(&mCANDevicesList);
}
else
{
@@ -127,3 +123,26 @@ int COtarcikCan::SaveSystemConfigRequest(QList<CCANDeviceConfig *> *DevicesConfi
return RET_OK;
}
int COtarcikCan::PopulateCANDevicesList(QList<CCANDeviceConfig *> *CANDeviceConfigList)
{
if(CANDeviceConfigList == 0)
{
return RET_GENERAL_ERROR;
}
while(mCANDevicesList.size() != 0)
{
delete mCANDevicesList.takeFirst();
}
for(int i = 0; i < CANDeviceConfigList->size(); i++)
{
CCANDevice *NewDevice = new CCANDevice(*CANDeviceConfigList->at(i));
NewDevice->mProgramPtr = this;
NewDevice->Init();
mCANDevicesList.append(NewDevice);
}
return RET_OK;
}