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_style_PageProperties_idl__
24#define __com_sun_star_style_PageProperties_idl__
25
26#ifndef __com_sun_star_table_ShadowFormat_idl__
27#include <com/sun/star/table/ShadowFormat.idl>
28#endif
29
30#ifndef __com_sun_star_util_Color_idl__
31#include <com/sun/star/util/Color.idl>
32#endif
33
34#ifndef __com_sun_star_table_BorderLine_idl__
35#include <com/sun/star/table/BorderLine.idl>
36#endif
37
38#ifndef __com_sun_star_style_PageStyleLayout_idl__
39#include <com/sun/star/style/PageStyleLayout.idl>
40#endif
41
42#ifndef __com_sun_star_style_GraphicLocation_idl__
43#include <com/sun/star/style/GraphicLocation.idl>
44#endif
45
46#ifndef __com_sun_star_awt_Size_idl__
47#include <com/sun/star/awt/Size.idl>
48#endif
49
50#ifndef __com_sun_star_text_XText_idl__
51#include <com/sun/star/text/XText.idl>
52#endif
53
54#ifndef __com_sun_star_text_XTextColumns_idl__
55#include <com/sun/star/text/XTextColumns.idl>
56#endif
57
58#ifndef __com_sun_star_container_XNameContainer_idl__
59#include <com/sun/star/container/XNameContainer.idl>
60#endif
61
62#ifndef __com_sun_star_text_WritingMode2_idl__
63#include <com/sun/star/text/WritingMode2.idl>
64#endif
65
66//=============================================================================
67
68 module com {  module sun {  module star {  module style {
69
70//=============================================================================
71
72/** describes the style of pages.
73 */
74published service PageProperties
75{
76//-----------------------------------------------------------------------------
77/** contains the background color of the page.
78 */
79[property] com::sun::star::util::Color BackColor;
80//-----------------------------------------------------------------------------
81/**
82 */
83//[property] BackGraphic;
84//-----------------------------------------------------------------------------
85/** contains the URL of the background graphic.
86 */
87[property] string BackGraphicURL;
88//-----------------------------------------------------------------------------
89/** contains the filter name of the background graphic.
90 */
91[property] string BackGraphicFilter;
92//-----------------------------------------------------------------------------
93/** determins the location of the background graphic.
94 */
95[property] com::sun::star::style::GraphicLocation BackGraphicLocation;
96//-----------------------------------------------------------------------------
97/** determins if the background color is transparent.
98
99    <p>If this property is set to <TRUE/>,
100    <member>PageStyle::BackColor</member> will not be used.</p>
101 */
102[property] boolean BackTransparent;
103//-----------------------------------------------------------------------------
104/** determins the left margin of the page.
105 */
106[property] long LeftMargin;
107//-----------------------------------------------------------------------------
108/** determins the right margin of the page.
109 */
110[property] long RightMargin;
111//-----------------------------------------------------------------------------
112/** determins the top margin of the page.
113 */
114[property] long TopMargin;
115//-----------------------------------------------------------------------------
116/** determins the bottom margin of the page.
117 */
118[property] long BottomMargin;
119//-----------------------------------------------------------------------------
120/** determines the style of the left border line of the page.
121 */
122[property] com::sun::star::table::BorderLine LeftBorder;
123//-----------------------------------------------------------------------------
124/** determines the style of the right border line of the page.
125 */
126[property] com::sun::star::table::BorderLine RightBorder;
127//-----------------------------------------------------------------------------
128/** determines the style of the top border line of the page.
129 */
130[property] com::sun::star::table::BorderLine TopBorder;
131//-----------------------------------------------------------------------------
132/** determines the style of the bottom border line of the page.
133 */
134[property] com::sun::star::table::BorderLine BottomBorder;
135//-----------------------------------------------------------------------------
136/** determins the left border distance of the page.
137 */
138[property] long LeftBorderDistance;
139//-----------------------------------------------------------------------------
140/** determins the right border distance of the page.
141 */
142[property] long RightBorderDistance;
143//-----------------------------------------------------------------------------
144/** determins the top border distance of the page.
145 */
146[property] long TopBorderDistance;
147//-----------------------------------------------------------------------------
148/** determins the bottom border distance of the page.
149 */
150[property] long BottomBorderDistance;
151//-----------------------------------------------------------------------------
152/** determins the shadow of the page.
153 */
154[property] com::sun::star::table::ShadowFormat ShadowFormat;
155//-----------------------------------------------------------------------------
156/** determins if the page format is landscape.
157 */
158[property] boolean IsLandscape;
159//-----------------------------------------------------------------------------
160/** determins the default numbering type for this page.
161 */
162[property] short NumberingType;
163//-----------------------------------------------------------------------------
164/** determins the layout of the page.
165 */
166[property] com::sun::star::style::PageStyleLayout PageStyleLayout;
167//-----------------------------------------------------------------------------
168/** contains the name of a paper tray of the selected printer.
169 */
170[property] string PrinterPaperTray;
171//-----------------------------------------------------------------------------
172/** determins if the register mode is active on that page.
173 */
174[optional, property] boolean RegisterModeActive;
175//-----------------------------------------------------------------------------
176/** contains the name of the paragraph style that is used as reference of the register mode.
177 */
178[optional, property] string RegisterParagraphStyle;
179//-----------------------------------------------------------------------------
180/** contains the paper size of the page.
181 */
182[property] com::sun::star::awt::Size Size;
183//-----------------------------------------------------------------------------
184/** contains the width of the page.
185 */
186[property] long Width;
187//-----------------------------------------------------------------------------
188/** contains the height of the page.
189 */
190[property] long Height;
191//-----------------------------------------------------------------------------
192/** contains the column settings of the page.
193 */
194[optional , property] com::sun::star::text::XTextColumns TextColumns;
195//-----------------------------------------------------------------------------
196/** contains user defined  attributes.
197
198    <p>This <type scope="com::sun::star::container">XNameContainer</type>
199    supports the service
200    <type scope="com::sun::star::xml">AttributeContainer</type>.</p>
201 */
202[property] com::sun::star::container::XNameContainer UserDefinedAttributes;
203
204//-----------------------------------------------------------------------------
205/** contains the color of the background of the header.
206 */
207[property, maybevoid] com::sun::star::util::Color HeaderBackColor;
208//-----------------------------------------------------------------------------
209/**
210 */
211//[property, maybevoid] HeaderBackGraphic;
212//-----------------------------------------------------------------------------
213/** contains the URL of the background graphic of the header.
214 */
215[property, maybevoid] string HeaderBackGraphicURL;
216//-----------------------------------------------------------------------------
217/** contains the filter name of the background graphic of the header.
218 */
219[property, maybevoid] string HeaderBackGraphicFilter;
220//-----------------------------------------------------------------------------
221/** determines the location of the background graphic of the header.
222 */
223[property, maybevoid] com::sun::star::style::GraphicLocation HeaderBackGraphicLocation;
224//-----------------------------------------------------------------------------
225/** contains the left margin of the header.
226 */
227[property, maybevoid] long HeaderLeftMargin;
228//-----------------------------------------------------------------------------
229/** contains the right margin of the header.
230 */
231[property, maybevoid] long HeaderRightMargin;
232//-----------------------------------------------------------------------------
233/** determines if the background color of the header is transparent.
234
235    <p>If this property is set to <TRUE/>,
236    <member>PageStyle::HeaderBackColor</member> will not be used.</p>
237 */
238[property, maybevoid] boolean HeaderBackTransparent;
239//-----------------------------------------------------------------------------
240/** determines the style of the left border line of the header.
241 */
242[property, maybevoid] com::sun::star::table::BorderLine HeaderLeftBorder;
243//-----------------------------------------------------------------------------
244/** determines the style of the right border line of the header.
245 */
246[property, maybevoid] com::sun::star::table::BorderLine HeaderRightBorder;
247//-----------------------------------------------------------------------------
248/** determines the style of the top border line of the header.
249 */
250[property, maybevoid] com::sun::star::table::BorderLine HeaderTopBorder;
251//-----------------------------------------------------------------------------
252/** determines the style of the bottom border line of the header.
253 */
254[property, maybevoid] com::sun::star::table::BorderLine HeaderBottomBorder;
255
256//-----------------------------------------------------------------------------
257/** determines the left border distance of the header.
258 */
259[property, maybevoid] long HeaderLeftBorderDistance;
260//-----------------------------------------------------------------------------
261/** determines the right border distance of the header.
262 */
263[property, maybevoid] long HeaderRightBorderDistance;
264//-----------------------------------------------------------------------------
265/** determines the top border distance of the header.
266 */
267[property, maybevoid] long HeaderTopBorderDistance;
268//-----------------------------------------------------------------------------
269/** determines the bottom border distance of the header.
270 */
271[property, maybevoid] long HeaderBottomBorderDistance;
272//-----------------------------------------------------------------------------
273/** determines the shadow of the header.
274 */
275[property, maybevoid] com::sun::star::table::ShadowFormat HeaderShadowFormat;
276//-----------------------------------------------------------------------------
277/** determines the distance between the header and the body text area.
278 */
279[property, maybevoid] long HeaderBodyDistance;
280//-----------------------------------------------------------------------------
281/** determines if the header content on left and right pages is the same.
282 */
283[property, maybevoid] boolean HeaderIsShared;
284//-----------------------------------------------------------------------------
285/** contains the height of the header.
286 */
287[property, maybevoid] long HeaderHeight;
288//-----------------------------------------------------------------------------
289/** determines if the height of the header depends on the content.
290 */
291[property, maybevoid] boolean HeaderIsDynamicHeight;
292//-----------------------------------------------------------------------------
293/** determines if a header is used on the page.
294 */
295[property] boolean HeaderIsOn;
296
297//-----------------------------------------------------------------------------
298/** contains the interface to the text of the header.
299 */
300[optional, property, maybevoid] com::sun::star::text::XText HeaderText;
301//-----------------------------------------------------------------------------
302/** contains the interface to the text of the header of left pages.
303 */
304[optional, property, maybevoid] com::sun::star::text::XText HeaderTextLeft;
305//-----------------------------------------------------------------------------
306/** contains the interface to the text of the header of right pages.
307 */
308[optional, property, maybevoid] com::sun::star::text::XText HeaderTextRight;
309
310//-----------------------------------------------------------------------------
311/** contains the color of the background of the footer.
312 */
313[property, maybevoid] com::sun::star::util::Color FooterBackColor;
314//-----------------------------------------------------------------------------
315/**
316 */
317//[property, maybevoid] FooterBackGraphic;
318//-----------------------------------------------------------------------------
319/** contains the URL of the background graphic in the footer.
320 */
321[property, maybevoid] string FooterBackGraphicURL;
322//-----------------------------------------------------------------------------
323/** contains the filter name of the background graphic in the footer.
324 */
325[property, maybevoid] string FooterBackGraphicFilter;
326//-----------------------------------------------------------------------------
327/** determines the location of the background graphic in the footer.
328 */
329[property, maybevoid] com::sun::star::style::GraphicLocation FooterBackGraphicLocation;
330//-----------------------------------------------------------------------------
331/** determines the left margin of the footer.
332 */
333[property, maybevoid] long FooterLeftMargin;
334//-----------------------------------------------------------------------------
335/** determines the right margin of the footer.
336 */
337[property, maybevoid] long FooterRightMargin;
338//-----------------------------------------------------------------------------
339/** determines if the background of the footer is transparent.
340 */
341[property, maybevoid] boolean FooterBackTransparent;
342//-----------------------------------------------------------------------------
343/** contains the style of the left border line of the footer.
344 */
345[property, maybevoid] com::sun::star::table::BorderLine FooterLeftBorder;
346//-----------------------------------------------------------------------------
347/** contains the style of the right border line of the footer.
348 */
349[property, maybevoid] com::sun::star::table::BorderLine FooterRightBorder;
350//-----------------------------------------------------------------------------
351/** contains the style of the top border line of the footer.
352 */
353[property, maybevoid] com::sun::star::table::BorderLine FooterTopBorder;
354//-----------------------------------------------------------------------------
355/** contains the style of the bottom border line of the footer.
356 */
357[property, maybevoid] com::sun::star::table::BorderLine FooterBottomBorder;
358//-----------------------------------------------------------------------------
359/** contains the left border distance of the footer.
360 */
361[property, maybevoid] long FooterLeftBorderDistance;
362//-----------------------------------------------------------------------------
363/** contains the right border distance of the footer.
364 */
365[property, maybevoid] long FooterRightBorderDistance;
366//-----------------------------------------------------------------------------
367/** contains the top border distance of the footer.
368 */
369[property, maybevoid] long FooterTopBorderDistance;
370//-----------------------------------------------------------------------------
371/** contains the bottom border distance of the footer.
372 */
373[property, maybevoid] long FooterBottomBorderDistance;
374//-----------------------------------------------------------------------------
375/** determines the shadow of the footer.
376 */
377[property, maybevoid] com::sun::star::table::ShadowFormat FooterShadowFormat;
378//-----------------------------------------------------------------------------
379/** determines the distance between the footer and the body text area.
380 */
381[property, maybevoid] long FooterBodyDistance;
382//-----------------------------------------------------------------------------
383/** determines if the height of the footer depends on the content.
384 */
385[property, maybevoid] boolean FooterIsDynamicHeight;
386//-----------------------------------------------------------------------------
387/** determines if the footer content on left and right pages is the same.
388 */
389[property, maybevoid] boolean FooterIsShared;
390//-----------------------------------------------------------------------------
391/** determines the height of the footer.
392 */
393[property, maybevoid] long FooterHeight;
394//-----------------------------------------------------------------------------
395/** determines if a footer is used on the page.
396 */
397[property] boolean FooterIsOn;
398//-----------------------------------------------------------------------------
399/** contains the interface to the text of the footer.
400 */
401[optional, property, maybevoid] com::sun::star::text::XText FooterText;
402//-----------------------------------------------------------------------------
403/** contains the interface to the text of the footer of a left page.
404 */
405[optional, property, maybevoid] com::sun::star::text::XText FooterTextLeft;
406//-----------------------------------------------------------------------------
407/** contains the interface to the text of the footer of a right page.
408 */
409//-----------------------------------------------------------------------------
410/** contains .
411 */
412[optional, property, maybevoid] com::sun::star::text::XText FooterTextRight;
413//-----------------------------------------------------------------------------
414/** contains the maximum height of the footnote area. If set to zero then the height
415of the current page is used as limit.
416 */
417[optional,property] long FootnoteHeight;
418//-----------------------------------------------------------------------------
419/** contains the weight of the separator line between the text and the footnote area.
420 */
421[optional,property] short FootnoteLineWeight;
422//-----------------------------------------------------------------------------
423/** contains the color of the separator line between the text and the footnote area..
424 */
425[optional,property] com::sun::star::util::Color FootnoteLineColor;
426//-----------------------------------------------------------------------------
427/** contains the relative width of the separator line between the text and the footnote area.
428 */
429[optional,property] byte FootnoteLineRelativeWidth;
430//-----------------------------------------------------------------------------
431/** contains the adjustment of the separator line between the text and the footnote area.
432 	<p><type scope="com::sun::star::text">HorizontalAdjust</type>s.</p>
433 */
434[optional,property] short FootnoteLineAdjust;
435//-----------------------------------------------------------------------------
436/** contains the distance between the text and the separator line between the
437 text and the footnote area.
438 */
439[optional,property] long FootnoteLineTextDistance;
440//-----------------------------------------------------------------------------
441/** contains the distance between the footnote area and the separator line between
442 	the text and the footnote area.
443 */
444[optional,property] long FootnoteLineDistance;
445//-----------------------------------------------------------------------------
446/** contains the writing direction, as represented by the <type
447 scope="com::sun::star::text">WritingMode2</type> constants */
448[optional,property] short WritingMode;
449//-----------------------------------------------------------------------------
450/** contains the mode of the text grid (none, lines, ...), as
451    represented by <type scope="com::sun::star::text">TextGridMode</type>
452    constants */
453[optional, property] short GridMode;
454//-----------------------------------------------------------------------------
455/** contains the display color of the text grid */
456[optional, property] com::sun::star::util::Color GridColor;
457//-----------------------------------------------------------------------------
458/** contains the number of lines in the text grid */
459[optional, property] short GridLines;
460//-----------------------------------------------------------------------------
461/** contains the height of the base text line inside the text grid */
462[optional, property] long GridBaseHeight;
463//-----------------------------------------------------------------------------
464/** contains the height of the ruby text line inside the text grid */
465[optional, property] long GridRubyHeight;
466//-----------------------------------------------------------------------------
467/** determines whether the text grid's ruby line is located below or
468    above the base line */
469[optional, property] boolean GridRubyBelow;
470//-----------------------------------------------------------------------------
471/** determines whether the text grid lines are printed */
472[optional, property] boolean GridPrint;
473//-----------------------------------------------------------------------------
474/** determines whether the text grid lines are visible or not */
475[optional, property] boolean GridDisplay;
476//-----------------------------------------------------------------------------
477/** determines whether to use dynamic spacing in header or not. */
478[optional, property, maybevoid] boolean HeaderDynamicSpacing;
479//-----------------------------------------------------------------------------
480/** determines whether to use dynamic spacing in footer or not. */
481[optional, property, maybevoid] boolean FooterDynamicSpacing;
482//-----------------------------------------------------------------------------
483/** determines the distance of all borders of the page. */
484[property] long BorderDistance;
485//-----------------------------------------------------------------------------
486/** contains the distance of all borders of the footer. */
487[property, maybevoid] long FooterBorderDistance;
488//-----------------------------------------------------------------------------
489/** determines the distance of all borders of the header. */
490[property, maybevoid] long HeaderBorderDistance;
491
492};
493//=============================================================================
494
495}; }; }; };
496
497#endif
498
499