diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-27 16:51:28 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-27 16:51:28 +0000 |
commit | 940b4d1848e8c70ab7642901a68594e8016caffc (patch) | |
tree | eb72f344ee6c3d9b80a7ecc079ea79e9fba8676d /offapi/com/sun/star/i18n/CalendarFieldIndex.idl | |
parent | Initial commit. (diff) | |
download | libreoffice-upstream.tar.xz libreoffice-upstream.zip |
Adding upstream version 1:7.0.4.upstream/1%7.0.4upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to '')
-rw-r--r-- | offapi/com/sun/star/i18n/CalendarFieldIndex.idl | 128 |
1 files changed, 128 insertions, 0 deletions
diff --git a/offapi/com/sun/star/i18n/CalendarFieldIndex.idl b/offapi/com/sun/star/i18n/CalendarFieldIndex.idl new file mode 100644 index 000000000..d1a511c8d --- /dev/null +++ b/offapi/com/sun/star/i18n/CalendarFieldIndex.idl @@ -0,0 +1,128 @@ +/* -*- 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/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef __com_sun_star_i18n_CalendarFieldIndex_idl__ +#define __com_sun_star_i18n_CalendarFieldIndex_idl__ + + +module com { module sun { module star { module i18n { + + + +/** + Field indices to be passed to various XCalendar methods. + + <p> Field is writable only if marked both Get/Set. </p> + + <p> ZONE_OFFSET and DST_OFFSET cooperate such that both values are added, + for example, ZoneOffset=1*60 and DstOffset=1*60 results in a time + difference of GMT+2. The calculation in minutes is + GMT = LocalTime - ZoneOffset - DstOffset </p> + + <p> With introduction of ZONE_OFFSET_SECOND_MILLIS and + DST_OFFSET_SECOND_MILLIS the exact calculation in milliseconds is + GMT = LocalTime + - (ZoneOffset*60000 + ZoneOffsetMillis * sign(ZoneOffset)) + - (DstOffset*60000 + DstOffsetMillis * sign(DstOffset)) + <p> + */ +published constants CalendarFieldIndex +{ + /// Get AmPmValue. + const short AM_PM = 0; + /// Get/Set day of month [1-31]. + const short DAY_OF_MONTH = 1; + /// Get day of week [0-6]. + const short DAY_OF_WEEK = 2; + /// Get day of year. + const short DAY_OF_YEAR = 3; + /** Get daylight saving time offset in minutes, e.g. [0*60..1*60] + <p> The DST offset value depends on the actual date set at the + calendar and is determined according to the timezone rules of + the locale used with the calendar. </p> + <p> Note that there is a bug in OpenOffice.org 1.0 / StarOffice 6.0 + that prevents interpreting this value correctly. </p> */ + const short DST_OFFSET = 4; + /// Get/Set hour [0-23]. + const short HOUR = 5; + /// Get/Set minute [0-59]. + const short MINUTE = 6; + /// Get/Set second [0-59]. + const short SECOND = 7; + /// Get/Set milliseconds [0-999]. + const short MILLISECOND = 8; + /// Get week of month. + const short WEEK_OF_MONTH = 9; + /// Get week of year. + const short WEEK_OF_YEAR = 10; + /// Get/Set year. + const short YEAR = 11; + /** Get/Set month [0-...]. + <p> Note that the maximum value is <b>not</b> necessarily 11 for + December but depends on the calendar used instead. </p> */ + const short MONTH = 12; + /// Get/Set era, for example, 0:= Before Christ, 1:= After Christ. + const short ERA = 13; + /// Get/Set time zone offset in minutes, e.g. [-14*60..14*60] + const short ZONE_OFFSET = 14; + + /// Total number of fields for < OOo 3.1 + const short FIELD_COUNT = 15; + + /** Get/Set additional offset in milliseconds that <b>adds</b> to + the value of ZONE_OFFSET. This may be necessary to correctly + interpret historical timezone data that consists of fractions of + minutes, e.g. seconds. 1 minute == 60000 milliseconds. + + @attention Though the field's type is signed 16-bit, the field + value is treated as unsigned 16-bit to allow for values up to + 60000 and expresses an absolute value that inherits its sign + from the parent ZONE_OFFSET field. + + @since OOo 3.1 + */ + const short ZONE_OFFSET_SECOND_MILLIS = 15; + + /** Get additional offset in milliseconds that <b>adds</b> to + the value of DST_OFFSET. This may be necessary to correctly + interpret historical timezone data that consists of fractions of + minutes, e.g. seconds. 1 minute == 60000 milliseconds. + + @attention Though the field's type is signed 16-bit, the field + value is treated as unsigned 16-bit to allow for values up to + 60000 and expresses an absolute value that inherits its sign + from the parent DST_OFFSET field. + + @since OOo 3.1 + */ + const short DST_OFFSET_SECOND_MILLIS = 16; + + /** Total number of fields as of OOo 3.1 + + @since OOo 3.1 + */ + const short FIELD_COUNT2 = 17; + +}; + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |