/************************************************************** * * 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 * * Unless required by applicable law or agreed to in writing, * software distributed under the License is distributed on an * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY * KIND, either express or implied. See the License for the * specific language governing permissions and limitations * under the License. * *************************************************************/ #ifndef __com_sun_star_text_TextFrame_idl__ #define __com_sun_star_text_TextFrame_idl__ #ifndef __com_sun_star_text_XTextFrame_idl__ #include #endif #ifndef __com_sun_star_text_BaseFrame_idl__ #include #endif //============================================================================= module com { module sun { module star { module text { //============================================================================= /** specifies a rectangular shape which contains a Text object and is attached to a piece of surrounding Text. @see Text @example StarBasic

This example shows how to create a TextFrame and insert it at the very beginning of Text component. The macro is ready to run, if it is a script within a text document.

Sub Main oFrame = ThisComponent.createInstance( "com.sun.star.text.TextFrame" ) oFrame.Width = 6000 ThisComponent.Text.insertTextContent( ThisComponent.Text.Start, oFrame, false ) oFrame.Text.String = "Hello, this text is within the frame." End Sub */ published service TextFrame { /** contains the definition of interfaces and properties that are supported by text frames, graphic objects and embeddedobjects. */ service BaseFrame; /** This interface makes it possible to access the text within this text frame. */ interface com::sun::star::text::XTextFrame; //------------------------------------------------------------------------- /** contains the metric height value of the frame. */ [property] long FrameHeightAbsolute; //------------------------------------------------------------------------- /** contains the metric width value of the frame. */ [property] long FrameWidthAbsolute; //------------------------------------------------------------------------- /** specifies a width relative to the width of the surrounding text.

If the value for "WidthPercent" is 0, the absolute value from is used.

*/ [property] byte FrameWidthPercent; //------------------------------------------------------------------------- /** specifies a width relative to the width of the surrounding text.

If the value for "HeightPercent" is 0, the absolute value from is used.

*/ [property] byte FrameHeightPercent; //------------------------------------------------------------------------- /** If "AutomaticHeight" is set, then the object grows if it is required by the frame content. */ [property] boolean FrameIsAutomaticHeight; //------------------------------------------------------------------------- /** determines the interpretation of the height and relative height properties. @see SizeType */ [property] short SizeType; //------------------------------------------------------------------------- /** determines if the text frame should be editable in a read-only document. (This is usually used in forms.) */ [optional, property] boolean EditInReadonly; //------------------------------------------------------------------------- /** determines the interpretation of the width and relative width properties. @see SizeType @since OOo 2.4 */ [optional, property] short WidthType; //----------------------------------------------------------------------------- /** contains the writing direction, as represented by the WritingMode2 constants */ [optional, property] short WritingMode; //----------------------------------------------------------------------------- /** controls, if the frame follows the text flow or can leave its layout environment

If set, the frame follows the text flow and doesn't leaves the layout environment, which is given by its anchor, above and below. E.g.: Anchor resides in the document body then the frame doesn't leave the document body above and below and follows the text flow through the document bodies of the different pages. If not set, the frame doesn't follow the text flow and stays on the page, on which its anchor is found, but it may leave the layout environment, which is given by its anchor. E.g.: Anchor resides in the document body then the frame stays on page, where this document body is, but it could leave the document body above and below, e.g. overlapping with the page header. Note: The areas for the vertical orientation relation at page areas are interpreted in dependence to this property (@see BaseFrameProperties.VertOrientRelation). If property is set, the page area is interpreted as the layout environment, given by its anchor. E.g.: Anchor resides in the page header then the page header determines the page area. If property isn't set, the page area is determined by the document page, the anchor is on. E.g.: Anchor resides in the page header then the document page, the page header is on, determines the page area. An exception of this interpretation rule is applied, if the anchor resides in a table cell. In this situation the page area is always detemined by the table cell.

*/ [optional, property] boolean IsFollowingTextFlow; }; //============================================================================= }; }; }; }; #endif