| /************************************************************** |
| * |
| * 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_linguistic2_XLanguageGuessing_idl__ |
| #define __com_sun_star_linguistic2_XLanguageGuessing_idl__ |
| |
| #ifndef _COM_SUN_STAR_UNO_XINTERFACE_idl_ |
| #include <com/sun/star/uno/XInterface.idl> |
| #endif |
| #ifndef _COM_SUN_STAR_LANG_LOCALE_idl_ |
| #include <com/sun/star/lang/Locale.idl> |
| #endif |
| #ifndef _COM_SUN_STAR_LANG_ILLEGALARGUMENTEXCEPTION_IDL_ |
| #include <com/sun/star/lang/IllegalArgumentException.idl> |
| #endif |
| |
| module com { module sun { module star { module linguistic2 { |
| |
| /** This interface allows to guess the language of a text |
| |
| <p> The current set of supported languages is: |
| <ul> |
| <li>af : Afrikaans</li> |
| <li>am : Amharic</li> |
| <li>ar : Arabic</li> |
| <li>be : Belarus</li> |
| <li>br : Breton</li> |
| <li>bs : Bosnian</li> |
| <li>ca : Catalan</li> |
| <li>cs : Czech</li> |
| <li>cy : Welsh</li> |
| <li>da : Danish</li> |
| <li>de : German</li> |
| <li>drt : Drents</li> |
| <li>el : Greek</li> |
| <li>en : English</li> |
| <li>eo : Esperanto</li> |
| <li>es : Spanish</li> |
| <li>et : Estonian</li> |
| <li>eu : Basque</li> |
| <li>fa : Persian</li> |
| <li>fi : Finnish</li> |
| <li>fr : French</li> |
| <li>fy : Frisian</li> |
| <li>ga : Irish Gaelic</li> |
| <li>gd : Scots Gaelic</li> |
| <li>gv : Manx Gaelic</li> |
| <li>he : Hebrew</li> |
| <li>hi : Hindi</li> |
| <li>hr : Croatian</li> |
| <li>hu : Hungarian</li> |
| <li>hy : Armenian</li> |
| <li>id : Indonesian</li> |
| <li>is : Icelandic</li> |
| <li>it : Italian</li> |
| <li>ja : Japanese</li> |
| <li>ka : Georgian</li> |
| <li>ko : Korean</li> |
| <li>la : Latin</li> |
| <li>lb : Luxembourgish (added with OpenOffice 3.3)</li> |
| <li>lt : Lithuanian</li> |
| <li>lv : Latvian</li> |
| <li>mr : Marathi</li> |
| <li>ms : Malay</li> |
| <li>ne : Nepali</li> |
| <li>nl : Dutch</li> |
| <li>nb : Norwegian (Bokmal)</li> |
| <li>pl : Polish</li> |
| <li>pt-PT : Portuguese (Portugal)</li> |
| <li>qu : Quechua</li> |
| <li>rm : Romansh</li> |
| <li>ro : Romanian</li> |
| <li>ru : Russian</li> |
| <li>sa : Sanskrit</li> |
| <li>sco : Scots</li> |
| <li>sh : Serbian (written with latin characters)</li> |
| <li>sk-SK : Slovak (written with latin characters)</li> |
| <li>sl : Slovenian</li> |
| <li>sq : Albanian</li> |
| <li>sr : Serbian (written with cyrillic characters) (added with OpenOffice 3.4)</li> |
| <li>sv : Swedish</li> |
| <li>sw : Swahili</li> |
| <li>ta : Tamil</li> |
| <li>th : Thai</li> |
| <li>tl : Tagalog</li> |
| <li>tr : Turkish</li> |
| <li>uk : Ukrainian</li> |
| <li>vi : Vietnamese</li> |
| <li>yi : Yiddish</li> |
| <li>zh-CN : Chinese (simplified)</li> |
| <li>zh-TW : Chinese (traditional)</li> |
| </ul> |
| |
| </p> |
| |
| @since OpenOffice 2.2 |
| */ |
| interface XLanguageGuessing |
| { |
| //------------------------------------------------------------------------- |
| /** determines the single most probable language of a sub-string. |
| |
| <p>Please note that because statistical analysis is part |
| of the algorithm the the likelihood to get the correct |
| result increases with the length of the sub-string. |
| A word is much less likely guessed correctly compared to |
| a sentence or even a whole paragraph.</p> |
| |
| <p>Also note that some languages are that 'close' to each other |
| that it will be quite unlikely to find a difference in them, |
| e.g. English (UK), English (IE) and English (AUS) and |
| most liklely English (US) as well. And thus the result may |
| be arbitrary.</p> |
| |
| @returns |
| the locale for the language identified. |
| If no language could be identified the locale will be empty. |
| |
| @param aText |
| all the text including the part that should checked. |
| |
| @param nStartPos |
| specifies the starting index of the sub-string to be checked |
| The value must met 0 <= nStartPos < (length of text - 1). |
| |
| @param nLen |
| specifies the length of the sub-string to be checked. |
| The value must met 0 <= nLen <= (length of text). |
| |
| @see <type scope="com::sun::star::lang">Locale</type> |
| */ |
| com::sun::star::lang::Locale guessPrimaryLanguage( |
| [in] string aText, |
| [in] long nStartPos, |
| [in] long nLen ) |
| raises( com::sun::star::lang::IllegalArgumentException ); |
| |
| //------------------------------------------------------------------------- |
| /** allows to explicitly discard some languages from the set of |
| languages possibly returned. |
| |
| <p>By default all languages are enabled.</p> |
| */ |
| void disableLanguages( |
| [in] sequence< com::sun::star::lang::Locale > aLanguages ) |
| raises( com::sun::star::lang::IllegalArgumentException ); |
| |
| //------------------------------------------------------------------------- |
| /** allows to explicitly re-enable some languages that got previously |
| disabled. |
| |
| <p>By default all languages are enabled.</p> |
| */ |
| void enableLanguages( |
| [in] sequence< com::sun::star::lang::Locale > aLanguages ) |
| raises( com::sun::star::lang::IllegalArgumentException ); |
| |
| //------------------------------------------------------------------------- |
| /** returns a list of all supported languages. |
| |
| <p>This should be the same as the mathematical union of |
| all enabled and disabled languages.</p> |
| */ |
| sequence< com::sun::star::lang::Locale > getAvailableLanguages(); |
| |
| //------------------------------------------------------------------------- |
| /** returns the list of all enabled languages |
| */ |
| sequence< com::sun::star::lang::Locale > getEnabledLanguages(); |
| |
| //------------------------------------------------------------------------- |
| /** returns the list of all disabled languages |
| */ |
| sequence< com::sun::star::lang::Locale > getDisabledLanguages(); |
| |
| }; |
| |
| }; }; }; }; |
| |
| #endif |
| |