# HG changeset patch # User Hasan Yavuz Ă–ZDERYA # Date 2018-07-16 16:15:27 # Node ID 8edbdb6e43df7f288d1ce174e60bf38672e51e69 # Parent da766523eb64c4c27e58bd5daa398c0fcda68ffd reset menu item for gain and offset diff --git a/src/channelinfomodel.cpp b/src/channelinfomodel.cpp --- a/src/channelinfomodel.cpp +++ b/src/channelinfomodel.cpp @@ -401,6 +401,7 @@ void ChannelInfoModel::resetInfos() endResetModel(); } +// TODO: fix repetitive code, ChannelInfoModel::reset* functions void ChannelInfoModel::resetNames() { beginResetModel(); @@ -431,6 +432,28 @@ void ChannelInfoModel::resetVisibility(b endResetModel(); } +void ChannelInfoModel::resetGains() +{ + beginResetModel(); + for (unsigned ci = 0; (int) ci < infos.length(); ci++) + { + infos[ci].gain = ChannelInfo(ci).gain; + infos[ci].gainEn = ChannelInfo(ci).gainEn; + } + endResetModel(); +} + +void ChannelInfoModel::resetOffsets() +{ + beginResetModel(); + for (unsigned ci = 0; (int) ci < infos.length(); ci++) + { + infos[ci].offset = ChannelInfo(ci).offset; + infos[ci].offsetEn = ChannelInfo(ci).offsetEn; + } + endResetModel(); +} + void ChannelInfoModel::saveSettings(QSettings* settings) const { settings->beginGroup(SettingGroup_Channels); diff --git a/src/channelinfomodel.h b/src/channelinfomodel.h --- a/src/channelinfomodel.h +++ b/src/channelinfomodel.h @@ -74,6 +74,10 @@ public slots: void resetNames(); /// reset all channel colors void resetColors(); + /// reset all channel gain values and disables gains + void resetGains(); + /// reset all channel offset values and disables offsets + void resetOffsets(); /// reset visibility void resetVisibility(bool visible); diff --git a/src/plotcontrolpanel.cpp b/src/plotcontrolpanel.cpp --- a/src/plotcontrolpanel.cpp +++ b/src/plotcontrolpanel.cpp @@ -70,6 +70,8 @@ PlotControlPanel::PlotControlPanel(QWidg resetColorsAct(tr("Reset Colors"), this), showAllAct(tr("Show All"), this), hideAllAct(tr("Hide All"), this), + resetGainsAct(tr("Reset All Gain"), this), + resetOffsetsAct(tr("Reset All Offset"), this), resetMenu(tr("Reset Menu"), this) { ui->setupUi(this); @@ -168,6 +170,8 @@ PlotControlPanel::PlotControlPanel(QWidg resetAct.setToolTip(tr("Reset channel names and colors")); resetMenu.addAction(&resetNamesAct); resetMenu.addAction(&resetColorsAct); + resetMenu.addAction(&resetGainsAct); + resetMenu.addAction(&resetOffsetsAct); resetAct.setMenu(&resetMenu); ui->tbReset->setDefaultAction(&resetAct); @@ -426,6 +430,8 @@ void PlotControlPanel::setChannelInfoMod connect(&resetAct, &QAction::triggered, model, &ChannelInfoModel::resetInfos); connect(&resetNamesAct, &QAction::triggered, model, &ChannelInfoModel::resetNames); connect(&resetColorsAct, &QAction::triggered, model, &ChannelInfoModel::resetColors); + connect(&resetGainsAct, &QAction::triggered, model, &ChannelInfoModel::resetGains); + connect(&resetOffsetsAct, &QAction::triggered, model, &ChannelInfoModel::resetOffsets); connect(&showAllAct, &QAction::triggered, [model]{model->resetVisibility(true);}); connect(&hideAllAct, &QAction::triggered, [model]{model->resetVisibility(false);}); } diff --git a/src/plotcontrolpanel.h b/src/plotcontrolpanel.h --- a/src/plotcontrolpanel.h +++ b/src/plotcontrolpanel.h @@ -71,7 +71,8 @@ private: /// User can disable this setting in the checkbox bool warnNumOfSamples; - QAction resetAct, resetNamesAct, resetColorsAct, showAllAct, hideAllAct; + QAction resetAct, resetNamesAct, resetColorsAct, showAllAct, + hideAllAct, resetGainsAct, resetOffsetsAct; QMenu resetMenu; QStyledItemDelegate* delegate;