1 /***************************************************************************
2  *  qgsgeometrycheckerfixdialog.h                                          *
3  *  -------------------                                                    *
4  *  copyright            : (C) 2014 by Sandro Mani / Sourcepole AG         *
5  *  email                : smani@sourcepole.ch                             *
6  ***************************************************************************/
7 
8 /***************************************************************************
9  *                                                                         *
10  *   This program is free software; you can redistribute it and/or modify  *
11  *   it under the terms of the GNU General Public License as published by  *
12  *   the Free Software Foundation; either version 2 of the License, or     *
13  *   (at your option) any later version.                                   *
14  *                                                                         *
15  ***************************************************************************/
16 
17 #ifndef QGS_GEOMETRY_CHECKER_FIX_DIALOG_H
18 #define QGS_GEOMETRY_CHECKER_FIX_DIALOG_H
19 
20 #include <QDialog>
21 
22 class QDialogButtonBox;
23 class QLabel;
24 class QGroupBox;
25 class QButtonGroup;
26 class QProgressBar;
27 class QgisInterface;
28 class QgsGeometryChecker;
29 class QgsGeometryCheckError;
30 
31 class QgsGeometryCheckerFixDialog : public QDialog
32 {
33     Q_OBJECT
34   public:
35     QgsGeometryCheckerFixDialog( QgsGeometryChecker *checker, const QList<QgsGeometryCheckError *> &errors, QWidget *parent = nullptr );
36 
37   signals:
38     void currentErrorChanged( QgsGeometryCheckError *error );
39 
40   private:
41     QgsGeometryChecker *mChecker = nullptr;
42     QList<QgsGeometryCheckError *> mErrors;
43     QGroupBox *mResolutionsBox = nullptr;
44     QDialogButtonBox *mButtonBox = nullptr;
45     QLabel *mStatusLabel = nullptr;
46     QProgressBar *mProgressBar = nullptr;
47     QButtonGroup *mRadioGroup = nullptr;
48     QPushButton *mNextBtn = nullptr;
49     QPushButton *mFixBtn = nullptr;
50     QPushButton *mSkipBtn = nullptr;
51 
52     void showEvent( QShowEvent * ) override;
53 
54   private slots:
55     void setupNextError();
56     void fixError();
57     void skipError();
58 };
59 
60 #endif // QGS_GEOMETRY_CHECKER_FIX_DIALOG_H
61