/* -*- 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_XExtendedCalendar_idl__
#define __com_sun_star_i18n_XExtendedCalendar_idl__

#include <com/sun/star/i18n/XCalendar.idl>


module com { module sun { module star { module i18n {



/**
    This interface provides access to locale specific calendar
    systems.

    <p> It is derived from
    ::com::sun::star::i18n::XCalendar and provides
    additional functionality to display parts of the date currently
    set at the calendar. </p>

     @since OOo 1.1.2
 */
published interface XExtendedCalendar : ::com::sun::star::i18n::XCalendar
{
    /**
        Returns a string (number or name to display) matching the
        given code constant.

        <p> Note that the string returned depends completely on the
        locale's calendar. It is not predictable if the string will be
        numeric or a name, or if in case it returns a numeric string
        how many digits that will have. For example, a short year
        display string will normally be two digits with a Gregorian
        calendar, but with a Jewish calendar it will have three
        digits. </p>

        @param nCalendarDisplayCode
            One of CalendarDisplayCode

        @param nNativeNumberMode
            One of NativeNumberMode. <br>
            This argument designates the basic transliteration mode as
            if specified for the year representation. However, depending
            on the locale, different conversions for year and month, for
            example, may be chosen internally. This is beyond the user's
            control and depends on locale specific conventions of how a
            date is assembled.
     */
    string  getDisplayString( [in] long nCalendarDisplayCode, [in] short nNativeNumberMode );

};

}; }; }; };

#endif

/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
