| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 | 
							- /////////////////////////////////////////////////////////////////////////////
 
- // Name:        wx/numformatter.h
 
- // Purpose:     wxNumberFormatter class
 
- // Author:      Fulvio Senore, Vadim Zeitlin
 
- // Created:     2010-11-06
 
- // Copyright:   (c) 2010 wxWidgets team
 
- // Licence:     wxWindows licence
 
- /////////////////////////////////////////////////////////////////////////////
 
- #ifndef _WX_NUMFORMATTER_H_
 
- #define _WX_NUMFORMATTER_H_
 
- #include "wx/string.h"
 
- // Helper class for formatting numbers with thousands separators which also
 
- // supports parsing the numbers formatted by it.
 
- class WXDLLIMPEXP_BASE wxNumberFormatter
 
- {
 
- public:
 
-     // Bit masks for ToString()
 
-     enum Style
 
-     {
 
-         Style_None              = 0x00,
 
-         Style_WithThousandsSep  = 0x01,
 
-         Style_NoTrailingZeroes  = 0x02      // Only for floating point numbers
 
-     };
 
-     // Format a number as a string. By default, the thousands separator is
 
-     // used, specify Style_None to prevent this. For floating point numbers,
 
-     // precision can also be specified.
 
-     static wxString ToString(long val,
 
-                              int style = Style_WithThousandsSep);
 
- #ifdef wxHAS_LONG_LONG_T_DIFFERENT_FROM_LONG
 
-     static wxString ToString(wxLongLong_t val,
 
-                              int style = Style_WithThousandsSep);
 
- #endif // wxHAS_LONG_LONG_T_DIFFERENT_FROM_LONG
 
-     static wxString ToString(double val,
 
-                              int precision,
 
-                              int style = Style_WithThousandsSep);
 
-     // Parse a string representing a number, possibly with thousands separator.
 
-     //
 
-     // Return true on success and stores the result in the provided location
 
-     // which must be a valid non-NULL pointer.
 
-     static bool FromString(wxString s, long *val);
 
- #ifdef wxHAS_LONG_LONG_T_DIFFERENT_FROM_LONG
 
-     static bool FromString(wxString s, wxLongLong_t *val);
 
- #endif // wxHAS_LONG_LONG_T_DIFFERENT_FROM_LONG
 
-     static bool FromString(wxString s, double *val);
 
-     // Get the decimal separator for the current locale. It is always defined
 
-     // and we fall back to returning '.' in case of an error.
 
-     static wxChar GetDecimalSeparator();
 
-     // Get the thousands separator if grouping of the digits is used by the
 
-     // current locale. The value returned in sep should be only used if the
 
-     // function returns true.
 
-     static bool GetThousandsSeparatorIfUsed(wxChar *sep);
 
- private:
 
-     // Post-process the string representing an integer.
 
-     static wxString PostProcessIntString(wxString s, int style);
 
-     // Add the thousands separators to a string representing a number without
 
-     // the separators. This is used by ToString(Style_WithThousandsSep).
 
-     static void AddThousandsSeparators(wxString& s);
 
-     // Remove trailing zeroes and, if there is nothing left after it, the
 
-     // decimal separator itself from a string representing a floating point
 
-     // number. Also used by ToString().
 
-     static void RemoveTrailingZeroes(wxString& s);
 
-     // Remove all thousands separators from a string representing a number.
 
-     static void RemoveThousandsSeparators(wxString& s);
 
- };
 
- #endif // _WX_NUMFORMATTER_H_
 
 
  |