/************************************************************************* * * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * Copyright 2000, 2010 Oracle and/or its affiliates. * * OpenOffice.org - a multi-platform office productivity suite * * This file is part of OpenOffice.org. * * OpenOffice.org is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License version 3 * only, as published by the Free Software Foundation. * * OpenOffice.org is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License version 3 for more details * (a copy is included in the LICENSE file that accompanied this code). * * You should have received a copy of the GNU Lesser General Public License * version 3 along with OpenOffice.org. If not, see * * for a copy of the LGPLv3 License. * ************************************************************************/ #ifndef __com_sun_star_text_TextTable_idl__ #define __com_sun_star_text_TextTable_idl__ #ifndef __com_sun_star_text_TextContent_idl__ #include #endif #ifndef __com_sun_star_util_Color_idl__ #include #endif #ifndef __com_sun_star_text_XTextTable_idl__ #include #endif #ifndef __com_sun_star_text_TableColumnSeparator_idl__ #include #endif #ifndef __com_sun_star_container_XNamed_idl__ #include #endif #ifndef __com_sun_star_beans_XPropertySet_idl__ #include #endif #ifndef __com_sun_star_style_GraphicLocation_idl__ #include #endif #ifndef __com_sun_star_style_BreakType_idl__ #include #endif #ifndef __com_sun_star_table_ShadowFormat_idl__ #include #endif #ifndef __com_sun_star_table_TableBorder_idl__ #include #endif #ifndef __com_sun_star_table_XCellRange_idl__ #include #endif #ifndef __com_sun_star_table_XAutoFormattable_idl__ #include #endif #ifndef __com_sun_star_chart_XChartDataArray_idl__ #include #endif #ifndef __com_sun_star_util_XSortable_idl__ #include #endif #ifndef __com_sun_star_sheet_XCellRangeData_idl__ #include #endif #ifndef _com_sun_star_xml_UserDefinedAttributesSupplier_idl_ #include #endif //============================================================================= module com { module sun { module star { module text { //============================================================================= /** is a table of text cells which is anchored to a surrounding text.

Note: The anchor of the actual implementation for text tables does not have a position in the text. Thus that anchor can not be used for some operation like XTextContent::attach or XText::insertTextContent or other function that require the object to have a position in the text.

The reason why a text table still needs an anchor is that for example tables should be insertable via XText::insertTextContent and that interface uses a parameter of that type.

@example

Create and insert a TextTable:

xTable = xTextDoc.createInstance( "com.sun.star.text.TextTable" ) xTable.initialize(5, 8) xTable.HoriOrient = 0 'com::sun::star::text::HoriOrientation::NONE xTable.LeftMargin = 2000 xTable.RightMargin = 1500 xTextDoc.getText.insertTextContent( xTextRange, xTable, false ) @see com::sun::star::text::Cell @see com::sun::star::text::CellRange @see com::sun::star::text::TableColumns @see com::sun::star::text::TableRows @see com::sun::star::text::TextTableCursor */ published service TextTable { service com::sun::star::text::TextContent; [optional] service com::sun::star::xml::UserDefinedAttributesSupplier; interface com::sun::star::text::XTextTable; interface com::sun::star::container::XNamed; interface com::sun::star::table::XCellRange; interface com::sun::star::chart::XChartDataArray; interface com::sun::star::table::XAutoFormattable; interface com::sun::star::util::XSortable; [optional] interface com::sun::star::sheet::XCellRangeData; /** determins the type of break that is applied at the beginning of the table.@see com.sun.star.style.BreakType */ [property] com::sun::star::style::BreakType BreakType; //------------------------------------------------------------------------- /** contains the left margin of the table. */ [property] long LeftMargin; //------------------------------------------------------------------------- /** contains the right margin of the table. */ [property] long RightMargin; //------------------------------------------------------------------------- /** contains the horizontal orientation.@see com.sun.star.text.HoriOrientation */ [property] short HoriOrient; //------------------------------------------------------------------------- /** Setting this property to TRUE prevents page or column breaks between this table and the following paragraph or text table. */ [property] boolean KeepTogether; //------------------------------------------------------------------------- /** Setting this property to FALSE prevents the table from getting spread on two pages. */ [property] boolean Split; //------------------------------------------------------------------------- /** If a page break property is set at the table, this property contains the new value for the page number. */ [property] short PageNumberOffset; //------------------------------------------------------------------------- /** If this property is set, it creates a page break before the table and assigns the value as the name of the new page style sheet to use. */ [property] string PageDescName; //------------------------------------------------------------------------- /** determins the width of the table relative to its environment. */ [property] short RelativeWidth; //------------------------------------------------------------------------- /** determins if the value of the relative width is valid. */ [property] boolean IsWidthRelative; //------------------------------------------------------------------------- /** determins if the first row of the table is repeated on every new page. */ [property] boolean RepeatHeadline; //------------------------------------------------------------------------- /** determins the number of rows of the table repeated on every new page. */ [optional, property] long HeaderRowCount; //------------------------------------------------------------------------- /** determins the type, color and size of the shadow.@see com.sun.star.table.ShadowFormat */ [property] com::sun::star::table::ShadowFormat ShadowFormat; //------------------------------------------------------------------------- /** determins the top margin. */ [property] long TopMargin; //------------------------------------------------------------------------- /** determins the bottom margin. */ [property] long BottomMargin; //------------------------------------------------------------------------- /** determins if the background color is transparent. */ [property] boolean BackTransparent; //------------------------------------------------------------------------- /** contains the absolute table width.

As this is only a describing property the value of the actual table may vary depending on the environment the table is located in and the settings of LeftMargin, RightMargin and HoriOrient.

*/ [property] long Width; //------------------------------------------------------------------------- /** determins if the first row of the table should be treated as axis labels when a chart is to be created. */ [property] boolean ChartRowAsLabel; //------------------------------------------------------------------------- /** determins if the first column of the table should be treated as axis labels when a chart is to be created. */ [property] boolean ChartColumnAsLabel; //------------------------------------------------------------------------- /** contains the description of the table borders.@see com.sun.star.table.TableBorder */ [property] com::sun::star::table::TableBorder TableBorder; //------------------------------------------------------------------------- /** contains the column description of the table. @see com.sun.star.text.TableColumnSeparator */ [property] sequence TableColumnSeparators; //------------------------------------------------------------------------- /** contains the sum of the column width values used in TableColumnSeparators. */ [property] short TableColumnRelativeSum; //------------------------------------------------------------------------- /** contains the color of the background. */ [property] com::sun::star::util::Color BackColor; //------------------------------------------------------------------------- /** contains the URL for the background graphic. */ [property] string BackGraphicURL; //------------------------------------------------------------------------- /** contains the name of the file filter for the background graphic. */ [property] string BackGraphicFilter; //------------------------------------------------------------------------- /** determines the position of the background graphic.@see GraphicLocation */ [property] com::sun::star::style::GraphicLocation BackGraphicLocation; //------------------------------------------------------------------------- /** determines whether borders of neighbouring table cells are * collapsed into one */ [optional, property] boolean CollapsingBorders; }; //============================================================================= }; }; }; }; #endif