Skip to content
Snippets Groups Projects
Commit 60c1eb72 authored by Mikhail Svechnikov's avatar Mikhail Svechnikov
Browse files

SpecularBeamItem: footprint returns const SelectyionProperty&

parent 6e44c64f
No related branches found
No related tags found
1 merge request!1176GUI: delete SelectionDescriptors class
...@@ -168,16 +168,6 @@ BasicAxisItem* SpecularBeamItem::inclinationAxis() const ...@@ -168,16 +168,6 @@ BasicAxisItem* SpecularBeamItem::inclinationAxis() const
return inclinationAngleItem()->alphaAxis(); return inclinationAngleItem()->alphaAxis();
} }
FootprintItem* SpecularBeamItem::footprint() const
{
return m_footprint.currentItem();
}
SelectionDescriptor<FootprintItem*> SpecularBeamItem::footprintSelection() const
{
return m_footprint;
}
void SpecularBeamItem::setGaussianFootprint(double value) void SpecularBeamItem::setGaussianFootprint(double value)
{ {
m_footprint.setCurrentItem(new FootprintGaussianItem(value)); m_footprint.setCurrentItem(new FootprintGaussianItem(value));
......
...@@ -79,8 +79,8 @@ public: ...@@ -79,8 +79,8 @@ public:
SpecularBeamInclinationItem* inclinationAngleItem() const override; SpecularBeamInclinationItem* inclinationAngleItem() const override;
BasicAxisItem* inclinationAxis() const; BasicAxisItem* inclinationAxis() const;
FootprintItem* footprint() const; const SelectionProperty<FootprintItemCatalog>& footprint() const { return m_footprint; }
SelectionDescriptor<FootprintItem*> footprintSelection() const;
void setGaussianFootprint(double value); void setGaussianFootprint(double value);
void setSquareFootprint(double value); void setSquareFootprint(double value);
template <typename T> template <typename T>
......
...@@ -130,7 +130,7 @@ SpecularSimulation* createSpecularSimulation(std::unique_ptr<MultiLayer> sample, ...@@ -130,7 +130,7 @@ SpecularSimulation* createSpecularSimulation(std::unique_ptr<MultiLayer> sample,
{ {
auto* beam_item = item->beamItem(); auto* beam_item = item->beamItem();
auto* const axis_item = beam_item->inclinationAxis(); auto* const axis_item = beam_item->inclinationAxis();
auto* const footprint_item = beam_item->footprint(); auto* const footprint_item = beam_item->footprint().currentItem();
AlphaScan scan(beam_item->wavelength(), *axis_item->createAxis(Units::deg)); AlphaScan scan(beam_item->wavelength(), *axis_item->createAxis(Units::deg));
scan.setFootprintFactor(footprint_item->createFootprint().get()); scan.setFootprintFactor(footprint_item->createFootprint().get());
......
...@@ -28,7 +28,7 @@ FootprintCorrectionEditor::FootprintCorrectionEditor(QWidget* parent, SpecularBe ...@@ -28,7 +28,7 @@ FootprintCorrectionEditor::FootprintCorrectionEditor(QWidget* parent, SpecularBe
setProperty("subgroup", true); // for stylesheet addressing setProperty("subgroup", true); // for stylesheet addressing
m_formLayout = new QFormLayout(this); m_formLayout = new QFormLayout(this);
m_formLayout->setFieldGrowthPolicy(QFormLayout::FieldsStayAtSizeHint); m_formLayout->setFieldGrowthPolicy(QFormLayout::FieldsStayAtSizeHint);
auto* typeCombo = GUI::Util::createComboBoxFromDescriptor(item->footprintSelection(), [=](int) { auto* typeCombo = GUI::Util::createComboBoxFromDescriptor(item->footprint().m_descriptor, [=](int) {
createFootprintWidgets(); createFootprintWidgets();
emit dataChanged(); emit dataChanged();
}); });
...@@ -44,7 +44,7 @@ void FootprintCorrectionEditor::createFootprintWidgets() ...@@ -44,7 +44,7 @@ void FootprintCorrectionEditor::createFootprintWidgets()
while (m_formLayout->rowCount() > 1) while (m_formLayout->rowCount() > 1)
m_formLayout->removeRow(1); m_formLayout->removeRow(1);
auto* footprintItem = m_item->footprintSelection().currentItem(); auto* footprintItem = m_item->footprint().currentItem();
if (auto* square = dynamic_cast<FootprintSquareItem*>(footprintItem)) { if (auto* square = dynamic_cast<FootprintSquareItem*>(footprintItem)) {
auto* spinbox = new DoubleSpinBox(square->squareFootprintValue()); auto* spinbox = new DoubleSpinBox(square->squareFootprintValue());
spinbox->setSingleStep(0.01); spinbox->setSingleStep(0.01);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment