From 0b9102340fd9d0b717ec9e3c9c955fd17cbc618e Mon Sep 17 00:00:00 2001 From: Gennady Pospelov <g.pospelov@fz-juelich.de> Date: Mon, 16 May 2016 14:17:37 +0200 Subject: [PATCH] Method for getSelectedParameterItem moved to ModelTuningWidget --- .../Views/FitWidgets/FitParametersWidget.cpp | 26 +++---------------- .../Views/FitWidgets/FitParametersWidget.h | 1 - .../Views/JobWidgets/ModelTuningWidget.cpp | 20 ++++++++++++++ .../Views/JobWidgets/ModelTuningWidget.h | 3 +++ 4 files changed, 27 insertions(+), 23 deletions(-) diff --git a/GUI/coregui/Views/FitWidgets/FitParametersWidget.cpp b/GUI/coregui/Views/FitWidgets/FitParametersWidget.cpp index 3f88853a081..6efbb1ca59a 100644 --- a/GUI/coregui/Views/FitWidgets/FitParametersWidget.cpp +++ b/GUI/coregui/Views/FitWidgets/FitParametersWidget.cpp @@ -176,7 +176,7 @@ void FitParametersWidget::onFitParametersSelectionChanged(const QItemSelection & void FitParametersWidget::onCreateFitParAction() { - foreach(ParameterItem *item, getSelectedParameters()) { + foreach(ParameterItem *item, m_tuningWidget->getSelectedParameters()) { if(!FitModelHelper::getFitParameterItem(m_jobItem->fitParameterContainerItem(), item)) { FitModelHelper::createFitParameter(m_jobItem->fitParameterContainerItem(), item); // m_fitParameterModel->createFitParameter(item); @@ -190,7 +190,7 @@ void FitParametersWidget::onCreateFitParAction() //! fitParameterItem. void FitParametersWidget::onRemoveFromFitParAction() { - foreach(ParameterItem *item, getSelectedParameters()) { + foreach(ParameterItem *item, m_tuningWidget->getSelectedParameters()) { if(FitModelHelper::getFitParameterItem(m_jobItem->fitParameterContainerItem(), item)) { FitModelHelper::removeFromFitParameters(m_jobItem->fitParameterContainerItem(), item); // m_fitParameterModel->removeFromFitParameters(item); @@ -222,7 +222,7 @@ void FitParametersWidget::onRemoveFitParAction() void FitParametersWidget::onAddToFitParAction(int ipar) { QStringList fitParNames = FitModelHelper::getFitParameterNames(m_jobItem->fitParameterContainerItem()); - foreach(ParameterItem *item, getSelectedParameters()) { + foreach(ParameterItem *item, m_tuningWidget->getSelectedParameters()) { //m_fitParameterModel->addToFitParameter(item, fitParNames.at(ipar)); FitModelHelper::addToFitParameter(m_jobItem->fitParameterContainerItem(), item, fitParNames.at(ipar)); // emit m_fitParameterModel->layoutChanged(); @@ -368,7 +368,7 @@ void FitParametersWidget::spanParameters() //! selected in model tuning widget and they should not be in FitParameterContainer already bool FitParametersWidget::isCreateFitParameterPossible() { - QVector<ParameterItem *> selected = getSelectedParameters(); + QVector<ParameterItem *> selected = m_tuningWidget->getSelectedParameters(); foreach(ParameterItem *item, selected) { if(FitModelHelper::getFitParameterItem(m_jobItem->fitParameterContainerItem(), item) == nullptr) return true; @@ -383,24 +383,6 @@ void FitParametersWidget::setActionsEnabled(bool value) m_removeFitParAction->setEnabled(value); } -//! Returns list of ParameterItem's currently selected in ModelTuningWidget -QVector<ParameterItem *> FitParametersWidget::getSelectedParameters() -{ - QVector<ParameterItem *> result; - QModelIndexList proxyIndexes = m_tuningWidget->selectionModel()->selectedIndexes(); - foreach(QModelIndex proxyIndex, proxyIndexes) { - QModelIndex index = FilterPropertyProxy::toSourceIndex(proxyIndex); - if(index.column() != 0) - continue; - - if (ParameterItem *parameterItem - = dynamic_cast<ParameterItem *>(m_jobItem->model()->itemForIndex(index))) { - result.push_back(parameterItem); - } - } - return result; -} - //! Returns list of FitParameterItem's currently selected in corresponding tree QVector<FitParameterItem *> FitParametersWidget::getSelectedFitParameters() { diff --git a/GUI/coregui/Views/FitWidgets/FitParametersWidget.h b/GUI/coregui/Views/FitWidgets/FitParametersWidget.h index abb797f738f..f576f46b5b6 100644 --- a/GUI/coregui/Views/FitWidgets/FitParametersWidget.h +++ b/GUI/coregui/Views/FitWidgets/FitParametersWidget.h @@ -76,7 +76,6 @@ private: void connectTuningWidgetSelection(bool active); void connectFitParametersSelection(bool active); - QVector<ParameterItem *> getSelectedParameters(); QVector<FitParameterItem *> getSelectedFitParameters(); QTreeView *m_treeView; diff --git a/GUI/coregui/Views/JobWidgets/ModelTuningWidget.cpp b/GUI/coregui/Views/JobWidgets/ModelTuningWidget.cpp index 94cd05c849c..a6e6009641b 100644 --- a/GUI/coregui/Views/JobWidgets/ModelTuningWidget.cpp +++ b/GUI/coregui/Views/JobWidgets/ModelTuningWidget.cpp @@ -29,6 +29,7 @@ #include "WarningSignWidget.h" #include "FilterPropertyProxy.h" #include "FitTools.h" +#include "ParameterTreeItems.h" #include <QLabel> #include <QVBoxLayout> #include <QTreeView> @@ -128,6 +129,25 @@ QItemSelectionModel *ModelTuningWidget::selectionModel() return m_treeView->selectionModel(); } +//! Returns list of ParameterItem's currently selected in parameter tree + +QVector<ParameterItem *> ModelTuningWidget::getSelectedParameters() +{ + QVector<ParameterItem *> result; + QModelIndexList proxyIndexes = selectionModel()->selectedIndexes(); + foreach(QModelIndex proxyIndex, proxyIndexes) { + QModelIndex index = FilterPropertyProxy::toSourceIndex(proxyIndex); + if(index.column() != 0) + continue; + + if (ParameterItem *parameterItem + = dynamic_cast<ParameterItem *>(m_currentJobItem->model()->itemForIndex(index))) { + result.push_back(parameterItem); + } + } + return result; +} + void ModelTuningWidget::onCurrentLinkChanged(SessionItem *item) { qDebug() << "ModelTuningWidget::onCurrentLinkChanged"; diff --git a/GUI/coregui/Views/JobWidgets/ModelTuningWidget.h b/GUI/coregui/Views/JobWidgets/ModelTuningWidget.h index 98924106c38..a648548589d 100644 --- a/GUI/coregui/Views/JobWidgets/ModelTuningWidget.h +++ b/GUI/coregui/Views/JobWidgets/ModelTuningWidget.h @@ -31,6 +31,7 @@ class WarningSignWidget; class SessionItem; class FitTools; class QItemSelectionModel; +class ParameterItem; class ModelTuningWidget : public QWidget { @@ -44,6 +45,8 @@ public: QItemSelectionModel* selectionModel(); + QVector<ParameterItem *> getSelectedParameters(); + signals: void itemContextMenuRequest(const QPoint &point); -- GitLab