# HG changeset patch # User Hasan Yavuz ÖZDERYA # Date 2017-02-16 08:06:13 # Node ID 6585bc4c1c6c19f126766c000d2629393895b6d9 # Parent 766ff372c5cb4e161ea3c496b4e9d1e877ed2ace save/load record settings diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp --- a/src/mainwindow.cpp +++ b/src/mainwindow.cpp @@ -499,6 +499,7 @@ void MainWindow::saveAllSettings(QSettin plotControlPanel.saveSettings(settings); plotMan->saveSettings(settings); commandPanel.saveSettings(settings); + recordPanel.saveSettings(settings); } void MainWindow::loadAllSettings(QSettings* settings) @@ -510,6 +511,7 @@ void MainWindow::loadAllSettings(QSettin plotControlPanel.loadSettings(settings); plotMan->loadSettings(settings); commandPanel.loadSettings(settings); + recordPanel.loadSettings(settings); } void MainWindow::saveMWSettings(QSettings* settings) diff --git a/src/recordpanel.cpp b/src/recordpanel.cpp --- a/src/recordpanel.cpp +++ b/src/recordpanel.cpp @@ -17,17 +17,17 @@ along with serialplot. If not, see . */ -#include "recordpanel.h" -#include "ui_recordpanel.h" - #include #include #include #include #include #include +#include -#include +#include "recordpanel.h" +#include "ui_recordpanel.h" +#include "setting_defines.h" RecordPanel::RecordPanel(DataRecorder* recorder, ChannelManager* channelMan, QWidget *parent) : QWidget(parent), @@ -255,3 +255,32 @@ QString RecordPanel::getSeparator() cons sep.replace("\\t", "\t"); return sep; } + +void RecordPanel::saveSettings(QSettings* settings) +{ + settings->beginGroup(SettingGroup_Record); + settings->setValue(SG_Record_AutoIncrement, ui->cbAutoIncrement->isChecked()); + settings->setValue(SG_Record_RecordPaused, ui->cbRecordPaused->isChecked()); + settings->setValue(SG_Record_StopOnClose, ui->cbStopOnClose->isChecked()); + settings->setValue(SG_Record_Header, ui->cbHeader->isChecked()); + settings->setValue(SG_Record_DisableBuffering, ui->cbDisableBuffering->isChecked()); + settings->setValue(SG_Record_Separator, ui->leSeparator->text()); + settings->endGroup(); +} + +void RecordPanel::loadSettings(QSettings* settings) +{ + settings->beginGroup(SettingGroup_Record); + ui->cbAutoIncrement->setChecked( + settings->value(SG_Record_AutoIncrement, ui->cbAutoIncrement->isChecked()).toBool()); + ui->cbRecordPaused->setChecked( + settings->value(SG_Record_RecordPaused, ui->cbRecordPaused->isChecked()).toBool()); + ui->cbStopOnClose->setChecked( + settings->value(SG_Record_StopOnClose, ui->cbStopOnClose->isChecked()).toBool()); + ui->cbHeader->setChecked( + settings->value(SG_Record_Header, ui->cbHeader->isChecked()).toBool()); + ui->cbDisableBuffering->setChecked( + settings->value(SG_Record_DisableBuffering, ui->cbDisableBuffering->isChecked()).toBool()); + ui->leSeparator->setText(settings->value(SG_Record_Separator, ui->leSeparator->text()).toString()); + settings->endGroup(); +} diff --git a/src/recordpanel.h b/src/recordpanel.h --- a/src/recordpanel.h +++ b/src/recordpanel.h @@ -46,6 +46,11 @@ public: bool isRecording(); bool recordPaused(); + /// Stores settings into a `QSettings` + void saveSettings(QSettings* settings); + /// Loads settings from a `QSettings`. + void loadSettings(QSettings* settings); + signals: void recordStarted(); void recordStopped(); diff --git a/src/setting_defines.h b/src/setting_defines.h --- a/src/setting_defines.h +++ b/src/setting_defines.h @@ -1,5 +1,5 @@ /* - Copyright © 2016 Hasan Yavuz Özderya + Copyright © 2017 Hasan Yavuz Özderya This file is part of serialplot. @@ -29,6 +29,7 @@ const char SettingGroup_CustomFrame[] = const char SettingGroup_Channels[] = "Channels"; const char SettingGroup_Plot[] = "Plot"; const char SettingGroup_Commands[] = "Commands"; +const char SettingGroup_Record[] = "Record"; // mainwindow setting keys const char SG_MainWindow_Size[] = "size"; @@ -90,4 +91,12 @@ const char SG_Commands_Name[] = "name"; const char SG_Commands_Type[] = "type"; const char SG_Commands_Data[] = "data"; +// record panel settings keys +const char SG_Record_AutoIncrement[] = "autoIncrement"; +const char SG_Record_RecordPaused[] = "recordPaused"; +const char SG_Record_StopOnClose[] = "stopOnClose"; +const char SG_Record_Header[] = "header"; +const char SG_Record_Separator[] = "separator"; +const char SG_Record_DisableBuffering[] = "disableBuffering"; + #endif // SETTING_DEFINES_H