minor optimization for invisible items with retainSizeWhenHidden flag

This commit is contained in:
Uwe Rathmann 2019-09-16 12:38:10 +02:00
parent 8ee2377c76
commit 1d04c19999
2 changed files with 10 additions and 8 deletions

View File

@ -560,16 +560,15 @@ void QskGridLayoutEngine::layoutItems()
{ {
for ( const auto& element : m_data->elements ) for ( const auto& element : m_data->elements )
{ {
if ( !element.isIgnored() ) auto item = element.item();
{
if ( auto item = element.item() ) if ( item && qskIsVisibleToParent( item ) )
{ {
const auto grid = m_data->effectiveGrid( element ); const auto grid = m_data->effectiveGrid( element );
layoutItem( item, grid ); layoutItem( item, grid );
} }
} }
} }
}
void QskGridLayoutEngine::transpose() void QskGridLayoutEngine::transpose()
{ {

View File

@ -347,10 +347,13 @@ void QskLinearLayoutEngine::layoutItems()
continue; continue;
if ( auto item = element.item() ) if ( auto item = element.item() )
{
if ( qskIsVisibleToParent( item ) )
{ {
const QRect grid( col, row, 1, 1 ); const QRect grid( col, row, 1, 1 );
layoutItem( item, grid ); layoutItem( item, grid );
} }
}
if ( m_data->orientation == Qt::Horizontal ) if ( m_data->orientation == Qt::Horizontal )
{ {