BornAgain
1.19.0
Simulate and fit neutron and x-ray scattering at grazing incidence
|
The DistributionWidget class plots 1d functions corresponding to domain's Distribution1D. More...
Public Slots | |
void | onMouseMove (QMouseEvent *event) |
Generates label with current mouse position. More... | |
void | onMousePress (QMouseEvent *event) |
Public Member Functions | |
DistributionWidget (QWidget *parent=0) | |
~DistributionWidget () | |
void | plotItem () |
void | setItem (DistributionItem *item) |
void | setXAxisName (const QString &xAxisName) |
Private Slots | |
void | resetView () |
Reset zoom range to initial state. More... | |
Private Member Functions | |
void | init_plot () |
Clears all plottables, resets axes to initial state. More... | |
void | plot_distributions () |
void | plot_multiple_values () |
void | plot_single_value () |
Plots a single bar corresponding to the value in DistributionNoteItem. More... | |
void | plotBars (const QVector< double > &xbars, const QVector< double > &ybars) |
void | plotFunction (const QVector< double > &xFunc, const QVector< double > &ybars) |
void | plotLimits (const RealLimits &limits) |
Plots red line denoting lower and upper limits, if any. More... | |
void | plotVerticalLine (double xMin, double yMin, double xMax, double yMax, const QColor &color=Qt::blue) |
QPoint | positionForWarningSign () |
void | setPlotRange (const QPair< double, double > &xRange, const QPair< double, double > &yRange) |
Private Attributes | |
DistributionItem * | m_item |
QLabel * | m_label |
QCustomPlot * | m_plot |
QAction * | m_resetAction |
WarningSign * | m_warningSign |
QCPRange | m_xRange |
QCPRange | m_yRange |
The DistributionWidget class plots 1d functions corresponding to domain's Distribution1D.
Definition at line 30 of file DistributionWidget.h.
DistributionWidget::DistributionWidget | ( | QWidget * | parent = 0 | ) |
Definition at line 37 of file DistributionWidget.cpp.
References m_label, m_plot, m_resetAction, onMouseMove(), onMousePress(), and resetView().
DistributionWidget::~DistributionWidget | ( | ) |
Definition at line 66 of file DistributionWidget.cpp.
References m_item, SessionItem::mapper(), and ModelMapper::unsubscribe().
|
private |
Clears all plottables, resets axes to initial state.
Definition at line 147 of file DistributionWidget.cpp.
References WarningSign::clear(), m_plot, m_warningSign, and setPlotRange().
Referenced by plotItem().
|
slot |
Generates label with current mouse position.
Definition at line 114 of file DistributionWidget.cpp.
References m_label, and m_plot.
Referenced by DistributionWidget().
|
slot |
Definition at line 126 of file DistributionWidget.cpp.
References m_resetAction.
Referenced by DistributionWidget().
|
private |
Definition at line 167 of file DistributionWidget.cpp.
References m_item, SessionItem::modelType(), plot_multiple_values(), and plot_single_value().
Referenced by plotItem().
|
private |
Definition at line 191 of file DistributionWidget.cpp.
References ASSERT, DistributionItem::createDistribution(), SessionItem::displayName(), GUIHelpers::fromStdVector(), SessionItem::getItemValue(), SessionItem::groupItem(), SessionItem::isTag(), m_item, DistributionItem::P_LIMITS, DistributionItem::P_NUMBER_OF_SAMPLES, DistributionItem::P_SIGMA_FACTOR, plotBars(), plotFunction(), and plotLimits().
Referenced by plot_distributions().
|
private |
Plots a single bar corresponding to the value in DistributionNoteItem.
Definition at line 178 of file DistributionWidget.cpp.
References ASSERT, SessionItem::displayName(), SessionItem::getItemValue(), m_item, SymmetricDistributionItem::P_MEAN, plotBars(), and plotVerticalLine().
Referenced by plot_distributions().
|
private |
Definition at line 259 of file DistributionWidget.cpp.
References ASSERT, m_plot, and setPlotRange().
Referenced by plot_multiple_values(), and plot_single_value().
|
private |
Definition at line 279 of file DistributionWidget.cpp.
References m_plot, and setPlotRange().
Referenced by plot_multiple_values().
void DistributionWidget::plotItem | ( | ) |
Definition at line 95 of file DistributionWidget.cpp.
References init_plot(), m_plot, m_warningSign, plot_distributions(), and WarningSign::setWarningMessage().
Referenced by setItem().
|
private |
Plots red line denoting lower and upper limits, if any.
Definition at line 304 of file DistributionWidget.cpp.
References RealLimits::hasLowerLimit(), RealLimits::hasUpperLimit(), RealLimits::lowerLimit(), plotVerticalLine(), and RealLimits::upperLimit().
Referenced by plot_multiple_values().
|
private |
Definition at line 289 of file DistributionWidget.cpp.
References m_plot.
Referenced by plot_single_value(), and plotLimits().
|
private |
|
privateslot |
Reset zoom range to initial state.
Definition at line 138 of file DistributionWidget.cpp.
References m_plot, m_xRange, and m_yRange.
Referenced by DistributionWidget().
void DistributionWidget::setItem | ( | DistributionItem * | item | ) |
Definition at line 72 of file DistributionWidget.cpp.
References m_item, SessionItem::mapper(), plotItem(), ModelMapper::setOnItemDestroy(), ModelMapper::setOnPropertyChange(), and ModelMapper::unsubscribe().
Referenced by DistributionEditor::onPropertyChanged(), and DistributionEditor::subscribeToItem().
|
private |
Definition at line 250 of file DistributionWidget.cpp.
References m_plot, m_xRange, and m_yRange.
Referenced by init_plot(), plotBars(), and plotFunction().
void DistributionWidget::setXAxisName | ( | const QString & | xAxisName | ) |
Definition at line 317 of file DistributionWidget.cpp.
References m_plot.
Referenced by DistributionEditor::setNameOfEditor().
|
private |
Definition at line 62 of file DistributionWidget.h.
Referenced by ~DistributionWidget(), plot_distributions(), plot_multiple_values(), plot_single_value(), and setItem().
|
private |
Definition at line 63 of file DistributionWidget.h.
Referenced by DistributionWidget(), and onMouseMove().
|
private |
Definition at line 61 of file DistributionWidget.h.
Referenced by DistributionWidget(), init_plot(), onMouseMove(), plotBars(), plotFunction(), plotItem(), plotVerticalLine(), resetView(), setPlotRange(), and setXAxisName().
|
private |
Definition at line 64 of file DistributionWidget.h.
Referenced by DistributionWidget(), and onMousePress().
|
private |
Definition at line 66 of file DistributionWidget.h.
Referenced by init_plot(), and plotItem().
|
private |
Definition at line 65 of file DistributionWidget.h.
Referenced by resetView(), and setPlotRange().
|
private |
Definition at line 65 of file DistributionWidget.h.
Referenced by resetView(), and setPlotRange().