mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#1343 Property Editor : Use vertical scroll bar only
This commit is contained in:
parent
6e948e9ab5
commit
7095e80696
@ -40,8 +40,37 @@
|
||||
#include "cafPdmObject.h"
|
||||
#include "cafPdmUiDefaultObjectEditor.h"
|
||||
|
||||
#include <QEvent>
|
||||
#include <QHBoxLayout>
|
||||
#include <QScrollArea>
|
||||
#include <QScrollBar>
|
||||
|
||||
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
QVerticalScrollArea::QVerticalScrollArea(QWidget* parent) :
|
||||
QScrollArea(parent)
|
||||
{
|
||||
setWidgetResizable(true);
|
||||
setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
|
||||
setVerticalScrollBarPolicy(Qt::ScrollBarAsNeeded);
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
bool QVerticalScrollArea::eventFilter(QObject* object, QEvent* event)
|
||||
{
|
||||
// This works because QScrollArea::setWidget installs an eventFilter on the widget
|
||||
if (object && object == widget() && event->type() == QEvent::Resize)
|
||||
{
|
||||
setMinimumWidth(widget()->minimumSizeHint().width() + verticalScrollBar()->width());
|
||||
}
|
||||
|
||||
return QScrollArea::eventFilter(object, event);
|
||||
}
|
||||
|
||||
|
||||
namespace caf
|
||||
@ -54,7 +83,7 @@ namespace caf
|
||||
PdmUiPropertyView::PdmUiPropertyView(QWidget* parent, Qt::WindowFlags f)
|
||||
: QWidget (parent, f)
|
||||
{
|
||||
QScrollArea* scrollArea = new QScrollArea(this);
|
||||
QVerticalScrollArea* scrollArea = new QVerticalScrollArea(this);
|
||||
scrollArea->setFrameStyle(QFrame::NoFrame);
|
||||
scrollArea->setWidgetResizable(true);
|
||||
|
||||
|
@ -43,6 +43,21 @@
|
||||
|
||||
class QVBoxLayout;
|
||||
|
||||
|
||||
#include <QScrollArea>
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
class QVerticalScrollArea : public QScrollArea
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
explicit QVerticalScrollArea(QWidget* parent = 0);
|
||||
virtual bool eventFilter(QObject* object, QEvent* event) override;
|
||||
};
|
||||
|
||||
|
||||
namespace caf
|
||||
{
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user