xref: /trunk/main/offapi/com/sun/star/style/CharacterProperties.idl (revision cdf0e10c4e3984b49a9502b011690b615761d4a3)
1/*************************************************************************
2 *
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2000, 2010 Oracle and/or its affiliates.
6 *
7 * OpenOffice.org - a multi-platform office productivity suite
8 *
9 * This file is part of OpenOffice.org.
10 *
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.
14 *
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).
20 *
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.
25 *
26 ************************************************************************/
27#ifndef __com_sun_star_style_CharacterProperties_idl__
28#define __com_sun_star_style_CharacterProperties_idl__
29
30#ifndef __com_sun_star_lang_Locale_idl__
31#include <com/sun/star/lang/Locale.idl>
32#endif
33
34#ifndef __com_sun_star_util_Color_idl__
35#include <com/sun/star/util/Color.idl>
36#endif
37
38#ifndef __com_sun_star_awt_FontSlant_idl__
39#include <com/sun/star/awt/FontSlant.idl>
40#endif
41
42#ifndef __com_sun_star_container_XNameContainer_idl__
43#include <com/sun/star/container/XNameContainer.idl>
44#endif
45
46
47//=============================================================================
48
49 module com {  module sun {  module star {  module style {
50
51//=============================================================================
52
53/** This is a set of properties to describe the style of characters.@see ParagraphProperties
54 */
55published service CharacterProperties
56{
57    //-------------------------------------------------------------------------
58
59    /** This property specifies the name of the font style.
60
61        <p>It may contain more than one name separated by comma.</p>
62     */
63    [property] string CharFontName;
64
65    //-------------------------------------------------------------------------
66
67    /** This property contains the name of the font style.
68
69        <p>This property may be empty.</p>
70     */
71    [property] string CharFontStyleName;
72
73    //-------------------------------------------------------------------------
74
75    /** This property contains font family.
76        @see com::sun::star::awt::FontFamily
77     */
78    [property] short CharFontFamily;
79
80    //-------------------------------------------------------------------------
81
82    /** This property contains the text encoding of the font.
83        @see com::sun::star::awt::CharSet
84     */
85    [property] short CharFontCharSet;
86
87    //-------------------------------------------------------------------------
88
89    /** This property contains the font pitch.
90        @see com::sun::star::awt::FontPitch
91     */
92    [property] short CharFontPitch;
93
94    //-------------------------------------------------------------------------
95
96    /** This property contains the value of the text color.
97     */
98    [property] com::sun::star::util::Color CharColor;
99
100    //-------------------------------------------------------------------------
101
102    /** specifies the percentage of raisement/lowerment of superscript/subscript
103        characters.
104
105        <p>Negative values denote subscripts and positive values superscripts.</p>
106
107        @see CharEscapementHeight
108     */
109    [optional, property] short CharEscapement;
110
111    //-------------------------------------------------------------------------
112
113    /** This value contains the height of the characters in point.
114     */
115    [property] float CharHeight;
116
117    //-------------------------------------------------------------------------
118
119    /** This property contains the value for the character underline.
120        @see com::sun::star::awt::FontUnderline
121     */
122    [property] short CharUnderline;
123
124    //-------------------------------------------------------------------------
125
126    /** This property contains the value of the font weight.
127        @see com::sun::star::awt::FontWeight
128     */
129    [property] float CharWeight;
130
131    //-------------------------------------------------------------------------
132
133    /** This property contains the value of the posture of the document.
134        @see com::sun::star::awt::FontSlant
135     */
136    [property] com::sun::star::awt::FontSlant CharPosture;
137
138    //-------------------------------------------------------------------------
139
140    /** This optional property determines whether the kerning tables from the
141        current font are used.
142
143        <p>Automatic <em>kerning</em> applies a spacing in between certain
144        pairs of characters to make the text look better.</p>
145     */
146    [optional, property] boolean CharAutoKerning;
147
148    //-------------------------------------------------------------------------
149
150    /** This optional property contains the text background color.
151     */
152    [optional, property] com::sun::star::util::Color CharBackColor;
153
154    //-------------------------------------------------------------------------
155
156    /** This property determines if the text background color is set to
157        transparent.
158     */
159    [optional, property] boolean CharBackTransparent;
160
161    //-------------------------------------------------------------------------
162
163    /** This optional property contains the value of the case-mapping of the
164        text for formatting and displaying.
165
166        @see CaseMap
167     */
168    [optional, property] short CharCaseMap;
169
170    //-------------------------------------------------------------------------
171
172    /** This property is <TRUE/> if the characters are crossed out.
173     */
174    [optional, property] boolean CharCrossedOut;
175
176    //-------------------------------------------------------------------------
177
178    /** If this optional property is <TRUE/>, then the characters are flashing.
179     */
180    [optional, property] boolean CharFlash;
181
182    //-------------------------------------------------------------------------
183
184    /** This property determins the type of the strike out of the character.
185        @see com::sun::star::awt::FontStrikeout
186    */
187    [optional, property] short CharStrikeout;
188
189    //-------------------------------------------------------------------------
190
191    /** If this property is <TRUE/>, the underline and strike-through
192        properties are not applied to white spaces.
193     */
194    [optional, property] boolean CharWordMode;
195
196    //-------------------------------------------------------------------------
197
198    /** This optional property contains the value of the kerning of the
199        characters.
200     */
201    [optional, property] short CharKerning;
202
203    //-------------------------------------------------------------------------
204
205    /** This property contains the value of the locale.
206     */
207    [property] com::sun::star::lang::Locale CharLocale;
208
209   //-------------------------------------------------------------------------
210
211    /** This optional property marks a range of characters to prevent it from
212        being broken into two lines.
213
214        <p> A line break is applied before the range of characters if
215        the layout makes a break necessary within the range.</p>
216    */
217    [optional, property] boolean CharKeepTogether;
218
219    //-------------------------------------------------------------------------
220
221    /** This optional property marks a range of characters to ignore a line
222        break in this area.
223
224        <p> A line break is applied behind the range of characters if
225        the layout makes a break necessary within the range. That means that
226        the text may go through the border.</p>
227     */
228    [optional, property] boolean CharNoLineBreak;
229
230    //-------------------------------------------------------------------------
231
232    /** This optional property specifies if the characters are formatted and
233        displayed with a shadow effect.
234     */
235    [optional, property] boolean CharShadowed;
236
237    //-------------------------------------------------------------------------
238
239    /** This optional property specifies the fundamental technology of the font.
240        @see com::sun::star::awt::FontType
241     */
242    [optional, property] short CharFontType;
243
244    //-------------------------------------------------------------------------
245
246    /** This optional property specifies the name of the style of the font.
247     */
248    [optional, property] string CharStyleName;
249
250    //-------------------------------------------------------------------------
251
252    /** This optional property specifies if the characters are formatted and
253        displayed with a contour effect.
254     */
255    [optional, property] boolean CharContoured;
256
257    //-------------------------------------------------------------------------
258
259    /** This optional property determins whether text is formatted in two lines.
260
261        <p>It is linked to the properties CharCombinePrefix and CharCombineSuffix.</p>
262     */
263    [optional, property] boolean CharCombineIsOn;
264
265    //-------------------------------------------------------------------------
266
267    /** This optional property contains the prefix (usually parenthesis) before
268        text that is formatted in two lines.
269
270        <p>It is linked to the properties CharCombineIsOn and CharCombineSuffix.</p>
271     */
272    [optional, property] string CharCombinePrefix;
273
274    //-------------------------------------------------------------------------
275
276    /** This optional property contains the suffix (usually parenthesis) after
277        text that is formatted in two lines.
278
279        <p>It is linked to the properties CharCombineIsOn and CharCombinePrefix.</p>
280     */
281    [optional, property] string CharCombineSuffix;
282
283    //-------------------------------------------------------------------------
284
285    /** This optional property contains the font emphasis value.
286        @see com::sun::star::text::FontEmphasis
287     */
288    [optional, property] short CharEmphasis;
289
290    //-------------------------------------------------------------------------
291
292    /** This optional property contains the relief style of the characters.
293        @see com::sun::star::text::FontRelief
294     */
295    [optional, property] short CharRelief;
296
297    //-------------------------------------------------------------------------
298
299    /** This optional property contains the text that is set as ruby.
300     */
301    [optional, property] string RubyText;
302
303    //-------------------------------------------------------------------------
304
305    /** This optional property determins the adjustment of the ruby .
306        @see com::sun::star::text::RubyAdjust
307     */
308    [optional, property] short RubyAdjust;
309
310    //-------------------------------------------------------------------------
311
312    /** This optional property contains the name of the character style that is
313        applied to RubyText.
314     */
315    [optional, property] string RubyCharStyleName;
316
317    //-------------------------------------------------------------------------
318
319    /** This optional property determins whether the ruby text is printed
320        above/left or below/right of the text.
321     */
322    [optional, property] boolean RubyIsAbove;
323
324    //-------------------------------------------------------------------------
325
326    /** This optional property determins the rotation of a character in tenths
327        of a degree.
328
329       <p>Depending on the implementation only certain values may be allowed.</p>
330     */
331    [optional, property] short CharRotation;
332
333    //-------------------------------------------------------------------------
334
335    /** This optional property determins whether the text formatting tries to
336        fit rotated text into the surrounded line height.
337     */
338    [optional, property] boolean CharRotationIsFitToLine;
339
340    //-------------------------------------------------------------------------
341
342    /** This optional property determins the percentage value for scaling the
343        width of characters.
344
345        <p>The value refers to the original width which is denoted by 100,
346        and it has to be greater than 0.</p>
347   */
348    [optional, property] short CharScaleWidth;
349
350    //-------------------------------------------------------------------------
351
352    /** This optional property contains the URL of a hyperlink.
353     */
354    [optional, property] string HyperLinkURL;
355
356    //-------------------------------------------------------------------------
357
358    /** This optional property contains the name of the target for a hyperlink.
359     */
360    [optional, property] string HyperLinkTarget;
361
362    //-------------------------------------------------------------------------
363
364    /** This optional property contains the name of the hyperlink.
365     */
366    [optional, property] string HyperLinkName;
367
368    //-------------------------------------------------------------------------
369
370    /** This optional property contains the character style name for visited
371        hyperlinks.
372     */
373    [optional, property] string VisitedCharStyleName;
374
375    //-------------------------------------------------------------------------
376
377    /** This optional property contains the character style name for unvisited
378        hyperlinks.
379     */
380    [optional, property] string UnvisitedCharStyleName;
381
382    //-------------------------------------------------------------------------
383
384    /** This is the relative height used for subscript or superscript
385        characters in units of percent.
386
387        <p>The value 100 denotes the original height of the characters.</p>
388
389        @see CharEscapement
390     */
391    [optional, property] byte CharEscapementHeight;
392
393    //-------------------------------------------------------------------------
394
395    /** This optional property determines if the word can be hyphenated at the
396        character.
397     */
398    [optional, property] boolean CharNoHyphenation;
399
400    //-------------------------------------------------------------------------
401
402    /** This property contains the color of the underline for the characters.
403        @see CharUnderlineHasColor
404     */
405    [property] com::sun::star::util::Color CharUnderlineColor;
406
407    //-------------------------------------------------------------------------
408
409    /** This property specifies if the property CharUnderlineColor is used for
410        an underline.
411        @see CharUnderlineColor
412     */
413    [property] boolean CharUnderlineHasColor;
414
415    //-------------------------------------------------------------------------
416
417    /** This optional property specifies the names of the all styles applied to
418        the font.
419
420        <p> It is not guaranteed that the order in the sequence reflects
421        the order of the evaluation of the character style attributes.</p>
422
423        @since OOo 1.1.2
424     */
425    [optional, property] sequence<string> CharStyleNames;
426
427    //-------------------------------------------------------------------------
428
429    /** If this optional property is <TRUE/>, then the characters are invisible.
430
431        @since OOo 2.0
432     */
433    [optional, property] boolean CharHidden;
434
435    //-------------------------------------------------------------------------
436
437    /** This property stores XML attributes. They will be saved to and restored
438        from automatic styles inside XML files.
439
440        @see com::sun::star::xml::AttributeContainer
441     */
442    [optional, property] com::sun::star::container::XNameContainer  TextUserDefinedAttributes;
443
444};
445
446//=============================================================================
447}; }; }; };
448
449#endif
450
451