| 110 | } |
| 111 | |
| 112 | void FitOptionsWidget::autoRangeChanged() { |
| 113 | const bool autoRange = ui.cbAutoRange->isChecked(); |
| 114 | m_fitData->autoRange = autoRange; |
| 115 | |
| 116 | ui.leMin->setEnabled(!autoRange); |
| 117 | ui.lXRange->setEnabled(!autoRange); |
| 118 | ui.leMax->setEnabled(!autoRange); |
| 119 | ui.dateTimeEditMin->setEnabled(!autoRange); |
| 120 | ui.lXRange->setEnabled(!autoRange); |
| 121 | ui.dateTimeEditMax->setEnabled(!autoRange); |
| 122 | |
| 123 | if (autoRange) { |
| 124 | const AbstractColumn* xDataColumn = nullptr; |
| 125 | if (m_fitCurve->dataSourceType() == XYAnalysisCurve::DataSourceType::Spreadsheet) |
| 126 | xDataColumn = m_fitCurve->xDataColumn(); |
| 127 | else { |
| 128 | if (m_fitCurve->dataSourceCurve()) |
| 129 | xDataColumn = m_fitCurve->dataSourceCurve()->xColumn(); |
| 130 | } |
| 131 | |
| 132 | if (xDataColumn) { |
| 133 | const double xMin = xDataColumn->minimum(); |
| 134 | const double xMax = xDataColumn->maximum(); |
| 135 | m_fitData->fitRange.setRange(xMin, xMax); |
| 136 | |
| 137 | const auto numberLocale = QLocale(); |
| 138 | if (!m_dateTimeRange) { |
| 139 | ui.leMin->setText(numberLocale.toString(xMin)); |
| 140 | ui.leMax->setText(numberLocale.toString(xMax)); |
| 141 | } else { |
| 142 | ui.dateTimeEditMin->setMSecsSinceEpochUTC(xMin); |
| 143 | ui.dateTimeEditMax->setMSecsSinceEpochUTC(xMax); |
| 144 | } |
| 145 | } |
| 146 | } |
| 147 | } |
| 148 | |
| 149 | void FitOptionsWidget::autoEvalRangeChanged() { |
| 150 | const bool autoRange = ui.cbAutoEvalRange->isChecked(); |
no test coverage detected