[Companion] Set decimals first on autospinbox or value can be truncated (fix #6094)

This commit is contained in:
Kilrah
2018-08-25 21:03:45 +02:00
parent 51b3a0c68f
commit bf5e5874b4
+4 -4
View File
@@ -681,24 +681,24 @@ void TelemetrySensorPanel::update()
ratioFieldsDisplayed = (sensor.unit < SensorData::UNIT_FIRST_VIRTUAL);
if (sensor.unit == SensorData::UNIT_RPMS) {
if (ui->ratio->decimals()) {
ui->ratio->setDecimals(0);
ui->ratio->setMaximum(30000);
ui->ratio->setMinimum(1);
ui->ratio->setDecimals(0);
ui->ratio->setSingleStep(1);
ui->offset->setDecimals(0);
ui->offset->setMaximum(30000);
ui->offset->setMinimum(1);
ui->offset->setDecimals(0);
ui->offset->setSingleStep(1);
}
}
else if (ui->ratio->decimals() != 1) {
ui->ratio->setDecimals(1);
ui->ratio->setMaximum(3000);
ui->ratio->setMinimum(0);
ui->ratio->setDecimals(1);
ui->ratio->setSingleStep(0.1);
ui->offset->setDecimals(sensor.prec);
ui->offset->setMaximum(30000.0f / powf(10.0f, sensor.prec));
ui->offset->setMinimum(-ui->offset->maximum());
ui->offset->setDecimals(sensor.prec);
ui->offset->setSingleStep(pow(0.1, sensor.prec));
}
}