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 .
19 #ifndef __com_sun_star_text_GenericTextDocument_idl__
20 #define __com_sun_star_text_GenericTextDocument_idl__
22 #include
<com
/sun
/star
/document
/OfficeDocument.idl
>
23 #include
<com
/sun
/star
/text
/XTextDocument.idl
>
24 #include
<com
/sun
/star
/util
/XSearchable.idl
>
25 #include
<com
/sun
/star
/util
/XRefreshable.idl
>
26 #include
<com
/sun
/star
/tiledrendering
/XTiledRenderable.idl
>
27 #include
<com
/sun
/star
/text
/XFootnotesSupplier.idl
>
28 #include
<com
/sun
/star
/text
/XEndnotesSupplier.idl
>
29 #include
<com
/sun
/star
/util
/XReplaceable.idl
>
30 #include
<com
/sun
/star
/text
/XPagePrintable.idl
>
31 #include
<com
/sun
/star
/text
/XReferenceMarksSupplier.idl
>
32 #include
<com
/sun
/star
/text
/XChapterNumberingSupplier.idl
>
33 #include
<com
/sun
/star
/text
/XTextGraphicObjectsSupplier.idl
>
34 #include
<com
/sun
/star
/text
/XTextEmbeddedObjectsSupplier.idl
>
35 #include
<com
/sun
/star
/text
/XTextTablesSupplier.idl
>
36 #include
<com
/sun
/star
/style
/XStyleFamiliesSupplier.idl
>
37 #include
<com
/sun
/star
/util
/XNumberFormatsSupplier.idl
>
38 #include
<com
/sun
/star
/text
/XBookmarksSupplier.idl
>
39 #include
<com
/sun
/star
/text
/XDocumentIndexesSupplier.idl
>
40 #include
<com
/sun
/star
/text
/XTextFieldsSupplier.idl
>
41 #include
<com
/sun
/star
/text
/XTextFramesSupplier.idl
>
42 #include
<com
/sun
/star
/text
/XTextSectionsSupplier.idl
>
43 #include
<com
/sun
/star
/lang
/XMultiServiceFactory.idl
>
44 #include
<com
/sun
/star
/lang
/Locale.idl
>
47 module com
{ module sun
{ module star
{ module text
{
50 /** A text document is a model component which contains text
51 structured by paragraphs.
53 <p>Each paragraph and each portion of text can be fitted with
54 some attributes (technically properties).</p>
56 <p>Its declared as generic text document, because its function is
57 needed by different derived services (TextDocument/WebDocument/GlobalDocument).</p>
59 <p>In addition, all text objects can be searched.</p>
61 published service GenericTextDocument
63 service com
::sun
::star
::document
::OfficeDocument
;
65 /** provides methods to create instances of several text document
67 A text document provides several services which need the context
68 of a text document and these text document dependent services are
69 created at the text document directly and not over the global service
72 interface com
::sun
::star
::lang
::XMultiServiceFactory
;
74 interface com
::sun
::star
::text
::XTextDocument
;
76 interface com
::sun
::star
::util
::XSearchable
;
78 interface com
::sun
::star
::util
::XRefreshable
;
80 /** @since LibreOffice 5.0 */
81 [optional] interface com
::sun
::star
::tiledrendering
::XTiledRenderable
;
83 [optional] interface com
::sun
::star
::text
::XFootnotesSupplier
;
85 [optional] interface com
::sun
::star
::text
::XEndnotesSupplier
;
87 [optional] interface com
::sun
::star
::util
::XReplaceable
;
89 [optional] interface com
::sun
::star
::text
::XPagePrintable
;
91 [optional] interface com
::sun
::star
::text
::XReferenceMarksSupplier
;
93 [optional] interface com
::sun
::star
::text
::XChapterNumberingSupplier
;
95 [optional] interface com
::sun
::star
::beans
::XPropertySet
;
97 [optional] interface com
::sun
::star
::text
::XTextGraphicObjectsSupplier
;
99 [optional] interface com
::sun
::star
::text
::XTextEmbeddedObjectsSupplier
;
101 [optional] interface com
::sun
::star
::text
::XTextTablesSupplier
;
103 [optional] interface com
::sun
::star
::style
::XStyleFamiliesSupplier
;
107 [optional] interface com
::sun
::star
::text
::XBookmarksSupplier
;
111 [optional] interface com
::sun
::star
::text
::XDocumentIndexesSupplier
;
115 [optional] interface com
::sun
::star
::text
::XTextFieldsSupplier
;
119 [optional] interface com
::sun
::star
::text
::XTextFramesSupplier
;
123 [optional] interface com
::sun
::star
::text
::XTextSectionsSupplier
;
127 [optional] interface com
::sun
::star
::util
::XNumberFormatsSupplier
;
129 /** contains the identifier of the default locale of the document.
131 [optional, property
] com
::sun
::star
::lang
::Locale CharLocale
;
134 /** contains the count of all characters in the document.
136 [optional, readonly, property
] long CharacterCount
;
140 /** contains the count of all paragraphs in the document.
142 [optional, readonly, property
] long ParagraphCount
;
145 /** contains the count of all words in the document.@see WordSeparator
147 [optional, readonly, property
] long WordCount
;
150 /** contains a string that consists of characters that mark the
151 separation of words in counting the words in a document.
155 <p> I.e. slash and backslash. Whitespace (tab stop,
156 space, paragraph break, line break) always separate
157 words.</p>@see WordCount
159 [optional, property
] string WordSeparator
;
161 /** specifies the concordance file taken into account when
164 * When no concordance file should be used the string is empty.
165 * Used for text documents only.
169 [optional, property
] string IndexAutoMarkFileURL
;
171 /** specifies if change recording is active.
175 [optional, property
] boolean RecordChanges
;
177 /** specifies the first 4 digit year to be used when years
178 * are given in 2 digits.
180 * Example: if set to 1930
181 * Oct-12-29 will be interpreted as Oct-12-2029
182 * Oct-12-30 will be interpreted as Oct-12-1930
183 * Oct-12-02 will be interpreted as Oct-12-2002
187 [optional, property
] short TwoDigitYear
;
195 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */