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_drawing_TextProperties_idl__
24#define __com_sun_star_drawing_TextProperties_idl__
25
26#ifndef __com_sun_star_container_XIndexReplace_idl__
27#include <com/sun/star/container/XIndexReplace.idl>
28#endif
29
30#ifndef __com_sun_star_style_CharacterProperties_idl__
31#include <com/sun/star/style/CharacterProperties.idl>
32#endif
33
34#ifndef __com_sun_star_style_CharacterPropertiesAsian_idl__
35#include <com/sun/star/style/CharacterPropertiesAsian.idl>
36#endif
37
38#ifndef __com_sun_star_style_CharacterPropertiesComplex_idl__
39#include <com/sun/star/style/CharacterPropertiesComplex.idl>
40#endif
41
42#ifndef __com_sun_star_style_ParagraphProperties_idl__
43#include <com/sun/star/style/ParagraphProperties.idl>
44#endif
45
46#ifndef __com_sun_star_style_ParagraphPropertiesAsian_idl__
47#include <com/sun/star/style/ParagraphPropertiesAsian.idl>
48#endif
49
50#ifndef __com_sun_star_style_ParagraphPropertiesComplex_idl__
51#include <com/sun/star/style/ParagraphPropertiesComplex.idl>
52#endif
53
54#ifndef __com_sun_star_drawing_TextFitToSizeType_idl__
55#include <com/sun/star/drawing/TextFitToSizeType.idl>
56#endif
57
58#ifndef __com_sun_star_drawing_TextAdjust_idl__
59#include <com/sun/star/drawing/TextAdjust.idl>
60#endif
61
62#ifndef __com_sun_star_drawing_TextAnimationDirection_idl__
63#include <com/sun/star/drawing/TextAnimationDirection.idl>
64#endif
65
66#ifndef __com_sun_star_drawing_TextAnimationKind_idl__
67#include <com/sun/star/drawing/TextAnimationKind.idl>
68#endif
69
70#ifndef __com_sun_star_drawing_TextVerticalAdjust_idl__
71#include <com/sun/star/drawing/TextVerticalAdjust.idl>
72#endif
73
74#ifndef __com_sun_star_drawing_TextHorizontalAdjust_idl__
75#include <com/sun/star/drawing/TextHorizontalAdjust.idl>
76#endif
77
78#ifndef __com_sun_star_text_WritingMode_idl__
79#include <com/sun/star/text/WritingMode.idl>
80#endif
81
82//=============================================================================
83
84 module com {  module sun {  module star {  module drawing {
85
86//=============================================================================
87
88
89/** This is a set of properties to describe the style for rendering the
90	text area inside a shape.
91 */
92published service TextProperties
93{
94	/** The properties in this service set default formats for text
95		inside the <type>Shape</type>.
96	 */
97	service com::sun::star::style::CharacterProperties;
98
99	//-------------------------------------------------------------------------
100
101	/** The properties in this service set default formats for asian text
102		inside the <type>Shape</type>.
103	 */
104	[optional] service com::sun::star::style::CharacterPropertiesAsian;
105
106	//-------------------------------------------------------------------------
107
108	/** The properties in this service set default formats for complex text
109		inside the <type>Shape</type>.
110	 */
111	[optional] service com::sun::star::style::CharacterPropertiesComplex;
112
113	//-------------------------------------------------------------------------
114
115	/** The properties in this service set default formats for text
116		inside the <type>Shape</type>.
117	 */
118	service com::sun::star::style::ParagraphProperties;
119
120	//-------------------------------------------------------------------------
121
122	/** The properties in this service set default formats for asian text
123		inside the <type>Shape</type>.
124	 */
125	[optional] service com::sun::star::style::ParagraphPropertiesAsian;
126
127	//-------------------------------------------------------------------------
128
129	/** The properties in this service set default formats for complex text
130		inside the <type>Shape</type>.
131	 */
132	[optional] service com::sun::star::style::ParagraphPropertiesComplex;
133	//-------------------------------------------------------------------------
134
135	/** If this is <TRUE/>, numbering is ON for the text of
136		this <type>Shape</type>.
137	 */
138	[optional, property] boolean IsNumbering;
139
140	//-------------------------------------------------------------------------
141
142	/** describes the numbering levels.
143		<p>The different rules accessible with this
144		<type scope="com::sun::star::container">XIndexReplace</type> interface
145		are sequences of property values as described in the service
146		<type scope="com::sun::star::style">NumberingRule</type>.</p>
147	 */
148	[optional, property] com::sun::star::container::XIndexReplace NumberingRules;
149
150	//-------------------------------------------------------------------------
151
152	/** If this value is <TRUE/>, the height of the <type>Shape</type> is
153		automatically expanded/shrunk when text is added to or removed from
154		the <type>Shape</type>.
155	 */
156	[property] boolean TextAutoGrowHeight;
157
158	//-------------------------------------------------------------------------
159
160	/** If this value is <TRUE/>, the width of the <type>Shape</type> is
161		automatically expanded/shrunk when text is added to or removed from
162		the <type>Shape</type>.
163	 */
164	[property] boolean TextAutoGrowWidth;
165
166	//-------------------------------------------------------------------------
167
168	// DocMerge from xml: property com::sun::star::drawing::Text::TextContourFrame
169	/** If this value is <TRUE/>, the left edge of every line of text is
170		aligned with the left edge of this <type>Shape</type>.
171	 */
172	[property] boolean TextContourFrame;
173
174	//-------------------------------------------------------------------------
175
176	/** With this set to <TRUE/>, the text inside of the <type>Shape</type>
177		is stretched to fit into the <type>Shape</type>.
178	 */
179	[property] com::sun::star::drawing::TextFitToSizeType TextFitToSize;
180
181	//-------------------------------------------------------------------------
182
183	/** adjusts the horizontal position of the text inside of
184		the <type>Shape</type>.
185	 */
186	[property] com::sun::star::drawing::TextHorizontalAdjust TextHorizontalAdjust;
187
188	//-------------------------------------------------------------------------
189
190	/** adjusts the vertical position of the text inside of
191		the <type>Shape</type>.
192	 */
193	[property] com::sun::star::drawing::TextVerticalAdjust TextVerticalAdjust;
194
195	//-------------------------------------------------------------------------
196
197	/** This is the distance from the left edge of the <type>Shape</type>
198		to the left edge of the text.
199		<p>This is only useful if <member>Text::TextHorizontalAdjust</member> is
200		<const>BLOCK</const> or <const>STRETCH</const> or if
201		<member>Text::TextFitSize</member> is <TRUE/>.</p>
202	 */
203	[property] long TextLeftDistance;
204
205	//-------------------------------------------------------------------------
206
207	/** This is the distance from the right edge of the <type>Shape</type>
208		to the right edge of the text.
209
210		<p>This is only useful if <member>Text::TextHorizontalAdjust</member> is
211		<const>BLOCK</const> or <const>STRETCH</const>
212		or if <member>Text::TextFitSize</member> is <TRUE/>.</p>
213	 */
214	[property] long TextRightDistance;
215
216	//-------------------------------------------------------------------------
217
218	/** This is the distance from the upper edge of the <type>Shape</type> to
219		the upper edge of the text.
220
221		<p>This is only useful if <member>Text::TextVerticalAdjust</member> is
222		<const>BLOCK</const> or if <member>Text::TextFitSize</member> is
223		<TRUE/>.</p>
224	 */
225	[property] long TextUpperDistance;
226
227	//-------------------------------------------------------------------------
228
229	/** This is the distance from the lower edge of the <type>Shape</type> to the
230		lower edge of the text.
231
232
233
234		<p>This is only useful if <member>Text::TextVerticalAdjust</member> is
235		<const>BLOCK</const> or if <member>Text::TextFitSize</member> is
236		<TRUE/>.</p>
237	 */
238	[property] long TextLowerDistance;
239
240	//-------------------------------------------------------------------------
241
242	/** with this property you can set the maximum height for a shape with text.
243		On edit, the auto grow feature will not grow the object higher than
244		the value of this property.
245	*/
246	[property] long TextMaximumFrameHeight;
247
248	//-------------------------------------------------------------------------
249
250	/** with this property you can set the maximum width for a shape with text.
251		On edit, the auto grow feature will not grow the objects wider than
252		the value of this property.
253	*/
254	[property] long TextMaximumFrameWidth;
255
256	//-------------------------------------------------------------------------
257
258	/** with this property you can set the minimum height for a shape with text.
259		On edit, the auto grow feature will not shrink the objects height smaller
260		than the value of this property.
261	*/
262	[property] long TextMinimumFrameHeight;
263
264	//-------------------------------------------------------------------------
265
266	/** with this property you can set the minimum width for a shape with text.
267		On edit, the auto grow feature will not shrink the object width smaller
268		than the value of this property.
269	*/
270	[property] long TextMinimumFrameWidth;
271
272	//-------------------------------------------------------------------------
273
274	/** This is the number of pixels the text is moved in each animation step.
275	 */
276	[property] short TextAnimationAmount;
277
278	//-------------------------------------------------------------------------
279
280	/** This number defines how many times the text animation is repeated.
281		<p>If this is set to zero, the repeat is endless.</p>
282	 */
283	[property] short TextAnimationCount;
284
285	//-------------------------------------------------------------------------
286
287	/** This is the delay in thousandths of a second between each
288		of the animation steps.
289	 */
290	[property] short TextAnimationDelay;
291
292	//-------------------------------------------------------------------------
293
294	/** This enumeration defines the direction in which the text moves.
295	 */
296	[property] com::sun::star::drawing::TextAnimationDirection TextAnimationDirection;
297
298	//-------------------------------------------------------------------------
299
300	/** This value defines the type of animation.
301	 */
302	[property] com::sun::star::drawing::TextAnimationKind TextAnimationKind;
303
304	//-------------------------------------------------------------------------
305
306	/** If this value is <TRUE/>, the text is visible at the start of the
307		animation.
308	 */
309	[property] boolean TextAnimationStartInside;
310
311	//-------------------------------------------------------------------------
312
313	/** If this value is <TRUE/>, the text is visible at the end of the
314		animation.
315	 */
316	[property] boolean TextAnimationStopInside;
317
318	//-------------------------------------------------------------------------
319
320	/** This value selects the writing mode for the text.
321	 */
322	[property] ::com::sun::star::text::WritingMode TextWritingMode;
323};
324
325//=============================================================================
326
327}; }; }; };
328
329#endif
330
331