LibreOffice
LibreOffice 24.8 SDK API Reference
Loading...
Searching...
No Matches
XTransliteration.idl
Go to the documentation of this file.
1/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2/*
3 * This file is part of the LibreOffice project.
4 *
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 *
9 * This file incorporates work covered by the following license notice:
10 *
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
18 */
19
20
21module com { module sun { module star { module i18n {
22
23
56/* comment:
57 * 0.
58 * All the IGNORE-type functionalities (Range, equals) are based on mapping.
59 * except equals() method in IGNORE_CASE, which is based on Locale-independent
60 * case folding
61 * ( This second assumption is very complicated and may cause confusion of use)
62 *
63 * 1.
64 * We are assuming Upper to Lower mapping as one of transliteration.
65 * The mapping depends on Locale.
66 * Upper <-> Lower methods are just wrappers to provide equals() and Range()
67 *
68 * 2.
69 * equals() in IGNORE_CASE module is locale-independent and
70 * we don't provide locale-sensitive ones.
71 * The reason we provided locale-independent ones is that IGNORE_CASE is mainly
72 * dedicated to StarOffice internal code.
73 *
74 * 3.
75 * TransliterationModules is used just for convenience without calling
76 * getAvailableModule.
77 *
78 * 4.
79 * Implementation name in the methods below is not the same as
80 * the true implementation name registered.
81 * In particular, for generic modules:"UPPERCASE_LOWERCASE",
82 * "LOWERCASE_UPPERCASE", "IGNORE_CASE", there is no registered name.
83 */
84
85
86published interface XTransliteration: com::sun::star::uno::XInterface
87{
88
94 string getName();
95
102 short getType();
103
107 [in] ::com::sun::star::lang::Locale aLocale );
108
112 void loadModuleNew( [in] sequence <TransliterationModulesNew> aModType,
113 [in] ::com::sun::star::lang::Locale aLocale );
114
136 void loadModuleByImplName( [in] string aImplName,
137 [in] ::com::sun::star::lang::Locale aLocale );
138
149 void loadModulesByImplNames( [in] sequence <string> aImplNameList,
150 [in] ::com::sun::star::lang::Locale aLocale );
151
161 sequence<string> getAvailableModules(
163 [in] short nType );
164
165
186 string transliterate( [in] string aInStr, [in] long nStartPos,
187 [in] long nCount, [out] sequence <long> rOffset );
188
193 string folding( [in] string aInStr, [in] long nStartPos,
194 [in] long nCount, [out] sequence <long> rOffset );
195
239 boolean equals( [in] string aStr1, [in] long nPos1, [in] long nCount1,
240 [out] long rMatch1,
241 [in] string aStr2, [in] long nPos2, [in] long nCount2,
242 [out] long rMatch2 );
243
261 sequence <string> transliterateRange( [in] string aStr1, [in] string aStr2 );
262
289 long compareSubstring( [in] string aStr1, [in] long nOff1, [in] long nLen1,
290 [in] string aStr2, [in] long nOff2, [in] long nLen2 );
291
300 long compareString( [in] string aStr1, [in] string aStr2 );
301
302};
303
304}; }; }; };
305
306/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
string getName()
Unique ASCII name to identify a module.
void loadModuleNew([in] sequence< TransliterationModulesNew > aModType, [in] ::com::sun::star::lang::Locale aLocale)
Load a sequence of instances of predefined modules - supersedes method XTransliteration::loadModule()...
string transliterate([in] string aInStr, [in] long nStartPos, [in] long nCount, [out] sequence< long > rOffset)
Transliterate a substring.
void loadModulesByImplNames([in] sequence< string > aImplNameList, [in] ::com::sun::star::lang::Locale aLocale)
Load a sequence of instances of transliteration modules.
string folding([in] string aInStr, [in] long nStartPos, [in] long nCount, [out] sequence< long > rOffset)
boolean equals([in] string aStr1, [in] long nPos1, [in] long nCount1, [out] long rMatch1, [in] string aStr2, [in] long nPos2, [in] long nCount2, [out] long rMatch2)
Match two substrings and find if they are equivalent as per this transliteration.
void loadModule([in] TransliterationModules eModType, [in] ::com::sun::star::lang::Locale aLocale)
Load instance of predefined module - old style method.
sequence< string > getAvailableModules([in] ::com::sun::star::lang::Locale aLocale, [in] short nType)
List the available transliteration modules for a given locale.
long compareString([in] string aStr1, [in] string aStr2)
Compare 2 strings as per this transliteration.
sequence< string > transliterateRange([in] string aStr1, [in] string aStr2)
Transliterate one set of characters to another.
long compareSubstring([in] string aStr1, [in] long nOff1, [in] long nLen1, [in] string aStr2, [in] long nOff2, [in] long nLen2)
Compare 2 substrings as per this transliteration.
void loadModuleByImplName([in] string aImplName, [in] ::com::sun::star::lang::Locale aLocale)
Load instance of UNO registered module.
short getType()
Return the attribute(s) associated with this transliteration object, as defined in TransliterationTyp...
base interface of all UNO interfaces
Definition generated_idl_chapter_refs.idl:452
TransliterationModules
Old transliteration module enumeration.
Definition TransliterationModules.idl:33
Definition Ambiguous.idl:20
object represents a specific geographical, political, or cultural region.
Definition Locale.idl:34