1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2000, 2010 Oracle and/or its affiliates.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * This file is part of OpenOffice.org.
11 * OpenOffice.org is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser General Public License version 3
13 * only, as published by the Free Software Foundation.
15 * OpenOffice.org is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 * GNU Lesser General Public License version 3 for more details
19 * (a copy is included in the LICENSE file that accompanied this code).
21 * You should have received a copy of the GNU Lesser General Public License
22 * version 3 along with OpenOffice.org. If not, see
23 * <http://www.openoffice.org/license.html>
24 * for a copy of the LGPLv3 License.
26 ************************************************************************/
28 #ifndef __com_sun_star_i18n_XExtendedTransliteration_idl__
29 #define __com_sun_star_i18n_XExtendedTransliteration_idl__
31 #include
<com
/sun
/star
/i18n
/XTransliteration.idl
>
32 #include
<MultipleCharsOutputException.idl
>
34 //=============================================================================
36 module com
{ module sun
{ module star
{ module i18n
{
38 //=============================================================================
42 This interface provides character conversions like case folding or
45 <p> It is derived from
46 <type scope="::com::sun::star::i18n">XTransliteration</type> and provides
47 additional functionality for character to character and
48 string to string without offset parameter transliteration. These
49 should be used for performance reason if their full-blown
50 counterparts aren't neded. </p>
54 published
interface XExtendedTransliteration
: ::com
::sun
::star
::i18n
::XTransliteration
56 //------------------------------------------------------------------------
57 /** Transliterate a substring. The functionality is the same as
58 <member scope="::com::sun::star::i18n">XTransliteration::transliterate()</member>
59 but omits the offset prameter to improve performance.
65 Start position within aStr from where transliteration starts.
68 Number of codepoints to be transliterated.
71 string transliterateString2String
( [in] string aStr
,
72 [in] long nStartPos
, [in] long nCount
);
75 //------------------------------------------------------------------------
76 /** Transliterate a character to a string.
81 string transliterateChar2String
( [in] char cChar
);
83 //------------------------------------------------------------------------
84 /** Transliterate a character to a character.
86 <p> If the output contains multiple characters, for example when
87 transliterating German sharp 's' (the one that looks like a
88 Greek Beta) to upper case "SS", MultipleCharsOutputException
89 will be thrown, the caller must catch the exception and then
91 <method>XTransliteration::transliterateChar2String()</method> to
92 obtain the correct result. </p>
97 char transliterateChar2Char
( [in] char cChar
)
98 raises
( MultipleCharsOutputException
);
102 //=============================================================================