diff --git a/src/channelinfomodel.cpp b/src/channelinfomodel.cpp --- a/src/channelinfomodel.cpp +++ b/src/channelinfomodel.cpp @@ -463,9 +463,14 @@ void ChannelInfoModel::saveSettings(QSet for (unsigned ci = 0; (int) ci < infos.length(); ci++) { settings->setArrayIndex(ci); - settings->setValue(SG_Channels_Name, infos[ci].name); - settings->setValue(SG_Channels_Color, infos[ci].color); - settings->setValue(SG_Channels_Visible, infos[ci].visibility); + auto& info = infos[ci]; + settings->setValue(SG_Channels_Name, info.name); + settings->setValue(SG_Channels_Color, info.color); + settings->setValue(SG_Channels_Visible, info.visibility); + settings->setValue(SG_Channels_Gain, info.gain); + settings->setValue(SG_Channels_GainEn, info.gainEn); + settings->setValue(SG_Channels_Offset, info.offset); + settings->setValue(SG_Channels_OffsetEn, info.offsetEn); } settings->endArray(); @@ -482,9 +487,13 @@ void ChannelInfoModel::loadSettings(QSet settings->setArrayIndex(ci); ChannelInfo chanInfo(ci); - chanInfo.name = settings->value(SG_Channels_Name, chanInfo.name).toString(); - chanInfo.color = settings->value(SG_Channels_Color, chanInfo.color).value(); - chanInfo.visibility = settings->value(SG_Channels_Visible, true).toBool(); + chanInfo.name = settings->value(SG_Channels_Name , chanInfo.name).toString(); + chanInfo.color = settings->value(SG_Channels_Color , chanInfo.color).value(); + chanInfo.visibility = settings->value(SG_Channels_Visible , chanInfo.visibility).toBool(); + chanInfo.gain = settings->value(SG_Channels_Gain , chanInfo.gain).toDouble(); + chanInfo.gainEn = settings->value(SG_Channels_GainEn , chanInfo.gainEn).toBool(); + chanInfo.offset = settings->value(SG_Channels_Offset , chanInfo.offset).toDouble(); + chanInfo.offsetEn = settings->value(SG_Channels_OffsetEn , chanInfo.offsetEn).toBool(); if ((int) ci < infos.size()) { diff --git a/src/setting_defines.h b/src/setting_defines.h --- a/src/setting_defines.h +++ b/src/setting_defines.h @@ -71,11 +71,15 @@ const char SG_CustomFrame_Endianness[] = const char SG_CustomFrame_Checksum[] = "checksum"; const char SG_CustomFrame_DebugMode[] = "debugMode"; -// channel manager keys +// channel info keys const char SG_Channels_Channel[] = "channel"; const char SG_Channels_Name[] = "name"; const char SG_Channels_Color[] = "color"; const char SG_Channels_Visible[] = "visible"; +const char SG_Channels_Gain[] = "gain"; +const char SG_Channels_GainEn[] = "gainEnabled"; +const char SG_Channels_Offset[] = "offset"; +const char SG_Channels_OffsetEn[] = "offsetEnabled"; // plot settings keys const char SG_Plot_NumOfSamples[] = "numOfSamples";