BornAgain  1.19.0
Simulate and fit neutron and x-ray scattering at grazing incidence
SpecularInstrumentEditor Class Reference
Inheritance diagram for SpecularInstrumentEditor:
[legend]
Collaboration diagram for SpecularInstrumentEditor:
[legend]

Public Member Functions

 SpecularInstrumentEditor (QWidget *parent=nullptr)
 
virtual QList< QAction * > actionList ()
 
SessionItemcurrentItem ()
 
const SessionItemcurrentItem () const
 
virtual void setItem (SessionItem *item)
 

Protected Member Functions

virtual void hideEvent (QHideEvent *)
 
virtual void showEvent (QShowEvent *)
 
void subscribeToItem ()
 
virtual void unsubscribeFromItem ()
 

Private Member Functions

SpecularInstrumentIteminstrumentItem ()
 

Private Attributes

SpecularBeamEditorm_beamEditor
 
ColumnResizerm_columnResizer
 
EnvironmentEditorm_environmentEditor
 
SessionItemControllerm_itemController
 
PolarizationAnalysisEditorm_polarizationAnalysisEditor
 

Detailed Description

Definition at line 27 of file SpecularInstrumentEditor.h.

Constructor & Destructor Documentation

◆ SpecularInstrumentEditor()

SpecularInstrumentEditor::SpecularInstrumentEditor ( QWidget *  parent = nullptr)

Definition at line 24 of file SpecularInstrumentEditor.cpp.

25  : SessionItemWidget(parent)
26  , m_columnResizer(new ColumnResizer(this))
30 {
31  auto mainLayout = new QVBoxLayout;
32 
33  mainLayout->addWidget(StyleUtils::createDetailsWidget(m_beamEditor, "Beam parameters"));
34  mainLayout->addWidget(StyleUtils::createDetailsWidget(m_environmentEditor, "Environment",
35  /*expanded*/ false));
36  mainLayout->addStretch();
37 
38  setLayout(mainLayout);
39 }
The ColumnResizer class provides vertically aligned widgets from diferent layouts.
Definition: ColumnResizer.h:37
Environment editor (i.e.
SessionItemWidget(QWidget *parent=0)
Specular beam editor. Operates on SpecularInstrumentItem.
PolarizationAnalysisEditor * m_polarizationAnalysisEditor
EnvironmentEditor * m_environmentEditor
SpecularBeamEditor * m_beamEditor
QWidget * createDetailsWidget(QWidget *content, const QString &name, bool expanded=true)
Creates details widget holding user content inside.
Definition: StyleUtils.cpp:96

References StyleUtils::createDetailsWidget(), m_beamEditor, and m_environmentEditor.

Here is the call graph for this function:

Member Function Documentation

◆ actionList()

QList< QAction * > SessionItemWidget::actionList ( )
virtualinherited

◆ currentItem() [1/2]

SessionItem * SessionItemWidget::currentItem ( )
inherited

Definition at line 41 of file SessionItemWidget.cpp.

42 {
43  return const_cast<SessionItem*>(static_cast<const SessionItemWidget*>(this)->currentItem());
44 }
The SessionItemWidget class is a base for all widgets representing the content of SessionItem.
SessionItem * currentItem()

Referenced by RectangularDetectorEditor::detectorItem(), SphericalDetectorEditor::detectorItem(), FitFlowWidget::fitSuiteItem(), DistributionEditor::groupItem(), DepthProbeInstrumentEditor::instrumentItem(), EnvironmentEditor::instrumentItem(), GISASBeamEditor::instrumentItem(), GISASDetectorEditor::instrumentItem(), GISASInstrumentEditor::instrumentItem(), OffSpecularBeamEditor::instrumentItem(), OffSpecularInstrumentEditor::instrumentItem(), PolarizationAnalysisEditor::instrumentItem(), SpecularBeamEditor::instrumentItem(), instrumentItem(), RealDataMaskWidget::intensityDataItem(), IntensityDataCanvas::intensityDataItem(), IntensityDataProjectionsWidget::intensityDataItem(), IntensityDataWidget::intensityDataItem(), ProjectionsPlot::intensityItem(), ColorMap::intensityItem(), DetectorPresenter::itemPresentation(), InstrumentPresenter::itemPresentation(), JobResultsPresenter::itemPresentation(), FitComparisonWidget::jobItem(), FitComparisonWidget1D::jobItem(), FitParameterWidget::jobItem(), RunFitControlWidget::jobItem(), JobPropertiesWidget::jobItem(), ParameterTuningWidget::jobItem(), SpecularDataImportWidget::realDataItem(), ItemComboWidget::setPresentation(), JobResultsPresenter::setPresentation(), SpecularDataCanvas::specularDataItem(), SpecularDataImportWidget::specularDataItem(), SpecularDataWidget::specularDataItem(), SpecularPlot::specularItem(), ItemComboWidget::subscribeToItem(), DistributionEditor::subscribeToItem(), GISASDetectorEditor::subscribeToItem(), PolarizationAnalysisEditor::subscribeToItem(), IntensityDataPropertyWidget::subscribeToItem(), JobPropertiesWidget::subscribeToItem(), ProjectionsPropertyPanel::subscribeToItem(), ProjectionsPlot::unsubscribeFromChildren(), and Plot1D::viewItem().

◆ currentItem() [2/2]

const SessionItem * SessionItemWidget::currentItem ( ) const
inherited

Definition at line 46 of file SessionItemWidget.cpp.

47 {
48  return m_itemController->currentItem();
49 }
SessionItemController * m_itemController

References SessionItemController::currentItem(), and SessionItemWidget::m_itemController.

Here is the call graph for this function:

◆ hideEvent()

void SessionItemWidget::hideEvent ( QHideEvent *  )
protectedvirtualinherited

Definition at line 56 of file SessionItemWidget.cpp.

57 {
59 }
void unsubscribe()
Fully unsubscribes the parent from listening item's signals.

References SessionItemWidget::m_itemController, and SessionItemController::unsubscribe().

Here is the call graph for this function:

◆ instrumentItem()

SpecularInstrumentItem * SpecularInstrumentEditor::instrumentItem ( )
private

Definition at line 48 of file SpecularInstrumentEditor.cpp.

49 {
50  auto result = dynamic_cast<SpecularInstrumentItem*>(currentItem());
51  ASSERT(result);
52  return result;
53 }
#define ASSERT(condition)
Definition: Assert.h:31

References ASSERT, and SessionItemWidget::currentItem().

Referenced by subscribeToItem().

Here is the call graph for this function:

◆ setItem()

void SessionItemWidget::setItem ( SessionItem item)
virtualinherited

Reimplemented in SpecularPlotCanvas, SpecularDataImportWidget, SpecularDataWidget, IntensityDataWidget, SpecularDataCanvas, ProjectionsWidget, IntensityDataCanvas, ColorMapCanvas, and Plot1DCanvas.

Definition at line 28 of file SessionItemWidget.cpp.

29 {
31 
32  if (isVisible())
34 }
void setItem(SessionItem *item)
void subscribe()
Subscribe parent to item's signals.

References SessionItemWidget::m_itemController, SessionItemController::setItem(), and SessionItemController::subscribe().

Referenced by IntensityDataWidget::onFFTAction(), JobSelectorWidget::onSelectionChanged(), ProjectionsEditor::resetContext(), ProjectionsEditor::setContext(), MaskGraphicsProxy::setIntensityItem(), FitSessionWidget::setItem(), Plot1DCanvas::setItem(), InstrumentEditorWidget::setItem(), ColorMapCanvas::setItem(), IntensityDataCanvas::setItem(), ProjectionsWidget::setItem(), SpecularDataCanvas::setItem(), DistributionDialog::setItem(), IntensityDataWidget::setItem(), SpecularDataWidget::setItem(), SpecularDataImportWidget::setItem(), SpecularPlotCanvas::setItem(), ItemComboWidget::setPresentation(), GISASInstrumentEditor::subscribeToItem(), OffSpecularInstrumentEditor::subscribeToItem(), subscribeToItem(), FitComparisonWidget::subscribeToItem(), FitComparisonWidget1D::subscribeToItem(), and GISASDetectorEditor::updateDetectorPresenter().

Here is the call graph for this function:

◆ showEvent()

void SessionItemWidget::showEvent ( QShowEvent *  )
protectedvirtualinherited

Definition at line 51 of file SessionItemWidget.cpp.

52 {
54 }

References SessionItemWidget::m_itemController, and SessionItemController::subscribe().

Here is the call graph for this function:

◆ subscribeToItem()

void SpecularInstrumentEditor::subscribeToItem ( )
protectedvirtual

Reimplemented from SessionItemWidget.

Definition at line 41 of file SpecularInstrumentEditor.cpp.

42 {
45  // m_polarizationAnalysisEditor->setItem(instrumentItem());
46 }
virtual void setItem(SessionItem *item)
SpecularInstrumentItem * instrumentItem()

References instrumentItem(), m_beamEditor, m_environmentEditor, and SessionItemWidget::setItem().

Here is the call graph for this function:

◆ unsubscribeFromItem()

Member Data Documentation

◆ m_beamEditor

SpecularBeamEditor* SpecularInstrumentEditor::m_beamEditor
private

Definition at line 39 of file SpecularInstrumentEditor.h.

Referenced by SpecularInstrumentEditor(), and subscribeToItem().

◆ m_columnResizer

ColumnResizer* SpecularInstrumentEditor::m_columnResizer
private

Definition at line 38 of file SpecularInstrumentEditor.h.

◆ m_environmentEditor

EnvironmentEditor* SpecularInstrumentEditor::m_environmentEditor
private

Definition at line 40 of file SpecularInstrumentEditor.h.

Referenced by SpecularInstrumentEditor(), and subscribeToItem().

◆ m_itemController

◆ m_polarizationAnalysisEditor

PolarizationAnalysisEditor* SpecularInstrumentEditor::m_polarizationAnalysisEditor
private

Definition at line 41 of file SpecularInstrumentEditor.h.


The documentation for this class was generated from the following files: