diff --git a/src/channelmanager.cpp b/src/channelmanager.cpp
--- a/src/channelmanager.cpp
+++ b/src/channelmanager.cpp
@@ -17,11 +17,12 @@
along with serialplot. If not, see .
*/
-#include "channelmanager.h"
-
#include
#include
+#include "channelmanager.h"
+#include "setting_defines.h"
+
ChannelManager::ChannelManager(unsigned numberOfChannels, unsigned numberOfSamples, QObject *parent) :
QObject(parent)
{
@@ -143,3 +144,29 @@ void ChannelManager::addChannelData(unsi
{
channelBuffer(channel)->addSamples(data, size);
}
+
+void ChannelManager::saveSettings(QSettings* settings)
+{
+ settings->beginGroup(SettingGroup_Channels);
+ settings->beginWriteArray(SG_Channels_Channel);
+ for (unsigned i = 0; i < numOfChannels(); i++)
+ {
+ settings->setArrayIndex(i);
+ settings->setValue(SG_Channels_Name, channelName(i));
+ }
+ settings->endArray();
+ settings->endGroup();
+}
+
+void ChannelManager::loadSettings(QSettings* settings)
+{
+ settings->beginGroup(SettingGroup_Channels);
+ settings->beginReadArray(SG_Channels_Channel);
+ for (unsigned i = 0; i < numOfChannels(); i++)
+ {
+ settings->setArrayIndex(i);
+ setChannelName(i, settings->value(SG_Channels_Name, channelName(i)).toString());
+ }
+ settings->endArray();
+ settings->endGroup();
+}