haiku/headers/os/locale/TimeUnitFormat.h
Oliver Tappe 45f2f22b52 * update (not-so-)optional package ICU to 4.8.1, which contains interesting stuff
for message formatting
* adjust LocaleKit to use namespace 'icu', as ICU has been configured to no longer
  use a version specific namespace
* adjust LocaleKit to general API changes in ICU 4.8
Note: all software using ICU (like WebPositive) needs to be rebuilt!
Note: the ICU package for PPC needs to be updated before it can be used!


git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42638 a95241bf-73f2-0310-859d-f6bbb57e9c96
2011-08-18 22:13:06 +00:00

61 lines
1.1 KiB
C++

/*
* Copyright 2010-2011, Haiku, Inc.
* Distributed under the terms of the MIT License.
*/
#ifndef _B_TIME_UNIT_FORMAT_H_
#define _B_TIME_UNIT_FORMAT_H_
#include <Format.h>
#include <SupportDefs.h>
class BString;
namespace icu {
class TimeUnitFormat;
}
enum time_unit_style {
B_TIME_UNIT_ABBREVIATED, // e.g. '5 hrs.'
B_TIME_UNIT_FULL, // e.g. '5 hours'
};
enum time_unit_element {
B_TIME_UNIT_YEAR,
B_TIME_UNIT_MONTH,
B_TIME_UNIT_WEEK,
B_TIME_UNIT_DAY,
B_TIME_UNIT_HOUR,
B_TIME_UNIT_MINUTE,
B_TIME_UNIT_SECOND,
B_TIME_UNIT_LAST = B_TIME_UNIT_SECOND
};
class BTimeUnitFormat : public BFormat {
typedef BFormat Inherited;
public:
BTimeUnitFormat();
BTimeUnitFormat(const BTimeUnitFormat& other);
virtual ~BTimeUnitFormat();
BTimeUnitFormat& operator=(const BTimeUnitFormat& other);
virtual status_t SetLocale(const BLocale* locale);
status_t Format(int32 value, time_unit_element unit,
BString* buffer,
time_unit_style style = B_TIME_UNIT_FULL
) const;
private:
icu::TimeUnitFormat* fFormatter;
};
#endif