@@ -780,14 +780,18 @@ QgsAttributeForm::WidgetInfo QgsAttributeForm::createWidgetFromDef( const QgsAtt
780
780
else
781
781
{
782
782
QLabel* mypLabel = new QLabel ( widgetInfo.labelText );
783
- if ( columnCount > 1 )
783
+ if ( columnCount > 1 && !widgetInfo.labelOnTop )
784
+ {
784
785
mypLabel->setAlignment ( Qt::AlignRight | Qt::AlignVCenter );
786
+ }
785
787
786
788
if ( widgetInfo.labelOnTop )
787
789
{
788
- gbLayout->addWidget ( mypLabel, row, column, 1 , 2 );
789
- ++row;
790
- gbLayout->addWidget ( widgetInfo.widget , row, column, 1 , 2 );
790
+ QVBoxLayout* c = new QVBoxLayout ();
791
+ mypLabel->setSizePolicy ( QSizePolicy::Preferred, QSizePolicy::Fixed );
792
+ c->layout ()->addWidget ( mypLabel );
793
+ c->layout ()->addWidget ( widgetInfo.widget );
794
+ gbLayout->addLayout ( c, row, column, 1 , 2 );
791
795
column += 2 ;
792
796
}
793
797
else
@@ -805,7 +809,7 @@ QgsAttributeForm::WidgetInfo QgsAttributeForm::createWidgetFromDef( const QgsAtt
805
809
}
806
810
QWidget* spacer = new QWidget ();
807
811
spacer->setSizePolicy ( QSizePolicy::Minimum, QSizePolicy::Preferred );
808
- // gbLayout->addWidget( spacer, index , 0 );
812
+ gbLayout->addWidget ( spacer, ++row , 0 );
809
813
810
814
newWidgetInfo.labelText = QString::null;
811
815
newWidgetInfo.labelOnTop = true ;
0 commit comments