Branch data Line data Source code
1 : : /*************************************************************************** 2 : : qgscurrencynumericformat.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 QGSCURRENCYNUMERICFORMAT_H 16 : : #define QGSCURRENCYNUMERICFORMAT_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 text representation of a currency value. 25 : : * 26 : : * \since QGIS 3.12 27 : : */ 28 : 10 : class CORE_EXPORT QgsCurrencyNumericFormat : public QgsBasicNumericFormat 29 : : { 30 : : public: 31 : : 32 : : /** 33 : : * Default constructor 34 : : */ 35 : : QgsCurrencyNumericFormat(); 36 : : 37 : : QString id() const override; 38 : : QString visibleName() const override; 39 : : int sortKey() override; 40 : : double suggestSampleValue() const override; 41 : : QString formatDouble( double value, const QgsNumericFormatContext &context ) const override; 42 : : QgsNumericFormat *clone() const override SIP_FACTORY; 43 : : QgsNumericFormat *create( const QVariantMap &configuration, const QgsReadWriteContext &context ) const override SIP_FACTORY; 44 : : QVariantMap configuration( const QgsReadWriteContext &context ) const override; 45 : : 46 : : /** 47 : : * Returns the currency prefix, e.g. "$". 48 : : * \see setPrefix() 49 : : */ 50 : : QString prefix() const; 51 : : 52 : : /** 53 : : * Sets the currency \a prefix, e.g. "$". 54 : : * \see prefix() 55 : : */ 56 : : void setPrefix( const QString &prefix ); 57 : : 58 : : /** 59 : : * Returns the currency suffix, e.g. "AUD". 60 : : * \see setSuffix() 61 : : */ 62 : : QString suffix() const; 63 : : 64 : : /** 65 : : * Sets the currency \a suffix, e.g. "AUD". 66 : : * \see suffix() 67 : : */ 68 : : void setSuffix( const QString &suffix ); 69 : : 70 : : private: 71 : : 72 : : QString mPrefix; 73 : : QString mSuffix; 74 : : 75 : : }; 76 : : 77 : : #endif // QGSCURRENCYNUMERICFORMAT_H