using sizeConstraint instead of sizeHint

This commit is contained in:
Uwe Rathmann 2019-09-18 09:12:39 +02:00
parent 425fb3978f
commit da7f40ca07
6 changed files with 13 additions and 13 deletions

View File

@ -84,7 +84,7 @@ QRectF QskTabViewSkinlet::tabBarRect(
{ {
Q_UNUSED( rect ) Q_UNUSED( rect )
const QSizeF hint = tabView->tabBar()->sizeHint(); const QSizeF barSize = tabView->tabBar()->sizeConstraint();
#if 1 #if 1
QRectF r = tabView->layoutRect(); QRectF r = tabView->layoutRect();
@ -93,19 +93,19 @@ QRectF QskTabViewSkinlet::tabBarRect(
switch( tabView->tabPosition() ) switch( tabView->tabPosition() )
{ {
case Qsk::Top: case Qsk::Top:
r.setHeight( hint.height() ); r.setHeight( barSize.height() );
break; break;
case Qsk::Bottom: case Qsk::Bottom:
r.setTop( r.bottom() - hint.height() ); r.setTop( r.bottom() - barSize.height() );
break; break;
case Qsk::Left: case Qsk::Left:
r.setWidth( hint.width() ); r.setWidth( barSize.width() );
break; break;
case Qsk::Right: case Qsk::Right:
r.setLeft( r.right() - hint.width() ); r.setLeft( r.right() - barSize.width() );
break; break;
} }

View File

@ -244,7 +244,7 @@ bool QskWindow::event( QEvent* event )
{ {
if ( size().isEmpty() ) if ( size().isEmpty() )
{ {
QSize sz = effectivePreferredSize(); QSize sz = sizeConstraint();
if ( !sz.isEmpty() ) if ( !sz.isEmpty() )
{ {
sz = sz.expandedTo( minimumSize() ); sz = sz.expandedTo( minimumSize() );
@ -403,7 +403,7 @@ QSize QskWindow::preferredSize() const
return d->preferredSize; return d->preferredSize;
} }
QSize QskWindow::effectivePreferredSize() const QSize QskWindow::sizeConstraint() const
{ {
Q_D( const QskWindow ); Q_D( const QskWindow );
@ -419,7 +419,7 @@ QSize QskWindow::effectivePreferredSize() const
{ {
if ( auto control = qskControlCast( child ) ) if ( auto control = qskControlCast( child ) )
{ {
const QSizeF itemConstraint = control->sizeHint(); const QSizeF itemConstraint = control->sizeConstraint();
if ( doWidth ) if ( doWidth )
constraint.setWidth( qMax( constraint.width(), itemConstraint.width() ) ); constraint.setWidth( qMax( constraint.width(), itemConstraint.width() ) );

View File

@ -51,7 +51,7 @@ class QSK_EXPORT QskWindow : public QQuickWindow
Q_INVOKABLE void setPreferredSize( const QSize& ); Q_INVOKABLE void setPreferredSize( const QSize& );
Q_INVOKABLE QSize preferredSize() const; Q_INVOKABLE QSize preferredSize() const;
Q_INVOKABLE QSize effectivePreferredSize() const; Q_INVOKABLE QSize sizeConstraint() const;
Q_INVOKABLE void setFixedSize( const QSize& ); Q_INVOKABLE void setFixedSize( const QSize& );

View File

@ -102,7 +102,7 @@ static void qskSetupWindow(
window->setModality( transientParent ? Qt::WindowModal : Qt::ApplicationModal ); window->setModality( transientParent ? Qt::WindowModal : Qt::ApplicationModal );
const QSize size = window->effectivePreferredSize(); const QSize size = window->sizeConstraint();
if ( window->parent() ) if ( window->parent() )
{ {

View File

@ -353,7 +353,7 @@ void QskDialogSubWindow::aboutToShow()
const qreal cy = 0.5 * parentItem()->height(); const qreal cy = 0.5 * parentItem()->height();
QRectF rect; QRectF rect;
rect.setSize( sizeHint() ); rect.setSize( sizeConstraint() );
rect.moveCenter( QPointF( cx, cy ) ); rect.moveCenter( QPointF( cx, cy ) );
setGeometry( rect ); setGeometry( rect );
@ -370,7 +370,7 @@ void QskDialogSubWindow::updateLayout()
if ( m_data->buttonBox && m_data->buttonBox->isVisibleToParent() ) if ( m_data->buttonBox && m_data->buttonBox->isVisibleToParent() )
{ {
const auto h = m_data->buttonBox->sizeHint().height(); const auto h = m_data->buttonBox->sizeConstraint().height();
rect.setBottom( rect.bottom() - h ); rect.setBottom( rect.bottom() - h );
m_data->buttonBox->setGeometry( rect.x(), rect.bottom(), rect.width(), h ); m_data->buttonBox->setGeometry( rect.x(), rect.bottom(), rect.width(), h );

View File

@ -408,7 +408,7 @@ void QskInputContext::showPanel( const QQuickItem* item )
auto window = m_data->createWindow( panel ); auto window = m_data->createWindow( panel );
QSize size = window->effectivePreferredSize(); QSize size = window->sizeConstraint();
if ( size.isEmpty() ) if ( size.isEmpty() )
{ {
// no idea, may be something based on the screen size // no idea, may be something based on the screen size