Revert "#3564 System : Recreate QGridLayout for each property editor"

This reverts commit f6c92a15a6.
This commit is contained in:
Magne Sjaastad
2018-11-02 14:04:29 +01:00
parent cc7d7d8b65
commit a3aeb424b3
2 changed files with 28 additions and 29 deletions

View File

@@ -50,6 +50,7 @@
namespace caf namespace caf
{ {
// Register default field editor for selected types // Register default field editor for selected types
CAF_PDM_UI_REGISTER_DEFAULT_FIELD_EDITOR(PdmUiCheckBoxEditor, bool); CAF_PDM_UI_REGISTER_DEFAULT_FIELD_EDITOR(PdmUiCheckBoxEditor, bool);
@@ -67,50 +68,43 @@ CAF_PDM_UI_REGISTER_DEFAULT_FIELD_EDITOR(PdmUiListEditor, std::vector<float>);
CAF_PDM_UI_REGISTER_DEFAULT_FIELD_EDITOR(PdmUiFilePathEditor, FilePath); CAF_PDM_UI_REGISTER_DEFAULT_FIELD_EDITOR(PdmUiFilePathEditor, FilePath);
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
PdmUiDefaultObjectEditor::PdmUiDefaultObjectEditor() {}
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
/// ///
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
PdmUiDefaultObjectEditor::~PdmUiDefaultObjectEditor() {} PdmUiDefaultObjectEditor::PdmUiDefaultObjectEditor()
{
}
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
/// ///
//--------------------------------------------------------------------------------------------------
PdmUiDefaultObjectEditor::~PdmUiDefaultObjectEditor()
{
}
//--------------------------------------------------------------------------------------------------
///
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
QWidget* PdmUiDefaultObjectEditor::createWidget(QWidget* parent) QWidget* PdmUiDefaultObjectEditor::createWidget(QWidget* parent)
{ {
QWidget* widget = new QWidget(parent); QWidget* widget = new QWidget(parent);
QGridLayout* gridLayout = new QGridLayout();
gridLayout->setContentsMargins(0, 0, 0, 0);
widget->setLayout(gridLayout);
return widget; return widget;
} }
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
/// ///
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
void PdmUiDefaultObjectEditor::recursivelyConfigureAndUpdateTopLevelUiOrdering(const PdmUiOrdering& topLevelUiOrdering, void PdmUiDefaultObjectEditor::recursivelyConfigureAndUpdateTopLevelUiOrdering(const PdmUiOrdering& topLevelUiOrdering, const QString& uiConfigName)
const QString& uiConfigName)
{ {
CAF_ASSERT(this->widget()); CAF_ASSERT(this->widget());
// Recreate layout object, as the content of the grid layout grows. This causes Cell Result to have a lot of space at the
// bottom and no other solution has been found. Similar issues might also be the case for the grid layout inside group boxes
{
auto currentLayout = this->widget()->layout();
if (currentLayout)
{
delete currentLayout;
}
}
CAF_ASSERT(this->widget()->layout() == nullptr);
QGridLayout* gridLayout = new QGridLayout();
gridLayout->setContentsMargins(0, 0, 0, 0);
this->widget()->setLayout(gridLayout);
recursivelyConfigureAndUpdateUiOrderingInGridLayoutColumn(topLevelUiOrdering, this->widget(), uiConfigName); recursivelyConfigureAndUpdateUiOrderingInGridLayoutColumn(topLevelUiOrdering, this->widget(), uiConfigName);
} }

View File

@@ -34,6 +34,7 @@
// //
//################################################################################################## //##################################################################################################
#pragma once #pragma once
#include "cafPdmUiFormLayoutObjectEditor.h" #include "cafPdmUiFormLayoutObjectEditor.h"
@@ -43,12 +44,14 @@
class QGridLayout; class QGridLayout;
class QString; class QString;
namespace caf namespace caf
{ {
class PdmUiFieldEditorHandle; class PdmUiFieldEditorHandle;
class PdmUiItem; class PdmUiItem;
class PdmUiGroup; class PdmUiGroup;
//================================================================================================== //==================================================================================================
/// The default editor for PdmObjects. Manages the field editors in a grid layout vertically /// The default editor for PdmObjects. Manages the field editors in a grid layout vertically
//================================================================================================== //==================================================================================================
@@ -62,7 +65,9 @@ public:
private: private:
QWidget* createWidget(QWidget* parent) override; QWidget* createWidget(QWidget* parent) override;
void recursivelyConfigureAndUpdateTopLevelUiOrdering(const PdmUiOrdering& topLevelUiItems, void recursivelyConfigureAndUpdateTopLevelUiOrdering(const PdmUiOrdering& topLevelUiItems,
const QString& uiConfigName) override; const QString& uiConfigName) override;
}; };
} // end namespace caf } // end namespace caf