Update ooo320-m1
[ooovba.git] / offapi / com / sun / star / text / TextFrame.idl
blob73c8952351d77e0a3e7952b8f07160d9df673f1c
1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: TextFrame.idl,v $
10 * $Revision: 1.14.122.1 $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
30 #ifndef __com_sun_star_text_TextFrame_idl__
31 #define __com_sun_star_text_TextFrame_idl__
33 #ifndef __com_sun_star_text_XTextFrame_idl__
34 #include <com/sun/star/text/XTextFrame.idl>
35 #endif
37 #ifndef __com_sun_star_text_BaseFrame_idl__
38 #include <com/sun/star/text/BaseFrame.idl>
39 #endif
41 //=============================================================================
43 module com { module sun { module star { module text {
45 //=============================================================================
47 /** specifies a rectangular shape which contains a <type>Text</type> object
48 and is attached to a piece of surrounding <type>Text</type>.
50 @see Text
52 @example StarBasic
54 <p>This example shows how to create a <type>TextFrame</type> and insert
55 it at the very beginning of <type>Text</type> component. The macro
56 is ready to run, if it is a script within a text document. </p>
58 <listing>
59 Sub Main
60 oFrame = ThisComponent.createInstance( "com.sun.star.text.TextFrame" )
61 oFrame.Width = 6000
62 ThisComponent.Text.insertTextContent( ThisComponent.Text.Start, oFrame, false )
63 oFrame.Text.String = "Hello, this text is within the frame."
64 End Sub
65 </listing>
67 published service TextFrame
69 /** contains the definition of interfaces and properties that are supported by text frames,
70 graphic objects and embeddedobjects.
72 service BaseFrame;
74 /** This interface makes it possible to access the text within this
75 text frame.
77 interface com::sun::star::text::XTextFrame;
78 //-------------------------------------------------------------------------
79 /** contains the metric height value of the frame.
81 [property] long FrameHeightAbsolute;
83 //-------------------------------------------------------------------------
84 /** contains the metric width value of the frame.
86 [property] long FrameWidthAbsolute;
88 //-------------------------------------------------------------------------
90 /** specifies a width relative to the width of the
91 surrounding text.
92 <p>If the value for "WidthPercent" is 0, the absolute value from
93 is used.</p>
95 [property] byte FrameWidthPercent;
97 //-------------------------------------------------------------------------
98 /** specifies a width relative to the width of the
99 surrounding text.
101 <p>If the value for "HeightPercent" is 0, the absolute value from
102 is used.</p>
104 [property] byte FrameHeightPercent;
105 //-------------------------------------------------------------------------
106 /** If "AutomaticHeight" is set, then the object grows if it is required
107 by the frame content.
109 [property] boolean FrameIsAutomaticHeight;
110 //-------------------------------------------------------------------------
111 /** determines the interpretation of the height and relative
112 height properties.
114 @see SizeType
116 [property] short SizeType;
117 //-------------------------------------------------------------------------
118 /** determines the interpretation of the width and relative
119 width properties.
121 @see SizeType
122 @since OOo 2.4
124 [optional, property] short WidthType;
125 //-----------------------------------------------------------------------------
126 /** contains the writing direction, as represented by the
127 <type scope="com::sun::star::text">WritingMode2</type> constants
129 [optional, property] short WritingMode;
131 /** controls, if the frame follows the text flow or can leave its layout environment
133 <p>If set, the frame follows the text flow and doesn't leaves the layout
134 environment, which is given by its anchor, above and below.
135 E.g.: Anchor resides in the document body then the frame doesn't leave
136 the document body above and below and follows the text flow through
137 the document bodies of the different pages.
139 If not set, the frame doesn't follow the text flow and stays on the page,
140 on which its anchor is found, but it may leave the layout environment,
141 which is given by its anchor.
142 E.g.: Anchor resides in the document body then the frame stays on page,
143 where this document body is, but it could leave the document body above
144 and below, e.g. overlapping with the page header.
146 Note: The areas for the vertical orientation relation at page areas are
147 interpreted in dependence to this property (@see BaseFrameProperties.VertOrientRelation).
148 If property is set, the page area is interpreted as the layout environment,
149 given by its anchor. E.g.: Anchor resides in the page header then the
150 page header determines the page area. If property isn't set, the page area is
151 determined by the document page, the anchor is on. E.g.: Anchor resides
152 in the page header then the document page, the page header is on, determines
153 the page area.
154 An exception of this interpretation rule is applied, if the anchor resides
155 in a table cell. In this situation the page area is always detemined by
156 the table cell.</p>
158 [optional, property] boolean IsFollowingTextFlow;
162 //=============================================================================
164 }; }; }; };
166 #endif