/*Copyright © 2016 Hasan Yavuz ÖzderyaThis file is part of serialplot.serialplot is free software: you can redistribute it and/or modifyit under the terms of the GNU General Public License as published bythe Free Software Foundation, either version 3 of the License, or(at your option) any later version.serialplot is distributed in the hope that it will be useful,but WITHOUT ANY WARRANTY; without even the implied warranty ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See theGNU General Public License for more details.You should have received a copy of the GNU General Public Licensealong with serialplot. If not, see <http://www.gnu.org/licenses/>.*/#include "binarystreamreadersettings.h"#include "ui_binarystreamreadersettings.h"#include "utils.h"#include "setting_defines.h"BinaryStreamReaderSettings::BinaryStreamReaderSettings(QWidget *parent) :QWidget(parent),ui(new Ui::BinaryStreamReaderSettings){ui->setupUi(this);// Note: if directly connected we get a runtime warning on incompatible signal argumentsconnect(ui->spNumOfChannels, SELECT<int>::OVERLOAD_OF(&QSpinBox::valueChanged),[this](int value){emit numOfChannelsChanged(value);});connect(ui->nfBox, SIGNAL(selectionChanged(NumberFormat)),this, SIGNAL(numberFormatChanged(NumberFormat)));connect(ui->pbSkipByte, SIGNAL(clicked()), this, SIGNAL(skipByteRequested()));connect(ui->pbSkipSample, SIGNAL(clicked()), this, SIGNAL(skipSampleRequested()));}BinaryStreamReaderSettings::~BinaryStreamReaderSettings(){delete ui;}unsigned BinaryStreamReaderSettings::numOfChannels(){return ui->spNumOfChannels->value();}NumberFormat BinaryStreamReaderSettings::numberFormat(){return ui->nfBox->currentSelection();}Endianness BinaryStreamReaderSettings::endianness(){return ui->endiBox->currentSelection();}void BinaryStreamReaderSettings::saveSettings(QSettings* settings){settings->beginGroup(SettingGroup_Binary);settings->setValue(SG_Binary_NumOfChannels, numOfChannels());settings->setValue(SG_Binary_NumberFormat, numberFormatToStr(numberFormat()));settings->setValue(SG_Binary_Endianness,endianness() == LittleEndian ? "little" : "big");settings->endGroup();}void BinaryStreamReaderSettings::loadSettings(QSettings* settings){settings->beginGroup(SettingGroup_Binary);// load number of channelsui->spNumOfChannels->setValue(settings->value(SG_Binary_NumOfChannels, numOfChannels()).toInt());// load number formatNumberFormat nfSetting =strToNumberFormat(settings->value(SG_Binary_NumberFormat,QString()).toString());if (nfSetting == NumberFormat_INVALID) nfSetting = numberFormat();ui->nfBox->setSelection(nfSetting);// load endiannessQString endiannessSetting =settings->value(SG_Binary_Endianness, QString()).toString();if (endiannessSetting == "little"){ui->endiBox->setSelection(LittleEndian);}else if (endiannessSetting == "big"){ui->endiBox->setSelection(BigEndian);} // else don't changesettings->endGroup();}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。