MCPcopy Create free account
hub / github.com/KDE/labplot / initGeneralTab

Method initGeneralTab

src/frontend/dockwidgets/XYIntegrationCurveDock.cpp:89–144  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

87}
88
89void XYIntegrationCurveDock::initGeneralTab() {
90 // show the properties of the first curve
91 // data source
92 uiGeneralTab.cbDataSourceType->setCurrentIndex(static_cast<int>(m_integrationCurve->dataSourceType()));
93 this->dataSourceTypeChanged(uiGeneralTab.cbDataSourceType->currentIndex());
94 cbDataSourceCurve->setAspect(m_integrationCurve->dataSourceCurve());
95 cbXDataColumn->setAspect(m_integrationCurve->xDataColumn(), m_integrationCurve->xDataColumnPath());
96 cbYDataColumn->setAspect(m_integrationCurve->yDataColumn(), m_integrationCurve->yDataColumnPath());
97
98 // range widgets
99 const auto* plot = static_cast<const CartesianPlot*>(m_integrationCurve->parentAspect());
100 const int xIndex = plot->coordinateSystem(m_curve->coordinateSystemIndex())->index(CartesianCoordinateSystem::Dimension::X);
101 m_dateTimeRange = (plot->xRangeFormat(xIndex) != RangeT::Format::Numeric);
102 if (!m_dateTimeRange) {
103 const auto numberLocale = QLocale();
104 uiGeneralTab.leMin->setText(numberLocale.toString(m_integrationData.xRange.first()));
105 uiGeneralTab.leMax->setText(numberLocale.toString(m_integrationData.xRange.last()));
106 } else {
107 uiGeneralTab.dateTimeEditMin->setMSecsSinceEpochUTC(m_integrationData.xRange.first());
108 uiGeneralTab.dateTimeEditMax->setMSecsSinceEpochUTC(m_integrationData.xRange.last());
109 }
110
111 uiGeneralTab.lMin->setVisible(!m_dateTimeRange);
112 uiGeneralTab.leMin->setVisible(!m_dateTimeRange);
113 uiGeneralTab.lMax->setVisible(!m_dateTimeRange);
114 uiGeneralTab.leMax->setVisible(!m_dateTimeRange);
115 uiGeneralTab.lMinDateTime->setVisible(m_dateTimeRange);
116 uiGeneralTab.dateTimeEditMin->setVisible(m_dateTimeRange);
117 uiGeneralTab.lMaxDateTime->setVisible(m_dateTimeRange);
118 uiGeneralTab.dateTimeEditMax->setVisible(m_dateTimeRange);
119
120 // auto range
121 uiGeneralTab.cbAutoRange->setChecked(m_integrationData.autoRange);
122 this->autoRangeChanged();
123
124 // update list of selectable types
125 xDataColumnChanged(cbXDataColumn->currentModelIndex());
126
127 uiGeneralTab.cbMethod->setCurrentIndex(m_integrationData.method);
128 this->methodChanged(m_integrationData.method);
129 uiGeneralTab.cbAbsolute->setChecked(m_integrationData.absolute);
130 this->absoluteChanged();
131
132 this->showIntegrationResult();
133
134 uiGeneralTab.chkLegendVisible->setChecked(m_curve->legendVisible());
135 uiGeneralTab.chkVisible->setChecked(m_curve->isVisible());
136
137 // Slots
138 connect(m_integrationCurve, &XYIntegrationCurve::dataSourceTypeChanged, this, &XYIntegrationCurveDock::curveDataSourceTypeChanged);
139 connect(m_integrationCurve, &XYIntegrationCurve::dataSourceCurveChanged, this, &XYIntegrationCurveDock::curveDataSourceCurveChanged);
140 connect(m_integrationCurve, &XYIntegrationCurve::xDataColumnChanged, this, &XYIntegrationCurveDock::curveXDataColumnChanged);
141 connect(m_integrationCurve, &XYIntegrationCurve::yDataColumnChanged, this, &XYIntegrationCurveDock::curveYDataColumnChanged);
142 connect(m_integrationCurve, &XYIntegrationCurve::integrationDataChanged, this, &XYIntegrationCurveDock::curveIntegrationDataChanged);
143 connect(m_integrationCurve, &XYIntegrationCurve::sourceDataChanged, this, &XYIntegrationCurveDock::enableRecalculate);
144}
145
146/*!

Callers

nothing calls this directly

Calls 15

dataSourceTypeChangedMethod · 0.95
autoRangeChangedMethod · 0.95
methodChangedMethod · 0.95
absoluteChangedMethod · 0.95
showIntegrationResultMethod · 0.95
setAspectMethod · 0.80
parentAspectMethod · 0.80
coordinateSystemIndexMethod · 0.80
xRangeFormatMethod · 0.80
setMSecsSinceEpochUTCMethod · 0.80
currentModelIndexMethod · 0.80
setCurrentIndexMethod · 0.45

Tested by

no test coverage detected