From d4bdca4dbd67d261d45d4595f8735caa4c8e7842 Mon Sep 17 00:00:00 2001 From: Mikhail Svechnikov <svechnikovmv@gmail.com> Date: Thu, 1 Aug 2024 18:19:19 +0200 Subject: [PATCH] restore HeinzFormLayout::setRowVisible --- GUI/View/Sample/HeinzFormLayout.cpp | 7 +++++++ GUI/View/Sample/HeinzFormLayout.h | 4 +++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/GUI/View/Sample/HeinzFormLayout.cpp b/GUI/View/Sample/HeinzFormLayout.cpp index 8a4785c982e..39cc4196006 100644 --- a/GUI/View/Sample/HeinzFormLayout.cpp +++ b/GUI/View/Sample/HeinzFormLayout.cpp @@ -93,6 +93,13 @@ void HeinzFormLayout::addVector(VectorProperty& d, bool vertically /*= true*/) addBoldRow(d.label(), w); } +void HeinzFormLayout::setRowVisible(int row, bool visible) +{ + // Qt >=6.4 has embedded method 'QFormLayout::setRowVisible(int row, bool visible)' + // After updating Qt on CI computers, 'HeinzFormLayout::setRowVisible' can be deleted. + QFormLayout::itemAt(row, QFormLayout::FieldRole)->widget()->setVisible(visible); +} + void HeinzFormLayout::addStructureEditingRow(QPushButton* button) { auto* w = new QWidget(QFormLayout::parentWidget()); diff --git a/GUI/View/Sample/HeinzFormLayout.h b/GUI/View/Sample/HeinzFormLayout.h index b5e971d902e..4c9a5d63528 100644 --- a/GUI/View/Sample/HeinzFormLayout.h +++ b/GUI/View/Sample/HeinzFormLayout.h @@ -108,7 +108,9 @@ public: //! (vertically=false). void addVector(VectorProperty& d, bool vertically = true); - //! Adds a button for structure editing. + //! Shows or hides the widgets in a row. + void setRowVisible(int row, bool visible); //! Adds a button for structure editing. + //! //! Creates a widget, places the given button as a child left-aligned into this widget and adds //! the newly created widget as a row in the layout. -- GitLab