From cd528c3099ffec4f34565820b923d6385478e44b Mon Sep 17 00:00:00 2001 From: Eike Rathke Date: Fri, 23 Jan 2015 23:10:41 +0100 Subject: implement css::i18n::XCalendar4 and LocaleCalendar2 service, tdf#63230 Implementation only, new local date/time routines not used yet from the outside in this step. --- offapi/UnoApi_offapi.mk | 2 + offapi/com/sun/star/i18n/LocaleCalendar2.idl | 27 +++++++++++++ offapi/com/sun/star/i18n/XCalendar.idl | 12 +++--- offapi/com/sun/star/i18n/XCalendar4.idl | 57 ++++++++++++++++++++++++++++ 4 files changed, 92 insertions(+), 6 deletions(-) create mode 100644 offapi/com/sun/star/i18n/LocaleCalendar2.idl create mode 100644 offapi/com/sun/star/i18n/XCalendar4.idl (limited to 'offapi') diff --git a/offapi/UnoApi_offapi.mk b/offapi/UnoApi_offapi.mk index 0028b46c997e..63f242cc2e83 100644 --- a/offapi/UnoApi_offapi.mk +++ b/offapi/UnoApi_offapi.mk @@ -224,6 +224,7 @@ $(eval $(call gb_UnoApi_add_idlfiles_nohdl,offapi,com/sun/star/i18n,\ IndexEntrySupplier \ InputSequenceChecker \ LocaleCalendar \ + LocaleCalendar2 \ LocaleData \ NativeNumberSupplier \ NumberFormatMapper \ @@ -2752,6 +2753,7 @@ $(eval $(call gb_UnoApi_add_idlfiles,offapi,com/sun/star/i18n,\ XBreakIterator \ XCalendar \ XCalendar3 \ + XCalendar4 \ XCharacterClassification \ XCollator \ XExtendedCalendar \ diff --git a/offapi/com/sun/star/i18n/LocaleCalendar2.idl b/offapi/com/sun/star/i18n/LocaleCalendar2.idl new file mode 100644 index 000000000000..fd878afd06ef --- /dev/null +++ b/offapi/com/sun/star/i18n/LocaleCalendar2.idl @@ -0,0 +1,27 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + */ + +#ifndef __com_sun_star_i18n_LocaleCalendar2_idl__ +#define __com_sun_star_i18n_LocaleCalendar2_idl__ + +#include + +module com { module sun { module star { module i18n { + +/** Access a locale specific calendar. + + @since LibreOffice 4.5 + */ +published service LocaleCalendar2 : XCalendar4; + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/i18n/XCalendar.idl b/offapi/com/sun/star/i18n/XCalendar.idl index 4dd5ddacb12c..fd89a5273da1 100644 --- a/offapi/com/sun/star/i18n/XCalendar.idl +++ b/offapi/com/sun/star/i18n/XCalendar.idl @@ -53,17 +53,17 @@ published interface XCalendar : com::sun::star::uno::XInterface string getUniqueID(); /** - Set the date/time as an offset to the start of the calendar at - 1-Jan-1970 00:00. The integer part represents the number of days - passed since start date. The fractional part represents + Set the UTC date/time as an offset to the start of the calendar + at 1-Jan-1970 00:00. The integer part represents the number of + days passed since start date. The fractional part represents fractions of a day, thus 0.5 means 12 hours. */ void setDateTime( [in] double nTimeInDays ); /** - Get the date/time as an offset to the start of the calendar at - 1-Jan-1970 00:00. The integer part represents the number of days - passed since start date. The fractional part represents + Get the UTC date/time as an offset to the start of the calendar + at 1-Jan-1970 00:00. The integer part represents the number of + days passed since start date. The fractional part represents fractions of a day, thus 0.5 means 12 hours. */ double getDateTime(); diff --git a/offapi/com/sun/star/i18n/XCalendar4.idl b/offapi/com/sun/star/i18n/XCalendar4.idl new file mode 100644 index 000000000000..4a1cffaff81c --- /dev/null +++ b/offapi/com/sun/star/i18n/XCalendar4.idl @@ -0,0 +1,57 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + */ + +#ifndef __com_sun_star_i18n_XCalendar4_idl__ +#define __com_sun_star_i18n_XCalendar4_idl__ + +#include + + +module com { module sun { module star { module i18n { + + + +/** This interface provides access to locale specific calendar + systems. + +

It is derived from ::com::sun::star::i18n::XCalendar3 and + provides additional methods to set and get the local time.

+ + @since LibreOffice 4.5 + */ +published interface XCalendar4 : com::sun::star::i18n::XCalendar3 +{ + /** Set the local date/time as an offset to the start of the + calendar at 1-Jan-1970 00:00. The integer part represents the + number of days passed since start date. The fractional part + represents fractions of a day, thus 0.5 means 12 hours. + + The actual timezone and daylight saving time offsets effective + at the given date and time are considered and subtracted before + setting the UTC time at the calendar. + */ + void setLocalDateTime( [in] double TimeInDays ); + + /** Get the local date/time as an offset to the start of the + calendar at 1-Jan-1970 00:00. The integer part represents the + number of days passed since start date. The fractional part + represents fractions of a day, thus 0.5 means 12 hours. + + The actual timezone and daylight saving time offsets effective + at the given date and time are considered and added to the UTC + time at the calendar. + */ + double getLocalDateTime(); + +}; + +}; }; }; }; + +#endif +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ -- cgit