From 5c6f18d3d20c3be9dded0895af5b290e01f8474b Mon Sep 17 00:00:00 2001 From: David Li <dawei.li@gmx.net> Date: Mon, 21 Mar 2016 13:01:17 +0100 Subject: [PATCH] fixing instrument view --- GUI/coregui/Models/SessionItem.cpp | 3 ++- GUI/coregui/Views/InstrumentWidgets/BeamEditorWidget.cpp | 7 ++++--- GUI/coregui/Views/PropertyEditor/ComponentBoxEditor.cpp | 4 ++-- GUI/coregui/Views/PropertyEditor/ComponentEditor.cpp | 4 ++-- 4 files changed, 10 insertions(+), 8 deletions(-) diff --git a/GUI/coregui/Models/SessionItem.cpp b/GUI/coregui/Models/SessionItem.cpp index 49a2287df1f..3325043ee75 100644 --- a/GUI/coregui/Models/SessionItem.cpp +++ b/GUI/coregui/Models/SessionItem.cpp @@ -50,6 +50,7 @@ SessionItem::SessionItem(const QString &modelType) setData(SessionModel::ModelTypeRole, modelType); setDisplayName(modelType); + setDecimals(3); } /*! @@ -579,7 +580,7 @@ void SessionItem::emitDataChanged(int role) { if (m_model) { QModelIndex index = m_model->indexOfItem(this); - m_model->dataChanged(index, index, QVector<int>() << role); + m_model->dataChanged(index, index.sibling(index.row(), 1), QVector<int>() << role); } } diff --git a/GUI/coregui/Views/InstrumentWidgets/BeamEditorWidget.cpp b/GUI/coregui/Views/InstrumentWidgets/BeamEditorWidget.cpp index ed013ca810c..78171c3a5b9 100644 --- a/GUI/coregui/Views/InstrumentWidgets/BeamEditorWidget.cpp +++ b/GUI/coregui/Views/InstrumentWidgets/BeamEditorWidget.cpp @@ -20,6 +20,7 @@ #include "GroupInfoBox.h" #include "GUIHelpers.h" #include "ComponentInfoBox.h" +#include "BeamDistributionItem.h" #include <QGroupBox> #include <QVBoxLayout> #include <QLabel> @@ -97,14 +98,14 @@ void BeamEditorWidget::setBeamItem(BeamItem *beamItem) m_intensityEditor->addItem(m_beamItem->getItem(BeamItem::P_INTENSITY)); SessionItem *wavelengthItem = m_beamItem->getGroupItem(BeamItem::P_WAVELENGTH); - m_wavelengthPresenter->addPropertyItems(wavelengthItem); + m_wavelengthPresenter->addPropertyItems(wavelengthItem->getItem(BeamDistributionItem::P_DISTRIBUTION)); SessionItem *inclinationAngleItem = m_beamItem->getGroupItem(BeamItem::P_INCLINATION_ANGLE); - m_inclinationAnglePresenter->addPropertyItems(inclinationAngleItem); + m_inclinationAnglePresenter->addPropertyItems(inclinationAngleItem->getItem(BeamDistributionItem::P_DISTRIBUTION)); SessionItem *azimuthalAngleItem = m_beamItem->getGroupItem(BeamItem::P_AZIMUTHAL_ANGLE); - m_azimuthalAnglePresenter->addPropertyItems(azimuthalAngleItem); + m_azimuthalAnglePresenter->addPropertyItems(azimuthalAngleItem->getItem(BeamDistributionItem::P_DISTRIBUTION)); } void BeamEditorWidget::onDialogRequest(SessionItem *item, QString name) diff --git a/GUI/coregui/Views/PropertyEditor/ComponentBoxEditor.cpp b/GUI/coregui/Views/PropertyEditor/ComponentBoxEditor.cpp index 4c5b2688ee5..4eb19de278b 100644 --- a/GUI/coregui/Views/PropertyEditor/ComponentBoxEditor.cpp +++ b/GUI/coregui/Views/PropertyEditor/ComponentBoxEditor.cpp @@ -68,8 +68,8 @@ void ComponentBoxEditor::updateItem(SessionItem *item, QtVariantProperty *parent void ComponentBoxEditor::onDataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QVector<int> &roles) { - if (topLeft != bottomRight) - return; +// if (topLeft != bottomRight) +// return; SessionModel *model = qobject_cast<SessionModel *>(sender()); Q_ASSERT(model); diff --git a/GUI/coregui/Views/PropertyEditor/ComponentEditor.cpp b/GUI/coregui/Views/PropertyEditor/ComponentEditor.cpp index a6b562c556b..a328fc91476 100644 --- a/GUI/coregui/Views/PropertyEditor/ComponentEditor.cpp +++ b/GUI/coregui/Views/PropertyEditor/ComponentEditor.cpp @@ -88,8 +88,8 @@ void ComponentEditor::onDataChanged(const QModelIndex &topLeft, const QModelIndex &bottomRight, const QVector<int> &roles) { - if (topLeft != bottomRight) - return; +// if (topLeft != bottomRight) +// return; SessionModel *model = qobject_cast<SessionModel *>(sender()); Q_ASSERT(model); -- GitLab