QGIS API Documentation  3.4.15-Madeira (e83d02e274)
qgsfieldvalidator.h
Go to the documentation of this file.
1 /***************************************************************************
2  qgsfieldvalidator.h - description
3  -------------------
4  begin : March 2011
5  copyright : (C) 2011 by SunilRajKiran-kCube
6  email : [email protected]
7 
8  adapted version of QValidator for QgsField
9  ***************************************************************************/
10 
11 /***************************************************************************
12  * *
13  * This program is free software; you can redistribute it and/or modify *
14  * it under the terms of the GNU General Public License as published by *
15  * the Free Software Foundation; either version 2 of the License, or *
16  * (at your option) any later version. *
17  * *
18  ***************************************************************************/
19 
20 #ifndef QGSFIELDVALIDATOR_H
21 #define QGSFIELDVALIDATOR_H
22 
23 #include <QValidator>
24 #include <QVariant>
25 #include <QSettings>
26 #include "qgsfields.h"
27 #include "qgis_gui.h"
28 
33 class GUI_EXPORT QgsFieldValidator : public QValidator
34 {
35  Q_OBJECT
36 
37  public:
38  QgsFieldValidator( QObject *parent, const QgsField &field, const QString &defaultValue, const QString &dateFormat = "yyyy-MM-dd" );
39  ~QgsFieldValidator() override;
40 
41  State validate( QString &s SIP_CONSTRAINED SIP_INOUT, int &i SIP_INOUT ) const override;
42  void fixup( QString &s SIP_CONSTRAINED ) const override;
43 
44  QString dateFormat() const { return mDateFormat; }
45 
46  private:
47  // Disables copy constructing
48  Q_DISABLE_COPY( QgsFieldValidator )
49 
50  QValidator *mValidator = nullptr;
51  QgsField mField;
52  QString mNullValue;
53  QString mDefaultValue;
54  QString mDateFormat;
55 };
56 
57 // clazy:excludeall=qstring-allocations
58 
59 #endif // QGSFIELDVALIDATOR_H
#define SIP_CONSTRAINED
Definition: qgis_sip.h:104
#define SIP_INOUT
Definition: qgis_sip.h:64
QString dateFormat() const
Encapsulate a field in an attribute table or data source.
Definition: qgsfield.h:48