1/**************************************************************
2 *
3 * Licensed to the Apache Software Foundation (ASF) under one
4 * or more contributor license agreements.  See the NOTICE file
5 * distributed with this work for additional information
6 * regarding copyright ownership.  The ASF licenses this file
7 * to you under the Apache License, Version 2.0 (the
8 * "License"); you may not use this file except in compliance
9 * with the License.  You may obtain a copy of the License at
10 *
11 *   http://www.apache.org/licenses/LICENSE-2.0
12 *
13 * Unless required by applicable law or agreed to in writing,
14 * software distributed under the License is distributed on an
15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16 * KIND, either express or implied.  See the License for the
17 * specific language governing permissions and limitations
18 * under the License.
19 *
20 *************************************************************/
21
22
23
24#ifndef __com_sun_star_i18n_XNativeNumberSupplier_idl__
25#define __com_sun_star_i18n_XNativeNumberSupplier_idl__
26
27#include <com/sun/star/lang/Locale.idl>
28#include <NativeNumberXmlAttributes.idl>
29
30//=============================================================================
31
32module com { module sun { module star { module i18n {
33
34//=============================================================================
35
36/** Methods to convert between strings of ASCII Arabic digits and native
37    numeral strings.
38
39	 @since OpenOffice 1.1.2
40 */
41
42published interface XNativeNumberSupplier : ::com::sun::star::uno::XInterface
43{
44    //-------------------------------------------------------------------------
45    /** Returns native number string for given number string.
46
47        @param nNativeNumberMode
48            One of <type>NativeNumberMode</type> values.
49     */
50
51    string getNativeNumberString( [in] string aNumberString,
52                    [in] ::com::sun::star::lang::Locale aLocale,
53                    [in] short nNativeNumberMode );
54
55    //-------------------------------------------------------------------------
56    /** Check if the NatNum is valid for the given locale.
57
58        @param nNativeNumberMode
59            One of <type>NativeNumberMode</type> values.
60     */
61
62    boolean isValidNatNum( [in] ::com::sun::star::lang::Locale aLocale,
63                    [in] short nNativeNumberMode );
64
65    //-------------------------------------------------------------------------
66    /** Convert a specific NatNum/Locale combination to attributes used
67        in the XML file format.
68
69        @param nNativeNumberMode
70            One of <type>NativeNumberMode</type> values.
71     */
72
73    NativeNumberXmlAttributes convertToXmlAttributes(
74            [in] ::com::sun::star::lang::Locale aLocale,
75            [in] short nNativeNumberMode );
76
77    //-------------------------------------------------------------------------
78    /** Convert XML attributes to a NatNum value.
79
80        @returns
81            One of <type>NativeNumberMode</type>
82     */
83
84    short convertFromXmlAttributes( [in] NativeNumberXmlAttributes aAttr );
85
86};
87
88//=============================================================================
89}; }; }; };
90
91#endif
92