BornAgain  1.19.0
Simulate and fit neutron and x-ray scattering at grazing incidence
gui2::SLDViewWidget Class Reference

The segment QGraphicsViewItem on the Graphicsscene. More...

Inheritance diagram for gui2::SLDViewWidget:
[legend]
Collaboration diagram for gui2::SLDViewWidget:
[legend]

Public Member Functions

 SLDViewWidget (QWidget *parent=nullptr)
 The constructor. More...
 
 ~SLDViewWidget ()
 The destructor. More...
 
void setModels (ApplicationModels *models)
 

Protected Member Functions

void resizeEvent (QResizeEvent *event)
 Resize event management. More...
 

Private Attributes

std::unique_ptr< SLDElementControllerm_sld_controller
 

Detailed Description

The segment QGraphicsViewItem on the Graphicsscene.

Definition at line 28 of file sldviewwidget.h.

Constructor & Destructor Documentation

◆ SLDViewWidget()

gui2::SLDViewWidget::SLDViewWidget ( QWidget *  parent = nullptr)

The constructor.

Definition at line 25 of file sldviewwidget.cpp.

25  : QGraphicsView(parent)
26 {
27  GraphicsScene* scene_item = new GraphicsScene(parent = this);
28  setScene(scene_item);
29  setRenderHints(QPainter::Antialiasing);
30  setDragMode(QGraphicsView::ScrollHandDrag);
31  setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
32  setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
33  setContentsMargins(0, 0, 0, 0);
34 }

◆ ~SLDViewWidget()

gui2::SLDViewWidget::~SLDViewWidget ( )
default

The destructor.

Member Function Documentation

◆ resizeEvent()

void gui2::SLDViewWidget::resizeEvent ( QResizeEvent *  event)
protected

Resize event management.

Definition at line 48 of file sldviewwidget.cpp.

49 {
50  QWidget::resizeEvent(event);
51  GraphicsScene* scene_item = static_cast<GraphicsScene*>(scene());
52  scene_item->update_size(event->size());
53 }

References gui2::GraphicsScene::update_size().

Here is the call graph for this function:

◆ setModels()

void gui2::SLDViewWidget::setModels ( ApplicationModels models)

Definition at line 39 of file sldviewwidget.cpp.

40 {
41  m_sld_controller = std::make_unique<SLDElementController>(
42  models->materialModel(), models->sampleModel(), models->sldViewModel(), nullptr);
43  m_sld_controller->setScene(dynamic_cast<GraphicsScene*>(scene()));
44  dynamic_cast<GraphicsScene*>(scene())->setItem(models->jobModel()->sldViewport());
45 }
SampleModel * sampleModel()
MaterialModel * materialModel()
std::unique_ptr< SLDElementController > m_sld_controller
Definition: sldviewwidget.h:41

References gui2::ApplicationModels::jobModel(), m_sld_controller, gui2::ApplicationModels::materialModel(), gui2::ApplicationModels::sampleModel(), gui2::ApplicationModels::sldViewModel(), and gui2::JobModel::sldViewport().

Referenced by gui2::SLDEditor::setModels().

Here is the call graph for this function:

Member Data Documentation

◆ m_sld_controller

std::unique_ptr<SLDElementController> gui2::SLDViewWidget::m_sld_controller
private

Definition at line 41 of file sldviewwidget.h.

Referenced by setModels().


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