Skip to content
Snippets Groups Projects
Commit 3cb70aaf authored by Mikhail Svechnikov's avatar Mikhail Svechnikov Committed by Mikhail Svechnikov
Browse files

add fp form to gsisas beam

parent 8936aa31
Branches
Tags
1 merge request!1694Use footprint in GISAS and off-specular computations (#642)
......@@ -54,6 +54,7 @@ SourceItem::SourceItem()
Unit::unitless, 3 /* decimals */, RealLimits::limited(0.0, 1e32), "intensity");
m_azimuthalAngleItem.reset(new BeamAzimuthalAngleItem());
m_footprint.init("Type", "Footprint type");
}
void SourceItem::writeTo(QXmlStreamWriter* w) const
......@@ -268,7 +269,6 @@ ScanItem::ScanItem()
{
m_grazingScanItem.reset(new GrazingScanItem());
m_wavelengthItem.reset(new BeamWavelengthItem);
m_footprint.init("Type", "Footprint type");
}
void ScanItem::setScan(const IBeamScan* scan)
......
......@@ -20,13 +20,14 @@
#include "GUI/View/Numeric/NumWidgetUtil.h"
#include "GUI/View/Tool/GroupBoxCollapser.h"
FootprintForm::FootprintForm(QWidget* parent, ScanItem* item)
FootprintForm::FootprintForm(QWidget* parent, SourceItem* item)
: QGroupBox("Footprint correction", parent)
, m_item(item)
{
ASSERT(item);
m_formLayout = new QFormLayout(this);
m_formLayout->setFieldGrowthPolicy(QFormLayout::FieldsStayAtSizeHint);
ASSERT(item->footprintSelection().currentItem());
auto* typeCombo =
GUI::Util::createComboBoxFromProperty(item->footprintSelection(), [this](int) {
createFootprintWidgets();
......
......@@ -17,7 +17,7 @@
#include <QGroupBox>
class ScanItem;
class SourceItem;
class QFormLayout;
//! FootprintCorrection editor (i.e. background) for instrument editors.
......@@ -27,7 +27,7 @@ class FootprintForm : public QGroupBox {
Q_OBJECT
public:
FootprintForm(QWidget* parent, ScanItem* item);
FootprintForm(QWidget* parent, SourceItem* item);
signals:
void dataChanged();
......@@ -37,7 +37,7 @@ private:
private:
QFormLayout* m_formLayout;
ScanItem* m_item;
SourceItem* m_item;
};
#endif // BORNAGAIN_GUI_VIEW_DEVICE_FOOTPRINTFORM_H
......@@ -17,6 +17,7 @@
#include "GUI/Model/Beam/BeamAngleItems.h"
#include "GUI/Model/Beam/BeamWavelengthItem.h"
#include "GUI/Model/Beam/SourceItems.h"
#include "GUI/View/Device/FootprintForm.h"
#include "GUI/View/Instrument/DistributionEditor.h"
#include "GUI/View/Numeric/FixupDoubleValidator.h"
#include "GUI/View/Tool/GroupBoxCollapser.h"
......@@ -55,6 +56,9 @@ GISASBeamEditor::GISASBeamEditor(QWidget* parent, BeamItem* item)
this, item->azimuthalAngleItem());
vLayout->addWidget(azimuthalEditor);
auto* footprintEditor = new FootprintForm(this, item);
vLayout->addWidget(footprintEditor);
intensityEditor->setText(QString::number(item->intensity()));
auto* collapser = GroupBoxCollapser::installIntoGroupBox(this);
......@@ -68,6 +72,7 @@ GISASBeamEditor::GISASBeamEditor(QWidget* parent, BeamItem* item)
&GISASBeamEditor::dataChanged);
connect(azimuthalEditor, &DistributionEditor::distributionChanged, this,
&GISASBeamEditor::dataChanged);
connect(footprintEditor, &FootprintForm::dataChanged, this, &GISASBeamEditor::dataChanged);
// validate value while typing
connect(intensityEditor, &QLineEdit::textEdited, [this, intensityEditor, item]() {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment