* added support for all the different names (std/dst, long/short) and daylight
support to BTimeZone git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@37933 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
parent
9d391816b7
commit
e4da3d6691
@ -16,7 +16,11 @@ public:
|
||||
|
||||
const BString& Code() const;
|
||||
const BString& Name() const;
|
||||
const BString& DaylightSavingName() const;
|
||||
const BString& ShortName() const;
|
||||
const BString& ShortDaylightSavingName() const;
|
||||
int OffsetFromGMT() const;
|
||||
bool SupportsDaylightSaving() const;
|
||||
|
||||
status_t InitCheck() const;
|
||||
|
||||
@ -27,7 +31,11 @@ public:
|
||||
private:
|
||||
BString fCode;
|
||||
BString fName;
|
||||
BString fDaylightSavingName;
|
||||
BString fShortName;
|
||||
BString fShortDaylightSavingName;
|
||||
int fOffsetFromGMT;
|
||||
bool fSupportsDaylightSaving;
|
||||
|
||||
status_t fInitStatus;
|
||||
};
|
||||
|
@ -35,6 +35,27 @@ BTimeZone::Name() const
|
||||
}
|
||||
|
||||
|
||||
const BString&
|
||||
BTimeZone::DaylightSavingName() const
|
||||
{
|
||||
return fDaylightSavingName;
|
||||
}
|
||||
|
||||
|
||||
const BString&
|
||||
BTimeZone::ShortName() const
|
||||
{
|
||||
return fShortName;
|
||||
}
|
||||
|
||||
|
||||
const BString&
|
||||
BTimeZone::ShortDaylightSavingName() const
|
||||
{
|
||||
return fShortDaylightSavingName;
|
||||
}
|
||||
|
||||
|
||||
const BString&
|
||||
BTimeZone::Code() const
|
||||
{
|
||||
@ -49,6 +70,13 @@ BTimeZone::OffsetFromGMT() const
|
||||
}
|
||||
|
||||
|
||||
bool
|
||||
BTimeZone::SupportsDaylightSaving() const
|
||||
{
|
||||
return fSupportsDaylightSaving;
|
||||
}
|
||||
|
||||
|
||||
status_t
|
||||
BTimeZone::InitCheck() const
|
||||
{
|
||||
@ -71,10 +99,27 @@ BTimeZone::SetTo(const char* zoneCode)
|
||||
unicodeString.toUTF8(converter);
|
||||
|
||||
unicodeString.remove();
|
||||
icuTimeZone->getDisplayName(unicodeString);
|
||||
icuTimeZone->getDisplayName(false, TimeZone::LONG, unicodeString);
|
||||
converter.SetTo(&fName);
|
||||
unicodeString.toUTF8(converter);
|
||||
|
||||
unicodeString.remove();
|
||||
icuTimeZone->getDisplayName(true, TimeZone::LONG, unicodeString);
|
||||
converter.SetTo(&fDaylightSavingName);
|
||||
unicodeString.toUTF8(converter);
|
||||
|
||||
unicodeString.remove();
|
||||
icuTimeZone->getDisplayName(false, TimeZone::SHORT, unicodeString);
|
||||
converter.SetTo(&fShortName);
|
||||
unicodeString.toUTF8(converter);
|
||||
|
||||
unicodeString.remove();
|
||||
icuTimeZone->getDisplayName(true, TimeZone::SHORT, unicodeString);
|
||||
converter.SetTo(&fShortDaylightSavingName);
|
||||
unicodeString.toUTF8(converter);
|
||||
|
||||
fSupportsDaylightSaving = icuTimeZone->useDaylightTime();
|
||||
|
||||
int32_t rawOffset;
|
||||
int32_t dstOffset;
|
||||
UDate nowMillis = 1000 * (double)time(NULL);
|
||||
|
Loading…
x
Reference in New Issue
Block a user