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#ifndef __com_sun_star_linguistic2_XPossibleHyphens_idl__
24#define __com_sun_star_linguistic2_XPossibleHyphens_idl__
25
26#ifndef __com_sun_star_uno_XInterface_idl__
27#include <com/sun/star/uno/XInterface.idl>
28#endif
29
30#ifndef __com_sun_star_lang_Locale_idl__
31#include <com/sun/star/lang/Locale.idl>
32#endif
33
34
35//=============================================================================
36
37module com { module sun { module star { module linguistic2 {
38
39//=============================================================================
40/** Gives information about a word's possible hyphenation points.
41
42 	<P>Example: In German pre-spelling-reform you may have the following:
43 	getWord:					Dampfschiffahrt
44 	getPossibleHyphens:			Dampf=schiff=fahrt
45 	getOrigHyphensPositions:	4, 9
46 	That is "Dampfschiffahrt" can be hyphenated after the "pf" (4) and
47 	between the double "ff" (9). And if you are going to hyphenate it at
48 	position 9 you will get an additional "f" before the hyphen
49 	character.</P>
50
51    @see    <type scope="com::sun::star::linguistic2">XHyphenator</type>
52*/
53published interface XPossibleHyphens : com::sun::star::uno::XInterface
54{
55	//-------------------------------------------------------------------------
56	/**
57	 	@returns
58	 		the word for which the information of possible hyphenation
59	 		points was obtained.
60	*/
61	string getWord();
62
63	//-------------------------------------------------------------------------
64	/** @returns
65			the language of the hyphenated word.
66
67        @see    <type scope="com::sun::star::lang">Locale</type>
68	*/
69	com::sun::star::lang::Locale getLocale();
70
71	//-------------------------------------------------------------------------
72	/**
73	 	@returns
74	 		a string depicting the word with all hyphen positions
75	 		which are represented by '=' characters.
76	 		If there are any alternative spellings, the word will be altered
77	 		accordingly.
78	*/
79	string getPossibleHyphens();
80
81	//-------------------------------------------------------------------------
82	/**
83	 	@returns
84	 		an ascending sequence of numbers where each number is an offset
85	 		within the original word which denotes a hyphenation
86	 		position corresponding to one of the hyphens in the
87            string returned by
88            <member scope="com::sun::star::linguistic2">XPossibleHyphens::getPossibleHyphens</member>.
89	*/
90	sequence<short> getHyphenationPositions();
91
92};
93
94//=============================================================================
95
96}; }; }; };
97
98#endif
99