BornAgain  1.19.79
Simulate and fit neutron and x-ray scattering at grazing incidence
SpecularInstrumentEditor.cpp
Go to the documentation of this file.
1 // ************************************************************************************************
2 //
3 // BornAgain: simulate and fit reflection and scattering
4 //
5 //! @file GUI/View/Instrument/SpecularInstrumentEditor.cpp
6 //! @brief Implements class SpecularInstrumentEditor
7 //!
8 //! @homepage http://www.bornagainproject.org
9 //! @license GNU General Public License v3 or higher (see COPYING)
10 //! @copyright Forschungszentrum Jülich GmbH 2018
11 //! @authors Scientific Computing Group at MLZ (see CITATION, AUTHORS)
12 //
13 // ************************************************************************************************
14 
20 #include <QVBoxLayout>
21 
23  SpecularInstrumentItem* instrument,
25  : QWidget(parent)
26  , m_ec(ec, instrument)
27 {
28  ASSERT(instrument);
29  auto* layout = new QVBoxLayout(this);
30  layout->setContentsMargins(0, 0, 0, 0);
31 
32  auto* beamEditor = new SpecularBeamEditor(this, instrument->beamItem(), &m_ec);
33  layout->addWidget(beamEditor);
34 
35  auto* polMatricesAnalysisEditor = new PolarizationAnalysisEditor(this, instrument);
36  layout->addWidget(polMatricesAnalysisEditor);
37 
38  auto* environmentEditor = new EnvironmentEditor(this, instrument);
39  layout->addWidget(environmentEditor);
40 
41  layout->addStretch();
42 
43  connect(beamEditor, &SpecularBeamEditor::dataChanged, this,
45  connect(polMatricesAnalysisEditor, &PolarizationAnalysisEditor::dataChanged, this,
47  connect(environmentEditor, &EnvironmentEditor::dataChanged, this,
49 }
Defines class EnvironmentEditor.
Defines class InstrumentItem and all its children.
Defines class PolarizationAnalysisEditor.
Defines class SpecularBeamEditor.
Defines class SpecularInstrumentEditor.
Environment editor (i.e. background) for instrument editors. Operates on InstrumentItem.
Class to modify the instruments list or a single instrument and provide the necessary signaling withi...
Polarization analysis editor (beam polarization, analyzer properties) for instrument editors....
Specular beam editor. Operates on SpecularBeamItem.
InstrumentEditController m_ec
SpecularInstrumentEditor(QWidget *parent, SpecularInstrumentItem *instrument, InstrumentsEditController *ec)
SpecularBeamItem * beamItem() const override