@@ -98,6 +98,12 @@ QgsGeometryCheckerResultTab::QgsGeometryCheckerResultTab( QgisInterface *iface,
98
98
99
99
ui.progressBarFixErrors ->setVisible ( false );
100
100
ui.tableWidgetErrors ->horizontalHeader ()->setSortIndicator ( 0 , Qt::AscendingOrder );
101
+ ui.tableWidgetErrors ->resizeColumnToContents ( 0 );
102
+ ui.tableWidgetErrors ->resizeColumnToContents ( 1 );
103
+ ui.tableWidgetErrors ->horizontalHeader ()->setResizeMode ( 2 , QHeaderView::Stretch );
104
+ ui.tableWidgetErrors ->horizontalHeader ()->setResizeMode ( 3 , QHeaderView::Stretch );
105
+ ui.tableWidgetErrors ->horizontalHeader ()->setResizeMode ( 4 , QHeaderView::Stretch );
106
+ ui.tableWidgetErrors ->horizontalHeader ()->setResizeMode ( 5 , QHeaderView::Stretch );
101
107
// Not sure why, but this is needed...
102
108
ui.tableWidgetErrors ->setSortingEnabled ( true );
103
109
ui.tableWidgetErrors ->setSortingEnabled ( false );
@@ -398,7 +404,7 @@ void QgsGeometryCheckerResultTab::highlightErrors( bool current )
398
404
void QgsGeometryCheckerResultTab::onSelectionChanged ( const QItemSelection &newSel, const QItemSelection &/* oldSel*/ )
399
405
{
400
406
QModelIndex idx = ui.tableWidgetErrors ->currentIndex ();
401
- if ( idx.isValid () && !ui.tableWidgetErrors ->isRowHidden ( idx.row () ) && ui. tableWidgetErrors -> selectionModel ()-> selectedIndexes () .contains ( idx ) )
407
+ if ( idx.isValid () && !ui.tableWidgetErrors ->isRowHidden ( idx.row () ) && newSel .contains ( idx ) )
402
408
{
403
409
highlightErrors ();
404
410
}
@@ -484,6 +490,7 @@ void QgsGeometryCheckerResultTab::fixErrors( bool prompt )
484
490
connect ( &fixdialog, &QgsGeometryCheckerFixDialog::currentErrorChanged, this , &QgsGeometryCheckerResultTab::highlightError );
485
491
connect ( &fixdialog, &QDialog::finished, &loop, &QEventLoop::quit );
486
492
fixdialog.show ();
493
+ fixdialog.move ( window ()->frameGeometry ().topLeft () + window ()->rect ().center () - fixdialog.rect ().center () );
487
494
parentWidget ()->parentWidget ()->parentWidget ()->setEnabled ( false );
488
495
loop.exec ();
489
496
parentWidget ()->parentWidget ()->parentWidget ()->setEnabled ( true );
@@ -512,13 +519,10 @@ void QgsGeometryCheckerResultTab::fixErrors( bool prompt )
512
519
513
520
if ( mStatistics .itemCount () > 0 )
514
521
{
522
+ parentWidget ()->parentWidget ()->parentWidget ()->setEnabled ( false );
515
523
QgsGeometryCheckerFixSummaryDialog summarydialog ( mStatistics , mChecker , mIface ->mainWindow () );
516
- QEventLoop loop;
517
524
connect ( &summarydialog, &QgsGeometryCheckerFixSummaryDialog::errorSelected, this , &QgsGeometryCheckerResultTab::highlightError );
518
- connect ( &summarydialog, &QDialog::finished, &loop, &QEventLoop::quit );
519
- summarydialog.show ();
520
- parentWidget ()->parentWidget ()->parentWidget ()->setEnabled ( false );
521
- loop.exec ();
525
+ summarydialog.exec ();
522
526
parentWidget ()->parentWidget ()->parentWidget ()->setEnabled ( true );
523
527
}
524
528
mCloseable = true ;
@@ -546,9 +550,9 @@ void QgsGeometryCheckerResultTab::setDefaultResolutionMethods()
546
550
547
551
QVBoxLayout *layout = new QVBoxLayout ( &dialog );
548
552
549
- scrollArea->setFrameShape ( QFrame::NoFrame );
550
- layout->setContentsMargins ( 0 , 0 , 0 , 0 );
551
553
QgsGeometryCheckerUtils::VScrollArea *scrollArea = new QgsGeometryCheckerUtils::VScrollArea ( &dialog );
554
+ layout->setContentsMargins ( 6 , 6 , 6 , 6 );
555
+ layout->addWidget ( new QLabel ( tr ( " Select default error resolutions:" ) ) );
552
556
layout->addWidget ( scrollArea );
553
557
554
558
QWidget *scrollAreaContents = new QWidget ( scrollArea );
@@ -577,6 +581,7 @@ void QgsGeometryCheckerResultTab::setDefaultResolutionMethods()
577
581
578
582
scrollAreaLayout->addWidget ( groupBox );
579
583
}
584
+ scrollAreaLayout->addItem ( new QSpacerItem ( 1 , 1 , QSizePolicy::Preferred, QSizePolicy::Expanding ) );
580
585
scrollArea->setWidget ( scrollAreaContents );
581
586
582
587
QDialogButtonBox *buttonBox = new QDialogButtonBox ( QDialogButtonBox::Ok, Qt::Horizontal, &dialog );
0 commit comments