266 if (this->ignoreChanges) |
266 if (this->ignoreChanges) |
267 return; |
267 return; |
268 |
268 |
269 qDebug() << "Cell at row " + QString::number(nRow) + " column " + QString::number(nCol) + " was changed."; |
269 qDebug() << "Cell at row " + QString::number(nRow) + " column " + QString::number(nCol) + " was changed."; |
270 |
270 |
|
271 if (nCol == 0) { // SG changed |
|
272 double d = ui->dataTable->item(nRow, 0)->text().toDouble(); |
|
273 if (d < 1.000 || d > 1.100) { |
|
274 QMessageBox::warning(this, tr("iSpindel calibrate"), tr("The SG must be between 1.000 and 1.100.")); |
|
275 return; |
|
276 } |
|
277 nCal[nRow].sg = d; |
|
278 nCal[nRow].plato = Utils::sg_to_plato(d); |
|
279 qDebug() << "sg" << nCal[nRow].sg << "plato" << nCal[nRow].plato; |
|
280 } else if (nCol == 1) { |
|
281 double d = ui->dataTable->item(nRow, 1)->text().toDouble(); |
|
282 if (d < 0 || d > 25) { |
|
283 QMessageBox::warning(this, tr("iSpindel calibrate"), tr("Plato must be between 0 and 25.")); |
|
284 return; |
|
285 } |
|
286 nCal[nRow].plato = d; |
|
287 nCal[nRow].sg = Utils::plato_to_sg(d); |
|
288 qDebug() << "sg" << nCal[nRow].sg << "plato" << nCal[nRow].plato; |
|
289 } else if (nCol == 2) { |
|
290 double d = ui->dataTable->item(nRow, 2)->text().toDouble(); |
|
291 if (d < 10 || d > 80) { |
|
292 QMessageBox::warning(this, tr("iSpindel calibrate"), tr("The tilt angles must be between 10 and 80.")); |
|
293 return; |
|
294 } |
|
295 nCal[nRow].angle = d; |
|
296 } |
|
297 |
|
298 emit refreshTable(); |
271 } |
299 } |
272 |
300 |
273 |
301 |
274 /* |
302 /* |
275 * Window header, mark any change with '**' |
303 * Window header, mark any change with '**' |