Branch data Line data Source code
1 : : /*************************************************************************** 2 : : qgsdatetimefieldformatter.h - QgsDateTimeFieldFormatter 3 : : 4 : : --------------------- 5 : : begin : 2.12.2016 6 : : copyright : (C) 2016 by Matthias Kuhn 7 : : email : matthias@opengis.ch 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 : : #ifndef QGSDATETIMEFIELDKIT_H 17 : : #define QGSDATETIMEFIELDKIT_H 18 : : 19 : : #include "qgis_core.h" 20 : : #include "qgsfieldformatter.h" 21 : : 22 : : /** 23 : : * \ingroup core 24 : : * \brief Field formatter for a date time field. 25 : : * 26 : : * This represents a date, time or datetime value based on 27 : : * the field configuration. 28 : : * 29 : : * \since QGIS 3.0 30 : : */ 31 : 10 : class CORE_EXPORT QgsDateTimeFieldFormatter : public QgsFieldFormatter 32 : : { 33 : : public: 34 : : static const QString DATE_FORMAT; 35 : : static const QString TIME_FORMAT; 36 : : static const QString DATETIME_FORMAT; 37 : : static const QString QT_ISO_FORMAT; 38 : : static const QString DISPLAY_FOR_ISO_FORMAT; 39 : : 40 : : /** 41 : : * Default constructor of field formatter for a date time field. 42 : : */ 43 : 5 : QgsDateTimeFieldFormatter() = default; 44 : : 45 : : QString id() const override; 46 : : 47 : : QString representValue( QgsVectorLayer *layer, int fieldIndex, const QVariantMap &config, const QVariant &cache, const QVariant &value ) const override; 48 : : 49 : : /** 50 : : * Gets the default format in function of the type. 51 : : * The type is expected to be one of 52 : : * 53 : : * - QVariant::DateTime 54 : : * - QVariant::Date 55 : : * - QVariant::Time 56 : : */ 57 : : static QString defaultFormat( QVariant::Type type ); 58 : : }; 59 : : 60 : : #endif // QGSDATETIMEFIELDKIT_H