addColumnSpacer/addRowSpacer added
This commit is contained in:
parent
86f9415211
commit
171337d399
|
@ -6,6 +6,7 @@
|
|||
#include "QskGridBox.h"
|
||||
#include "QskGridLayoutEngine.h"
|
||||
#include "QskEvent.h"
|
||||
#include "QskQuick.h"
|
||||
#include <algorithm>
|
||||
|
||||
static void qskSetItemActive( QObject* receiver, const QQuickItem* item, bool on )
|
||||
|
@ -118,6 +119,14 @@ int QskGridBox::addItem( QQuickItem* item,
|
|||
if ( item == nullptr || row < 0 || column < 0 )
|
||||
return -1;
|
||||
|
||||
if ( qskIsTransparentForPositioner( item ) )
|
||||
{
|
||||
qWarning() << "Inserting an item that is marked as transparent for layouting:"
|
||||
<< item->metaObject()->className();
|
||||
|
||||
qskSetTransparentForPositioner( item, false );
|
||||
}
|
||||
|
||||
rowSpan = qMax( rowSpan, -1 );
|
||||
columnSpan = qMax( columnSpan, -1 );
|
||||
|
||||
|
@ -169,6 +178,16 @@ int QskGridBox::addSpacer( const QSizeF& spacing,
|
|||
return index;
|
||||
}
|
||||
|
||||
int QskGridBox::addColumnSpacer( qreal spacing, int column )
|
||||
{
|
||||
return addSpacer( QSizeF( spacing, 0.0 ), 0, column );
|
||||
}
|
||||
|
||||
int QskGridBox::addRowSpacer( qreal spacing, int row )
|
||||
{
|
||||
return addSpacer( QSizeF( 0.0, spacing ), row, 0 );
|
||||
}
|
||||
|
||||
void QskGridBox::removeAt( int index )
|
||||
{
|
||||
auto& engine = m_data->engine;
|
||||
|
|
|
@ -37,6 +37,9 @@ class QSK_EXPORT QskGridBox : public QskBox
|
|||
Q_INVOKABLE int addSpacer( const QSizeF&,
|
||||
int row, int column, int columnSpan = 1, int rowSpan = 1 );
|
||||
|
||||
int addColumnSpacer( qreal spacing, int column );
|
||||
int addRowSpacer( qreal spacing, int row );
|
||||
|
||||
void removeItem( const QQuickItem* );
|
||||
void removeAt( int index );
|
||||
|
||||
|
|
Loading…
Reference in New Issue