diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 09:06:44 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-07 09:06:44 +0000 |
commit | ed5640d8b587fbcfed7dd7967f3de04b37a76f26 (patch) | |
tree | 7a5f7c6c9d02226d7471cb3cc8fbbf631b415303 /offapi/com/sun/star/style | |
parent | Initial commit. (diff) | |
download | libreoffice-upstream.tar.xz libreoffice-upstream.zip |
Adding upstream version 4:7.4.7.upstream/4%7.4.7upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'offapi/com/sun/star/style')
43 files changed, 4479 insertions, 0 deletions
diff --git a/offapi/com/sun/star/style/BreakType.idl b/offapi/com/sun/star/style/BreakType.idl new file mode 100644 index 000000000..2af3ff7de --- /dev/null +++ b/offapi/com/sun/star/style/BreakType.idl @@ -0,0 +1,96 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_BreakType_idl__ +#define __com_sun_star_style_BreakType_idl__ + + + + module com { module sun { module star { module style { + +/** These enumeration values are used to specify if and how a page or + column break is applied. + */ +published enum BreakType +{ + /** No column or page break is applied. + */ + NONE, + + /** A column break is applied before the object to which it belongs. + + + + <p>This implies that the object to which it belongs is the + first in its column.</p> + */ + COLUMN_BEFORE, + + /** A column break is applied after the object to which it belongs. + + + + <p>This implies that the object to which it belongs is the last + in its column.</p> + */ + COLUMN_AFTER, + + /** A column break is applied before and after the object to which + it belongs. + + + + <p>This implies that this object is the only one in its column.</p> + */ + COLUMN_BOTH, + + /** A page break is applied before the object to which it belongs. + + + + <p>This implies that the object to which it belongs is the + first on its page. </p> + */ + PAGE_BEFORE, + + /** A page break is applied after the object to which it belongs. + + + + <p>This implies that the object to which it belongs is the last + on its page.</p> + */ + PAGE_AFTER, + + /** A page break is applied before and after the object to which + it belongs. + + + + <p>This implies that this object is the only one on its page.</p> + */ + PAGE_BOTH + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/CaseMap.idl b/offapi/com/sun/star/style/CaseMap.idl new file mode 100644 index 000000000..4ced7d697 --- /dev/null +++ b/offapi/com/sun/star/style/CaseMap.idl @@ -0,0 +1,58 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_CaseMap_idl__ +#define __com_sun_star_style_CaseMap_idl__ + + + + module com { module sun { module star { module style { + +/** These constants are used to specify a case-related mapping for + formatting and displaying characters. + */ +published constants CaseMap +{ + /** The case of the characters is unchanged. + */ + const short NONE = 0; + + /** All characters are put in upper case. + */ + const short UPPERCASE = 1; + + /** All characters are put in lower case. + */ + const short LOWERCASE = 2; + + /** The first character of each word is put in upper case. + */ + const short TITLE = 3; + + /** All characters are put in upper case, but with a smaller font height. + */ + const short SMALLCAPS = 4; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/CellStyle.idl b/offapi/com/sun/star/style/CellStyle.idl new file mode 100644 index 000000000..9849f0274 --- /dev/null +++ b/offapi/com/sun/star/style/CellStyle.idl @@ -0,0 +1,47 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef __com_sun_star_style_CellStyle_idl__ +#define __com_sun_star_style_CellStyle_idl__ + +#include <com/sun/star/style/Style.idl> + + +module com { module sun { module star { module style { + + +/** is a common service for table cell styles. + + @see com::sun::star::sheet::TableCellStyle + */ +published service CellStyle +{ + + /** provides common functionality for styles. + */ + service com::sun::star::style::Style; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/CharacterProperties.idl b/offapi/com/sun/star/style/CharacterProperties.idl new file mode 100644 index 000000000..edb40949d --- /dev/null +++ b/offapi/com/sun/star/style/CharacterProperties.idl @@ -0,0 +1,489 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_CharacterProperties_idl__ +#define __com_sun_star_style_CharacterProperties_idl__ + +#include <com/sun/star/lang/Locale.idl> +#include <com/sun/star/util/Color.idl> +#include <com/sun/star/awt/FontSlant.idl> +#include <com/sun/star/container/XNameContainer.idl> +#include <com/sun/star/table/BorderLine2.idl> +#include <com/sun/star/table/ShadowFormat.idl> +#include <com/sun/star/beans/PropertyValue.idl> + + + module com { module sun { module star { module style { + + +/** This is a set of properties to describe the style of characters.@see ParagraphProperties + */ +published service CharacterProperties +{ + + /** This property specifies the name of the font style. + + <p>It may contain more than one name separated by comma.</p> + */ + [property] string CharFontName; + + + /** This property contains the name of the font style. + + <p>This property may be empty.</p> + */ + [property] string CharFontStyleName; + + + /** This property contains font family. + @see com::sun::star::awt::FontFamily + */ + [property] short CharFontFamily; + + + /** This property contains the text encoding of the font. + @see com::sun::star::awt::CharSet + */ + [property] short CharFontCharSet; + + + /** This property contains the font pitch. + @see com::sun::star::awt::FontPitch + */ + [property] short CharFontPitch; + + + /** This property contains the value of the text color. + */ + [property] com::sun::star::util::Color CharColor; + + + /** specifies the percentage by which to raise/lower superscript/subscript + characters. + + <p>Negative values denote subscripts and positive values superscripts.</p> + + @see CharEscapementHeight + */ + [optional, property] short CharEscapement; + + + /** This value contains the height of the characters in point. + */ + [property] float CharHeight; + + + /** This property contains the value for the character underline. + @see com::sun::star::awt::FontUnderline + */ + [property] short CharUnderline; + + + /** This property contains the value of the font weight. + @see com::sun::star::awt::FontWeight + */ + [property] float CharWeight; + + + /** This property contains the value of the posture of the document. + @see com::sun::star::awt::FontSlant + */ + [property] com::sun::star::awt::FontSlant CharPosture; + + + /** This optional property determines whether the kerning tables from the + current font are used. + + <p>Automatic <em>kerning</em> applies a spacing in between certain + pairs of characters to make the text look better.</p> + */ + [optional, property] boolean CharAutoKerning; + + + /** This optional property contains the text background color. + */ + [optional, property] com::sun::star::util::Color CharBackColor; + + + /** This optional property contains the text shading value. + */ + [optional, property] long CharShadingValue; + + + /** This property determines if the text background color is set to + transparent. + */ + [optional, property] boolean CharBackTransparent; + + + /** This optional property contains the value of the case-mapping of the + text for formatting and displaying. + + @see CaseMap + */ + [optional, property] short CharCaseMap; + + + /** This property is `TRUE` if the characters are crossed out. + */ + [optional, property] boolean CharCrossedOut; + + + /** If this optional property is `TRUE`, then the characters are flashing. + */ + [optional, property] boolean CharFlash; + + + /** This property determines the type of the strike out of the character. + @see com::sun::star::awt::FontStrikeout + */ + [optional, property] short CharStrikeout; + + + /** If this property is `TRUE`, the underline and strike-through + properties are not applied to white spaces. + */ + [optional, property] boolean CharWordMode; + + + /** This optional property contains the value of the kerning of the + characters. + */ + [optional, property] short CharKerning; + + + /** This property contains the value of the locale. + */ + [property] com::sun::star::lang::Locale CharLocale; + + + /** This optional property marks a range of characters to prevent it from + being broken into two lines. + + <p> A line break is applied before the range of characters if + the layout makes a break necessary within the range.</p> + */ + [optional, property] boolean CharKeepTogether; + + + /** This optional property marks a range of characters to ignore a line + break in this area. + + <p> A line break is applied behind the range of characters if + the layout makes a break necessary within the range. That means that + the text may go through the border.</p> + */ + [optional, property] boolean CharNoLineBreak; + + + /** This optional property specifies if the characters are formatted and + displayed with a shadow effect. + */ + [optional, property] boolean CharShadowed; + + + /** This optional property specifies the fundamental technology of the font. + @see com::sun::star::awt::FontType + */ + [optional, property] short CharFontType; + + + /** This optional property specifies the name of the style of the font. + */ + [optional, property] string CharStyleName; + + + /** This optional property specifies if the characters are formatted and + displayed with a contour effect. + */ + [optional, property] boolean CharContoured; + + + /** This optional property determines whether text is formatted in two lines. + + <p>It is linked to the properties CharCombinePrefix and CharCombineSuffix.</p> + */ + [optional, property] boolean CharCombineIsOn; + + + /** This optional property contains the prefix (usually parenthesis) before + text that is formatted in two lines. + + <p>It is linked to the properties CharCombineIsOn and CharCombineSuffix.</p> + */ + [optional, property] string CharCombinePrefix; + + + /** This optional property contains the suffix (usually parenthesis) after + text that is formatted in two lines. + + <p>It is linked to the properties CharCombineIsOn and CharCombinePrefix.</p> + */ + [optional, property] string CharCombineSuffix; + + + /** This optional property contains the font emphasis value. + @see com::sun::star::text::FontEmphasis + */ + [optional, property] short CharEmphasis; + + + /** This optional property contains the relief style of the characters. + @see com::sun::star::text::FontRelief + */ + [optional, property] short CharRelief; + + + /** This optional property contains the text that is set as ruby. + */ + [optional, property] string RubyText; + + + /** This optional property determines the adjustment of the ruby . + @see com::sun::star::text::RubyAdjust + */ + [optional, property] short RubyAdjust; + + + /** This optional property contains the name of the character style that is + applied to RubyText. + */ + [optional, property] string RubyCharStyleName; + + + /** This optional property determines whether the ruby text is printed + above/left or below/right of the text. + <p>This property is replaced by RubyPosition.</p> + @deprecated + */ + [optional, property] boolean RubyIsAbove; + + + /** This optional property determines the rotation of a character in tenths + of a degree. + + <p>Depending on the implementation only certain values may be allowed.</p> + */ + [optional, property] short CharRotation; + + + /** This optional property determines whether the text formatting tries to + fit rotated text into the surrounded line height. + */ + [optional, property] boolean CharRotationIsFitToLine; + + + /** This optional property determines the percentage value for scaling the + width of characters. + + <p>The value refers to the original width which is denoted by 100, + and it has to be greater than 0.</p> + */ + [optional, property] short CharScaleWidth; + + + /** This optional property contains the URL of a hyperlink. + */ + [optional, property] string HyperLinkURL; + + + /** This optional property contains the name of the target for a hyperlink. + */ + [optional, property] string HyperLinkTarget; + + + /** This optional property contains the name of the hyperlink. + */ + [optional, property] string HyperLinkName; + + + /** This optional property contains the character style name for visited + hyperlinks. + */ + [optional, property] string VisitedCharStyleName; + + + /** This optional property contains the character style name for unvisited + hyperlinks. + */ + [optional, property] string UnvisitedCharStyleName; + + + /** This is the relative height used for subscript or superscript + characters in units of percent. + + <p>The value 100 denotes the original height of the characters.</p> + + @see CharEscapement + */ + [optional, property] byte CharEscapementHeight; + + + /** This optional property determines if the word can be hyphenated at the + character. + */ + [optional, property] boolean CharNoHyphenation; + + + /** This property contains the color of the underline for the characters. + @see CharUnderlineHasColor + */ + [property] com::sun::star::util::Color CharUnderlineColor; + + + /** This property specifies if the property CharUnderlineColor is used for + an underline. + @see CharUnderlineColor + */ + [property] boolean CharUnderlineHasColor; + + + /** This optional property specifies the names of the all styles applied to + the font. + + <p> It is not guaranteed that the order in the sequence reflects + the order of the evaluation of the character style attributes.</p> + + @since OOo 1.1.2 + */ + [optional, property] sequence<string> CharStyleNames; + + + /** If this optional property is `TRUE`, then the characters are invisible. + + @since OOo 2.0 + */ + [optional, property] boolean CharHidden; + + + /** This property stores XML attributes. They will be saved to and restored + from automatic styles inside XML files. + + @see com::sun::star::xml::AttributeContainer + */ + [optional, property] com::sun::star::container::XNameContainer TextUserDefinedAttributes; + + /** This property contains the left border of the object. + * + * @since LibreOffice 4.2 + **/ + [property, optional] com::sun::star::table::BorderLine2 CharLeftBorder; + + /** This property contains the right border of the object. + * + * @since LibreOffice 4.2 + **/ + [property, optional] com::sun::star::table::BorderLine2 CharRightBorder; + + /** This property contains the top border of the object. + * + * @since LibreOffice 4.2 + **/ + [property, optional] com::sun::star::table::BorderLine2 CharTopBorder; + + /** This property contains the bottom border of the object. + * + * @since LibreOffice 4.2 + **/ + [property, optional] com::sun::star::table::BorderLine2 CharBottomBorder; + + /** This property contains the distance from the border to the object. + * + * @since LibreOffice 4.2 + **/ + [property, optional] long CharBorderDistance; + + /** This property contains the distance from the left border to the object. + * + * @since LibreOffice 4.2 + **/ + [property, optional] long CharLeftBorderDistance; + + /** This property contains the distance from the right border to the object. + * + * @since LibreOffice 4.2 + **/ + [property, optional] long CharRightBorderDistance; + + /** This property contains the distance from the top border to the object. + * + * @since LibreOffice 4.2 + **/ + [property, optional] long CharTopBorderDistance; + + /** This property contains the distance from the bottom border to the object. + * + * @since LibreOffice 4.2 + **/ + [property, optional] long CharBottomBorderDistance; + + /** Determines the type, color, and width of the shadow. + * + * @since LibreOffice 4.2 + **/ + [optional, property] com::sun::star::table::ShadowFormat CharShadowFormat; + + /** Determines the color of the highlight. + * + * @since LibreOffice 4.2 + **/ + [optional, property] com::sun::star::util::Color CharHighlight; + + /** Grab bag of character properties, used as a string-any map for interim interop purposes. + + @since LibreOffice 4.3 + + <p>This property is intentionally not handled by the ODF filter. Any + member that should be handled there should be first moved out from this grab + bag to a separate property.</p> + */ + [optional, property] sequence<com::sun::star::beans::PropertyValue> CharInteropGrabBag; + + /** This optional property determines the position of the ruby . + @see com::sun::star::text::RubyPosition + @since LibreOffice 6.1 + */ + [optional, property] short RubyPosition; + + /** This is the transparency of the character text. + + @since LibreOffice 7.0 + + <p>The value 100 means entirely transparent, while 0 means not transparent at all.</p> + */ + [optional, property] short CharTransparence; + + /** If available, keeps the color theme index, so that the character can + * be re-colored easily based on a theme. + * + * @since LibreOffice 7.3 + **/ + [optional, property] short CharColorTheme; + + /** Tint or shade of the character color. + * + * @since LibreOffice 7.3 + **/ + [optional, property] short CharColorTintOrShade; +}; + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/CharacterPropertiesAsian.idl b/offapi/com/sun/star/style/CharacterPropertiesAsian.idl new file mode 100644 index 000000000..3ac7f015f --- /dev/null +++ b/offapi/com/sun/star/style/CharacterPropertiesAsian.idl @@ -0,0 +1,69 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_CharacterPropertiesAsian_idl__ +#define __com_sun_star_style_CharacterPropertiesAsian_idl__ + +#include <com/sun/star/lang/Locale.idl> +#include <com/sun/star/awt/FontSlant.idl> + + + + module com { module sun { module star { module style { + +/** This is a set of properties to describe the style of characters in Asian texts. + */ +published service CharacterPropertiesAsian +{ + /** This value contains the height of the characters in point. + */ + [property] float CharHeightAsian; + /** This property contains the value of the font weight.@see com::sun::star::awt::FontWeight + */ + [property] float CharWeightAsian; + /** This property specifies the name of the font style. + <p>It may contain more than one name separated by comma.</p> + */ + [property] string CharFontNameAsian; + /** This property contains the name of the font style. + <p>This property may be empty.</p> + */ + [property] string CharFontStyleNameAsian; + /** This property contains font family as specified in + com.sun.star.awt.FontFamily . + */ + [property] short CharFontFamilyAsian; + /** This property contains the text encoding of the font as specified in + com.sun.star.awt.CharSet. + */ + [property] short CharFontCharSetAsian; + /** This property contains the font pitch as specified in com.sun.star.awt.FontPitch. + */ + [property] short CharFontPitchAsian; + /** This property contains the value of the posture of the document.@see com::sun::star::awt::FontSlant + */ + [property] com::sun::star::awt::FontSlant CharPostureAsian; + + /** contains the value of the locale. + */ + [property] com::sun::star::lang::Locale CharLocaleAsian; +}; +}; }; }; }; +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/CharacterPropertiesComplex.idl b/offapi/com/sun/star/style/CharacterPropertiesComplex.idl new file mode 100644 index 000000000..d3da3bbee --- /dev/null +++ b/offapi/com/sun/star/style/CharacterPropertiesComplex.idl @@ -0,0 +1,69 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_CharacterPropertiesComplex_idl__ +#define __com_sun_star_style_CharacterPropertiesComplex_idl__ + +#include <com/sun/star/lang/Locale.idl> +#include <com/sun/star/awt/FontSlant.idl> + + + module com { module sun { module star { module style { + + +/** This is a set of properties to describe the style of characters in complex texts. + */ +published service CharacterPropertiesComplex +{ + /** This value contains the height of the characters in point. + */ + [property] float CharHeightComplex; + /** This property contains the value of the font weight.@see com::sun::star::awt::FontWeight + */ + [property] float CharWeightComplex; + /** This property specifies the name of the font style. + <p>It may contain more than one name separated by comma.</p> + */ + [property] string CharFontNameComplex; + /** This property contains the name of the font style. + <p>This property may be empty.</p> + */ + [property] string CharFontStyleNameComplex; + /** This property contains font family as specified in + com.sun.star.awt.FontFamily . + */ + [property] short CharFontFamilyComplex; + /** This property contains the text encoding of the font as specified in + com.sun.star.awt.CharSet. + */ + [property] short CharFontCharSetComplex; + /** This property contains the font pitch as specified in com.sun.star.awt.FontPitch. + */ + [property] short CharFontPitchComplex; + /** This property contains the value of the posture of the document.@see com::sun::star::awt::FontSlant + */ + [property] com::sun::star::awt::FontSlant CharPostureComplex; + + /** contains the value of the locale. + */ + [property] com::sun::star::lang::Locale CharLocaleComplex; +}; +}; }; }; }; +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/CharacterStyle.idl b/offapi/com/sun/star/style/CharacterStyle.idl new file mode 100644 index 000000000..6ea0edc33 --- /dev/null +++ b/offapi/com/sun/star/style/CharacterStyle.idl @@ -0,0 +1,70 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_CharacterStyle_idl__ +#define __com_sun_star_style_CharacterStyle_idl__ + +#include <com/sun/star/style/CharacterProperties.idl> +#include <com/sun/star/style/Style.idl> + + + module com { module sun { module star { module style { + + +/** specifies a style sheet for characters within a + com::sun::star::text::Text. + */ +published service CharacterStyle +{ + /// specifies administrative properties. + service Style; + + /// specifies the style properties. + service CharacterProperties; + /** This value contains the character height as difference in point to the height of + the character in the parent style. + */ + [property] float CharDiffHeight; + /** This value contains the character height as percentage value relative to the height of + the character in the parent style. + */ + [property] short CharPropHeight; + /** This value contains the character height as difference in point to the height of + the character in the parent style in Asian text. + */ + [property] float CharDiffHeightAsian; + /** This value contains the character height as percentage value relative to the height of + the character in the parent style in Asian text. + */ + [property] short CharPropHeightAsian; + /** This value contains the character height as difference in point to the height of + the character in the parent style in complex text. + */ + [property] float CharDiffHeightComplex; + /** This value contains the character height as percentage value relative to the height of + the character in the parent style in complex text. + */ + [property] short CharPropHeightComplex; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/DropCapFormat.idl b/offapi/com/sun/star/style/DropCapFormat.idl new file mode 100644 index 000000000..745fd50bf --- /dev/null +++ b/offapi/com/sun/star/style/DropCapFormat.idl @@ -0,0 +1,49 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_DropCapFormat_idl__ +#define __com_sun_star_style_DropCapFormat_idl__ + + + + module com { module sun { module star { module style { + +/** This struct describes drop caps at a paragraph object. + */ +published struct DropCapFormat +{ + /** This is the number of lines used for a drop cap. + */ + byte Lines; + + /** This is the number of characters in the drop cap. + */ + byte Count; + + /** This is the distance between the drop cap in the following text. + */ + short Distance; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/FootnoteLineStyle.idl b/offapi/com/sun/star/style/FootnoteLineStyle.idl new file mode 100644 index 000000000..46d0f3e20 --- /dev/null +++ b/offapi/com/sun/star/style/FootnoteLineStyle.idl @@ -0,0 +1,28 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + */ +#ifndef __com_sun_star_style_FootnoteLineStyle_idl__ +#define __com_sun_star_style_FootnoteLineStyle_idl__ + +module com { module sun { module star { module style { + +published constants FootnoteLineStyle +{ + const short NONE = 0; + + const short SOLID = 1; + + const short DOTTED = 2; + + const short DASHED = 3; +}; + +}; }; }; }; +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/GraphicLocation.idl b/offapi/com/sun/star/style/GraphicLocation.idl new file mode 100644 index 000000000..62c3a425e --- /dev/null +++ b/offapi/com/sun/star/style/GraphicLocation.idl @@ -0,0 +1,87 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_GraphicLocation_idl__ +#define __com_sun_star_style_GraphicLocation_idl__ + + + + module com { module sun { module star { module style { + +/** These enumeration values are used to specify the location of a + graphic object within its surroundings. + */ +published enum GraphicLocation +{ + /** This value specifies that a location is not yet assigned. + */ + NONE, + + /** The graphic is located in the top left corner. + */ + LEFT_TOP, + + /** The graphic is located in the middle of the top edge. + */ + MIDDLE_TOP, + + /** The graphic is located in the top right corner. + */ + RIGHT_TOP, + + /** The graphic is located in the middle of the left edge. + */ + LEFT_MIDDLE, + + /** The graphic is located at the center of the surrounding object. + */ + MIDDLE_MIDDLE, + + /** The graphic is located in the middle of the right edge. + */ + RIGHT_MIDDLE, + + /** The graphic is located in the bottom left corner. + */ + LEFT_BOTTOM, + + /** The graphic is located in the middle of the bottom edge. + */ + MIDDLE_BOTTOM, + + /** The graphic is located in the bottom right corner. + */ + RIGHT_BOTTOM, + + /** The graphic is scaled to fill the whole surrounding area. + */ + AREA, + + /** The graphic is repeatedly spread over the surrounding object + like tiles. + */ + TILED + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/HorizontalAlignment.idl b/offapi/com/sun/star/style/HorizontalAlignment.idl new file mode 100644 index 000000000..a9bef1b57 --- /dev/null +++ b/offapi/com/sun/star/style/HorizontalAlignment.idl @@ -0,0 +1,48 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_HorizontalAlignment_idl__ +#define __com_sun_star_style_HorizontalAlignment_idl__ + + + + module com { module sun { module star { module style { + +/** values specify the horizontal alignment of + an object within a container object. + */ +published enum HorizontalAlignment +{ + /** set the horizontal alignment to the left margin from the container object + */ + LEFT, + /** set the horizontal alignment to the center between the margins from the container object + */ + CENTER, + /** set the horizontal alignment to the right margin from the container object + */ + RIGHT + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/LineNumberPosition.idl b/offapi/com/sun/star/style/LineNumberPosition.idl new file mode 100644 index 000000000..c7bd23567 --- /dev/null +++ b/offapi/com/sun/star/style/LineNumberPosition.idl @@ -0,0 +1,54 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_LineNumberPosition_idl__ +#define __com_sun_star_style_LineNumberPosition_idl__ + + + + module com { module sun { module star { module style { + +/** These constants are used to specify the position of the numbering + of lines. + */ +published constants LineNumberPosition +{ + /** the number occurs on the left side of the pages. + */ + const short LEFT = 0; + + /** the number occurs on the right side of the pages. + */ + const short RIGHT = 1; + + /** the number occurs alternating on the inner side of the pages. + */ + const short INSIDE = 2; + + /** the number occurs alternating on the outside side of the pages. + */ + const short OUTSIDE = 3; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/LineSpacing.idl b/offapi/com/sun/star/style/LineSpacing.idl new file mode 100644 index 000000000..70804d26e --- /dev/null +++ b/offapi/com/sun/star/style/LineSpacing.idl @@ -0,0 +1,45 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_LineSpacing_idl__ +#define __com_sun_star_style_LineSpacing_idl__ + + + + module com { module sun { module star { module style { + +/** This structure is used to specify the height of a text line.@see LineSpacingMode + */ +published struct LineSpacing +{ + /** This value specifies the way the height is specified. + */ + short Mode; + + /** This value specifies the height in regard to <var>Mode</var>. + */ + short Height; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/LineSpacingMode.idl b/offapi/com/sun/star/style/LineSpacingMode.idl new file mode 100644 index 000000000..5d3575f77 --- /dev/null +++ b/offapi/com/sun/star/style/LineSpacingMode.idl @@ -0,0 +1,53 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_LineSpacingMode_idl__ +#define __com_sun_star_style_LineSpacingMode_idl__ + + + + module com { module sun { module star { module style { + +/** These constants specify the interpretation of LineHeight. + */ +published constants LineSpacingMode +{ + /** This constant specifies the height value as a proportional value. + */ + const short PROP = 0; + + /** This constant specifies the height as the minimum line height. + */ + const short MINIMUM = 1; + + /** This constant specifies the height value as the distance to the previous line. + */ + const short LEADING = 2; + + /** This constant specifies the height value as a fixed line height. + */ + const short FIX = 3; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/NumberingAlignment.idl b/offapi/com/sun/star/style/NumberingAlignment.idl new file mode 100644 index 000000000..b30082d42 --- /dev/null +++ b/offapi/com/sun/star/style/NumberingAlignment.idl @@ -0,0 +1,55 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_NumberingAlignment_idl__ +#define __com_sun_star_style_NumberingAlignment_idl__ + +#include <com/sun/star/style/HorizontalAlignment.idl> + + + + module com { module sun { module star { module style { + +/** specify the alignment of a numbering level. + */ +published service NumberingAlignment +{ + /** set the alignment from the numbering. Use the com::sun::star::style::HorizontalAlignment enum to change the alignment. + */ + [property] com::sun::star::style::HorizontalAlignment Alignment; + + /** the minimum distance between the numbering symbol and the following text. + */ + [property] short TextMarginDistance; + + /** the distance between left margin and the numbering symbol. + */ + [property] short TextNumberingDistance; + + /** the distance between the numbering symbol and text. + */ + [property] short Insertion; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/NumberingLevel.idl b/offapi/com/sun/star/style/NumberingLevel.idl new file mode 100644 index 000000000..16402da79 --- /dev/null +++ b/offapi/com/sun/star/style/NumberingLevel.idl @@ -0,0 +1,112 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_NumberingLevel_idl__ +#define __com_sun_star_style_NumberingLevel_idl__ + +#include <com/sun/star/graphic/XGraphic.idl> + + module com { module sun { module star { module style { + +/** These properties describe the numbering of a paragraph. + + <p>NumberType determines the type of the numbering symbol. + Depending on this setting, some of the following values will be + ignored.</p> + */ +published service NumberingLevel +{ + /** specifies the type of numbering.@see NumberingType + */ + [property] short NumberingType; + + /** specifies the number of higher numbering levels that + are included in the representation of the current number. + */ + [property] short ParentNumbering; + + /** This prefix is inserted in front of the numbering symbol(s). + + @deprecated as of LibreOffice 7.2, use ListFormat instead + */ + [property] string Prefix; + + /** This suffix is inserted after the numbering symbol(s). + + @deprecated as of LibreOffice 7.2, use ListFormat instead + */ + [property] string Suffix; + + /** This is the name of the character style that is used for the symbol(s). + */ + [property] string CharStyleName; + + /** The bullet symbol with this code in the assigned font is used. + */ + [property] short BulletId; + + /** This is the name of the font that is used for the bullet. + */ + [property] string BulletFontName; + + /** This is the URL of a graphic file to use as a symbol. + + @deprecated as of LibreOffice 6.1, use Graphic instead + + Note the new behaviour since it this was deprecated: + This property can only be set and only external URLs are + supported (no more vnd.sun.star.GraphicObject scheme). When an + URL is set, then it will load the graphic and set the + GraphicBitmap property. + */ + [property] string GraphicURL; + + /** This specifies the start value for the numbering. + */ + [property] short StartWith; + + /** This is the graphic bitmap to use as a symbol. + + @since LibreOffice 6.1 + */ + [optional, property] com::sun::star::awt::XBitmap GraphicBitmap; + + /** Format string used to generate actual numbering. + + It contains placeholders (like %1%, %2%, etc) where corresponding + level numberings are inserted. + + This is more flexible way to provide multilevel numbering with + complex format string. This property is a replacement for + Prefix and Suffix: if ListFormat is provided, they are not used + anymore. + + Example: ListFormat "(%1% %2%.%3%)" can be resolved to numbering + in actual multilevel list like "(4 1.3)". + + @since LibreOffice 7.2 + */ + [optional, property] string ListFormat; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/NumberingRule.idl b/offapi/com/sun/star/style/NumberingRule.idl new file mode 100644 index 000000000..1f96b328c --- /dev/null +++ b/offapi/com/sun/star/style/NumberingRule.idl @@ -0,0 +1,47 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_NumberingRule_idl__ +#define __com_sun_star_style_NumberingRule_idl__ + +#include <com/sun/star/style/NumberingAlignment.idl> + +#include <com/sun/star/style/NumberingLevel.idl> + + + + module com { module sun { module star { module style { + +/** specifies a rule to format numberings. + + <p>It is normally represented by a sequence of + com::sun::star::beans::PropertyValues.</p> + */ +published service NumberingRule +{ + service com::sun::star::style::NumberingAlignment; + service com::sun::star::style::NumberingLevel; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/NumberingType.idl b/offapi/com/sun/star/style/NumberingType.idl new file mode 100644 index 000000000..57e98fcf4 --- /dev/null +++ b/offapi/com/sun/star/style/NumberingType.idl @@ -0,0 +1,558 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_NumberingType_idl__ +#define __com_sun_star_style_NumberingType_idl__ + + + + module com { module sun { module star { module style { + +/** These constants are used to specify which numbering style is used. + */ +published constants NumberingType +{ + /** Numbering is put in upper case letters as "A, B, C, D, ...". + */ + const short CHARS_UPPER_LETTER = 0; + + /** Numbering is in lower case letters as "a, b, c, e,...". + */ + const short CHARS_LOWER_LETTER = 1; + + /** Numbering is in Roman numbers with upper case letters + as "I, II, III, IV, ...". + */ + const short ROMAN_UPPER = 2; + + /** Numbering is in Roman numbers with lower case letters + as "i, ii, iii, iv, ...". + */ + const short ROMAN_LOWER = 3; + + /** Numbering is in Arabic numbers as "1, 2, 3, 4, ...". + */ + const short ARABIC = 4; + + /** Numbering is invisible. + */ + const short NUMBER_NONE = 5; + + /** Use a character from a specified font. + */ + const short CHAR_SPECIAL = 6; + + /** Numbering is specified in the page style. + */ + const short PAGE_DESCRIPTOR = 7; + + /** Numbering is displayed as a bitmap graphic. + */ + const short BITMAP = 8; + + /** Numbering is put in upper case letters as "A, B, ..., Y, Z, + AA, BB, CC, ... AAA, ...". + */ + const short CHARS_UPPER_LETTER_N = 9; + + /** Numbering is put in lower case letters as "a, b, ..., y, z, + aa, bb, cc, ... aaa, ...". + */ + const short CHARS_LOWER_LETTER_N =10; + + /** A transliteration module will be used to produce numbers in + Chinese, Japanese, etc. + */ + + const short TRANSLITERATION = 11; + + /** The NativeNumberSupplier service will be called to produce numbers in + native languages. + */ + const short NATIVE_NUMBERING = 12; + + /** Numbering for fullwidth Arabic number + */ + const short FULLWIDTH_ARABIC = 13; + + /** Bullet for Circle Number + */ + const short CIRCLE_NUMBER = 14; + + /** Numbering for Chinese lower case number + as "一,二,三..." + */ + const short NUMBER_LOWER_ZH = 15; + + /** Numbering for Chinese upper case number + */ + const short NUMBER_UPPER_ZH = 16; + + /** Numbering for Traditional Chinese upper case number + */ + const short NUMBER_UPPER_ZH_TW = 17; + + /** Bullet for Chinese Tian Gan + as "甲,乙,丙..." + */ + const short TIAN_GAN_ZH = 18; + + /** Bullet for Chinese Di Zi + as "子,丑,寅..." + */ + const short DI_ZI_ZH = 19; + + /** Numbering for Japanese traditional number + */ + const short NUMBER_TRADITIONAL_JA = 20; + + /** Bullet for Japanese AIU fullwidth + */ + const short AIU_FULLWIDTH_JA = 21; + + /** Bullet for Japanese AIU halfwidth + */ + const short AIU_HALFWIDTH_JA = 22; + + /** Bullet for Japanese IROHA fullwidth + */ + const short IROHA_FULLWIDTH_JA = 23; + + /** Bullet for Japanese IROHA halfwidth + */ + const short IROHA_HALFWIDTH_JA = 24; + + /** Numbering for Korean upper case number + as "壹,貳,參..." + */ + const short NUMBER_UPPER_KO = 25; + + /** Numbering for Korean Hangul number + as "일,이,삼..." + */ + const short NUMBER_HANGUL_KO = 26; + + /** Bullet for Korean Hangul Jamo + as "ㄱ,ㄴ,ㄷ..." + */ + const short HANGUL_JAMO_KO = 27; + + /** Bullet for Korean Hangul Syllable + as "가,나,다..." + */ + const short HANGUL_SYLLABLE_KO = 28; + + /** Bullet for Korean Hangul Circled Jamo + as "㉠,㉡,㉢..." + */ + const short HANGUL_CIRCLED_JAMO_KO = 29; + + /** Bullet for Korean Hangul Circled Syllable + as "㉮,㉯,㉰..." + */ + const short HANGUL_CIRCLED_SYLLABLE_KO = 30; + + /** Numbering in Arabic alphabet letters + as "أ,ب,ت..." + + @since OOo 1.1.2 + */ + const short CHARS_ARABIC = 31; + + /** Numbering in Thai alphabet letters + + @since OOo 1.1.2 + */ + const short CHARS_THAI = 32; + + /** Numbering in Hebrew alphabet letters + + @since OOo 2.0 + */ + const short CHARS_HEBREW = 33; + + /** Numbering in Nepali alphabet letters + + @since OOo 2.0.1 + */ + const short CHARS_NEPALI = 34; + + /** Numbering in Khmer alphabet letters + + @since OOo 2.0.1 + */ + const short CHARS_KHMER = 35; + + /** Numbering in Lao alphabet letters + + @since OOo 2.0.1 + */ + const short CHARS_LAO = 36; + /** Numbering in Tibetan/Dzongkha alphabet letters + + @since OOo 2.0.3 + */ + const short CHARS_TIBETAN = 37; + + /** Numbering in Cyrillic alphabet upper case letters as + "А, Б, В, Г, ..., Ю, Я, Ав, Аа, Ав, ... Ааа, Ааб". + + @since OOo 2.0.4 + */ + /* + Since IDL comments allow only 7-bit characters, hence the XHTML + entities above for the generated documentation, for the + developer here the human readable Unicode descriptions: + + CYRILLIC CAPITAL LETTER A , CYRILLIC CAPITAL LETTER BE , + CYRILLIC CAPITAL LETTER VE , CYRILLIC CAPITAL LETTER GHE , ... , + CYRILLIC CAPITAL LETTER YU , CYRILLIC CAPITAL LETTER YA , + CYRILLIC CAPITAL LETTER A CYRILLIC SMALL LETTER A , + CYRILLIC CAPITAL LETTER A CYRILLIC SMALL LETTER BE , + CYRILLIC CAPITAL LETTER A CYRILLIC SMALL LETTER VE , ... + CYRILLIC CAPITAL LETTER A CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER A , + CYRILLIC CAPITAL LETTER A CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER BE + */ + const short CHARS_CYRILLIC_UPPER_LETTER_BG = 38; + + /** Numbering in Cyrillic alphabet lower case letters as + "а, б, в, г, ..., ю, я, а а, аб, ав, ... а а а, а аб". + + @since OOo 2.0.4 + */ + /* + CYRILLIC SMALL LETTER A , CYRILLIC SMALL LETTER BE , + CYRILLIC SMALL LETTER VE , CYRILLIC SMALL LETTER GHE , ... , + CYRILLIC SMALL LETTER YU , CYRILLIC SMALL LETTER YA , + CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER A , + CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER BE , + CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER VE , ... + CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER A , + CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER BE + */ + const short CHARS_CYRILLIC_LOWER_LETTER_BG = 39; + + /** Numbering in Cyrillic alphabet upper case letters as + "А, Б, ..., Ю, Я, Аа, Бб, Вв, ... Ааа, ...". + + @since OOo 2.0.4 + */ + /* + CYRILLIC CAPITAL LETTER A , CYRILLIC CAPITAL LETTER BE , ... , + CYRILLIC CAPITAL LETTER YU , CYRILLIC CAPITAL LETTER YA , + CYRILLIC CAPITAL LETTER A CYRILLIC SMALL LETTER A , + CYRILLIC CAPITAL LETTER BE CYRILLIC SMALL LETTER BE , + CYRILLIC CAPITAL LETTER VE CYRILLIC SMALL LETTER VE , ... + CYRILLIC CAPITAL LETTER A CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER A , ... + */ + const short CHARS_CYRILLIC_UPPER_LETTER_N_BG = 40; + + /** Numbering in Cyrillic alphabet upper case letters as + "а, б, ..., ю, я, аа, бб, вв, ... ааа, ...". + + @since OOo 2.0.4 + */ + /* + CYRILLIC SMALL LETTER A , CYRILLIC SMALL LETTER BE , ... , + CYRILLIC SMALL LETTER YU , CYRILLIC SMALL LETTER YA , + CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER A , + CYRILLIC SMALL LETTER BE CYRILLIC SMALL LETTER BE , + CYRILLIC SMALL LETTER VE CYRILLIC SMALL LETTER VE , ... + CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER A , ... + */ + const short CHARS_CYRILLIC_LOWER_LETTER_N_BG = 41; + + /** Numbering in Russian Cyrillic alphabet upper case letters as + "А, Б, В, Г, ..., Ю, Я, Аа, Аб, Ав, ... Ааа, Ааб". + + @since OOo 2.0.4 + */ + /* + CYRILLIC CAPITAL LETTER A , CYRILLIC CAPITAL LETTER BE , + CYRILLIC CAPITAL LETTER VE , CYRILLIC CAPITAL LETTER GHE , ... , + CYRILLIC CAPITAL LETTER YU , CYRILLIC CAPITAL LETTER YA , + CYRILLIC CAPITAL LETTER A CYRILLIC SMALL LETTER A , + CYRILLIC CAPITAL LETTER A CYRILLIC SMALL LETTER BE , + CYRILLIC CAPITAL LETTER A CYRILLIC SMALL LETTER VE , ... + CYRILLIC CAPITAL LETTER A CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER A , + CYRILLIC CAPITAL LETTER A CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER BE + */ + const short CHARS_CYRILLIC_UPPER_LETTER_RU = 42; + + /** Numbering in Russian Cyrillic alphabet lower case letters as + "а, б, в, г, ..., ю, я, аа, аб, ав, ... ааа, ааб". + + @since OOo 2.0.4 + */ + /* + CYRILLIC SMALL LETTER A , CYRILLIC SMALL LETTER BE , + CYRILLIC SMALL LETTER VE , CYRILLIC SMALL LETTER GHE , ... , + CYRILLIC SMALL LETTER YU , CYRILLIC SMALL LETTER YA , + CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER A , + CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER BE , + CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER VE , ... + CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER A , + CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER BE + */ + const short CHARS_CYRILLIC_LOWER_LETTER_RU = 43; + + /** Numbering in Russian Cyrillic alphabet upper case letters as + "А, Б, ..., Ю, Я, Аа, Бб, Вв, ... Ааа, ...". + + @since OOo 2.0.4 + */ + /* + CYRILLIC CAPITAL LETTER A , CYRILLIC CAPITAL LETTER BE , ... , + CYRILLIC CAPITAL LETTER YU , CYRILLIC CAPITAL LETTER YA , + CYRILLIC CAPITAL LETTER A CYRILLIC SMALL LETTER A , + CYRILLIC CAPITAL LETTER BE CYRILLIC SMALL LETTER BE , + CYRILLIC CAPITAL LETTER VE CYRILLIC SMALL LETTER VE , ... + CYRILLIC CAPITAL LETTER A CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER A , ... + */ + const short CHARS_CYRILLIC_UPPER_LETTER_N_RU = 44; + + /** Numbering in Russian Cyrillic alphabet upper case letters as + "а, б, ..., ю, я, аа, бб, вв, ... ааа, ...". + + @since OOo 2.0.4 + */ + /* + CYRILLIC SMALL LETTER A , CYRILLIC SMALL LETTER BE , ... , + CYRILLIC SMALL LETTER YU , CYRILLIC SMALL LETTER YA , + CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER A , + CYRILLIC SMALL LETTER BE CYRILLIC SMALL LETTER BE , + CYRILLIC SMALL LETTER VE CYRILLIC SMALL LETTER VE , ... + CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER A , ... + */ + const short CHARS_CYRILLIC_LOWER_LETTER_N_RU = 45; + + /** Numbering in Persian alphabet letters (aa, be, pe, te, ...) + + @since OOo 2.4 + */ + const short CHARS_PERSIAN = 46; + + /** Numbering in Myanmar alphabet letters + + @since OOo 3.1 + */ + const short CHARS_MYANMAR = 47; + + /** Numbering in Serbian Cyrillic alphabet upper case letters + + @since OOo 3.1 + */ + /* + CYRILLIC CAPITAL LETTER A , CYRILLIC CAPITAL LETTER BE , + CYRILLIC CAPITAL LETTER VE , CYRILLIC CAPITAL LETTER GHE , ... , + CYRILLIC CAPITAL LETTER A CYRILLIC SMALL LETTER A , + CYRILLIC CAPITAL LETTER A CYRILLIC SMALL LETTER BE , + CYRILLIC CAPITAL LETTER A CYRILLIC SMALL LETTER VE , ... + CYRILLIC CAPITAL LETTER A CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER A , + CYRILLIC CAPITAL LETTER A CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER BE + */ + const short CHARS_CYRILLIC_UPPER_LETTER_SR = 48; + + /** Numbering in Russian Serbian alphabet lower case letters + + @since OOo 3.1 + */ + /* + CYRILLIC SMALL LETTER A , CYRILLIC SMALL LETTER BE , + CYRILLIC SMALL LETTER VE , CYRILLIC SMALL LETTER GHE , ... , + CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER A , + CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER BE , + CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER VE , ... + CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER A , + CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER BE + */ + const short CHARS_CYRILLIC_LOWER_LETTER_SR = 49; + + /** Numbering in Serbian Cyrillic alphabet upper case letters + + @since OOo 3.1 + */ + /* + CYRILLIC CAPITAL LETTER A , CYRILLIC CAPITAL LETTER BE , ... , + CYRILLIC CAPITAL LETTER A CYRILLIC SMALL LETTER A , + CYRILLIC CAPITAL LETTER BE CYRILLIC SMALL LETTER BE , + CYRILLIC CAPITAL LETTER VE CYRILLIC SMALL LETTER VE , ... + CYRILLIC CAPITAL LETTER A CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER A , ... + */ + const short CHARS_CYRILLIC_UPPER_LETTER_N_SR = 50; + + /** Numbering in Serbian Cyrillic alphabet upper case letters + + @since OOo 3.1 + */ + /* + CYRILLIC SMALL LETTER A , CYRILLIC SMALL LETTER BE , ... , + CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER A , + CYRILLIC SMALL LETTER BE CYRILLIC SMALL LETTER BE , + CYRILLIC SMALL LETTER VE CYRILLIC SMALL LETTER VE , ... + CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER A CYRILLIC SMALL LETTER A , ... + */ + const short CHARS_CYRILLIC_LOWER_LETTER_N_SR = 51; + + /** Numbering in Greek alphabet upper case letters + + @since LibreOffice 3.3 + */ + const short CHARS_GREEK_UPPER_LETTER = 52; + + /** Numbering in Greek alphabet lower case letters + + @since LibreOffice 3.3 + */ + const short CHARS_GREEK_LOWER_LETTER = 53; + + + /** Numbering in Arabic alphabet using abjad sequence + + @since LibreOffice 3.5 + */ + const short CHARS_ARABIC_ABJAD = 54; + + /** Numbering in Persian words + + @since LibreOffice 3.5 + */ + const short CHARS_PERSIAN_WORD = 55; + + /** Numbering in Hebrew numerals + + @since LibreOffice 5.4 + */ + const short NUMBER_HEBREW = 56; + + /** Numbering in Arabic-Indic numerals + + @since LibreOffice 6.1 + */ + const short NUMBER_ARABIC_INDIC = 57; + + /** Numbering in East Arabic-Indic numerals + + @since LibreOffice 6.1 + */ + const short NUMBER_EAST_ARABIC_INDIC = 58; + + /** Numbering in Indic Devanagari numerals + + @since LibreOffice 6.1 + */ + const short NUMBER_INDIC_DEVANAGARI = 59; + + /** Numbering in ordinal numbers of the language + of the text node + for example, 1st, 2nd, 3rd... in English + + @since LibreOffice 6.1 + */ + const short TEXT_NUMBER = 60; + + /** Numbering in cardinal numbers of the language + of the text node + for example, One, Two, Three... in English + + @since LibreOffice 6.1 + */ + const short TEXT_CARDINAL = 61; + + /** Numbering in ordinal numbers of the language + of the text node + for example, First, Second, Third... in English + + @since LibreOffice 6.1 + */ + const short TEXT_ORDINAL = 62; + + /** Footnoting symbols according the University of Chicago style: + \*, ߤ, ߥ, �a7;, **, ߤߤ etc. + + @since LibreOffice 6.4 + */ + /* + ASTERISK, DAGGER, DOUBLE DAGGER, SECTION SIGN, + ASTERISK ASTERISK, DAGGER DAGGER, etc. + */ + const short SYMBOL_CHICAGO = 63; + + /** Numbering is in Arabic numbers, padded with zero to have a length of at least two, as "01, + 02, ..., 10, 11, ...". + + @since LibreOffice 7.0 + */ + const short ARABIC_ZERO = 64; + + /** Numbering is in Arabic numbers, padded with zero to have a length of at least three, as + "001, 002, ..., 100, 101, ...". + + @since LibreOffice 7.0 + */ + const short ARABIC_ZERO3 = 65; + + /** Numbering is in Arabic numbers, padded with zero to have a length of at least four, as + "0001, 0002, ..., 1000, 1001, ...". + + @since LibreOffice 7.0 + */ + const short ARABIC_ZERO4 = 66; + + /** Numbering is in Arabic numbers, padded with zero to have a length of at least five, as + "00001, 00002, ..., 10000, 10001, ...". + + @since LibreOffice 7.0 + */ + const short ARABIC_ZERO5 = 67; + + /** Numbering is in Szekely rovas (Old Hungarian) numerals + + @since LibreOffice 7.1 + */ + const short SZEKELY_ROVAS = 68; + + /** Numbering is in Korean Digital number as + "일,이,삼,...,일영,일영영, ..." + + @since LibreOffice 7.3 + */ + const short NUMBER_DIGITAL_KO = 69; + + /** Numbering is in Korean Digital Number, reserved "koreanDigital2", as + "一,二,三,...,一零,一零零, ..." + + @since LibreOffice 7.3 + */ + const short NUMBER_DIGITAL2_KO = 70; + + /** Numbering is in Korean Legal Number, reserved "koreanLegal", as + "하나,둘,셋,..." + + @since LibreOffice 7.3 + */ + const short NUMBER_LEGAL_KO = 71; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/PageProperties.idl b/offapi/com/sun/star/style/PageProperties.idl new file mode 100644 index 000000000..3189f569d --- /dev/null +++ b/offapi/com/sun/star/style/PageProperties.idl @@ -0,0 +1,516 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_PageProperties_idl__ +#define __com_sun_star_style_PageProperties_idl__ + +#include <com/sun/star/table/ShadowFormat.idl> +#include <com/sun/star/util/Color.idl> +#include <com/sun/star/table/BorderLine.idl> +#include <com/sun/star/style/PageStyleLayout.idl> +#include <com/sun/star/style/GraphicLocation.idl> +#include <com/sun/star/awt/Size.idl> +#include <com/sun/star/text/XText.idl> +#include <com/sun/star/text/XTextColumns.idl> +#include <com/sun/star/container/XNameContainer.idl> +#include <com/sun/star/text/WritingMode2.idl> +#include <com/sun/star/graphic/XGraphic.idl> + +module com { module sun { module star { module style { + +/** describes the style of pages. + */ +published service PageProperties +{ + /** contains the background color of the page. + */ + [property] com::sun::star::util::Color BackColor; + + /** contains the URL of the background graphic. + + @deprecated as of LibreOffice 6.1 - use BackGraphic instead + + Note the new behaviour since it this was deprecated: + This property can only be set and only external URLs are + supported (no more vnd.sun.star.GraphicObject scheme). When an + URL is set, then it will load the graphic and set the BackGraphic + property. + */ + [property] string BackGraphicURL; + + /** contains the filter name of the background graphic. + */ + [property] string BackGraphicFilter; + + /** determines the location of the background graphic. + */ + [property] com::sun::star::style::GraphicLocation BackGraphicLocation; + + /** determines if the background color is transparent. + + <p>If this property is set to `TRUE`, + PageStyle::BackColor will not be used.</p> + */ + [property] boolean BackTransparent; + + /** determines the left margin of the page. + */ + [property] long LeftMargin; + + /** determines the right margin of the page. + */ + [property] long RightMargin; + + /** determines the top margin of the page. + */ + [property] long TopMargin; + + /** determines the bottom margin of the page. + */ + [property] long BottomMargin; + + /** determines the style of the left border line of the page. + */ + [property] com::sun::star::table::BorderLine LeftBorder; + + /** determines the style of the right border line of the page. + */ + [property] com::sun::star::table::BorderLine RightBorder; + + /** determines the style of the top border line of the page. + */ + [property] com::sun::star::table::BorderLine TopBorder; + + /** determines the style of the bottom border line of the page. + */ + [property] com::sun::star::table::BorderLine BottomBorder; + + /** determines the left border distance of the page. + */ + [property] long LeftBorderDistance; + + /** determines the right border distance of the page. + */ + [property] long RightBorderDistance; + + /** determines the top border distance of the page. + */ + [property] long TopBorderDistance; + + /** determines the bottom border distance of the page. + */ + [property] long BottomBorderDistance; + + /** determines the shadow of the page. + */ + [property] com::sun::star::table::ShadowFormat ShadowFormat; + + /** determines if the page format is landscape. + */ + [property] boolean IsLandscape; + + /** determines the default numbering type for this page. + */ + [property] short NumberingType; + + /** determines the layout of the page. + */ + [property] com::sun::star::style::PageStyleLayout PageStyleLayout; + + /** contains the name of a paper tray of the selected printer. + */ + [property] string PrinterPaperTray; + + /** determines if the register mode is active on that page. + */ + [optional, property] boolean RegisterModeActive; + + /** contains the name of the paragraph style that is used as reference of the register mode. + */ + [optional, property] string RegisterParagraphStyle; + + /** contains the paper size of the page. + */ + [property] com::sun::star::awt::Size Size; + + /** contains the width of the page. + */ + [property] long Width; + + /** contains the height of the page. + */ + [property] long Height; + + /** contains the column settings of the page. + */ + [optional , property] com::sun::star::text::XTextColumns TextColumns; + + /** contains user defined attributes. + + <p>This com::sun::star::container::XNameContainer + supports the service + com::sun::star::xml::AttributeContainer.</p> + */ + [property] com::sun::star::container::XNameContainer UserDefinedAttributes; + + /** contains the color of the background of the header. + */ + [property, maybevoid] com::sun::star::util::Color HeaderBackColor; + + /** contains the URL of the background graphic of the header. + + @deprecated as of LibreOffice 6.1 - use HeaderBackGraphic instead + + Note the new behaviour since it this was deprecated: + This property can only be set and only external URLs are + supported (no more vnd.sun.star.GraphicObject scheme). When an + URL is set, then it will load the graphic and set the HeaderBackGraphic + property. + */ + [property, maybevoid] string HeaderBackGraphicURL; + + /** contains the filter name of the background graphic of the header. + */ + [property, maybevoid] string HeaderBackGraphicFilter; + + /** determines the location of the background graphic of the header. + */ + [property, maybevoid] com::sun::star::style::GraphicLocation HeaderBackGraphicLocation; + + /** contains the left margin of the header. + */ + [property, maybevoid] long HeaderLeftMargin; + + /** contains the right margin of the header. + */ + [property, maybevoid] long HeaderRightMargin; + + /** determines if the background color of the header is transparent. + + <p>If this property is set to `TRUE`, + PageStyle::HeaderBackColor will not be used.</p> + */ + [property, maybevoid] boolean HeaderBackTransparent; + + /** determines the style of the left border line of the header. + */ + [property, maybevoid] com::sun::star::table::BorderLine HeaderLeftBorder; + + /** determines the style of the right border line of the header. + */ + [property, maybevoid] com::sun::star::table::BorderLine HeaderRightBorder; + + /** determines the style of the top border line of the header. + */ + [property, maybevoid] com::sun::star::table::BorderLine HeaderTopBorder; + + /** determines the style of the bottom border line of the header. + */ + [property, maybevoid] com::sun::star::table::BorderLine HeaderBottomBorder; + + /** determines the left border distance of the header. + */ + [property, maybevoid] long HeaderLeftBorderDistance; + + /** determines the right border distance of the header. + */ + [property, maybevoid] long HeaderRightBorderDistance; + + /** determines the top border distance of the header. + */ + [property, maybevoid] long HeaderTopBorderDistance; + + /** determines the bottom border distance of the header. + */ + [property, maybevoid] long HeaderBottomBorderDistance; + + /** determines the shadow of the header. + */ + [property, maybevoid] com::sun::star::table::ShadowFormat HeaderShadowFormat; + + /** determines the distance between the header and the body text area. + */ + [property, maybevoid] long HeaderBodyDistance; + + /** determines if the header content on left and right pages is the same. + */ + [property, maybevoid] boolean HeaderIsShared; + + /** determines if the header/footer content on the first page and remaining pages is the same. + + @since LibreOffice 4.0 + */ + [optional, property, maybevoid] boolean FirstIsShared; + + /** contains the height of the header. + */ + [property, maybevoid] long HeaderHeight; + + /** determines if the height of the header depends on the content. + */ + [property, maybevoid] boolean HeaderIsDynamicHeight; + + /** determines if a header is used on the page. + */ + [property] boolean HeaderIsOn; + + /** contains the interface to the text of the header. + */ + [optional, property, maybevoid] com::sun::star::text::XText HeaderText; + + /** contains the interface to the text of the header of left pages. + */ + [optional, property, maybevoid] com::sun::star::text::XText HeaderTextLeft; + + /** contains the interface to the text of the header of right pages. + */ + [optional, property, maybevoid] com::sun::star::text::XText HeaderTextRight; + + /** contains the color of the background of the footer. + */ + [property, maybevoid] com::sun::star::util::Color FooterBackColor; + + /** contains the URL of the background graphic in the footer. + + @deprecated as of LibreOffice 6.1 - use FooterBackGraphic + + Note the new behaviour since it this was deprecated: + This property can only be set and only external URLs are + supported (no more vnd.sun.star.GraphicObject scheme). When an + URL is set, then it will load the graphic and set the FooterBackGraphic + property. + */ + [property, maybevoid] string FooterBackGraphicURL; + + /** contains the filter name of the background graphic in the footer. + */ + [property, maybevoid] string FooterBackGraphicFilter; + + /** determines the location of the background graphic in the footer. + */ + [property, maybevoid] com::sun::star::style::GraphicLocation FooterBackGraphicLocation; + + /** determines the left margin of the footer. + */ + [property, maybevoid] long FooterLeftMargin; + + /** determines the right margin of the footer. + */ + [property, maybevoid] long FooterRightMargin; + + /** determines if the background of the footer is transparent. + */ + [property, maybevoid] boolean FooterBackTransparent; + + /** contains the style of the left border line of the footer. + */ + [property, maybevoid] com::sun::star::table::BorderLine FooterLeftBorder; + + /** contains the style of the right border line of the footer. + */ + [property, maybevoid] com::sun::star::table::BorderLine FooterRightBorder; + + /** contains the style of the top border line of the footer. + */ + [property, maybevoid] com::sun::star::table::BorderLine FooterTopBorder; + + /** contains the style of the bottom border line of the footer. + */ + [property, maybevoid] com::sun::star::table::BorderLine FooterBottomBorder; + + /** contains the left border distance of the footer. + */ + [property, maybevoid] long FooterLeftBorderDistance; + + /** contains the right border distance of the footer. + */ + [property, maybevoid] long FooterRightBorderDistance; + + /** contains the top border distance of the footer. + */ + [property, maybevoid] long FooterTopBorderDistance; + + /** contains the bottom border distance of the footer. + */ + [property, maybevoid] long FooterBottomBorderDistance; + + /** determines the shadow of the footer. + */ + [property, maybevoid] com::sun::star::table::ShadowFormat FooterShadowFormat; + + /** determines the distance between the footer and the body text area. + */ + [property, maybevoid] long FooterBodyDistance; + + /** determines if the height of the footer depends on the content. + */ + [property, maybevoid] boolean FooterIsDynamicHeight; + + /** determines if the footer content on left and right pages is the same. + */ + [property, maybevoid] boolean FooterIsShared; + + /** determines the height of the footer. + */ + [property, maybevoid] long FooterHeight; + + /** determines if a footer is used on the page. + */ + [property] boolean FooterIsOn; + + /** contains the interface to the text of the footer. + */ + [optional, property, maybevoid] com::sun::star::text::XText FooterText; + + /** contains the interface to the text of the footer of a left page. + */ + [optional, property, maybevoid] com::sun::star::text::XText FooterTextLeft; + + /** contains the interface to the text of the footer of a right page. + */ + [optional, property, maybevoid] com::sun::star::text::XText FooterTextRight; + + /** contains the maximum height of the footnote area. If set to zero then the height + of the current page is used as limit. + */ + [optional,property] long FootnoteHeight; + + /** contains the weight of the separator line between the text and the footnote area. + */ + [optional,property] short FootnoteLineWeight; + + /** contains the style of the separator line between the text and the footnote area. + + @see com::sun::star::style::FootnoteLineStyle + for the possible values. + */ + [optional,property] short FootnoteLineStyle; + + /** contains the color of the separator line between the text and the footnote area. + */ + [optional,property] com::sun::star::util::Color FootnoteLineColor; + + /** contains the relative width of the separator line between the text and the footnote area. + */ + [optional,property] byte FootnoteLineRelativeWidth; + + /** contains the adjustment of the separator line between the text and the footnote area. + <p>com::sun::star::text::HorizontalAdjusts.</p> + */ + [optional,property] short FootnoteLineAdjust; + + /** contains the distance between the text and the separator line between the + text and the footnote area. + */ + [optional,property] long FootnoteLineTextDistance; + + /** contains the distance between the footnote area and the separator line between + the text and the footnote area. + */ + [optional,property] long FootnoteLineDistance; + + /** contains the writing direction, as represented by the + com::sun::star::text::WritingMode2 constants */ + [optional,property] short WritingMode; + + /** contains the mode of the text grid (none, lines, ...), as + represented by com::sun::star::text::TextGridMode + constants */ + [optional, property] short GridMode; + + /** contains the display color of the text grid */ + [optional, property] com::sun::star::util::Color GridColor; + + /** contains the number of lines in the text grid */ + [optional, property] short GridLines; + + /** contains the height of the base text line inside the text grid */ + [optional, property] long GridBaseHeight; + + /** contains the height of the ruby text line inside the text grid */ + [optional, property] long GridRubyHeight; + + /** determines whether the text grid's ruby line is located below or + above the base line */ + [optional, property] boolean GridRubyBelow; + + /** determines whether the text grid lines are printed */ + [optional, property] boolean GridPrint; + + /** determines whether the text grid lines are visible or not */ + [optional, property] boolean GridDisplay; + + /** determines whether to use dynamic spacing in header or not. */ + [optional, property, maybevoid] boolean HeaderDynamicSpacing; + + /** determines whether to use dynamic spacing in footer or not. */ + [optional, property, maybevoid] boolean FooterDynamicSpacing; + + /** determines the distance of all borders of the page. */ + [property] long BorderDistance; + + /** contains the distance of all borders of the footer. */ + [property, maybevoid] long FooterBorderDistance; + + /** determines the distance of all borders of the header. */ + [property, maybevoid] long HeaderBorderDistance; + + /** contains the graphic of the background. + + @since LibreOffice 6.1 + */ + [optional, property] com::sun::star::graphic::XGraphic BackGraphic; + + /** contains the graphic of the background of the header. + + @since LibreOffice 6.1 + */ + [optional, property, maybevoid] com::sun::star::graphic::XGraphic HeaderBackGraphic; + + /** contains the graphic of the background of the footer. + + @since LibreOffice 6.1 + */ + [optional, property, maybevoid] com::sun::star::graphic::XGraphic FooterBackGraphic; + + /** determines the gutter margin of the page. + + @since LibreOffice 7.2 + */ + [optional, property] long GutterMargin; + + /** does the background cover the full page or only inside the + margins? + + @since LibreOffice 7.2 + */ + [optional, property] boolean BackgroundFullSize; + + /** specifies that the page gutter shall be placed on the right side of the page. + + @since LibreOffice 7.2 + */ + [optional, property] boolean RtlGutter; + +}; + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/PageStyle.idl b/offapi/com/sun/star/style/PageStyle.idl new file mode 100644 index 000000000..7a0a17487 --- /dev/null +++ b/offapi/com/sun/star/style/PageStyle.idl @@ -0,0 +1,53 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef __com_sun_star_style_PageStyle_idl__ +#define __com_sun_star_style_PageStyle_idl__ + +#include <com/sun/star/style/Style.idl> +#include <com/sun/star/style/PageProperties.idl> + + + +module com { module sun { module star { module style { + + +/** contributes common properties of page styles. + + @see com::sun::star::text::TextPageStyle + @see com::sun::star::sheet::TablePageStyle + */ +published service PageStyle +{ + + /** provides common functionality for styles. + */ + service com::sun::star::style::Style; + + /** gives access to the pages properties. + */ + service com::sun::star::style::PageProperties; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/PageStyleLayout.idl b/offapi/com/sun/star/style/PageStyleLayout.idl new file mode 100644 index 000000000..6e0f6dade --- /dev/null +++ b/offapi/com/sun/star/style/PageStyleLayout.idl @@ -0,0 +1,59 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef __com_sun_star_style_PageStyleLayout_idl__ +#define __com_sun_star_style_PageStyleLayout_idl__ + + +module com { module sun { module star { module style { + + +/** specifies the pages for which a page layout is valid. + */ +published enum PageStyleLayout +{ + + /** The page style is identically used for left and right pages. + */ + ALL, + + + /** The page style is only used for left pages. + */ + LEFT, + + + /** The page style is only used for right pages. + */ + RIGHT, + + + /** The page style is used unchanged for left pages and mirrored for + right pages. + */ + MIRRORED + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/ParagraphAdjust.idl b/offapi/com/sun/star/style/ParagraphAdjust.idl new file mode 100644 index 000000000..630a15fcd --- /dev/null +++ b/offapi/com/sun/star/style/ParagraphAdjust.idl @@ -0,0 +1,57 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_ParagraphAdjust_idl__ +#define __com_sun_star_style_ParagraphAdjust_idl__ + + + + module com { module sun { module star { module style { + +/** These enumeration values describe the formatting of a text paragraph. + */ +published enum ParagraphAdjust +{ + /** adjusted to the left border + */ + LEFT, + + /** adjusted to the right border + */ + RIGHT, + + /** adjusted to both borders / stretched, except for last line + */ + BLOCK, + + /** adjusted to the center + */ + CENTER, + + /** adjusted to both borders / stretched, including last line + */ + STRETCH + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/ParagraphProperties.idl b/offapi/com/sun/star/style/ParagraphProperties.idl new file mode 100644 index 000000000..32a63282d --- /dev/null +++ b/offapi/com/sun/star/style/ParagraphProperties.idl @@ -0,0 +1,445 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_ParagraphProperties_idl__ +#define __com_sun_star_style_ParagraphProperties_idl__ + +#include <com/sun/star/style/ParagraphAdjust.idl> +#include <com/sun/star/util/Color.idl> +#include <com/sun/star/style/LineSpacing.idl> +#include <com/sun/star/style/GraphicLocation.idl> +#include <com/sun/star/style/TabStop.idl> +#include <com/sun/star/style/DropCapFormat.idl> +#include <com/sun/star/container/XIndexReplace.idl> +#include <com/sun/star/table/ShadowFormat.idl> +#include <com/sun/star/table/BorderLine.idl> +#include <com/sun/star/style/BreakType.idl> +#include <com/sun/star/container/XNameContainer.idl> +#include <com/sun/star/beans/PropertyValue.idl> +#include <com/sun/star/graphic/XGraphic.idl> + +module com { module sun { module star { module style { + +/** describes the style of paragraphs. + */ +published service ParagraphProperties +{ + + /** determines the adjustment of a paragraph. + */ + [property] com::sun::star::style::ParagraphAdjust ParaAdjust; + + + /** contains the type of the line spacing of a paragraph. + */ + [optional, property] com::sun::star::style::LineSpacing ParaLineSpacing; + + + /** contains the paragraph background color. + */ + [optional, property] com::sun::star::util::Color ParaBackColor; + + + /** This value is `TRUE` if the paragraph background color + is set to transparent. + */ + [optional, property] boolean ParaBackTransparent; + + + /** contains the value of a link for the background graphic of a paragraph. + + @deprecated as of LibreOffice 6.1 - use ParaBackGraphic instead + + Note the new behaviour since it this was deprecated: + This property can only be set and only external URLs are + supported (no more vnd.sun.star.GraphicObject scheme). When an + URL is set, then it will load the graphic and set the ParaBackGraphic + property. + */ + [optional, property] string ParaBackGraphicURL; + + /** contains the name of the graphic filter for the background graphic of a paragraph. + */ + [optional, property] string ParaBackGraphicFilter; + + + /** contains the value for the position of a background graphic. + + @see com::sun::star::style::GraphicLocation + */ + [optional, property] com::sun::star::style::GraphicLocation ParaBackGraphicLocation; + + + /** determines the adjustment of the last line. + <p>It is only valid if ParagraphProperties::ParaAdjust + is set to ParagraphAdjust::BLOCK.</p> + */ + [property] short ParaLastLineAdjust; + + + /** determines if single words are stretched. + + <p>It is only valid if ParagraphProperties::ParaAdjust and + ParagraphProperties::ParaLastLineAdjust are also valid.</p> + */ + [optional, property] boolean ParaExpandSingleWord; + + + /** determines the left margin of the paragraph in 100th mm. + */ + [property] long ParaLeftMargin; + + + /** determines the right margin of the paragraph in 100th mm. + */ + [property] long ParaRightMargin; + + + /** determines the top margin of the paragraph in 100th mm. + + <p>The distance between two paragraphs is specified by:</p> + <ul> + <li>either the bottom margin of the previous paragraph.</li> + <li>or the top margin of the following paragraph.</li> + </ul> + The greater one is chosen. + */ + [property] long ParaTopMargin; + + + /** determines the bottom margin of the paragraph in 100th mm. + + <p>The distance between two paragraphs is specified by:</p> + <ul> + <li>either the bottom margin of the previous paragraph + </li> + <li>or the top margin of the following paragraph. + </li> + </ul> + The greater one is chosen. + */ + [property] long ParaBottomMargin; + + /** determines if contextual spacing is used. + + @since LibreOffice 3.6 + + <p>If true, the top and bottom margins of the paragraph should not be + applied when the previous and next paragraphs have the same style.</p> + */ + [optional, property] boolean ParaContextMargin; + + /** Grab bag of paragraph properties, used as a string-any map for interim interop purposes. + + @since LibreOffice 4.2 + + <p>This property is intentionally not handled by the ODF filter. Any + member that should be handled there should be first moved out from this grab + bag to a separate property.</p> + */ + [optional, property] sequence<com::sun::star::beans::PropertyValue> ParaInteropGrabBag; + + /** determines if the paragraph is included in the + line numbering. + */ + [optional, property] boolean ParaLineNumberCount; + + + /** contains the start value for the line numbering. + */ + [optional, property] long ParaLineNumberStartValue; + + + /** If this property is set, it creates a page break before the + paragraph it belongs to and assigns the value as the name + of the new page style sheet to use. + */ + [optional, property] string PageDescName; + + + /** If a page break property is set at a paragraph, this property contains the new value for the page number. + */ + [optional, property] short PageNumberOffset; + + + /** determines if the register mode is applied to a + paragraph. + + + + <p>Remark: Register mode is only used if the register + mode property of the page style is switched on.</p> + */ + [optional, property] boolean ParaRegisterModeActive; + + + /** specifies the positions and kinds of the tab stops within this + paragraph. + */ + [optional, property] sequence<com::sun::star::style::TabStop> ParaTabStops; + + + /** contains the name of the current paragraph style. + */ + [optional, property] string ParaStyleName; + + + /** contains the name of the current page style. + */ + [optional, property, maybevoid, readonly] string PageStyleName; + + + /** specifies whether the first characters of the + paragraph are displayed in capital letters and how they are + formatted. + */ + [optional, property] com::sun::star::style::DropCapFormat DropCapFormat; + + + /** specifies if the property <var>DropCapFormat</var> + is applied to the whole first word. + */ + [optional, property] boolean DropCapWholeWord; + + + /** Setting this property to `TRUE` prevents page or column + breaks between this and the following paragraph. + + + <p>This feature is useful for preventing title paragraphs to be + the last line on a page or column.</p> + */ + [optional, property] boolean ParaKeepTogether; + + + /** Setting this property to `FALSE` prevents the paragraph from + getting split into two pages or columns. + */ + [optional, property] boolean ParaSplit; + + + /** specifies the numbering level of the paragraph. + */ + [optional, property] short NumberingLevel; + + /** contains the numbering rules applied to this paragraph. + */ + [optional, property] com::sun::star::container::XIndexReplace NumberingRules; + + + /** specifies the start value for numbering if a new numbering starts at this paragraph. + */ + [optional, property] short NumberingStartValue; + + /** determines if the numbering rules restart, counting at the current paragraph. + */ + [optional, property] boolean ParaIsNumberingRestart; + + /** specifies the name of the style for the numbering. + + + <p>The name must be one of the names which are available via + XStyleFamiliesSupplier.</p> + */ + [optional, property] string NumberingStyleName; + + /** specifies the minimum number of lines of the paragraph that have + to be at bottom of a page if the paragraph is spread over more than + one page. + */ + [optional, property] byte ParaOrphans; + + /** specifies the minimum number of lines of the paragraph that have + to be at top of a page if the paragraph is spread over more than + one page. + */ + [optional, property] byte ParaWidows; + /** determines the type, color, and size of the shadow. + @see com::sun::star::table::ShadowFormat + */ + [optional, property] com::sun::star::table::ShadowFormat ParaShadowFormat; + /** contains the left border of the object. + */ + [property, optional] com::sun::star::table::BorderLine LeftBorder; + + /** contains the right border of the object. + */ + [property, optional] com::sun::star::table::BorderLine RightBorder; + + /** contains the top border of the object. + */ + [property, optional] com::sun::star::table::BorderLine TopBorder; + + /** contains the bottom border of the object. + */ + [property, optional] com::sun::star::table::BorderLine BottomBorder; + + /** contains the distance from the border to the object. + */ + [property, optional] long BorderDistance; + + /** contains the distance from the left border to the object. + */ + [property, optional] long LeftBorderDistance; + + /** contains the distance from the right border to the object. + */ + [property, optional] long RightBorderDistance; + + /** contains the distance from the top border to the object. + */ + [property, optional] long TopBorderDistance; + + /** contains the distance from the bottom border to the object. + */ + [property, optional] long BottomBorderDistance; + + /** determines the type of break that is applied at the beginning of the table. + @see com::sun::star::style::BreakType + */ + [optional, property] com::sun::star::style::BreakType BreakType; + + /** specifies the character style name for drop caps. + */ + [optional, property] string DropCapCharStyleName; + + /** specifies the indent for the first line. + */ + [optional, property] long ParaFirstLineIndent; + + /** determines if the first line should be indented automatically. + */ + [optional, property] boolean ParaIsAutoFirstLineIndent; + + /** specifies if automatic hyphenation is applied. + */ + [property] boolean ParaIsHyphenation; + + /** specifies the maximum number of consecutive hyphens. + */ + [optional, property] short ParaHyphenationMaxHyphens; + + /** specifies the minimum number of characters to remain before the + hyphen character (when hyphenation is applied). + @note Confusingly it is named Max but specifies a minimum. + */ + [optional, property] short ParaHyphenationMaxLeadingChars; + + /** specifies the minimum number of characters to remain after the + hyphen character (when hyphenation is applied). + @note Confusingly it is named Max but specifies a minimum. + */ + [optional, property] short ParaHyphenationMaxTrailingChars; + + /** specifies the vertical alignment of a paragraph. + + @see com::sun::star::text::ParagraphVertAlign + */ + [optional, property] short ParaVertAlignment; + + /** this property stores xml attributes. + They will be saved to and restored from automatic styles inside xml files. + + @see com::sun::star::xml::AttributeContainer + */ + [optional, property] com::sun::star::container::XNameContainer ParaUserDefinedAttributes; + + /** returns `FALSE` if the paragraph is part of a numbering, but has no + numbering label. + + <p>A paragraph is part of a numbering, if a style for a numbering is + set - see NumberingStyleName.</p> + <p>If the paragraph is not part of a numbering the property is void.</p> + */ + [optional, property, maybevoid] boolean NumberingIsNumber; + + /** the property determines if borders set at a paragraph are merged with the + next paragraph. + <p>Borders are only merged if they are identical.</p> + */ + [optional, property, maybevoid] boolean ParaIsConnectBorder; + + /** specifies the id of the list to which the paragraph belongs + + */ + [optional, property] string ListId; + + /** specifies the outline level to which the paragraph belongs + + @since OOo 3.1 + + <p>Value 0 indicates that the paragraph belongs to the body text.</p> + <p>Values [1..10] indicates that the paragraph belongs to the corresponding outline level.</p> + */ + [optional, property] short OutlineLevel; + + /** contains the graphic for the background of a paragraph. + + @since LibreOffice 6.1 + */ + [optional, property] com::sun::star::graphic::XGraphic ParaBackGraphic; + + /** specifies that a child node of a parent node that is not counted + is continuing the numbering of parent's previous node's sub tree. + + @since OOo 3.0.1 + + @note misspelling retained for compatibility + */ + [optional, property, readonly] boolean ContinueingPreviousSubTree; + + /** allows reading the generated numbering list label. + + @since OOo 3.0.1 + */ + [optional, property, readonly] string ListLabelString; + + /** Specifies whether words written in CAPS will be hyphenated. + Setting to `true` will disable hyphenation of words written in CAPS for this paragraph. + + @since LibreOffice 6.4 + */ + [optional, property] boolean ParaHyphenationNoCaps; + + /** Specifies whether last word of paragraph will be hyphenated. + Setting to `true` will disable hyphenation of last word for this paragraph. + + @since LibreOffice 7.4 + */ + [optional, property] boolean ParaHyphenationNoLastWord; + + /** specifies the minimum word length in characters, when hyphenation is applied. + + @since LibreOffice 7.4 + */ + [optional, property] short ParaHyphenationMinWordLength; + + /** specifies the hyphenation zone, i.e. allowed extra white space + in the line before applying hyphenation. + + @since LibreOffice 7.4 + */ + [optional, property] long ParaHyphenationZone; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/ParagraphPropertiesAsian.idl b/offapi/com/sun/star/style/ParagraphPropertiesAsian.idl new file mode 100644 index 000000000..37f68e685 --- /dev/null +++ b/offapi/com/sun/star/style/ParagraphPropertiesAsian.idl @@ -0,0 +1,50 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_ParagraphPropertiesAsian_idl__ +#define __com_sun_star_style_ParagraphPropertiesAsian_idl__ + + + + + module com { module sun { module star { module style { + + +/** contains settings for the style of paragraphs with complex text layout. + */ +published service ParagraphPropertiesAsian +{ + /** determines if hanging punctuation is allowed. + */ + [property] boolean ParaIsHangingPunctuation; + /** determines if a distance between Asian text, western text or complex text is set. + */ + [property] boolean ParaIsCharacterDistance; + /** determines if the rules for forbidden characters at the start or end + of text lines are considered. + */ + [property] boolean ParaIsForbiddenRules; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/ParagraphPropertiesComplex.idl b/offapi/com/sun/star/style/ParagraphPropertiesComplex.idl new file mode 100644 index 000000000..9d0909301 --- /dev/null +++ b/offapi/com/sun/star/style/ParagraphPropertiesComplex.idl @@ -0,0 +1,43 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_ParagraphPropertiesComplex_idl__ +#define __com_sun_star_style_ParagraphPropertiesComplex_idl__ + + + + + module com { module sun { module star { module style { + + +/** contains settings for the style of paragraphs with complex text layout. + */ +published service ParagraphPropertiesComplex +{ + /** contains the writing direction, as represented by the + com::sun::star::text::WritingMode2 constants + */ + [property] short WritingMode; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/ParagraphStyle.idl b/offapi/com/sun/star/style/ParagraphStyle.idl new file mode 100644 index 000000000..b5606e0a9 --- /dev/null +++ b/offapi/com/sun/star/style/ParagraphStyle.idl @@ -0,0 +1,128 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_ParagraphStyle_idl__ +#define __com_sun_star_style_ParagraphStyle_idl__ + +#include <com/sun/star/style/ParagraphProperties.idl> +#include <com/sun/star/style/Style.idl> +#include <com/sun/star/xml/ParaUserDefinedAttributesSupplier.idl> + + + module com { module sun { module star { module style { + + +/** specifies a style sheet for paragraphs within a + com::sun::star::text::Text. + */ +published service ParagraphStyle +{ + /// specifies administrative properties. + service Style; + + /** contains user defined attributes for paragraphs. + + @see com::sun::star::xml::ParaUserDefinedAttributesSupplier + */ + [optional] service com::sun::star::xml::ParaUserDefinedAttributesSupplier; + + /// specifies the style properties. + service ParagraphProperties; + + /** determines the left margin of the paragraph relative to the ParaLeftMargin + of the parent style. + + <p> If the value of ParaLeftMarginRelative is 100 the current + ParaLeftMargin value is used. </p> + */ + [property] long ParaLeftMarginRelative; + + + /** determines the right margin of the paragraph relative to the ParaRightMargin + of the parent style. + + <p> If the value of ParaRightMarginRelative is 100 the current + ParaRightMargin value is used. </p> + */ + [property] long ParaRightMarginRelative; + + + /** determines the top margin of the paragraph relative to the ParaTopMargin + of the parent style. + + <p> If the value of ParaTopMarginRelative is 100 the current + ParaTopMargin value is used. </p> + */ + [property] long ParaTopMarginRelative; + + + /** determines the Bottom margin of the paragraph relative to the ParaBottomMargin + of the parent style. + + <p> If the value of ParaBottomMarginRelative is 100 the current + ParaBottomMargin value is used. </p> + */ + [property] long ParaBottomMarginRelative; + + /** determines the category of a paragraph style. @see com::sun::star::style::ParagraphStyleCategory + */ + [property] short Category; + + [property] float CharDiffHeight; + + /** This value contains the character height as percentage value relative to the height of + the character in the parent style. + */ + [property] short CharPropHeight; + + /** This value contains the character height as difference in point to the height of + the character in the parent style in Asian text. + */ + [property] float CharDiffHeightAsian; + + /** This value contains the character height as percentage value relative to the height of + the character in the parent style in Asian text. + */ + [property] short CharPropHeightAsian; + + /** This value contains the character height as difference in point to the height of + the character in the parent style in complex text. + */ + [property] float CharDiffHeightComplex; + + /** This value contains the character height as percentage value relative to the height of + the character in the parent style in complex text. + */ + [property] short CharPropHeightComplex; + + /** returns the name of the page style in use + + <P>For setting the page style you have to use the + com::sun::star::text::PageDescName + properties. + </P> + */ + [optional, readonly, property] string PageStyleName; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/ParagraphStyleCategory.idl b/offapi/com/sun/star/style/ParagraphStyleCategory.idl new file mode 100644 index 000000000..5595296dc --- /dev/null +++ b/offapi/com/sun/star/style/ParagraphStyleCategory.idl @@ -0,0 +1,56 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ + +#ifndef __com_sun_star_style_ParagraphStyleCategory_idl__ +#define __com_sun_star_style_ParagraphStyleCategory_idl__ + + + module com { module sun { module star { module style { +/** These constants are used to specify the category of paragraph styles in text documents. + */ +published constants ParagraphStyleCategory +{ + /** is applied to styles that are used for common text. + */ + const short TEXT = 0; + /** is applied to styles that are used as headings. + */ + const short CHAPTER = 1; + /** is applied to styles that used in numberings and lists. + */ + const short LIST = 2; + /** is applied to styles that are used in indexes. + */ + const short INDEX = 3; + /** is applied to styles that are used in special regions like headers, footers, and footnote text. + */ + const short EXTRA = 4; + /** is applied to styles that are used to support HTML. + */ + const short HTML = 5; +}; + + +}; }; }; }; + +#endif + + + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/Style.idl b/offapi/com/sun/star/style/Style.idl new file mode 100644 index 000000000..28fccaed4 --- /dev/null +++ b/offapi/com/sun/star/style/Style.idl @@ -0,0 +1,158 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_Style_idl__ +#define __com_sun_star_style_Style_idl__ + +#include <com/sun/star/style/XStyle.idl> +#include <com/sun/star/beans/XPropertySet.idl> +#include <com/sun/star/beans/XMultiPropertySet.idl> +#include <com/sun/star/beans/XMultiPropertyStates.idl> +#include <com/sun/star/beans/NamedValue.idl> +#include <com/sun/star/xml/UserDefinedAttributesSupplier.idl> + + + + module com { module sun { module star { module style { + + +/** This service specifies a single style sheet. + */ +published service Style +{ + /** contains user defined attributes. + + @see com::sun::star::xml::UserDefinedAttributesSupplier + */ + [optional] service com::sun::star::xml::UserDefinedAttributesSupplier; + + + interface com::sun::star::style::XStyle; + + interface com::sun::star::beans::XPropertySet; + + [optional] interface com::sun::star::beans::XMultiPropertySet; + + /* This optional interface is available as an optimization, allowing users + to use "setAllPropertiesToDefault", for example. */ + + [optional] interface com::sun::star::beans::XMultiPropertyStates; + + + /** determines if a style is physically created. + + <p> Built in styles may not be created until they are needed. + To prevent standard style properties from being exported, it may be + useful to check if the style is created first. + </p> + */ + [optional, readonly, property] boolean IsPhysical; + + /** contains the name of the style that is applied to the next paragraph. + + <p> This property is usually available at paragraph styles only. </p> + */ + [optional, property] string FollowStyle; + + /** contains the name of the style as it is displayed in the user interface. + + <p> The names of the styles at the API are language independent. The user interface + names are localized.</p> + */ + [optional, readonly, property] string DisplayName; + + /** determines if a style is automatically updated, if the properties of an object + that the style is applied to are changed. + + <p> For example, if the style is applied to a paragraph and the properties of the paragraph + are changed then the style will be updated accordingly.</p> + */ + [optional, property] string IsAutoUpdate; + + /** defines the context and styles for conditional paragraphs. + + <p>This property is only available if the style is a conditional + paragraph style.</p> + + <p>The sequence consists of pairs where the name part of the pair + defines the context where it should be applied and the value part + is a string naming the style to be used in that context.</p> + + <p>Assigning an empty string to the style name will disable + the conditional style for that context.</p> + + <p>The allowed strings (contexts) for the name part of an entry + of the sequence are:</p> + + <ul> + <li>TableHeader</li> + <li>Table</li> + <li>Frame</li> + <li>Section</li> + <li>Footnote</li> + <li>Endnote</li> + <li>Header</li> + <li>Footer</li> + <li>OutlineLevel1</li> + <li>OutlineLevel2</li> + <li>OutlineLevel3</li> + <li>OutlineLevel4</li> + <li>OutlineLevel5</li> + <li>OutlineLevel6</li> + <li>OutlineLevel7</li> + <li>OutlineLevel8</li> + <li>OutlineLevel9</li> + <li>OutlineLevel10</li> + <li>NumberingLevel1</li> + <li>NumberingLevel2</li> + <li>NumberingLevel3</li> + <li>NumberingLevel4</li> + <li>NumberingLevel5</li> + <li>NumberingLevel6</li> + <li>NumberingLevel7</li> + <li>NumberingLevel8</li> + <li>NumberingLevel9</li> + <li>NumberingLevel10</li> + </ul> + + + @since OOo 2.0.1 + */ + [optional, property] sequence< com::sun::star::beans::NamedValue > ParaStyleConditions; + + /** Flag indicating whether to hide the style in the UI. + @since LibreOffice 4.0 + */ + [optional, property] boolean Hidden; + + /** Grab bag of style properties, used as a string-any map for interim interop purposes. + + @since LibreOffice 4.2 + + <p>This property is intentionally not handled by the ODF filter. Any + member that should be handled there should be first moved out from this grab + bag to a separate property.</p> + */ + [optional, property] sequence<com::sun::star::beans::PropertyValue> StyleInteropGrabBag; +}; + + +}; }; }; }; +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/StyleFamilies.idl b/offapi/com/sun/star/style/StyleFamilies.idl new file mode 100644 index 000000000..70b012e64 --- /dev/null +++ b/offapi/com/sun/star/style/StyleFamilies.idl @@ -0,0 +1,97 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_StyleFamilies_idl__ +#define __com_sun_star_style_StyleFamilies_idl__ + +#include <com/sun/star/container/XNameAccess.idl> + +#include <com/sun/star/container/XIndexAccess.idl> + + + + module com { module sun { module star { module style { + +/** This service contains the collection of style families within the + container document. + + <p>Examples of style families may be: + <dl> + <dt>CharacterStyles + </dt> + <dd>the container of style sheets for sequences of characters + within a text + + </dd> + <dt>ParagraphStyles + </dt> + <dd>the container of style sheets for text paragraphs + + </dd> + <dt>FrameStyles + </dt> + <dd>the container of style sheets for text frames + + </dd> + <dt>PageStyles + </dt> + <dd>the container of style sheets for pages + + </dd> + <dt>NumberingStyles + </dt> + <dd>the container for style sheets for numbering + + </dd> + <dt>CellStyles + </dt> + <dd>the container for style sheets for cells + + </dd> + <dt>ShapeStyles + </dt> + <dd>the container for style sheets for shapes + </dd> + </dl> + </p> + */ +published service StyleFamilies +{ + + /** This mandatory interface makes it possible to get access to the + style families by their names. + + <p>The elements within this collection are StyleFamily instances. + */ + interface com::sun::star::container::XNameAccess; + + /** This optional interface makes it possible to get access to the + style families by index. + + <p>The elements within this collection are StyleFamily instances. + */ + [optional] interface com::sun::star::container::XIndexAccess; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/StyleFamily.idl b/offapi/com/sun/star/style/StyleFamily.idl new file mode 100644 index 000000000..d48e263ad --- /dev/null +++ b/offapi/com/sun/star/style/StyleFamily.idl @@ -0,0 +1,65 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_StyleFamily_idl__ +#define __com_sun_star_style_StyleFamily_idl__ + +#include <com/sun/star/container/XNameContainer.idl> + +#include <com/sun/star/container/XIndexAccess.idl> + + + + module com { module sun { module star { module style { + +/** This service is a container of style sheets of the same style family.@see StyleFamilies + */ +published service StyleFamily +{ + + /** This mandatory interface makes it possible to access + the style sheets within this family by name. + + <p>The elements in this container support the service + Style and are accessed via an XStyle. + */ + interface com::sun::star::container::XNameAccess; + + /** This optional interface makes it possible to add and + remove the style sheets within this family by name. + + <p>The elements in this container support the service + Style and are accessed via an XStyle. + */ + [optional] interface com::sun::star::container::XNameContainer; + /** This optional interface makes it possible to access the style sheets + within this family by index. + + <p>The elements in this container support the service + Style and are accessed via an XStyle. + */ + [optional] interface com::sun::star::container::XIndexAccess; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/TabAlign.idl b/offapi/com/sun/star/style/TabAlign.idl new file mode 100644 index 000000000..df2e5e87c --- /dev/null +++ b/offapi/com/sun/star/style/TabAlign.idl @@ -0,0 +1,62 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_TabAlign_idl__ +#define __com_sun_star_style_TabAlign_idl__ + + + + module com { module sun { module star { module style { + +/** These enumeration values are used to specify the alignment of + the text range delimited by a tabulator. + */ +published enum TabAlign +{ + /** The text range is left-aligned between the previous tabulator + (or the left border, if none) and this tabulator. + */ + LEFT, + + /** The text range is centered between the previous tabulator + (or the left border, if none) and this tabulator. + */ + CENTER, + + /** The text range is right-aligned between the previous tabulator + (or the left border, if none) and this tabulator. + */ + RIGHT, + + /** The decimal point of the text range to the left of this + tabulator is aligned to the position of this tabulator. + */ + DECIMAL, + + /** The default alignment for tabulators is applied. + */ + DEFAULT + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/TabStop.idl b/offapi/com/sun/star/style/TabStop.idl new file mode 100644 index 000000000..991a9c119 --- /dev/null +++ b/offapi/com/sun/star/style/TabStop.idl @@ -0,0 +1,58 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_TabStop_idl__ +#define __com_sun_star_style_TabStop_idl__ + +#include <com/sun/star/style/TabAlign.idl> + + + + module com { module sun { module star { module style { + +/** This structure is used to specify a single tabulator stop. + */ +published struct TabStop +{ + /** This field specifies the position of the tabulator in relation + to the left border. + */ + long Position; + + /** This field specifies the alignment of the text range before the + tabulator. + */ + com::sun::star::style::TabAlign Alignment; + + /** This field specifies which delimiter is used for the decimal. + */ + char DecimalChar; + + /** This field specifies the character that is used to fill up the + space between the text in the text range and the tabulators. + */ + char FillChar; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/VerticalAlignment.idl b/offapi/com/sun/star/style/VerticalAlignment.idl new file mode 100644 index 000000000..e488886c2 --- /dev/null +++ b/offapi/com/sun/star/style/VerticalAlignment.idl @@ -0,0 +1,53 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_VerticalAlignment_idl__ +#define __com_sun_star_style_VerticalAlignment_idl__ + + + + module com { module sun { module star { module style { + +/** specify the horizontal alignment of + an object within a container object. + */ +published enum VerticalAlignment +{ + // DOCUMENTATION OMITTING FOR VerticalAlignment:: TOP, + /** set the vertical alignment to the center between the top and bottom margins from the container object. + */ + TOP, + + // DOCUMENTATION OMITTING FOR VerticalAlignment:: MIDDLE, + /** set the vertical alignment to the top margin from the container object. + */ + MIDDLE, + + // DOCUMENTATION OMITTING FOR VerticalAlignment:: BOTTOM + /** set the vertical alignment to the bottom margin from the container object. + */ + BOTTOM + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/XAutoStyle.idl b/offapi/com/sun/star/style/XAutoStyle.idl new file mode 100644 index 000000000..9d1d4f6f5 --- /dev/null +++ b/offapi/com/sun/star/style/XAutoStyle.idl @@ -0,0 +1,52 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_XAutoStyle_idl__ +#define __com_sun_star_style_XAutoStyle_idl__ + +#include <com/sun/star/style/XStyle.idl> +#include <com/sun/star/beans/XPropertySet.idl> +#include <com/sun/star/beans/XMultiPropertySet.idl> +#include <com/sun/star/beans/XMultiPropertyStates.idl> +#include <com/sun/star/beans/NamedValue.idl> +#include <com/sun/star/beans/PropertyValues.idl> + + + + + module com { module sun { module star { module style { + + +/** This interface allows access to a single automatic style. + */ +interface XAutoStyle +{ + interface com::sun::star::beans::XMultiPropertySet; + interface com::sun::star::beans::XMultiPropertyStates; + + /** + returns a sequence of all properties that are set in the style + */ + com::sun::star::beans::PropertyValues getProperties(); +}; + + +}; }; }; }; +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/XAutoStyleFamily.idl b/offapi/com/sun/star/style/XAutoStyleFamily.idl new file mode 100644 index 000000000..c6357a603 --- /dev/null +++ b/offapi/com/sun/star/style/XAutoStyleFamily.idl @@ -0,0 +1,45 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_XAutoStyleFamily_idl__ +#define __com_sun_star_style_XAutoStyleFamily_idl__ +#include <com/sun/star/style/XAutoStyle.idl> +#include <com/sun/star/container/XEnumerationAccess.idl> + +#include <com/sun/star/beans/PropertyValues.idl> + + + module com { module sun { module star { module style { + +/** This service contains the collection of automatic style families within the + container document. + + */ +interface XAutoStyleFamily +{ + interface com::sun::star::container::XEnumerationAccess; + /** */ + com::sun::star::style::XAutoStyle insertStyle( [in] com::sun::star::beans::PropertyValues Values); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/XAutoStyles.idl b/offapi/com/sun/star/style/XAutoStyles.idl new file mode 100644 index 000000000..fd7a4bbd2 --- /dev/null +++ b/offapi/com/sun/star/style/XAutoStyles.idl @@ -0,0 +1,48 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_XAutoStyles_idl__ +#define __com_sun_star_style_XAutoStyles_idl__ + +#include <com/sun/star/container/XNameAccess.idl> + +#include <com/sun/star/container/XIndexAccess.idl> + + + + module com { module sun { module star { module style { + + + +/** This service contains the collection of automatic style families within the + container document. + + */ +interface XAutoStyles + +{ + interface com::sun::star::container::XNameAccess; + interface com::sun::star::container::XIndexAccess; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/XAutoStylesSupplier.idl b/offapi/com/sun/star/style/XAutoStylesSupplier.idl new file mode 100644 index 000000000..b89b386d7 --- /dev/null +++ b/offapi/com/sun/star/style/XAutoStylesSupplier.idl @@ -0,0 +1,46 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_XAutoStylesSupplier_idl__ +#define __com_sun_star_style_XAutoStylesSupplier_idl__ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/style/XAutoStyles.idl> + + + module com { module sun { module star { module style { + +/** This interface provides access to the style families within the + container document. + */ +interface XAutoStylesSupplier: com::sun::star::uno::XInterface +{ + + /** This method returns the collection of automatic style families available + in the container document.@see AutoStyles + */ + com::sun::star::style::XAutoStyles getAutoStyles(); + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/XDefaultsSupplier.idl b/offapi/com/sun/star/style/XDefaultsSupplier.idl new file mode 100644 index 000000000..666cd9c3e --- /dev/null +++ b/offapi/com/sun/star/style/XDefaultsSupplier.idl @@ -0,0 +1,48 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_XDefaultsSupplier_idl__ +#define __com_sun_star_style_XDefaultsSupplier_idl__ + +#include <com/sun/star/uno/XInterface.idl> + +#include <com/sun/star/beans/XPropertySet.idl> + + + + module com { module sun { module star { module style { + + +/** This interface provides access to an XPropertySet of defaults. This can + either be the parent of an XPropertySet or the global property defaults + for a document. + */ +published interface XDefaultsSupplier: com::sun::star::uno::XInterface +{ + /** This method returns an XPropertySet of defaults. + */ + com::sun::star::beans::XPropertySet getDefaults(); + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/XStyle.idl b/offapi/com/sun/star/style/XStyle.idl new file mode 100644 index 000000000..5da5d2d85 --- /dev/null +++ b/offapi/com/sun/star/style/XStyle.idl @@ -0,0 +1,64 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_XStyle_idl__ +#define __com_sun_star_style_XStyle_idl__ + +#include <com/sun/star/container/XNamed.idl> + +#include <com/sun/star/container/NoSuchElementException.idl> + + + + module com { module sun { module star { module style { + + +/** specifies a template for a style (aka style sheet). + */ +published interface XStyle: com::sun::star::container::XNamed +{ + + /** identifies a style as defined by the user. + */ + boolean isUserDefined(); + + + /** @returns + `TRUE` if this type is used in the document. + */ + boolean isInUse(); + + + /** @returns + the name of the parent style, probably empty. + */ + string getParentStyle(); + + + /** sets the name of the parent style. + */ + void setParentStyle( [in] string aParentStyle ) + raises( com::sun::star::container::NoSuchElementException ); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/XStyleFamiliesSupplier.idl b/offapi/com/sun/star/style/XStyleFamiliesSupplier.idl new file mode 100644 index 000000000..c68709d2b --- /dev/null +++ b/offapi/com/sun/star/style/XStyleFamiliesSupplier.idl @@ -0,0 +1,47 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_XStyleFamiliesSupplier_idl__ +#define __com_sun_star_style_XStyleFamiliesSupplier_idl__ + +#include <com/sun/star/uno/XInterface.idl> + +#include <com/sun/star/container/XNameAccess.idl> + + + + module com { module sun { module star { module style { + +/** This interface provides access to the style families within the + container document. + */ +published interface XStyleFamiliesSupplier: com::sun::star::uno::XInterface +{ + /** This method returns the collection of style families available + in the container document.@see StyleFamilies + */ + com::sun::star::container::XNameAccess getStyleFamilies(); + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/XStyleLoader.idl b/offapi/com/sun/star/style/XStyleLoader.idl new file mode 100644 index 000000000..566f6fb26 --- /dev/null +++ b/offapi/com/sun/star/style/XStyleLoader.idl @@ -0,0 +1,74 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_style_XStyleLoader_idl__ +#define __com_sun_star_style_XStyleLoader_idl__ + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/beans/PropertyValue.idl> +#include <com/sun/star/io/IOException.idl> + + + + module com { module sun { module star { module style { + +/** enables the object to import styles from documents. + */ +published interface XStyleLoader: com::sun::star::uno::XInterface +{ + /** loads styles from a document at the given URL. + <p> + If <var>OverwriteStyles</var> is `TRUE`, then all styles + will be loaded. Otherwise, only styles which are not already + defined in this document are loaded.</p> + @param URL + The directory and the filename from document with the styles + You can also load from stream. Use "private:stream" as the URL and the InputStream parameter below. + @param aOptions + Specifies which of the Style families the method should load. + + The <code>sequence<PropertyValue></code> has the following, optional items: + <ul> + <li> boolean LoadCellStyles </li> + <li> boolean LoadTextStyles </li> + <li> boolean LoadFrameStyles </li> + <li> boolean LoadPageStyles </li> + <li> boolean LoadNumberingStyles </li> + <li> boolean OverwriteStyles</li> + <li> com::sun::star::io::XInputStream InputStream (since LibreOffice 7.0)</li> + </ul> + <p>As the default, all supported style families are loaded and existing styles are overwritten.</p> + */ + void loadStylesFromURL( [in] string URL, + [in] sequence<com::sun::star::beans::PropertyValue> aOptions ) + raises( com::sun::star::io::IOException ); + + /** @returns + a sequence of the supported properties as declared in XStyleLoader::loadStylesFromURL() + with their current values. + */ + sequence<com::sun::star::beans::PropertyValue> getStyleLoaderOptions(); + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/XStyleLoader2.idl b/offapi/com/sun/star/style/XStyleLoader2.idl new file mode 100644 index 000000000..dbdde4464 --- /dev/null +++ b/offapi/com/sun/star/style/XStyleLoader2.idl @@ -0,0 +1,58 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + */ + +#ifndef __com_sun_star_style_XStyleLoader2_idl__ +#define __com_sun_star_style_XStyleLoader2_idl__ + +#include <com/sun/star/beans/PropertyValue.idl> +#include <com/sun/star/io/IOException.idl> +#include <com/sun/star/lang/XComponent.idl> + + +module com { module sun { module star { module style { + +/** extends XStyleLoader interface to import styles from an already opened component. + + @see com::sun::star::style::XStyleLoader + + @since LibreOffice 4.4 + */ +interface XStyleLoader2: com::sun::star::style::XStyleLoader +{ + /** loads styles from a given document + <p> + @param aSourceComponent + a valid XComponent reference to source document + @param aOptions + Specifies which of the Style families the method should load. + The <code>sequence<PropertyValue></code> has the following, optional items: + <ul> + <li> boolean LoadCellStyles </li> + <li> boolean LoadTextStyles </li> + <li> boolean LoadFrameStyles </li> + <li> boolean LoadPageStyles </li> + <li> boolean LoadNumberingStyles </li> + <li> boolean OverwriteStyles</li> + </ul> + If <var>OverwriteStyles</var> is `TRUE`, then all styles + will be loaded. Otherwise, only styles which are not already + defined in this document are loaded.</p> + <p>As the default, all supported style families are loaded and existing styles are overwritten.</p> + */ + void loadStylesFromDocument( [in] com::sun::star::lang::XComponent aSourceComponent, + [in] sequence<com::sun::star::beans::PropertyValue> aOptions ) + raises( com::sun::star::io::IOException ); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/style/XStyleSupplier.idl b/offapi/com/sun/star/style/XStyleSupplier.idl new file mode 100644 index 000000000..0b9706da3 --- /dev/null +++ b/offapi/com/sun/star/style/XStyleSupplier.idl @@ -0,0 +1,63 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef com_sun_star_style_XStyleSupplier_idl +#define com_sun_star_style_XStyleSupplier_idl + +#include <com/sun/star/uno/XInterface.idl> +#include <com/sun/star/style/XStyle.idl> +#include <com/sun/star/lang/IllegalArgumentException.idl> + +module com +{ +module sun +{ +module star +{ +module style +{ + +interface XStyleSupplier : ::com::sun::star::uno::XInterface +{ + /** get the currently set style. + + @return the style. If no style was set, the returned object + may be empty (null). Otherwise, the returned object + must support the service + PropertyTemplate. + */ + ::com::sun::star::style::XStyle getStyle(); + + /** @param xStyle If you want to remove an existing style, you can + set an empty (null) object. Otherwise, the object + given must support the service + PropertyTemplate. + */ + void setStyle( [in] ::com::sun::star::style::XStyle xStyle ) + raises( com::sun::star::lang::IllegalArgumentException ); +}; + +} ; // style +} ; // com +} ; // sun +} ; // star + + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ |