1 #ifndef _B_FORMAT_H_ 2 #define _B_FORMAT_H_ 3 4 #include <FormatParameters.h> 5 #include <SupportDefs.h> 6 7 // types of fields contained in formatted strings 8 enum { 9 // number format fields 10 B_CURRENCY_FIELD, 11 B_DECIMAL_SEPARATOR_FIELD, 12 B_EXPONENT_FIELD, 13 B_EXPONENT_SIGN_FIELD, 14 B_EXPONENT_SYMBOL_FIELD, 15 B_FRACTION_FIELD, 16 B_GROUPING_SEPARATOR_FIELD, 17 B_INTEGER_FIELD, 18 B_PERCENT_FIELD, 19 B_PERMILLE_FIELD, 20 B_SIGN_FIELD, 21 22 // date format fields 23 // TODO: ... 24 }; 25 26 // structure filled in while formatting 27 struct format_field_position { 28 uint32 field_type; 29 int32 start; 30 int32 length; 31 }; 32 33 class BFormatImpl; 34 35 class BFormat { 36 protected: 37 BFormat(const BFormat &other); 38 ~BFormat(); 39 40 BFormat &operator=(const BFormat &other); 41 42 BFormat(BFormatImpl *impl); 43 44 protected: 45 BFormatImpl *fImpl; 46 }; 47 48 #endif // _B_FORMAT_H_ 49