1
0
Fork 0
mirror of https://github.com/opentx/opentx.git synced 2025-07-19 14:25:11 +03:00

Channels limits go up to 150% when extended limits are enabled

This commit is contained in:
bsongis 2014-06-11 16:59:29 +02:00
parent 621639ad0b
commit ea731eae37
4 changed files with 16 additions and 6 deletions

View file

@ -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<EEPROMInterface *> eepromInterfaces;
void RegisterEepromInterfaces()
{

View file

@ -1041,6 +1041,8 @@ class ModelData {
void clearMixes();
void clearInputs();
int getChannelsMax();
protected:
void removeGlobalVar(int & var);
};

View file

@ -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();
}

View file

@ -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);