diff --git a/headers/os/locale/TimeZone.h b/headers/os/locale/TimeZone.h index d20c0ce913..5e609d875f 100644 --- a/headers/os/locale/TimeZone.h +++ b/headers/os/locale/TimeZone.h @@ -42,6 +42,8 @@ public: static const char* kNameOfGmtZone; + struct Accessor; + friend struct BTimeZone::Accessor; private: icu_44::TimeZone* fIcuTimeZone; icu_44::Locale* fIcuLocale; diff --git a/headers/private/locale/TimeZoneAccessor.h b/headers/private/locale/TimeZoneAccessor.h new file mode 100644 index 0000000000..f968f5eb5c --- /dev/null +++ b/headers/private/locale/TimeZoneAccessor.h @@ -0,0 +1,31 @@ +/* + * Copyright 2010, Oliver Tappe + * Distributed under the terms of the MIT License. + */ +#ifndef _TIME_ZONE_ACCESSOR_H +#define _TIME_ZONE_ACCESSOR_H + + +#include + + +struct BTimeZone::Accessor { + Accessor(const BTimeZone* timeZone = NULL) + : fTimeZone(timeZone) + {} + + void SetTo(const BTimeZone* timeZone) + { + fTimeZone = timeZone; + } + + icu_44::TimeZone* IcuTimeZone() + { + return fTimeZone->fIcuTimeZone; + } + + const BTimeZone* fTimeZone; +}; + + +#endif // _TIME_ZONE_ACCESSOR_H