1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*************************************************************************
4 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
6 * Copyright 2000, 2010 Oracle and/or its affiliates.
8 * OpenOffice.org - a multi-platform office productivity suite
10 * This file is part of OpenOffice.org.
12 * OpenOffice.org is free software: you can redistribute it and/or modify
13 * it under the terms of the GNU Lesser General Public License version 3
14 * only, as published by the Free Software Foundation.
16 * OpenOffice.org is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU Lesser General Public License version 3 for more details
20 * (a copy is included in the LICENSE file that accompanied this code).
22 * You should have received a copy of the GNU Lesser General Public License
23 * version 3 along with OpenOffice.org. If not, see
24 * <http://www.openoffice.org/license.html>
25 * for a copy of the LGPLv3 License.
27 ************************************************************************/
28 #ifndef __com_sun_star_style_PageProperties_idl__
29 #define __com_sun_star_style_PageProperties_idl__
31 #include
<com
/sun
/star
/table
/ShadowFormat.idl
>
32 #include
<com
/sun
/star
/util
/Color.idl
>
33 #include
<com
/sun
/star
/table
/BorderLine.idl
>
34 #include
<com
/sun
/star
/style
/PageStyleLayout.idl
>
35 #include
<com
/sun
/star
/style
/GraphicLocation.idl
>
36 #include
<com
/sun
/star
/awt
/Size.idl
>
37 #include
<com
/sun
/star
/text
/XText.idl
>
38 #include
<com
/sun
/star
/text
/XTextColumns.idl
>
39 #include
<com
/sun
/star
/container
/XNameContainer.idl
>
40 #include
<com
/sun
/star
/text
/WritingMode2.idl
>
42 //=============================================================================
44 module com
{ module sun
{ module star
{ module style
{
46 //=============================================================================
48 /** describes the style of pages.
50 published service PageProperties
52 //-----------------------------------------------------------------------------
53 /** contains the background color of the page.
55 [property
] com
::sun
::star
::util
::Color BackColor
;
56 //-----------------------------------------------------------------------------
59 //[property] BackGraphic;
60 //-----------------------------------------------------------------------------
61 /** contains the URL of the background graphic.
63 [property
] string BackGraphicURL
;
64 //-----------------------------------------------------------------------------
65 /** contains the filter name of the background graphic.
67 [property
] string BackGraphicFilter
;
68 //-----------------------------------------------------------------------------
69 /** determines the location of the background graphic.
71 [property
] com
::sun
::star
::style
::GraphicLocation BackGraphicLocation
;
72 //-----------------------------------------------------------------------------
73 /** determines if the background color is transparent.
75 <p>If this property is set to <TRUE/>,
76 <member>PageStyle::BackColor</member> will not be used.</p>
78 [property
] boolean BackTransparent
;
79 //-----------------------------------------------------------------------------
80 /** determines the left margin of the page.
82 [property
] long LeftMargin
;
83 //-----------------------------------------------------------------------------
84 /** determines the right margin of the page.
86 [property
] long RightMargin
;
87 //-----------------------------------------------------------------------------
88 /** determines the top margin of the page.
90 [property
] long TopMargin
;
91 //-----------------------------------------------------------------------------
92 /** determines the bottom margin of the page.
94 [property
] long BottomMargin
;
95 //-----------------------------------------------------------------------------
96 /** determines the style of the left border line of the page.
98 [property
] com
::sun
::star
::table
::BorderLine LeftBorder
;
99 //-----------------------------------------------------------------------------
100 /** determines the style of the right border line of the page.
102 [property
] com
::sun
::star
::table
::BorderLine RightBorder
;
103 //-----------------------------------------------------------------------------
104 /** determines the style of the top border line of the page.
106 [property
] com
::sun
::star
::table
::BorderLine TopBorder
;
107 //-----------------------------------------------------------------------------
108 /** determines the style of the bottom border line of the page.
110 [property
] com
::sun
::star
::table
::BorderLine BottomBorder
;
111 //-----------------------------------------------------------------------------
112 /** determines the left border distance of the page.
114 [property
] long LeftBorderDistance
;
115 //-----------------------------------------------------------------------------
116 /** determines the right border distance of the page.
118 [property
] long RightBorderDistance
;
119 //-----------------------------------------------------------------------------
120 /** determines the top border distance of the page.
122 [property
] long TopBorderDistance
;
123 //-----------------------------------------------------------------------------
124 /** determines the bottom border distance of the page.
126 [property
] long BottomBorderDistance
;
127 //-----------------------------------------------------------------------------
128 /** determines the shadow of the page.
130 [property
] com
::sun
::star
::table
::ShadowFormat ShadowFormat
;
131 //-----------------------------------------------------------------------------
132 /** determines if the page format is landscape.
134 [property
] boolean IsLandscape
;
135 //-----------------------------------------------------------------------------
136 /** determines the default numbering type for this page.
138 [property
] short NumberingType
;
139 //-----------------------------------------------------------------------------
140 /** determines the layout of the page.
142 [property
] com
::sun
::star
::style
::PageStyleLayout PageStyleLayout
;
143 //-----------------------------------------------------------------------------
144 /** contains the name of a paper tray of the selected printer.
146 [property
] string PrinterPaperTray
;
147 //-----------------------------------------------------------------------------
148 /** determines if the register mode is active on that page.
150 [optional, property
] boolean RegisterModeActive
;
151 //-----------------------------------------------------------------------------
152 /** contains the name of the paragraph style that is used as reference of the register mode.
154 [optional, property
] string RegisterParagraphStyle
;
155 //-----------------------------------------------------------------------------
156 /** contains the paper size of the page.
158 [property
] com
::sun
::star
::awt
::Size Size
;
159 //-----------------------------------------------------------------------------
160 /** contains the width of the page.
162 [property
] long Width
;
163 //-----------------------------------------------------------------------------
164 /** contains the height of the page.
166 [property
] long Height
;
167 //-----------------------------------------------------------------------------
168 /** contains the column settings of the page.
170 [optional , property
] com
::sun
::star
::text
::XTextColumns TextColumns
;
171 //-----------------------------------------------------------------------------
172 /** contains user defined attributes.
174 <p>This <type scope="com::sun::star::container">XNameContainer</type>
176 <type scope="com::sun::star::xml">AttributeContainer</type>.</p>
178 [property
] com
::sun
::star
::container
::XNameContainer UserDefinedAttributes
;
180 //-----------------------------------------------------------------------------
181 /** contains the color of the background of the header.
183 [property
, maybevoid
] com
::sun
::star
::util
::Color HeaderBackColor
;
184 //-----------------------------------------------------------------------------
187 //[property, maybevoid] HeaderBackGraphic;
188 //-----------------------------------------------------------------------------
189 /** contains the URL of the background graphic of the header.
191 [property
, maybevoid
] string HeaderBackGraphicURL
;
192 //-----------------------------------------------------------------------------
193 /** contains the filter name of the background graphic of the header.
195 [property
, maybevoid
] string HeaderBackGraphicFilter
;
196 //-----------------------------------------------------------------------------
197 /** determines the location of the background graphic of the header.
199 [property
, maybevoid
] com
::sun
::star
::style
::GraphicLocation HeaderBackGraphicLocation
;
200 //-----------------------------------------------------------------------------
201 /** contains the left margin of the header.
203 [property
, maybevoid
] long HeaderLeftMargin
;
204 //-----------------------------------------------------------------------------
205 /** contains the right margin of the header.
207 [property
, maybevoid
] long HeaderRightMargin
;
208 //-----------------------------------------------------------------------------
209 /** determines if the background color of the header is transparent.
211 <p>If this property is set to <TRUE/>,
212 <member>PageStyle::HeaderBackColor</member> will not be used.</p>
214 [property
, maybevoid
] boolean HeaderBackTransparent
;
215 //-----------------------------------------------------------------------------
216 /** determines the style of the left border line of the header.
218 [property
, maybevoid
] com
::sun
::star
::table
::BorderLine HeaderLeftBorder
;
219 //-----------------------------------------------------------------------------
220 /** determines the style of the right border line of the header.
222 [property
, maybevoid
] com
::sun
::star
::table
::BorderLine HeaderRightBorder
;
223 //-----------------------------------------------------------------------------
224 /** determines the style of the top border line of the header.
226 [property
, maybevoid
] com
::sun
::star
::table
::BorderLine HeaderTopBorder
;
227 //-----------------------------------------------------------------------------
228 /** determines the style of the bottom border line of the header.
230 [property
, maybevoid
] com
::sun
::star
::table
::BorderLine HeaderBottomBorder
;
232 //-----------------------------------------------------------------------------
233 /** determines the left border distance of the header.
235 [property
, maybevoid
] long HeaderLeftBorderDistance
;
236 //-----------------------------------------------------------------------------
237 /** determines the right border distance of the header.
239 [property
, maybevoid
] long HeaderRightBorderDistance
;
240 //-----------------------------------------------------------------------------
241 /** determines the top border distance of the header.
243 [property
, maybevoid
] long HeaderTopBorderDistance
;
244 //-----------------------------------------------------------------------------
245 /** determines the bottom border distance of the header.
247 [property
, maybevoid
] long HeaderBottomBorderDistance
;
248 //-----------------------------------------------------------------------------
249 /** determines the shadow of the header.
251 [property
, maybevoid
] com
::sun
::star
::table
::ShadowFormat HeaderShadowFormat
;
252 //-----------------------------------------------------------------------------
253 /** determines the distance between the header and the body text area.
255 [property
, maybevoid
] long HeaderBodyDistance
;
256 //-----------------------------------------------------------------------------
257 /** determines if the header content on left and right pages is the same.
259 [property
, maybevoid
] boolean HeaderIsShared
;
260 //-----------------------------------------------------------------------------
261 /** contains the height of the header.
263 [property
, maybevoid
] long HeaderHeight
;
264 //-----------------------------------------------------------------------------
265 /** determines if the height of the header depends on the content.
267 [property
, maybevoid
] boolean HeaderIsDynamicHeight
;
268 //-----------------------------------------------------------------------------
269 /** determines if a header is used on the page.
271 [property
] boolean HeaderIsOn
;
273 //-----------------------------------------------------------------------------
274 /** contains the interface to the text of the header.
276 [optional, property
, maybevoid
] com
::sun
::star
::text
::XText HeaderText
;
277 //-----------------------------------------------------------------------------
278 /** contains the interface to the text of the header of left pages.
280 [optional, property
, maybevoid
] com
::sun
::star
::text
::XText HeaderTextLeft
;
281 //-----------------------------------------------------------------------------
282 /** contains the interface to the text of the header of right pages.
284 [optional, property
, maybevoid
] com
::sun
::star
::text
::XText HeaderTextRight
;
286 //-----------------------------------------------------------------------------
287 /** contains the color of the background of the footer.
289 [property
, maybevoid
] com
::sun
::star
::util
::Color FooterBackColor
;
290 //-----------------------------------------------------------------------------
293 //[property, maybevoid] FooterBackGraphic;
294 //-----------------------------------------------------------------------------
295 /** contains the URL of the background graphic in the footer.
297 [property
, maybevoid
] string FooterBackGraphicURL
;
298 //-----------------------------------------------------------------------------
299 /** contains the filter name of the background graphic in the footer.
301 [property
, maybevoid
] string FooterBackGraphicFilter
;
302 //-----------------------------------------------------------------------------
303 /** determines the location of the background graphic in the footer.
305 [property
, maybevoid
] com
::sun
::star
::style
::GraphicLocation FooterBackGraphicLocation
;
306 //-----------------------------------------------------------------------------
307 /** determines the left margin of the footer.
309 [property
, maybevoid
] long FooterLeftMargin
;
310 //-----------------------------------------------------------------------------
311 /** determines the right margin of the footer.
313 [property
, maybevoid
] long FooterRightMargin
;
314 //-----------------------------------------------------------------------------
315 /** determines if the background of the footer is transparent.
317 [property
, maybevoid
] boolean FooterBackTransparent
;
318 //-----------------------------------------------------------------------------
319 /** contains the style of the left border line of the footer.
321 [property
, maybevoid
] com
::sun
::star
::table
::BorderLine FooterLeftBorder
;
322 //-----------------------------------------------------------------------------
323 /** contains the style of the right border line of the footer.
325 [property
, maybevoid
] com
::sun
::star
::table
::BorderLine FooterRightBorder
;
326 //-----------------------------------------------------------------------------
327 /** contains the style of the top border line of the footer.
329 [property
, maybevoid
] com
::sun
::star
::table
::BorderLine FooterTopBorder
;
330 //-----------------------------------------------------------------------------
331 /** contains the style of the bottom border line of the footer.
333 [property
, maybevoid
] com
::sun
::star
::table
::BorderLine FooterBottomBorder
;
334 //-----------------------------------------------------------------------------
335 /** contains the left border distance of the footer.
337 [property
, maybevoid
] long FooterLeftBorderDistance
;
338 //-----------------------------------------------------------------------------
339 /** contains the right border distance of the footer.
341 [property
, maybevoid
] long FooterRightBorderDistance
;
342 //-----------------------------------------------------------------------------
343 /** contains the top border distance of the footer.
345 [property
, maybevoid
] long FooterTopBorderDistance
;
346 //-----------------------------------------------------------------------------
347 /** contains the bottom border distance of the footer.
349 [property
, maybevoid
] long FooterBottomBorderDistance
;
350 //-----------------------------------------------------------------------------
351 /** determines the shadow of the footer.
353 [property
, maybevoid
] com
::sun
::star
::table
::ShadowFormat FooterShadowFormat
;
354 //-----------------------------------------------------------------------------
355 /** determines the distance between the footer and the body text area.
357 [property
, maybevoid
] long FooterBodyDistance
;
358 //-----------------------------------------------------------------------------
359 /** determines if the height of the footer depends on the content.
361 [property
, maybevoid
] boolean FooterIsDynamicHeight
;
362 //-----------------------------------------------------------------------------
363 /** determines if the footer content on left and right pages is the same.
365 [property
, maybevoid
] boolean FooterIsShared
;
366 //-----------------------------------------------------------------------------
367 /** determines the height of the footer.
369 [property
, maybevoid
] long FooterHeight
;
370 //-----------------------------------------------------------------------------
371 /** determines if a footer is used on the page.
373 [property
] boolean FooterIsOn
;
374 //-----------------------------------------------------------------------------
375 /** contains the interface to the text of the footer.
377 [optional, property
, maybevoid
] com
::sun
::star
::text
::XText FooterText
;
378 //-----------------------------------------------------------------------------
379 /** contains the interface to the text of the footer of a left page.
381 [optional, property
, maybevoid
] com
::sun
::star
::text
::XText FooterTextLeft
;
382 //-----------------------------------------------------------------------------
383 /** contains the interface to the text of the footer of a right page.
385 //-----------------------------------------------------------------------------
388 [optional, property
, maybevoid
] com
::sun
::star
::text
::XText FooterTextRight
;
389 //-----------------------------------------------------------------------------
390 /** contains the maximum height of the footnote area. If set to zero then the height
391 of the current page is used as limit.
393 [optional,property
] long FootnoteHeight
;
394 //-----------------------------------------------------------------------------
395 /** contains the weight of the separator line between the text and the footnote area.
397 [optional,property
] short FootnoteLineWeight
;
398 //-----------------------------------------------------------------------------
399 /** contains the style of the separator line between the text and the footnote area.
401 @see com::sun::star::style::FootnoteLineStyle
402 for the possible values.
404 [optional,property
] short FootnoteLineStyle
;
405 //-----------------------------------------------------------------------------
406 /** contains the color of the separator line between the text and the footnote area..
408 [optional,property
] com
::sun
::star
::util
::Color FootnoteLineColor
;
409 //-----------------------------------------------------------------------------
410 /** contains the relative width of the separator line between the text and the footnote area.
412 [optional,property
] byte FootnoteLineRelativeWidth
;
413 //-----------------------------------------------------------------------------
414 /** contains the adjustment of the separator line between the text and the footnote area.
415 <p><type scope="com::sun::star::text">HorizontalAdjust</type>s.</p>
417 [optional,property
] short FootnoteLineAdjust
;
418 //-----------------------------------------------------------------------------
419 /** contains the distance between the text and the separator line between the
420 text and the footnote area.
422 [optional,property
] long FootnoteLineTextDistance
;
423 //-----------------------------------------------------------------------------
424 /** contains the distance between the footnote area and the separator line between
425 the text and the footnote area.
427 [optional,property
] long FootnoteLineDistance
;
428 //-----------------------------------------------------------------------------
429 /** contains the writing direction, as represented by the <type
430 scope="com::sun::star::text">WritingMode2</type> constants */
431 [optional,property
] short WritingMode
;
432 //-----------------------------------------------------------------------------
433 /** contains the mode of the text grid (none, lines, ...), as
434 represented by <type scope="com::sun::star::text">TextGridMode</type>
436 [optional, property
] short GridMode
;
437 //-----------------------------------------------------------------------------
438 /** contains the display color of the text grid */
439 [optional, property
] com
::sun
::star
::util
::Color GridColor
;
440 //-----------------------------------------------------------------------------
441 /** contains the number of lines in the text grid */
442 [optional, property
] short GridLines
;
443 //-----------------------------------------------------------------------------
444 /** contains the height of the base text line inside the text grid */
445 [optional, property
] long GridBaseHeight
;
446 //-----------------------------------------------------------------------------
447 /** contains the height of the ruby text line inside the text grid */
448 [optional, property
] long GridRubyHeight
;
449 //-----------------------------------------------------------------------------
450 /** determines whether the text grid's ruby line is located below or
451 above the base line */
452 [optional, property
] boolean GridRubyBelow
;
453 //-----------------------------------------------------------------------------
454 /** determines whether the text grid lines are printed */
455 [optional, property
] boolean GridPrint
;
456 //-----------------------------------------------------------------------------
457 /** determines whether the text grid lines are visible or not */
458 [optional, property
] boolean GridDisplay
;
459 //-----------------------------------------------------------------------------
460 /** determines whether to use dynamic spacing in header or not. */
461 [optional, property
, maybevoid
] boolean HeaderDynamicSpacing
;
462 //-----------------------------------------------------------------------------
463 /** determines whether to use dynamic spacing in footer or not. */
464 [optional, property
, maybevoid
] boolean FooterDynamicSpacing
;
465 //-----------------------------------------------------------------------------
466 /** determines the distance of all borders of the page. */
467 [property
] long BorderDistance
;
468 //-----------------------------------------------------------------------------
469 /** contains the distance of all borders of the footer. */
470 [property
, maybevoid
] long FooterBorderDistance
;
471 //-----------------------------------------------------------------------------
472 /** determines the distance of all borders of the header. */
473 [property
, maybevoid
] long HeaderBorderDistance
;
476 //=============================================================================
482 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */