From c972c83ed51cc574efdeb63df4d724169aa50368 Mon Sep 17 00:00:00 2001 From: "Joachim Wuttke (o)" <j.wuttke@fz-juelich.de> Date: Thu, 9 Mar 2023 14:07:18 +0100 Subject: [PATCH 1/8] private fcts -> local --- GUI/View/Main/AboutDialog.cpp | 64 +++++++++++++++++------------------ GUI/View/Main/AboutDialog.h | 7 ---- 2 files changed, 32 insertions(+), 39 deletions(-) diff --git a/GUI/View/Main/AboutDialog.cpp b/GUI/View/Main/AboutDialog.cpp index 390d482f6c9..398c7a0788c 100644 --- a/GUI/View/Main/AboutDialog.cpp +++ b/GUI/View/Main/AboutDialog.cpp @@ -41,32 +41,7 @@ QLabel* createLogoLabel() return result; } -} // namespace - -AboutDialog::AboutDialog(QWidget* parent) - : QDialog(parent) -{ - QColor bgColor(240, 240, 240, 255); - QPalette palette; - palette.setColor(QPalette::Window, bgColor); - setAutoFillBackground(true); - setPalette(palette); - - setWindowTitle("About BornAgain"); - setWindowFlags(Qt::Dialog); - - auto* detailsLayout = new QHBoxLayout; - detailsLayout->addLayout(createLogoLayout()); - detailsLayout->addLayout(createTextLayout()); - - auto* mainLayout = new QVBoxLayout; - mainLayout->addLayout(detailsLayout); - mainLayout->addLayout(createButtonLayout()); - - setLayout(mainLayout); -} - -QBoxLayout* AboutDialog::createLogoLayout() +QBoxLayout* createLogoLayout() { auto* result = new QVBoxLayout; @@ -81,7 +56,7 @@ QBoxLayout* AboutDialog::createLogoLayout() return result; } -QBoxLayout* AboutDialog::createTextLayout() +QBoxLayout* createTextLayout() { auto* result = new QVBoxLayout; @@ -138,21 +113,46 @@ QBoxLayout* AboutDialog::createTextLayout() return result; } -QBoxLayout* AboutDialog::createButtonLayout() +QBoxLayout* createButtonLayout(AboutDialog* parent) { auto* result = new QHBoxLayout; auto* closeButton = new QPushButton("Close"); - connect(closeButton, &QPushButton::clicked, this, &QDialog::reject); + QObject::connect(closeButton, &QPushButton::clicked, parent, &QDialog::reject); result->addStretch(1); result->addWidget(closeButton); + return result; +} + +} // namespace + +AboutDialog::AboutDialog(QWidget* parent) + : QDialog(parent) +{ + QColor bgColor(240, 240, 240, 255); + QPalette palette; + palette.setColor(QPalette::Window, bgColor); + setAutoFillBackground(true); + setPalette(palette); + + setWindowTitle("About BornAgain"); + setWindowFlags(Qt::Dialog); + + auto* detailsLayout = new QHBoxLayout; + detailsLayout->addLayout(createLogoLayout()); + detailsLayout->addLayout(createTextLayout()); + + auto* mainLayout = new QVBoxLayout; + mainLayout->addLayout(detailsLayout); + mainLayout->addLayout(createButtonLayout(this)); + + setLayout(mainLayout); + static const char mydata[] = {0x64, 0x65, 0x76, 0x73}; QByteArray b = QByteArray::fromRawData(mydata, sizeof(mydata)); auto* f = new ShortcodeFilter(b, this); - connect(f, &ShortcodeFilter::found, this, [=]() { layout()->addWidget(createLogoLabel()); }); + connect(f, &ShortcodeFilter::found, parent, [=]() { layout()->addWidget(createLogoLabel()); }); installEventFilter(f); - - return result; } diff --git a/GUI/View/Main/AboutDialog.h b/GUI/View/Main/AboutDialog.h index 79416d39675..d93f6738f95 100644 --- a/GUI/View/Main/AboutDialog.h +++ b/GUI/View/Main/AboutDialog.h @@ -17,18 +17,11 @@ #include <QDialog> -class QBoxLayout; - //! About BornAgain dialog. class AboutDialog : public QDialog { public: AboutDialog(QWidget* parent = nullptr); - -private: - QBoxLayout* createLogoLayout(); - QBoxLayout* createTextLayout(); - QBoxLayout* createButtonLayout(); }; #endif // BORNAGAIN_GUI_VIEW_MAIN_ABOUTDIALOG_H -- GitLab From c485b1934091805986bfba12acbe113651c1fa29 Mon Sep 17 00:00:00 2001 From: "Joachim Wuttke (o)" <j.wuttke@fz-juelich.de> Date: Thu, 9 Mar 2023 14:12:58 +0100 Subject: [PATCH 2/8] ditto --- Fit/Minimizer/MinimizerOptions.cpp | 4 +++- GUI/View/Tool/ItemDelegateForHTML.cpp | 20 ++++++++++---------- GUI/View/Tool/ItemDelegateForHTML.h | 5 +---- 3 files changed, 14 insertions(+), 15 deletions(-) diff --git a/Fit/Minimizer/MinimizerOptions.cpp b/Fit/Minimizer/MinimizerOptions.cpp index d511f910d6d..4381b047f0f 100644 --- a/Fit/Minimizer/MinimizerOptions.cpp +++ b/Fit/Minimizer/MinimizerOptions.cpp @@ -21,7 +21,9 @@ namespace { const std::string delimeter = ";"; -} + +} // namespace + std::string MinimizerOptions::toOptionString() const { diff --git a/GUI/View/Tool/ItemDelegateForHTML.cpp b/GUI/View/Tool/ItemDelegateForHTML.cpp index 09f5250921e..a7a5d0257f0 100644 --- a/GUI/View/Tool/ItemDelegateForHTML.cpp +++ b/GUI/View/Tool/ItemDelegateForHTML.cpp @@ -26,6 +26,15 @@ bool hasHtml(const QString& t) return t.contains("<") && t.contains(">"); } +QSize mySizeHint(const QString& text) +{ + QTextDocument doc; + doc.setHtml(text); + doc.setTextWidth(10000 /*options.rect.width()*/); + QSize size = QSize(doc.idealWidth(), doc.size().height()); + return size; +} + } // namespace @@ -86,22 +95,13 @@ QSize ItemDelegateForHTML::sizeHint(const QStyleOptionViewItem& option, QStyleOptionViewItem options = option; initStyleOption(&options, index); - auto s2 = sizeHint(options.text); + auto s2 = mySizeHint(options.text); s.setHeight(std::max(s.height(), s2.height() + 10)); s.setWidth(s2.width() + h); // +h: icon return s; } -QSize ItemDelegateForHTML::sizeHint(const QString& text) -{ - QTextDocument doc; - doc.setHtml(text); - doc.setTextWidth(10000 /*options.rect.width()*/); - QSize size = QSize(doc.idealWidth(), doc.size().height()); - return size; -} - QString ItemDelegateForHTML::anchorAtGlobalPos(QAbstractItemView* view, const QModelIndex& index, const QPoint& globalPos) const { diff --git a/GUI/View/Tool/ItemDelegateForHTML.h b/GUI/View/Tool/ItemDelegateForHTML.h index 1d5fb399a3d..064b289a1b4 100644 --- a/GUI/View/Tool/ItemDelegateForHTML.h +++ b/GUI/View/Tool/ItemDelegateForHTML.h @@ -29,10 +29,7 @@ protected: void paint(QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index) const override; QSize sizeHint(const QStyleOptionViewItem& option, const QModelIndex& index) const override; - -private: - static QSize sizeHint(const QString& text); }; -#endif // BORNAGAIN_GUI_VIEW_TOOL_ITEMDELEGATEFORHTML_H \ No newline at end of file +#endif // BORNAGAIN_GUI_VIEW_TOOL_ITEMDELEGATEFORHTML_H -- GitLab From 4006e4325ffc9b30ccf631b37044599ee20bca18 Mon Sep 17 00:00:00 2001 From: "Joachim Wuttke (o)" <j.wuttke@fz-juelich.de> Date: Thu, 9 Mar 2023 14:13:52 +0100 Subject: [PATCH 3/8] protected -> private --- GUI/View/Job/JobResultsPresenter.h | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/GUI/View/Job/JobResultsPresenter.h b/GUI/View/Job/JobResultsPresenter.h index 73311c841c3..a743cf32258 100644 --- a/GUI/View/Job/JobResultsPresenter.h +++ b/GUI/View/Job/JobResultsPresenter.h @@ -29,15 +29,12 @@ public: void setJobItem(JobItem* jobItem); void setPresentation(const QString& presentationType) override; - void setPresentationForActivity(JobViewActivity activity); -protected: +private: QString itemPresentation() const override; QStringList activePresentationList() const override; QStringList presentationList() const override; - -private: QString defaultPresentationOfInstrument() const; QStringList defaultActivePresentationsOfInstrument() const; QString fitPresentationOfInstrument() const; -- GitLab From 94816e584447a8e43b0737d3b1de55730a59949d Mon Sep 17 00:00:00 2001 From: "Joachim Wuttke (o)" <j.wuttke@fz-juelich.de> Date: Thu, 9 Mar 2023 14:17:42 +0100 Subject: [PATCH 4/8] conditional -> ?: --- GUI/View/Job/JobResultsPresenter.cpp | 21 +++++++++------------ 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/GUI/View/Job/JobResultsPresenter.cpp b/GUI/View/Job/JobResultsPresenter.cpp index 34b191c89b7..11c2ac60ef2 100644 --- a/GUI/View/Job/JobResultsPresenter.cpp +++ b/GUI/View/Job/JobResultsPresenter.cpp @@ -20,6 +20,11 @@ #include "GUI/View/PlotSpecular/SpecularDataWidget.h" #include "GUI/View/Projection/IntensityDataProjectionsWidget.h" +namespace { + +} // namespace + + JobResultsPresenter::JobResultsPresenter(QWidget* parent) : ItemComboWidget(parent) { @@ -107,24 +112,16 @@ QStringList JobResultsPresenter::presentationList() const QString JobResultsPresenter::defaultPresentationOfInstrument() const { - if (jobItem()->isSpecularJob()) - return "Reflectometry"; - - return "Heat Map"; + return jobItem()->isSpecularJob() ? "Reflectometry" : "Heat Map"; } QStringList JobResultsPresenter::defaultActivePresentationsOfInstrument() const { - if (jobItem()->isSpecularJob()) - return {"Reflectometry"}; - - return {"Heat Map", "Projections"}; + return jobItem()->isSpecularJob() ? QStringList{"Reflectometry"} + : QStringList{"Heat Map", "Projections"}; } QString JobResultsPresenter::fitPresentationOfInstrument() const { - if (jobItem()->isSpecularJob()) - return "Fit 1D Data"; - - return "Fit 2D Data"; + return jobItem()->isSpecularJob() ? "Fit 1D Data" : "Fit 2D Data"; } -- GitLab From 62e3a0e8d4286c7d0b783c4d2397c8d44060d727 Mon Sep 17 00:00:00 2001 From: "Joachim Wuttke (o)" <j.wuttke@fz-juelich.de> Date: Thu, 9 Mar 2023 14:20:13 +0100 Subject: [PATCH 5/8] fct -> local --- GUI/View/Job/JobResultsPresenter.cpp | 16 ++++++++-------- GUI/View/Job/JobResultsPresenter.h | 1 - 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/GUI/View/Job/JobResultsPresenter.cpp b/GUI/View/Job/JobResultsPresenter.cpp index 11c2ac60ef2..b82d5a959ee 100644 --- a/GUI/View/Job/JobResultsPresenter.cpp +++ b/GUI/View/Job/JobResultsPresenter.cpp @@ -22,6 +22,11 @@ namespace { +QString fitPresentationOfInstrument(JobItem* ji) +{ + return ji->isSpecularJob() ? "Fit 1D Data" : "Fit 2D Data"; +} + } // namespace @@ -72,7 +77,7 @@ void JobResultsPresenter::setPresentationForActivity(JobViewActivity activity) QString presentation = ""; switch (activity) { case JobViewActivity::Fitting: - presentation = fitPresentationOfInstrument(); + presentation = fitPresentationOfInstrument(jobItem()); break; case JobViewActivity::RealTime: @@ -94,7 +99,7 @@ QStringList JobResultsPresenter::activePresentationList() const auto result = defaultActivePresentationsOfInstrument(); if (jobItem()->isValidForFitting()) - result << fitPresentationOfInstrument(); + result << fitPresentationOfInstrument(jobItem()); return result; } @@ -105,7 +110,7 @@ QStringList JobResultsPresenter::presentationList() const return {}; auto result = defaultActivePresentationsOfInstrument(); - result << fitPresentationOfInstrument(); + result << fitPresentationOfInstrument(jobItem()); return result; } @@ -120,8 +125,3 @@ QStringList JobResultsPresenter::defaultActivePresentationsOfInstrument() const return jobItem()->isSpecularJob() ? QStringList{"Reflectometry"} : QStringList{"Heat Map", "Projections"}; } - -QString JobResultsPresenter::fitPresentationOfInstrument() const -{ - return jobItem()->isSpecularJob() ? "Fit 1D Data" : "Fit 2D Data"; -} diff --git a/GUI/View/Job/JobResultsPresenter.h b/GUI/View/Job/JobResultsPresenter.h index a743cf32258..2b08440aa40 100644 --- a/GUI/View/Job/JobResultsPresenter.h +++ b/GUI/View/Job/JobResultsPresenter.h @@ -37,7 +37,6 @@ private: QStringList presentationList() const override; QString defaultPresentationOfInstrument() const; QStringList defaultActivePresentationsOfInstrument() const; - QString fitPresentationOfInstrument() const; }; #endif // BORNAGAIN_GUI_VIEW_JOB_JOBRESULTSPRESENTER_H -- GitLab From 4bb92108c2dc68816a915bb20757c25f97524443 Mon Sep 17 00:00:00 2001 From: "Joachim Wuttke (o)" <j.wuttke@fz-juelich.de> Date: Thu, 9 Mar 2023 14:24:08 +0100 Subject: [PATCH 6/8] fcts -> local --- GUI/View/Job/JobResultsPresenter.cpp | 28 ++++++++++++++-------------- GUI/View/Job/JobResultsPresenter.h | 2 -- 2 files changed, 14 insertions(+), 16 deletions(-) diff --git a/GUI/View/Job/JobResultsPresenter.cpp b/GUI/View/Job/JobResultsPresenter.cpp index b82d5a959ee..f3491b26d22 100644 --- a/GUI/View/Job/JobResultsPresenter.cpp +++ b/GUI/View/Job/JobResultsPresenter.cpp @@ -27,6 +27,17 @@ QString fitPresentationOfInstrument(JobItem* ji) return ji->isSpecularJob() ? "Fit 1D Data" : "Fit 2D Data"; } +QStringList defaultActivePresentationsOfInstrument(JobItem* ji) +{ + return ji->isSpecularJob() ? QStringList{"Reflectometry"} + : QStringList{"Heat Map", "Projections"}; +} + +QString defaultPresentationOfInstrument(JobItem* ji) +{ + return ji->isSpecularJob() ? "Reflectometry" : "Heat Map"; +} + } // namespace @@ -82,7 +93,7 @@ void JobResultsPresenter::setPresentationForActivity(JobViewActivity activity) case JobViewActivity::RealTime: case JobViewActivity::JobView: - presentation = defaultPresentationOfInstrument(); + presentation = defaultPresentationOfInstrument(jobItem()); break; } setPresentation(presentation); @@ -96,7 +107,7 @@ QStringList JobResultsPresenter::activePresentationList() const if (!jobItem() || jobItem()->isRunning()) return {}; - auto result = defaultActivePresentationsOfInstrument(); + auto result = defaultActivePresentationsOfInstrument(jobItem()); if (jobItem()->isValidForFitting()) result << fitPresentationOfInstrument(jobItem()); @@ -109,19 +120,8 @@ QStringList JobResultsPresenter::presentationList() const if (!jobItem() || jobItem()->isRunning()) return {}; - auto result = defaultActivePresentationsOfInstrument(); + auto result = defaultActivePresentationsOfInstrument(jobItem()); result << fitPresentationOfInstrument(jobItem()); return result; } - -QString JobResultsPresenter::defaultPresentationOfInstrument() const -{ - return jobItem()->isSpecularJob() ? "Reflectometry" : "Heat Map"; -} - -QStringList JobResultsPresenter::defaultActivePresentationsOfInstrument() const -{ - return jobItem()->isSpecularJob() ? QStringList{"Reflectometry"} - : QStringList{"Heat Map", "Projections"}; -} diff --git a/GUI/View/Job/JobResultsPresenter.h b/GUI/View/Job/JobResultsPresenter.h index 2b08440aa40..ea3bd76e704 100644 --- a/GUI/View/Job/JobResultsPresenter.h +++ b/GUI/View/Job/JobResultsPresenter.h @@ -35,8 +35,6 @@ private: QString itemPresentation() const override; QStringList activePresentationList() const override; QStringList presentationList() const override; - QString defaultPresentationOfInstrument() const; - QStringList defaultActivePresentationsOfInstrument() const; }; #endif // BORNAGAIN_GUI_VIEW_JOB_JOBRESULTSPRESENTER_H -- GitLab From ce5700dd14713dd5909e5d337c004bc368ec9191 Mon Sep 17 00:00:00 2001 From: "Joachim Wuttke (o)" <j.wuttke@fz-juelich.de> Date: Thu, 9 Mar 2023 14:27:13 +0100 Subject: [PATCH 7/8] + prefix m_ --- GUI/View/Numeric/SafeSpinBox.cpp | 4 ++-- GUI/View/Numeric/SafeSpinBox.h | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/GUI/View/Numeric/SafeSpinBox.cpp b/GUI/View/Numeric/SafeSpinBox.cpp index 571e6a6c69f..b7473ae16a4 100644 --- a/GUI/View/Numeric/SafeSpinBox.cpp +++ b/GUI/View/Numeric/SafeSpinBox.cpp @@ -17,14 +17,14 @@ SafeSpinBox::SafeSpinBox(bool easyScrollable, QWidget* parent) : QSpinBox{parent} - , easyScrollable(easyScrollable) + , m_easyScrollable(easyScrollable) { setFocusPolicy(Qt::StrongFocus); } void SafeSpinBox::wheelEvent(QWheelEvent* event) { - if (hasFocus() || easyScrollable) + if (hasFocus() || m_easyScrollable) QSpinBox::wheelEvent(event); else event->ignore(); diff --git a/GUI/View/Numeric/SafeSpinBox.h b/GUI/View/Numeric/SafeSpinBox.h index ed57c6f6476..ae122b2427f 100644 --- a/GUI/View/Numeric/SafeSpinBox.h +++ b/GUI/View/Numeric/SafeSpinBox.h @@ -27,7 +27,7 @@ protected: void wheelEvent(QWheelEvent* event) override; private: - bool easyScrollable; + bool m_easyScrollable; }; #endif // BORNAGAIN_GUI_VIEW_NUMERIC_SAFESPINBOX_H -- GitLab From af81a4add1f3b3b0e61ddf9636cec47810ab334b Mon Sep 17 00:00:00 2001 From: "Joachim Wuttke (o)" <j.wuttke@fz-juelich.de> Date: Thu, 9 Mar 2023 14:28:21 +0100 Subject: [PATCH 8/8] merge fct --- GUI/View/PlotSpecular/SpecularDataPropertyWidget.cpp | 10 +++------- GUI/View/PlotSpecular/SpecularDataPropertyWidget.h | 1 - 2 files changed, 3 insertions(+), 8 deletions(-) diff --git a/GUI/View/PlotSpecular/SpecularDataPropertyWidget.cpp b/GUI/View/PlotSpecular/SpecularDataPropertyWidget.cpp index dbb9e8b4119..e0b607ad4dd 100644 --- a/GUI/View/PlotSpecular/SpecularDataPropertyWidget.cpp +++ b/GUI/View/PlotSpecular/SpecularDataPropertyWidget.cpp @@ -30,18 +30,14 @@ SpecularDataPropertyWidget::SpecularDataPropertyWidget(QWidget* parent) { } -void SpecularDataPropertyWidget::unsubscribe() -{ - for (auto item : allSpecularDataItems()) - disconnect(item, nullptr, this, nullptr); -} - void SpecularDataPropertyWidget::createPanelElements() { if (allSpecularDataItems().size() == 0) return; - unsubscribe(); + for (auto item : allSpecularDataItems()) + disconnect(item, nullptr, this, nullptr); + GUI::Util::Layout::clearLayout(m_mainLayout); m_updaters.clear(); diff --git a/GUI/View/PlotSpecular/SpecularDataPropertyWidget.h b/GUI/View/PlotSpecular/SpecularDataPropertyWidget.h index 234a1b917f1..778555e63b3 100644 --- a/GUI/View/PlotSpecular/SpecularDataPropertyWidget.h +++ b/GUI/View/PlotSpecular/SpecularDataPropertyWidget.h @@ -24,7 +24,6 @@ public: explicit SpecularDataPropertyWidget(QWidget* parent = nullptr); private: - void unsubscribe(); void createPanelElements() override; }; -- GitLab