From ea731eae373b836285258d3887d96346c7bb4147 Mon Sep 17 00:00:00 2001 From: bsongis Date: Wed, 11 Jun 2014 16:59:29 +0200 Subject: [PATCH] Channels limits go up to 150% when extended limits are enabled --- companion/src/eeprominterface.cpp | 8 ++++++++ companion/src/eeprominterface.h | 2 ++ companion/src/modeledit/channels.cpp | 8 ++++---- companion/src/modeledit/setup.cpp | 4 ++-- 4 files changed, 16 insertions(+), 6 deletions(-) diff --git a/companion/src/eeprominterface.cpp b/companion/src/eeprominterface.cpp index 787d94beb..b8431ea74 100644 --- a/companion/src/eeprominterface.cpp +++ b/companion/src/eeprominterface.cpp @@ -1237,6 +1237,14 @@ ModelData ModelData::removeGlobalVars() return result; } +int ModelData::getChannelsMax() +{ + if (extendedLimits) + return IS_TARANIS(GetCurrentFirmware()->getBoard()) ? 150 : 125; + else + return 100; +} + QList eepromInterfaces; void RegisterEepromInterfaces() { diff --git a/companion/src/eeprominterface.h b/companion/src/eeprominterface.h index 692610a6c..299890bcd 100644 --- a/companion/src/eeprominterface.h +++ b/companion/src/eeprominterface.h @@ -1041,6 +1041,8 @@ class ModelData { void clearMixes(); void clearInputs(); + int getChannelsMax(); + protected: void removeGlobalVar(int & var); }; diff --git a/companion/src/modeledit/channels.cpp b/companion/src/modeledit/channels.cpp index 634a5344b..27b588dfd 100644 --- a/companion/src/modeledit/channels.cpp +++ b/companion/src/modeledit/channels.cpp @@ -69,7 +69,7 @@ Channels::Channels(QWidget * parent, ModelData & model, GeneralSettings & genera minSB->setAlignment(Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter); minSB->setAccelerated(true); minSB->setDecimals(1); - minSB->setMinimum(model.extendedLimits ? -125 : -100); + minSB->setMinimum(-model.getChannelsMax()); minSB->setSingleStep(0.1); minSB->setMaximum(0); minSB->setValue(float(model.limitData[i].min) / 10); @@ -85,7 +85,7 @@ Channels::Channels(QWidget * parent, ModelData & model, GeneralSettings & genera maxSB->setDecimals(1); maxSB->setMinimum(0); maxSB->setSingleStep(0.1); - maxSB->setMaximum(model.extendedLimits ? 125 : 100); + maxSB->setMaximum(model.getChannelsMax()); maxSB->setValue(float(model.limitData[i].max) / 10); connect(maxSB, SIGNAL(editingFinished()), this, SLOT(maxEdited())); gridLayout->addWidget(maxSB, i+1, col++, 1, 1); @@ -194,8 +194,8 @@ void Channels::refreshExtendedLimits() QDoubleSpinBox * minDSB = minSpins[i]; QDoubleSpinBox * maxDSB = maxSpins[i]; - minDSB->setMinimum(model.extendedLimits ? -125 : -100); - maxDSB->setMaximum(model.extendedLimits ? 125 : 100); + minDSB->setMinimum(-model.getChannelsMax()); + maxDSB->setMaximum(model.getChannelsMax()); } emit modified(); } diff --git a/companion/src/modeledit/setup.cpp b/companion/src/modeledit/setup.cpp index bc7b96448..320b238a0 100644 --- a/companion/src/modeledit/setup.cpp +++ b/companion/src/modeledit/setup.cpp @@ -146,7 +146,7 @@ ModulePanel::ModulePanel(QWidget *parent, ModelData & model, ModuleData & module label->setText(QString::number(i+1)); QDoubleSpinBox * spinbox = new QDoubleSpinBox(this); spinbox->setMinimumSize(QSize(20, 0)); - spinbox->setRange(-100, 100); + spinbox->setRange(-150, 150); spinbox->setSingleStep(0.1); spinbox->setDecimals(1); spinbox->setValue(((double)module.failsafeChannels[i]*100)/1024); @@ -232,7 +232,7 @@ void ModulePanel::update() ui->ppmDelay->setValue(module.ppmDelay); ui->label_ppmFrameLength->setVisible(mask & MASK_PPM_FIELDS); ui->ppmFrameLength->setVisible(mask & MASK_PPM_FIELDS); - ui->ppmFrameLength->setMinimum(module.channelsCount*(model.extendedLimits ? 2.250 :2)+3.5); + ui->ppmFrameLength->setMinimum(module.channelsCount*(model.extendedLimits ? 2.250 : 2)+3.5); ui->ppmFrameLength->setMaximum(firmware->getCapability(PPMFrameLength)); ui->ppmFrameLength->setValue(22.5+((double)module.ppmFrameLength)*0.5);