@@ -28,11 +28,13 @@ email : matthias@opengis.ch
28
28
#include " qgsgeometrycheckregistry.h"
29
29
#include " qgsgeometryoptions.h"
30
30
#include " qgsgeometrycheckfactory.h"
31
+ #include " qgisapp.h"
31
32
32
33
33
- QgsGeometryValidationDock::QgsGeometryValidationDock ( const QString &title, QgsMapCanvas *mapCanvas, QWidget *parent, Qt::WindowFlags flags )
34
+ QgsGeometryValidationDock::QgsGeometryValidationDock ( const QString &title, QgsMapCanvas *mapCanvas, QgisApp *parent, Qt::WindowFlags flags )
34
35
: QgsDockWidget( title, parent, flags )
35
36
, mMapCanvas( mapCanvas )
37
+ , mApp( parent )
36
38
{
37
39
setupUi ( this );
38
40
@@ -84,7 +86,7 @@ void QgsGeometryValidationDock::setGeometryValidationModel( QgsGeometryValidatio
84
86
85
87
connect ( mErrorListView ->selectionModel (), &QItemSelectionModel::currentChanged, this , &QgsGeometryValidationDock::onCurrentErrorChanged );
86
88
connect ( mGeometryValidationModel , &QgsGeometryValidationModel::rowsRemoved, this , &QgsGeometryValidationDock::updateCurrentError );
87
- connect ( mGeometryValidationModel , &QgsGeometryValidationModel::rowsInserted, this , &QgsGeometryValidationDock::raise );
89
+ connect ( mGeometryValidationModel , &QgsGeometryValidationModel::rowsInserted, this , &QgsGeometryValidationDock::onRowsInserted );
88
90
}
89
91
90
92
void QgsGeometryValidationDock::gotoNextError ()
@@ -139,6 +141,15 @@ void QgsGeometryValidationDock::updateLayerTransform()
139
141
mLayerTransform = QgsCoordinateTransform ( mMapCanvas ->currentLayer ()->crs (), mMapCanvas ->mapSettings ().destinationCrs (), mMapCanvas ->mapSettings ().transformContext () );
140
142
}
141
143
144
+ void QgsGeometryValidationDock::onRowsInserted ()
145
+ {
146
+ if ( !isVisible () )
147
+ {
148
+ mApp ->addDockWidget ( Qt::RightDockWidgetArea, this );
149
+ }
150
+ raise ();
151
+ }
152
+
142
153
QgsGeometryValidationService *QgsGeometryValidationDock::geometryValidationService () const
143
154
{
144
155
return mGeometryValidationService ;
0 commit comments