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