Branch data Line data Source code
1 : : /*************************************************************************** 2 : : qgsscientificnumericformat.h 3 : : ---------------------------- 4 : : begin : January 2020 5 : : copyright : (C) 2020 by Nyall Dawson 6 : : email : nyall dot dawson at gmail dot com 7 : : *************************************************************************** 8 : : * * 9 : : * This program is free software; you can redistribute it and/or modify * 10 : : * it under the terms of the GNU General Public License as published by * 11 : : * the Free Software Foundation; either version 2 of the License, or * 12 : : * (at your option) any later version. * 13 : : * * 14 : : ***************************************************************************/ 15 : : #ifndef QGSSCIENTIFICNUMERICFORMAT_H 16 : : #define QGSSCIENTIFICNUMERICFORMAT_H 17 : : 18 : : #include "qgis_core.h" 19 : : #include "qgis_sip.h" 20 : : #include "qgsbasicnumericformat.h" 21 : : 22 : : /** 23 : : * \ingroup core 24 : : * \brief A numeric formatter which returns a scientific notation representation of a value. 25 : : * 26 : : * \since QGIS 3.12 27 : : */ 28 : 10 : class CORE_EXPORT QgsScientificNumericFormat : public QgsBasicNumericFormat 29 : : { 30 : : public: 31 : : 32 : : /** 33 : : * Default constructor 34 : : */ 35 : : QgsScientificNumericFormat(); 36 : : 37 : : QString id() const override; 38 : : QString visibleName() const override; 39 : : int sortKey() override; 40 : : QString formatDouble( double value, const QgsNumericFormatContext &context ) const override; 41 : : QgsNumericFormat *clone() const override SIP_FACTORY; 42 : : QgsNumericFormat *create( const QVariantMap &configuration, const QgsReadWriteContext &context ) const override SIP_FACTORY; 43 : : QVariantMap configuration( const QgsReadWriteContext &context ) const override; 44 : : 45 : : /** 46 : : * Sets the maximum number of decimal \a places to show. 47 : : * 48 : : * The \a places argument must be at least 1. 49 : : * 50 : : * \see numberDecimalPlaces() 51 : : * \see setShowTrailingZeros() 52 : : */ 53 : : void setNumberDecimalPlaces( int places ) override; 54 : : 55 : : 56 : : }; 57 : : 58 : : #endif // QGSSCIENTIFICNUMERICFORMAT_H