1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
21 module com
{ module sun
{ module star
{ module table
{
24 /** contains the properties of a table cell.
26 @see com::sun::star::table::Cell
27 @see com::sun::star::table::CellRange
29 published service CellProperties
32 //!published service PropertySet
33 /** provides access to the properties.
35 interface com
::sun
::star
::beans
::XPropertySet
;
38 /** contains the name of the style of the cell.
40 [optional, property
] string CellStyle
;
43 /** contains the cell background color.
45 [property
] com
::sun
::star
::util
::Color CellBackColor
;
48 /** is `TRUE`, if the cell background is transparent.
50 <p>In this case the CellProperties::CellBackColor
51 value is not used.</p>
53 [property
] boolean IsCellBackgroundTransparent
;
56 /** contains the horizontal alignment of the cell contents.
58 [property
] com
::sun
::star
::table
::CellHoriJustify HoriJustify
;
61 /** contains the vertical alignment of the cell contents.
63 changed from com::sun::star::table::CellVertJustify to long in LibO 3.5
65 @see com::sun::star::table::CellVertJustify2
67 [property
] long VertJustify
;
70 /** is `TRUE`, if text in the cells will be wrapped automatically
73 [property
] boolean IsTextWrapped
;
76 /** defines the indentation of the cell contents (in 1/100 mm).
78 [property
] short ParaIndent
;
81 /** contains the orientation of the cell contents.
83 <p>If the CellProperties::RotateAngle property
84 is non-zero, this value is not used.</p>
86 [property
] com
::sun
::star
::table
::CellOrientation Orientation
;
89 /** defines how much the content of cells is rotated (in 1/100 degrees).
91 [property
] long RotateAngle
;
94 /** defines at which edge rotated cells are aligned.
96 changed from com::sun::star::table::CellVertJustify to long in LibO 3.5
98 @see com::sun::star::table::CellVertJustify2
100 [property
] long RotateReference
;
103 /** selects Asian character orientation in vertical orientation.
105 <p>If the CellProperties::Orientation property is
106 CellOrientation::STACKED, in Asian mode only Asian
107 characters are printed in horizontal orientation instead of all
109 For other values of CellProperties::Orientation,
110 this value is not used.</p>
112 [optional, property
] boolean AsianVerticalMode
;
115 /** contains a description of the cell or cell range border.
117 <p>If used with a cell range, the top, left, right, and bottom
118 lines are at the edges of the entire range, not at the edges of
119 the individual cell.</p>
121 [property
] com
::sun
::star
::table
::TableBorder TableBorder
;
124 /** contains a description of the top border line of each cell.
126 [property
] com
::sun
::star
::table
::BorderLine TopBorder
;
129 /** contains a description of the bottom border line of each cell.
131 [property
] com
::sun
::star
::table
::BorderLine BottomBorder
;
134 /** contains a description of the left border line of each cell.
136 [property
] com
::sun
::star
::table
::BorderLine LeftBorder
;
139 /** contains a description of the right border line of each cell.
141 [property
] com
::sun
::star
::table
::BorderLine RightBorder
;
144 /** contains the index of the number format that is used in the cells.
146 <p>The proper value can be determined by using the
147 com::sun::star::util::NumberFormatter
148 interface of the document.</p>
150 [property
] long NumberFormat
;
153 /** contains a description of the shadow.
155 [property
] com
::sun
::star
::table
::ShadowFormat ShadowFormat
;
158 /** contains a description of the cell protection.
160 <p>Cell protection is active only if the sheet is protected.</p>
162 [property
] com
::sun
::star
::util
::CellProtection CellProtection
;
165 /** stores additional attributes.
167 <p>This property is used i.e. by the XML filters to load and
168 restore unknown attributes.</p>
170 [optional, property
] com
::sun
::star
::container
::XNameContainer
171 UserDefinedAttributes
;
174 /** contains a description of the top left to bottom right diagonal line of each cell.
176 [optional, property
] com
::sun
::star
::table
::BorderLine DiagonalTLBR
;
179 /** contains a description of the bottom left to top right diagonal line of each cell.
181 [optional, property
] com
::sun
::star
::table
::BorderLine DiagonalBLTR
;
184 /** is `TRUE`, if the cell content will be shrunk to fit in the cell.
186 [optional, property
] boolean ShrinkToFit
;
189 //=== BorderLine2 / TableBorder2 optional properties, preferred ===========
191 /** contains a description of the cell or cell range border.
192 Preferred over TableBorder #TableBorder.
194 <p>If used with a cell range, the top, left, right, and bottom
195 lines are at the edges of the entire range, not at the edges of
196 the individual cell.</p>
198 @since LibreOffice 3.6
200 [optional, property
] com
::sun
::star
::table
::TableBorder2 TableBorder2
;
203 /** contains a description of the top border line of each cell.
204 Preferred over BorderLine #TopBorder.
206 @since LibreOffice 3.6
208 [optional, property
] com
::sun
::star
::table
::BorderLine2 TopBorder2
;
211 /** contains a description of the bottom border line of each cell.
212 Preferred over BorderLine #BottomBorder.
214 @since LibreOffice 3.6
216 [optional, property
] com
::sun
::star
::table
::BorderLine2 BottomBorder2
;
219 /** contains a description of the left border line of each cell.
220 Preferred over BorderLine #LeftBorder.
222 @since LibreOffice 3.6
224 [optional, property
] com
::sun
::star
::table
::BorderLine2 LeftBorder2
;
227 /** contains a description of the right border line of each cell.
228 Preferred over BorderLine #RightBorder.
230 @since LibreOffice 3.6
232 [optional, property
] com
::sun
::star
::table
::BorderLine2 RightBorder2
;
235 /** contains a description of the top left to bottom right diagonal line of each cell.
236 Preferred over BorderLine #DiagonalTLBR.
238 @since LibreOffice 3.6
240 [optional, property
] com
::sun
::star
::table
::BorderLine2 DiagonalTLBR2
;
243 /** contains a description of the bottom left to top right diagonal line of each cell.
244 Preferred over BorderLine #DiagonalBLTR.
246 @since LibreOffice 3.6
248 [optional, property
] com
::sun
::star
::table
::BorderLine2 DiagonalBLTR2
;
250 /** Grab bag of cell properties, used as a string-any map for interim interop purposes.
252 @since LibreOffice 4.3
254 <p>This property is intentionally not handled by the ODF filter. Any
255 member that should be handled there should be first moved out from this grab
256 bag to a separate property.</p>
258 [optional, property
] sequence
<com
::sun
::star
::beans
::PropertyValue
> CellInteropGrabBag
;
265 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */