| /************************************************************** |
| * |
| * 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 |
| * |
| * Unless required by applicable law or agreed to in writing, |
| * software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| * KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations |
| * under the License. |
| * |
| *************************************************************/ |
| |
| |
| |
| #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 <type>XCalendar</type> 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 <type>AmPmValue</type>. |
| 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 < OpenOffice 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 OpenOffice 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 OpenOffice 3.1 |
| */ |
| const short DST_OFFSET_SECOND_MILLIS = 16; |
| |
| /** Total number of fields as of OpenOffice 3.1 |
| |
| @since OpenOffice 3.1 |
| */ |
| const short FIELD_COUNT2 = 17; |
| |
| }; |
| |
| //============================================================================= |
| }; }; }; }; |
| |
| #endif |