Allow well target list to consume available space

This commit is contained in:
Magne Sjaastad 2022-10-31 10:18:40 +01:00
parent 4d5ceb0441
commit a577545212
4 changed files with 56 additions and 4 deletions

View File

@ -79,7 +79,7 @@ void RiaPolyArcLineSampler::sampleSegment( cvf::Vec3d t1, cvf::Vec3d p1, cvf::Ve
{
cvf::Vec3d p1p2 = p2 - p1;
CVF_ASSERT( p1p2.lengthSquared() > 1e-20 );
if ( p1p2.lengthSquared() < 1e-20 ) return;
if ( cvf::GeometryTools::getAngle( t1, p1p2 ) < 1e-5 || p1p2.length() < m_maxSamplingsInterval )
{

View File

@ -729,6 +729,7 @@ void RimWellPathGeometryDef::defineEditorAttribute( const caf::PdmFieldHandle* f
if ( tvAttribute )
{
tvAttribute->resizePolicy = caf::PdmUiTableViewEditorAttribute::RESIZE_TO_FIT_CONTENT;
tvAttribute->heightHint = 1000;
if ( m_pickPointsEnabled )
{

View File

@ -58,6 +58,38 @@
namespace caf
{
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
TableView::TableView( QWidget* parent /*= nullptr */ )
: QTableView( parent )
, m_heightHint( -1 )
{
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
QSize TableView::sizeHint() const
{
QSize mySize = QTableView::sizeHint();
if ( m_heightHint > 0 )
{
mySize.setHeight( m_heightHint );
}
return mySize;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void TableView::setHeightHint( int heightHint )
{
m_heightHint = heightHint;
}
CAF_PDM_UI_FIELD_EDITOR_SOURCE_INIT( PdmUiTableViewEditor );
//--------------------------------------------------------------------------------------------------
@ -100,7 +132,7 @@ QWidget* PdmUiTableViewEditor::createEditorWidget( QWidget* parent )
m_delegate = new PdmUiTableViewDelegate( nullptr, m_tableModelPdm );
m_tableView = new QTableView( parent );
m_tableView = new TableView( parent );
m_tableView->setShowGrid( true );
m_tableView->setModel( m_tableModelPdm );
m_tableView->installEventFilter( this );
@ -246,6 +278,11 @@ void PdmUiTableViewEditor::configureAndUpdateUi( const QString& uiConfigName )
}
}
if ( editorAttrib.heightHint > -1 )
{
m_tableView->setHeightHint( editorAttrib.heightHint );
}
m_previousFieldHandle = childArrayFH;
// Set default row heights

View File

@ -42,11 +42,11 @@
#include <QAbstractItemModel>
#include <QPointer>
#include <QTableView>
#include <QWidget>
class QItemSelection;
class QLabel;
class QTableView;
namespace caf
{
@ -57,6 +57,18 @@ class PdmUiTableViewDelegate;
class PdmUiTableViewQModel;
class PdmChildArrayFieldHandle;
class TableView : public QTableView
{
public:
explicit TableView( QWidget* parent = nullptr );
QSize sizeHint() const override;
void setHeightHint( int heightHint );
private:
int m_heightHint;
};
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
@ -90,6 +102,7 @@ public:
, rowSelectionLevel( 1 )
, enableHeaderText( true )
, minimumHeight( -1 )
, heightHint( -1 )
, alwaysEnforceResizePolicy( false )
, resizePolicy( NO_AUTOMATIC_RESIZE )
, enableDropTarget( false )
@ -104,6 +117,7 @@ public:
bool enableHeaderText;
std::vector<int> columnWidths;
int minimumHeight; ///< Not used if If < 0
int heightHint; ///< Not used if If < 0
QColor baseColor;
bool alwaysEnforceResizePolicy;
ResizePolicy resizePolicy;
@ -155,7 +169,7 @@ private:
QPointer<QShortenedLabel> m_tableHeading;
QPointer<QLabel> m_tableHeadingIcon;
QTableView* m_tableView;
TableView* m_tableView;
PdmUiTableViewQModel* m_tableModelPdm;
PdmUiTableViewDelegate* m_delegate;