Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Header Files   Compound Members   File Members  

dcfmtsym.h

This is the verbatim text of the dcfmtsym.h include file.
/*
********************************************************************************
*   Copyright (C) 1997-1999, International Business Machines
*   Corporation and others.  All Rights Reserved.
********************************************************************************
*
* File DCFMTSYM.H
*
* Modification History:
* 
*   Date        Name        Description
*   02/19/97    aliu        Converted from java.
*   03/18/97    clhuang     Updated per C++ implementation.
*   03/27/97    helena      Updated to pass the simple test after code review.
*   08/26/97    aliu        Added currency/intl currency symbol support.
*    07/22/98    stephen        Changed to match C++ style 
*                            currencySymbol -> fCurrencySymbol
*                            Constants changed from CAPS to kCaps
*   06/24/99    helena      Integrated Alan's NF enhancements and Java2 bug fixes
********************************************************************************
*/
 
#ifndef DCFMTSYM_H
#define DCFMTSYM_H
 
#include "unicode/utypes.h"
#include "unicode/locid.h"

       
class U_I18N_API DecimalFormatSymbols {
public:
    DecimalFormatSymbols(const Locale& locale, UErrorCode& status);

    DecimalFormatSymbols( UErrorCode& status);

    DecimalFormatSymbols(const DecimalFormatSymbols&);

    DecimalFormatSymbols& operator=(const DecimalFormatSymbols&);

    ~DecimalFormatSymbols();

    bool_t operator==(const DecimalFormatSymbols& other) const;

    bool_t operator!=(const DecimalFormatSymbols& other) const { return !operator==(other); }

    UChar getZeroDigit(void) const;
    void setZeroDigit(UChar zeroDigit);

    UChar getGroupingSeparator(void) const;
    void setGroupingSeparator(UChar groupingSeparator);

    UChar getDecimalSeparator(void) const;
    void setDecimalSeparator(UChar decimalSeparator);

    UChar getPerMill(void) const;
    void setPerMill(UChar perMill);

    UChar getPercent(void) const;
    void setPercent(UChar percent);

    UChar getDigit(void) const;
    void setDigit(UChar digit);

    UChar getPatternSeparator(void) const;
    void setPatternSeparator(UChar patternSeparator);

    UnicodeString& getInfinity(UnicodeString& result) const;
    void setInfinity(const UnicodeString& infinity);

    UnicodeString& getNaN(UnicodeString& result) const;
    void setNaN(const UnicodeString& NaN);

    UChar getPlusSign(void) const;
    void setPlusSign(UChar minusSign);

    UChar getMinusSign(void) const;
    void setMinusSign(UChar minusSign);
 
    UChar getExponentialSymbol(void) const;
    void setExponentialSymbol(UChar exponential);

    UnicodeString& getCurrencySymbol(UnicodeString& result) const;
    void setCurrencySymbol(const UnicodeString& currency);

    UnicodeString& getInternationalCurrencySymbol(UnicodeString& result) const;
    void setInternationalCurrencySymbol(const UnicodeString& currency);

    UChar getMonetaryDecimalSeparator(void) const;
    void setMonetaryDecimalSeparator(UChar sep);

    UChar getPadEscape(void) const;

    void setPadEscape(UChar c);

private:
    void initialize(const Locale& locale, UErrorCode& success, bool_t useLastResortData = FALSE);

    void initialize(const UnicodeString* numberElements, const UnicodeString* currencyElements);
    
    static const char         *fgNumberElements;
    static const char         *fgCurrencyElements;
    static const int32_t         fgNumberElementsLength;
    static const int32_t         fgCurrencyElementsLength;
    static const UnicodeString     fgLastResortNumberElements[];
    static const UnicodeString     fgLastResortCurrencyElements[];
    static const UChar         fgLastResortPerMill[];
    static const UChar         fgLastResortInfinity[];
    static const UChar         fgLastResortNaN[];
    static const UChar         fgLastResortCurrency[];
    static const UChar         fgLastResortIntlCurrency[];

    UChar         fDecimalSeparator;
    UChar         fGroupingSeparator;
    UChar         fPatternSeparator;
    UChar         fPercent;
    UChar         fZeroDigit;
    UChar         fDigit;
    UChar         fPlusSign;
    UChar         fMinusSign;
    UnicodeString   fCurrencySymbol;
    UnicodeString   fIntlCurrencySymbol;
    UChar         fMonetarySeparator;
    UChar         fExponential;
    UChar         fPadEscape;

    UChar         fPerMill;
    UnicodeString   fInfinity;
    UnicodeString   fNaN;
};
 
// -------------------------------------
 
inline UChar
DecimalFormatSymbols::getZeroDigit() const
{
    return fZeroDigit;
}
 
// -------------------------------------
 
inline void
DecimalFormatSymbols::setZeroDigit(UChar zeroDigit)
{
    fZeroDigit = zeroDigit;
}
 
// -------------------------------------
 
inline UChar
DecimalFormatSymbols::getGroupingSeparator() const
{
    return fGroupingSeparator;
}
 
// -------------------------------------
 
inline void
DecimalFormatSymbols::setGroupingSeparator(UChar groupingSeparator)
{
    fGroupingSeparator = groupingSeparator;
}
 
// -------------------------------------
 
inline UChar
DecimalFormatSymbols::getDecimalSeparator() const
{
    return fDecimalSeparator;
}
 
// -------------------------------------
 
inline void
DecimalFormatSymbols::setDecimalSeparator(UChar decimalSeparator)
{
    fDecimalSeparator = decimalSeparator;
}
 
// -------------------------------------
 
inline UChar
DecimalFormatSymbols::getPerMill() const
{
    return fPerMill;
}
 
// -------------------------------------
 
inline void
DecimalFormatSymbols::setPerMill(UChar perMill)
{
    fPerMill = perMill;
}
 
// -------------------------------------
 
inline UChar
DecimalFormatSymbols::getPercent() const
{
    return fPercent;
}
 
// -------------------------------------
 
inline void
DecimalFormatSymbols::setPercent(UChar percent)
{
    fPercent = percent;
}
 
// -------------------------------------
 
inline UChar
DecimalFormatSymbols::getDigit() const
{
    return fDigit;
}
 
// -------------------------------------
 
inline void
DecimalFormatSymbols::setDigit(UChar digit)
{
    fDigit = digit;
}
 
// -------------------------------------
 
inline UChar
DecimalFormatSymbols::getPatternSeparator() const
{
    return fPatternSeparator;
}
 
// -------------------------------------
 
inline void
DecimalFormatSymbols::setPatternSeparator(UChar patternSeparator)
{
    fPatternSeparator = patternSeparator;
}
 
// -------------------------------------
 
inline UnicodeString&
DecimalFormatSymbols::getInfinity(UnicodeString& result) const
{
    result = fInfinity;
    return result;
}
 
// -------------------------------------
 
inline void
DecimalFormatSymbols::setInfinity(const UnicodeString& infinity)
{
    fInfinity = infinity;
}
 
// -------------------------------------
 
inline UnicodeString&
DecimalFormatSymbols::getNaN(UnicodeString& result) const
{
    result = fNaN;
    return result;
}
 
// -------------------------------------
 
inline void
DecimalFormatSymbols::setNaN(const UnicodeString& NaN)
{
    fNaN = NaN;
}
 
// -------------------------------------
 
inline UChar
DecimalFormatSymbols::getPlusSign() const
{
    return fPlusSign;
}
 
// -------------------------------------
 
inline void
DecimalFormatSymbols::setPlusSign(UChar plusSign)
{
    fPlusSign = plusSign;
}
 
// -------------------------------------
 
inline UChar
DecimalFormatSymbols::getMinusSign() const
{
    return fMinusSign;
}
 
// -------------------------------------
 
inline void
DecimalFormatSymbols::setMinusSign(UChar minusSign)
{
    fMinusSign = minusSign;
}
 
// -------------------------------------
 
inline UChar
DecimalFormatSymbols::getExponentialSymbol(void) const
{
    return fExponential;
}
 
// -------------------------------------
 
inline void
DecimalFormatSymbols::setExponentialSymbol(UChar exponential)
{
    fExponential = exponential;
}
 
// -------------------------------------
 
inline UnicodeString&
DecimalFormatSymbols::getCurrencySymbol(UnicodeString& result) const
{
    result = fCurrencySymbol;
    return result;
}
 
// -------------------------------------
 
inline void
DecimalFormatSymbols::setCurrencySymbol(const UnicodeString& str)
{
    fCurrencySymbol = str;
}
 
// -------------------------------------
 
inline UnicodeString&
DecimalFormatSymbols::getInternationalCurrencySymbol(UnicodeString& result) const
{
    result = fIntlCurrencySymbol;
    return result;
}
 
// -------------------------------------
 
inline void
DecimalFormatSymbols::setInternationalCurrencySymbol(const UnicodeString& str)
{
    fIntlCurrencySymbol = str;
}
 
// -------------------------------------
 
inline UChar
DecimalFormatSymbols::getMonetaryDecimalSeparator(void) const
{
    return fMonetarySeparator;
}
 
// -------------------------------------
 
inline void
DecimalFormatSymbols::setMonetaryDecimalSeparator(UChar sep)
{
    fMonetarySeparator = sep;
}
 
inline UChar DecimalFormatSymbols::getPadEscape(void) const {
    return fPadEscape;
}

inline void DecimalFormatSymbols::setPadEscape(UChar c) {
    fPadEscape = c;
}

#endif // _DCFMTSYM
//eof

Generated at Thu Feb 10 15:30:38 2000 for icu by doxygen 1.0.0 written by Dimitri van Heesch, © 1997-1999