1*b1cdbd2cSJim Jagielski/**************************************************************
2*b1cdbd2cSJim Jagielski *
3*b1cdbd2cSJim Jagielski * Licensed to the Apache Software Foundation (ASF) under one
4*b1cdbd2cSJim Jagielski * or more contributor license agreements.  See the NOTICE file
5*b1cdbd2cSJim Jagielski * distributed with this work for additional information
6*b1cdbd2cSJim Jagielski * regarding copyright ownership.  The ASF licenses this file
7*b1cdbd2cSJim Jagielski * to you under the Apache License, Version 2.0 (the
8*b1cdbd2cSJim Jagielski * "License"); you may not use this file except in compliance
9*b1cdbd2cSJim Jagielski * with the License.  You may obtain a copy of the License at
10*b1cdbd2cSJim Jagielski *
11*b1cdbd2cSJim Jagielski *   http://www.apache.org/licenses/LICENSE-2.0
12*b1cdbd2cSJim Jagielski *
13*b1cdbd2cSJim Jagielski * Unless required by applicable law or agreed to in writing,
14*b1cdbd2cSJim Jagielski * software distributed under the License is distributed on an
15*b1cdbd2cSJim Jagielski * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*b1cdbd2cSJim Jagielski * KIND, either express or implied.  See the License for the
17*b1cdbd2cSJim Jagielski * specific language governing permissions and limitations
18*b1cdbd2cSJim Jagielski * under the License.
19*b1cdbd2cSJim Jagielski *
20*b1cdbd2cSJim Jagielski *************************************************************/
21*b1cdbd2cSJim Jagielski
22*b1cdbd2cSJim Jagielski
23*b1cdbd2cSJim Jagielski#ifndef __com_sun_star_document_MediaDescriptor_idl__
24*b1cdbd2cSJim Jagielski#define __com_sun_star_document_MediaDescriptor_idl__
25*b1cdbd2cSJim Jagielski
26*b1cdbd2cSJim Jagielski#ifndef __com_sun_star_io_XOutputStream_idl__
27*b1cdbd2cSJim Jagielski#include <com/sun/star/io/XOutputStream.idl>
28*b1cdbd2cSJim Jagielski#endif
29*b1cdbd2cSJim Jagielski
30*b1cdbd2cSJim Jagielski#ifndef __com_sun_star_io_XInputStream_idl__
31*b1cdbd2cSJim Jagielski#include <com/sun/star/io/XInputStream.idl>
32*b1cdbd2cSJim Jagielski#endif
33*b1cdbd2cSJim Jagielski
34*b1cdbd2cSJim Jagielski#ifndef __com_sun_star_awt_Rectangle_idl__
35*b1cdbd2cSJim Jagielski#include <com/sun/star/awt/Rectangle.idl>
36*b1cdbd2cSJim Jagielski#endif
37*b1cdbd2cSJim Jagielski
38*b1cdbd2cSJim Jagielski#ifndef __com_sun_star_beans_NamedValue_idl__
39*b1cdbd2cSJim Jagielski#include <com/sun/star/beans/NamedValue.idl>
40*b1cdbd2cSJim Jagielski#endif
41*b1cdbd2cSJim Jagielski
42*b1cdbd2cSJim Jagielski#ifndef __com_sun_star_util_URL_idl__
43*b1cdbd2cSJim Jagielski#include <com/sun/star/util/URL.idl>
44*b1cdbd2cSJim Jagielski#endif
45*b1cdbd2cSJim Jagielski
46*b1cdbd2cSJim Jagielski#ifndef __com_sun_star_task_XInteractionHandler_idl__
47*b1cdbd2cSJim Jagielski#include <com/sun/star/task/XInteractionHandler.idl>
48*b1cdbd2cSJim Jagielski#endif
49*b1cdbd2cSJim Jagielski
50*b1cdbd2cSJim Jagielski#ifndef __com_sun_star_task_XStatusIndicator_idl__
51*b1cdbd2cSJim Jagielski#include <com/sun/star/task/XStatusIndicator.idl>
52*b1cdbd2cSJim Jagielski#endif
53*b1cdbd2cSJim Jagielski
54*b1cdbd2cSJim Jagielski#ifndef __com_sun_star_frame_XFrame_idl__
55*b1cdbd2cSJim Jagielski#include <com/sun/star/frame/XFrame.idl>
56*b1cdbd2cSJim Jagielski#endif
57*b1cdbd2cSJim Jagielski
58*b1cdbd2cSJim Jagielski//=============================================================================
59*b1cdbd2cSJim Jagielski
60*b1cdbd2cSJim Jagielskimodule com { module sun { module star { module document {
61*b1cdbd2cSJim Jagielski
62*b1cdbd2cSJim Jagielski//=============================================================================
63*b1cdbd2cSJim Jagielski/** describes properties of a document, regarding the relationship
64*b1cdbd2cSJim Jagielski	between the loaded document and the resource the document is
65*b1cdbd2cSJim Jagielski	loaded from / stored to.
66*b1cdbd2cSJim Jagielski
67*b1cdbd2cSJim Jagielski    <p>
68*b1cdbd2cSJim Jagielski    This service may be represented by a
69*b1cdbd2cSJim Jagielski    <type scope="com::sun::star::beans" dim="[]">PropertyValue</type>.
70*b1cdbd2cSJim Jagielski    Such descriptors will be passed to different functions, included into possible
71*b1cdbd2cSJim Jagielski    load/save proccesses. Every member of such process can use this descriptor
72*b1cdbd2cSJim Jagielski    and may change it if to actualize the informations about the document.
73*b1cdbd2cSJim Jagielski    So this descriptor should be used as an in/out parameter.
74*b1cdbd2cSJim Jagielski    </p>
75*b1cdbd2cSJim Jagielski
76*b1cdbd2cSJim Jagielski    <p>
77*b1cdbd2cSJim Jagielski    Note:<br>
78*b1cdbd2cSJim Jagielski    It's not allowed to hold member of this descriptor by references longer the they
79*b1cdbd2cSJim Jagielski    will be used (especialy a possible stream). It's allowed to use it directly
80*b1cdbd2cSJim Jagielski    or by copying it only.
81*b1cdbd2cSJim Jagielski    </p>
82*b1cdbd2cSJim Jagielski
83*b1cdbd2cSJim Jagielski	@see com::sun::star::beans::PropertyValue
84*b1cdbd2cSJim Jagielski */
85*b1cdbd2cSJim Jagielskipublished service MediaDescriptor
86*b1cdbd2cSJim Jagielski{
87*b1cdbd2cSJim Jagielski    //-------------------------------------------------------------------------
88*b1cdbd2cSJim Jagielski    /** May be set by filters or detection services if user has choosen to
89*b1cdbd2cSJim Jagielski        abort loading/saving, e.g. while entering a password.
90*b1cdbd2cSJim Jagielski     */
91*b1cdbd2cSJim Jagielski    [optional,property] boolean Aborted;
92*b1cdbd2cSJim Jagielski
93*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
94*b1cdbd2cSJim Jagielski    /** document is a template
95*b1cdbd2cSJim Jagielski
96*b1cdbd2cSJim Jagielski        <p>
97*b1cdbd2cSJim Jagielski        Loading a component of type "template" creates a new untitled document
98*b1cdbd2cSJim Jagielski        by default, but setting the "AsTemplate" property to <FALSE/> loads the
99*b1cdbd2cSJim Jagielski        template document for editing. Setting "AsTemplate" to <TRUE/> creates a
100*b1cdbd2cSJim Jagielski        new untitled document out of the loaded document, even if it has not
101*b1cdbd2cSJim Jagielski        a "template" type.
102*b1cdbd2cSJim Jagielski        </p>
103*b1cdbd2cSJim Jagielski     */
104*b1cdbd2cSJim Jagielski	[optional,property] boolean AsTemplate;
105*b1cdbd2cSJim Jagielski
106*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
107*b1cdbd2cSJim Jagielski    /** the author of the document
108*b1cdbd2cSJim Jagielski
109*b1cdbd2cSJim Jagielski        <p>
110*b1cdbd2cSJim Jagielski        Only for storing versions in components supporting versioning:
111*b1cdbd2cSJim Jagielski        author of version.
112*b1cdbd2cSJim Jagielski        </p>
113*b1cdbd2cSJim Jagielski     */
114*b1cdbd2cSJim Jagielski    [optional,property] string Author;
115*b1cdbd2cSJim Jagielski
116*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
117*b1cdbd2cSJim Jagielski    /** identifier of used character set
118*b1cdbd2cSJim Jagielski
119*b1cdbd2cSJim Jagielski        <p>
120*b1cdbd2cSJim Jagielski        Defines the character set for document formats that contain single
121*b1cdbd2cSJim Jagielski        byte characters (if necessary).
122*b1cdbd2cSJim Jagielski        </p>
123*b1cdbd2cSJim Jagielski     */
124*b1cdbd2cSJim Jagielski	[optional,property] string CharacterSet;
125*b1cdbd2cSJim Jagielski
126*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
127*b1cdbd2cSJim Jagielski    /** description of document
128*b1cdbd2cSJim Jagielski
129*b1cdbd2cSJim Jagielski        <p>
130*b1cdbd2cSJim Jagielski        Only for storing versions in components supporting versioning:
131*b1cdbd2cSJim Jagielski        comment (description) for stored version.
132*b1cdbd2cSJim Jagielski        </p>
133*b1cdbd2cSJim Jagielski     */
134*b1cdbd2cSJim Jagielski    [optional,property] string Comment;
135*b1cdbd2cSJim Jagielski
136*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
137*b1cdbd2cSJim Jagielski    /** pack specific properties of caller
138*b1cdbd2cSJim Jagielski
139*b1cdbd2cSJim Jagielski        <p>
140*b1cdbd2cSJim Jagielski        This is a parameter that can be used for any properties specific
141*b1cdbd2cSJim Jagielski        for a special component type. Format of that depends from real
142*b1cdbd2cSJim Jagielski        type of adressed component.
143*b1cdbd2cSJim Jagielski        </p>
144*b1cdbd2cSJim Jagielski
145*b1cdbd2cSJim Jagielski        <p>
146*b1cdbd2cSJim Jagielski        For extensibility, it is recommended to use values of type
147*b1cdbd2cSJim Jagielski        sequence<com.sun.star.beans.NamedValue> with this property.
148*b1cdbd2cSJim Jagielski        </p>
149*b1cdbd2cSJim Jagielski     */
150*b1cdbd2cSJim Jagielski    [optional,property] any ComponentData;
151*b1cdbd2cSJim Jagielski
152*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
153*b1cdbd2cSJim Jagielski	/** The base URL of the document to be used to resolve relative links.
154*b1cdbd2cSJim Jagielski	 */
155*b1cdbd2cSJim Jagielski	[optional,property] string DocumentBaseURL;
156*b1cdbd2cSJim Jagielski
157*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
158*b1cdbd2cSJim Jagielski    /** document title
159*b1cdbd2cSJim Jagielski
160*b1cdbd2cSJim Jagielski        <p>
161*b1cdbd2cSJim Jagielski		This parameter can be used to specify a title for a document.
162*b1cdbd2cSJim Jagielski		</p>
163*b1cdbd2cSJim Jagielski	 */
164*b1cdbd2cSJim Jagielski	[optional,property] string DocumentTitle;
165*b1cdbd2cSJim Jagielski
166*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
167*b1cdbd2cSJim Jagielski    /** encryption information for encryption/decryption of documents
168*b1cdbd2cSJim Jagielski
169*b1cdbd2cSJim Jagielski        <p>
170*b1cdbd2cSJim Jagielski        It contains the necessary information for encryption/decryption of
171*b1cdbd2cSJim Jagielski        a component (if necessary).
172*b1cdbd2cSJim Jagielski        If neither password nor encryption data is specified, loading of
173*b1cdbd2cSJim Jagielski        a password protected document will fail, storing will be done without
174*b1cdbd2cSJim Jagielski        encryption. If both are provided, the encryption data is used
175*b1cdbd2cSJim Jagielski        ( if the filter supports it ).
176*b1cdbd2cSJim Jagielski        </p>
177*b1cdbd2cSJim Jagielski        <p>
178*b1cdbd2cSJim Jagielski        The encryption data is generated based on the password.
179*b1cdbd2cSJim Jagielski        </p>
180*b1cdbd2cSJim Jagielski     */
181*b1cdbd2cSJim Jagielski    [optional,property] sequence< ::com::sun::star::beans::NamedValue > EncryptionData;
182*b1cdbd2cSJim Jagielski
183*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
184*b1cdbd2cSJim Jagielski    /** same as <member>MediaDescriptor::URL</member>
185*b1cdbd2cSJim Jagielski
186*b1cdbd2cSJim Jagielski        <p>
187*b1cdbd2cSJim Jagielski        It will be supported for compatibility reasons only.
188*b1cdbd2cSJim Jagielski        </p>
189*b1cdbd2cSJim Jagielski
190*b1cdbd2cSJim Jagielski        @deprecated
191*b1cdbd2cSJim Jagielski     */
192*b1cdbd2cSJim Jagielski    [optional,property] string FileName;
193*b1cdbd2cSJim Jagielski
194*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
195*b1cdbd2cSJim Jagielski    /** internal filter name
196*b1cdbd2cSJim Jagielski
197*b1cdbd2cSJim Jagielski        <p>
198*b1cdbd2cSJim Jagielski        Name of a filter that should be used for loading or storing the component.
199*b1cdbd2cSJim Jagielski        Names must match the names of the <type>TypeDetection</type> configuration,
200*b1cdbd2cSJim Jagielski        invalid names are ignored. If a name is specified on loading,
201*b1cdbd2cSJim Jagielski        it still will be verified by a filter detection, but in case of doubt
202*b1cdbd2cSJim Jagielski        it will be preferred.
203*b1cdbd2cSJim Jagielski        </p>
204*b1cdbd2cSJim Jagielski	 */
205*b1cdbd2cSJim Jagielski	[optional,property] string FilterName;
206*b1cdbd2cSJim Jagielski
207*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
208*b1cdbd2cSJim Jagielski    /** same as <member>MediaDescriptor::FilterOptions</member>
209*b1cdbd2cSJim Jagielski
210*b1cdbd2cSJim Jagielski        <p>
211*b1cdbd2cSJim Jagielski        It will be supported for compatibility reasons only.
212*b1cdbd2cSJim Jagielski        </p>
213*b1cdbd2cSJim Jagielski
214*b1cdbd2cSJim Jagielski        @deprecated
215*b1cdbd2cSJim Jagielski     */
216*b1cdbd2cSJim Jagielski    [optional,property] string FilterFlags;
217*b1cdbd2cSJim Jagielski
218*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
219*b1cdbd2cSJim Jagielski    /** additional properties for filter
220*b1cdbd2cSJim Jagielski
221*b1cdbd2cSJim Jagielski        <p>
222*b1cdbd2cSJim Jagielski        Some filters need additional parameters; use only together with property
223*b1cdbd2cSJim Jagielski        <member>MediaDescriptor::FilterName</member>. Details must be documented
224*b1cdbd2cSJim Jagielski        by the filter. This is an old format for some filters. If a string is not
225*b1cdbd2cSJim Jagielski        enough, filters can use the property <member>MediaDescriptor::FilterData</member>.
226*b1cdbd2cSJim Jagielski        </p>
227*b1cdbd2cSJim Jagielski     */
228*b1cdbd2cSJim Jagielski    [optional,property] string FilterOptions;
229*b1cdbd2cSJim Jagielski
230*b1cdbd2cSJim Jagielski        //-------------------------------------------------------------------------
231*b1cdbd2cSJim Jagielski    /** additional properties for filter
232*b1cdbd2cSJim Jagielski
233*b1cdbd2cSJim Jagielski        <p>
234*b1cdbd2cSJim Jagielski        This is a parameter that can be used for any properties specific
235*b1cdbd2cSJim Jagielski        for a special filter type. It should be used if
236*b1cdbd2cSJim Jagielski        <member>MediaDescriptor::FilterOptions</member> isn't enough.
237*b1cdbd2cSJim Jagielski        </p>
238*b1cdbd2cSJim Jagielski     */
239*b1cdbd2cSJim Jagielski    [optional,property] any FilterData;
240*b1cdbd2cSJim Jagielski
241*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
242*b1cdbd2cSJim Jagielski    /** load document invisible
243*b1cdbd2cSJim Jagielski
244*b1cdbd2cSJim Jagielski        <p>
245*b1cdbd2cSJim Jagielski        Defines if the loaded component is made visible. If this property is not
246*b1cdbd2cSJim Jagielski        specified, the component is made visible by default.
247*b1cdbd2cSJim Jagielski        </p>
248*b1cdbd2cSJim Jagielski	 */
249*b1cdbd2cSJim Jagielski    [optional,property] boolean Hidden;
250*b1cdbd2cSJim Jagielski
251*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
252*b1cdbd2cSJim Jagielski	/** The hierarchical path to the embedded document from topmost container.
253*b1cdbd2cSJim Jagielski	 */
254*b1cdbd2cSJim Jagielski	[optional,property] string HierarchicalDocumentName;
255*b1cdbd2cSJim Jagielski
256*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
257*b1cdbd2cSJim Jagielski    /** a stream to receive the document data.
258*b1cdbd2cSJim Jagielski
259*b1cdbd2cSJim Jagielski        <p>
260*b1cdbd2cSJim Jagielski        If used when storing a document: writing must be done using this stream.
261*b1cdbd2cSJim Jagielski        If no stream is provided, the loader will create a stream by itself using
262*b1cdbd2cSJim Jagielski        the other properties. It is not allowed to keep a reference to this
263*b1cdbd2cSJim Jagielski        OutputStream after storing the component.
264*b1cdbd2cSJim Jagielski        </p>
265*b1cdbd2cSJim Jagielski	 */
266*b1cdbd2cSJim Jagielski    [optional,property] com::sun::star::io::XOutputStream OutputStream;
267*b1cdbd2cSJim Jagielski
268*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
269*b1cdbd2cSJim Jagielski    /** content of document
270*b1cdbd2cSJim Jagielski
271*b1cdbd2cSJim Jagielski        <p>
272*b1cdbd2cSJim Jagielski        If used when loading a document: reading must be done using this stream.
273*b1cdbd2cSJim Jagielski        If no stream is provided, the loader will create a stream by itself using
274*b1cdbd2cSJim Jagielski        the other properties. It is not allowed to keep a reference to this
275*b1cdbd2cSJim Jagielski        InputStream after loading the component, and it would be useless, because
276*b1cdbd2cSJim Jagielski        in general an InputStream is usable for readong only once, except when it
277*b1cdbd2cSJim Jagielski        also implements the <type scope="com::sun::star::io">XSeekable</type> interface.
278*b1cdbd2cSJim Jagielski        </p>
279*b1cdbd2cSJim Jagielski	 */
280*b1cdbd2cSJim Jagielski    [optional,property] com::sun::star::io::XInputStream InputStream;
281*b1cdbd2cSJim Jagielski
282*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
283*b1cdbd2cSJim Jagielski    /** handle exceptional situations
284*b1cdbd2cSJim Jagielski
285*b1cdbd2cSJim Jagielski        <p>
286*b1cdbd2cSJim Jagielski        Object implementing the <type scope="com::sun::star::task">InteractionHandler</type>
287*b1cdbd2cSJim Jagielski        service that is used to handle exceptional situations where proceeding with the task
288*b1cdbd2cSJim Jagielski        is impossible without additional information or impossible at all.
289*b1cdbd2cSJim Jagielski        The implemented api provides a default implementation for it that can handle many situations.
290*b1cdbd2cSJim Jagielski        If no InteractionHandler is set, a suitable exception is thrown.
291*b1cdbd2cSJim Jagielski        It is not allowed to keep a reference to this object, even not in the loaded
292*b1cdbd2cSJim Jagielski        or stored components' copy of the MediaDescriptor provided by its arguments attribute.
293*b1cdbd2cSJim Jagielski        </p>
294*b1cdbd2cSJim Jagielski     */
295*b1cdbd2cSJim Jagielski    [optional,property] com::sun::star::task::XInteractionHandler InteractionHandler;
296*b1cdbd2cSJim Jagielski
297*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
298*b1cdbd2cSJim Jagielski    /** jump to a marked position after loading
299*b1cdbd2cSJim Jagielski
300*b1cdbd2cSJim Jagielski        <p>
301*b1cdbd2cSJim Jagielski        This is the same as the text behind a '#' in a http URL. But
302*b1cdbd2cSJim Jagielski        this syntax with a '#' is not specified in most URL schemas.
303*b1cdbd2cSJim Jagielski		</p>
304*b1cdbd2cSJim Jagielski	 */
305*b1cdbd2cSJim Jagielski	[optional,property] string JumpMark;
306*b1cdbd2cSJim Jagielski
307*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
308*b1cdbd2cSJim Jagielski    /** specify mime type of content
309*b1cdbd2cSJim Jagielski
310*b1cdbd2cSJim Jagielski        <p>
311*b1cdbd2cSJim Jagielski        Type of the medium to load, that must match to one of the types defined
312*b1cdbd2cSJim Jagielski        in the <type>TypeDetection</type> configuration (otherwise it's ignored).
313*b1cdbd2cSJim Jagielski        This bypasses the type detection of the <type scope="com::sun::star::frame">Desktop</type> environment,
314*b1cdbd2cSJim Jagielski        so passing a wrong MediaType will cause failure of loading.
315*b1cdbd2cSJim Jagielski        </p>
316*b1cdbd2cSJim Jagielski	 */
317*b1cdbd2cSJim Jagielski	[optional,property] string MediaType;
318*b1cdbd2cSJim Jagielski
319*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
320*b1cdbd2cSJim Jagielski    /** please use the corresponding parameters of this descriptor instead
321*b1cdbd2cSJim Jagielski
322*b1cdbd2cSJim Jagielski        <p>
323*b1cdbd2cSJim Jagielski        String that summarizes some flags for loading. The string contains capital
324*b1cdbd2cSJim Jagielski        letters for the flags:<br>
325*b1cdbd2cSJim Jagielski        <table border=1>
326*b1cdbd2cSJim Jagielski            <tr>
327*b1cdbd2cSJim Jagielski                <td><strong>flag</strong></td>
328*b1cdbd2cSJim Jagielski                <td><strong>value</strong></td>
329*b1cdbd2cSJim Jagielski                <td><strong>replacement</strong></td>
330*b1cdbd2cSJim Jagielski            </tr>
331*b1cdbd2cSJim Jagielski            <tr>
332*b1cdbd2cSJim Jagielski                <td><em>ReadOnly</em></td>
333*b1cdbd2cSJim Jagielski                <td>R</td>
334*b1cdbd2cSJim Jagielski                <td><member>MediaDescriptor::ReadOnly</member></td>
335*b1cdbd2cSJim Jagielski            </tr>
336*b1cdbd2cSJim Jagielski            <tr>
337*b1cdbd2cSJim Jagielski                <td><em>Preview</em></td>
338*b1cdbd2cSJim Jagielski                <td>B</td>
339*b1cdbd2cSJim Jagielski                <td><member>MediaDescriptor::Preview</member></td>
340*b1cdbd2cSJim Jagielski            </tr>
341*b1cdbd2cSJim Jagielski            <tr>
342*b1cdbd2cSJim Jagielski                <td><em>AsTemplate</em></td>
343*b1cdbd2cSJim Jagielski                <td>T</td>
344*b1cdbd2cSJim Jagielski                <td><member>MediaDescriptor::AsTemplate</member></td>
345*b1cdbd2cSJim Jagielski            </tr>
346*b1cdbd2cSJim Jagielski            <tr>
347*b1cdbd2cSJim Jagielski                <td><em>Hidden</em></td>
348*b1cdbd2cSJim Jagielski                <td>H</td>
349*b1cdbd2cSJim Jagielski                <td><member>MediaDescriptor::Hidden</member></td>
350*b1cdbd2cSJim Jagielski            </tr>
351*b1cdbd2cSJim Jagielski        </table>
352*b1cdbd2cSJim Jagielski        </p>
353*b1cdbd2cSJim Jagielski
354*b1cdbd2cSJim Jagielski        @deprecated
355*b1cdbd2cSJim Jagielski     */
356*b1cdbd2cSJim Jagielski    [optional,property] string OpenFlags;
357*b1cdbd2cSJim Jagielski
358*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
359*b1cdbd2cSJim Jagielski    /** opens a new view for an already loaded document
360*b1cdbd2cSJim Jagielski
361*b1cdbd2cSJim Jagielski        <p>
362*b1cdbd2cSJim Jagielski        Setting this to <TRUE/> forces the component to create a new window on loading
363*b1cdbd2cSJim Jagielski        in any case. If the component supports multiple views, a second view is
364*b1cdbd2cSJim Jagielski        opened, if not, the component is loaded one more time. Otherwise the behavior
365*b1cdbd2cSJim Jagielski        depends on the default window handling of the <type scope="com::sun::star::frame">Desktop</type> environment.
366*b1cdbd2cSJim Jagielski        </p>
367*b1cdbd2cSJim Jagielski	 */
368*b1cdbd2cSJim Jagielski	[optional,property] boolean OpenNewView;
369*b1cdbd2cSJim Jagielski
370*b1cdbd2cSJim Jagielski
371*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
372*b1cdbd2cSJim Jagielski    /** overwrite any existing file
373*b1cdbd2cSJim Jagielski
374*b1cdbd2cSJim Jagielski        <p>
375*b1cdbd2cSJim Jagielski        For storing only: overwrite any existing file, default is <FALSE/>,
376*b1cdbd2cSJim Jagielski        so an error occurs if the target file already exists.
377*b1cdbd2cSJim Jagielski        </p>
378*b1cdbd2cSJim Jagielski     */
379*b1cdbd2cSJim Jagielski    [optional,property] boolean Overwrite;
380*b1cdbd2cSJim Jagielski
381*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
382*b1cdbd2cSJim Jagielski    /** pasword for loading storing documents
383*b1cdbd2cSJim Jagielski
384*b1cdbd2cSJim Jagielski        <p>
385*b1cdbd2cSJim Jagielski        It contains a password for loading or storing a component (if necessary).
386*b1cdbd2cSJim Jagielski        If neither password nor encryption data is specified, loading of
387*b1cdbd2cSJim Jagielski        a password protected document will fail, storing will be done without
388*b1cdbd2cSJim Jagielski        encryption. If both are provided, the encryption data is used
389*b1cdbd2cSJim Jagielski        ( if the filter supports it ).
390*b1cdbd2cSJim Jagielski        </p>
391*b1cdbd2cSJim Jagielski     */
392*b1cdbd2cSJim Jagielski    [optional,property] string Password;
393*b1cdbd2cSJim Jagielski
394*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
395*b1cdbd2cSJim Jagielski	/** contains the data for HTTP post method as a sequence of bytes.
396*b1cdbd2cSJim Jagielski
397*b1cdbd2cSJim Jagielski        <p>
398*b1cdbd2cSJim Jagielski        Data to send to a location described by the media descriptor to get
399*b1cdbd2cSJim Jagielski        a result in return that will be loaded as a component
400*b1cdbd2cSJim Jagielski        (usually in webforms). Default is: no PostData.
401*b1cdbd2cSJim Jagielski        </p>
402*b1cdbd2cSJim Jagielski	 */
403*b1cdbd2cSJim Jagielski    [optional,property] sequence< byte > PostData;
404*b1cdbd2cSJim Jagielski
405*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
406*b1cdbd2cSJim Jagielski    /** use <member>MediaDescriptor::PostData</member> instead of this
407*b1cdbd2cSJim Jagielski
408*b1cdbd2cSJim Jagielski        <p>
409*b1cdbd2cSJim Jagielski        Same as PostData, but the data is transferred as a string
410*b1cdbd2cSJim Jagielski        (just for compatibility).
411*b1cdbd2cSJim Jagielski        </p>
412*b1cdbd2cSJim Jagielski
413*b1cdbd2cSJim Jagielski        @deprecated
414*b1cdbd2cSJim Jagielski	 */
415*b1cdbd2cSJim Jagielski	[optional,property] string PostString;
416*b1cdbd2cSJim Jagielski
417*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
418*b1cdbd2cSJim Jagielski    /** show preview
419*b1cdbd2cSJim Jagielski
420*b1cdbd2cSJim Jagielski        <p>
421*b1cdbd2cSJim Jagielski        Setting this to <TRUE/> tells the a loaded component that it is loaded as
422*b1cdbd2cSJim Jagielski        a preview, so it can optimize loading and viewing for this special purpose.
423*b1cdbd2cSJim Jagielski        Default is <FALSE/>.
424*b1cdbd2cSJim Jagielski        </p>
425*b1cdbd2cSJim Jagielski	 */
426*b1cdbd2cSJim Jagielski    [optional,property] boolean Preview;
427*b1cdbd2cSJim Jagielski
428*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
429*b1cdbd2cSJim Jagielski    /** open document readonly
430*b1cdbd2cSJim Jagielski
431*b1cdbd2cSJim Jagielski        <p>
432*b1cdbd2cSJim Jagielski        Tells whether a document should be loaded in a (logical) readonly or in
433*b1cdbd2cSJim Jagielski        read/write mode. If opening in the desired mode is impossible, an error occurs.
434*b1cdbd2cSJim Jagielski        By default the loaded content decides what to do: if its UCB content supports
435*b1cdbd2cSJim Jagielski        a "readonly" property, the logical open mode depends on that, otherwise
436*b1cdbd2cSJim Jagielski        it will be read/write. This is only a UI related property, opening a
437*b1cdbd2cSJim Jagielski        document in read only mode will not prevent the component from being
438*b1cdbd2cSJim Jagielski        modified by API calls, but all modifying functionality in the UI will
439*b1cdbd2cSJim Jagielski        be disabled or removed.
440*b1cdbd2cSJim Jagielski        </p>
441*b1cdbd2cSJim Jagielski	 */
442*b1cdbd2cSJim Jagielski	[optional,property] boolean ReadOnly;
443*b1cdbd2cSJim Jagielski
444*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
445*b1cdbd2cSJim Jagielski    /** start presentation from a document
446*b1cdbd2cSJim Jagielski
447*b1cdbd2cSJim Jagielski        <p>
448*b1cdbd2cSJim Jagielski        Tells the component loading the document that a presentation that is in the
449*b1cdbd2cSJim Jagielski        document is to be started right away.
450*b1cdbd2cSJim Jagielski        </p>
451*b1cdbd2cSJim Jagielski    */
452*b1cdbd2cSJim Jagielski    [optional,property] boolean StartPresentation;
453*b1cdbd2cSJim Jagielski
454*b1cdbd2cSJim Jagielski    //-------------------------------------------------------------------------
455*b1cdbd2cSJim Jagielski    /** name of document referrer
456*b1cdbd2cSJim Jagielski
457*b1cdbd2cSJim Jagielski        <p>
458*b1cdbd2cSJim Jagielski        A URL describing the environment of the request; f.e. a referrer may be a
459*b1cdbd2cSJim Jagielski        URL of a document, if a hyperlink inside this document is clicked to load
460*b1cdbd2cSJim Jagielski        another document. The referrer may be evaluated by the addressed UCB content
461*b1cdbd2cSJim Jagielski        or the loaded document. Without a referrer the processing of URLs that
462*b1cdbd2cSJim Jagielski        needs security checks will be denied, f.e. "macro:" URLs.
463*b1cdbd2cSJim Jagielski        <br>
464*b1cdbd2cSJim Jagielski        Don't be confused about the wrong spelling; is kept for compatibility reasons.
465*b1cdbd2cSJim Jagielski        </p>
466*b1cdbd2cSJim Jagielski	 */
467*b1cdbd2cSJim Jagielski	[optional,property] string Referer;
468*b1cdbd2cSJim Jagielski
469*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
470*b1cdbd2cSJim Jagielski    /** let the document be opened in repair mode
471*b1cdbd2cSJim Jagielski
472*b1cdbd2cSJim Jagielski        <p>
473*b1cdbd2cSJim Jagielski        For loading of corrupted zip packages: Setting this to <TRUE/> let the document
474*b1cdbd2cSJim Jagielski		be opened in repair mode, so as much as possible information will be retrieved.
475*b1cdbd2cSJim Jagielski        </p>
476*b1cdbd2cSJim Jagielski
477*b1cdbd2cSJim Jagielski	 @since OpenOffice 1.1.2
478*b1cdbd2cSJim Jagielski	 */
479*b1cdbd2cSJim Jagielski	[optional,property] boolean RepairPackage;
480*b1cdbd2cSJim Jagielski
481*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
482*b1cdbd2cSJim Jagielski    /** can be used for status informations
483*b1cdbd2cSJim Jagielski
484*b1cdbd2cSJim Jagielski        <p>
485*b1cdbd2cSJim Jagielski        Object implementing the <type scope="com::sun::star::task">XStatusIndicator</type>
486*b1cdbd2cSJim Jagielski        interface that can be used to give status information (text or progress) for the task.
487*b1cdbd2cSJim Jagielski        The office provides a default implementation for it. It is not allowed to keep
488*b1cdbd2cSJim Jagielski        a reference to this object, even not in the loaded or stored components'
489*b1cdbd2cSJim Jagielski        copy of the MediaDescriptor provided by its arguments attribute.
490*b1cdbd2cSJim Jagielski        </p>
491*b1cdbd2cSJim Jagielski     */
492*b1cdbd2cSJim Jagielski    [optional,property] com::sun::star::task::XStatusIndicator StatusIndicator;
493*b1cdbd2cSJim Jagielski
494*b1cdbd2cSJim Jagielski    //-------------------------------------------------------------------------
495*b1cdbd2cSJim Jagielski    /** allows to specify the URL that is used next time SaveAs dialog is opened
496*b1cdbd2cSJim Jagielski
497*b1cdbd2cSJim Jagielski        <p>
498*b1cdbd2cSJim Jagielski        If the parameter is specified, the URL will be used by SaveAs dialog
499*b1cdbd2cSJim Jagielski        next time as target folder.
500*b1cdbd2cSJim Jagielski        </p>
501*b1cdbd2cSJim Jagielski     */
502*b1cdbd2cSJim Jagielski    [optional,property] string SuggestedSaveAsDir;
503*b1cdbd2cSJim Jagielski
504*b1cdbd2cSJim Jagielski    //-------------------------------------------------------------------------
505*b1cdbd2cSJim Jagielski    /** allows to specify the suggested file name that is used next time SaveAs
506*b1cdbd2cSJim Jagielski        dialog is opened
507*b1cdbd2cSJim Jagielski
508*b1cdbd2cSJim Jagielski        <p>
509*b1cdbd2cSJim Jagielski        If the parameter is specified, the file name will be suggested by
510*b1cdbd2cSJim Jagielski        SaveAs dialog next time.
511*b1cdbd2cSJim Jagielski        </p>
512*b1cdbd2cSJim Jagielski     */
513*b1cdbd2cSJim Jagielski    [optional,property] string SuggestedSaveAsName;
514*b1cdbd2cSJim Jagielski
515*b1cdbd2cSJim Jagielski    //-------------------------------------------------------------------------
516*b1cdbd2cSJim Jagielski    /** name of the template instead of the URL
517*b1cdbd2cSJim Jagielski
518*b1cdbd2cSJim Jagielski        <p>
519*b1cdbd2cSJim Jagielski        The logical name of a template to load. Together with the <member>MediaDescriptor::TemplateRegion</member>
520*b1cdbd2cSJim Jagielski        property it can be used instead of the URL of the template. Use always in conjunction with
521*b1cdbd2cSJim Jagielski        <member>MediaDescriptor::TemplateRegionName</member>.
522*b1cdbd2cSJim Jagielski        </p>
523*b1cdbd2cSJim Jagielski	 */
524*b1cdbd2cSJim Jagielski    [optional,property] string TemplateName;
525*b1cdbd2cSJim Jagielski
526*b1cdbd2cSJim Jagielski    //-------------------------------------------------------------------------
527*b1cdbd2cSJim Jagielski    /** name of the template instead of the URL
528*b1cdbd2cSJim Jagielski
529*b1cdbd2cSJim Jagielski        <p>
530*b1cdbd2cSJim Jagielski        The logical name of a template to load. Together with the <member>MediaDescriptor::TemplateRegion</member>
531*b1cdbd2cSJim Jagielski        property it can be used instead of the URL of the template. Use always in conjunction with
532*b1cdbd2cSJim Jagielski        <member>MediaDescriptor::TemplateRegionName</member>.
533*b1cdbd2cSJim Jagielski        </p>
534*b1cdbd2cSJim Jagielski	 */
535*b1cdbd2cSJim Jagielski    [optional,property] string TemplateRegionName;
536*b1cdbd2cSJim Jagielski
537*b1cdbd2cSJim Jagielski    //-------------------------------------------------------------------------
538*b1cdbd2cSJim Jagielski    /** regulate using of compressing
539*b1cdbd2cSJim Jagielski
540*b1cdbd2cSJim Jagielski        <p>
541*b1cdbd2cSJim Jagielski        For storing: Setting this to <TRUE/> means, don't use a zip file to save
542*b1cdbd2cSJim Jagielski        the document, use a folder instead (only usable for UCB contents, that
543*b1cdbd2cSJim Jagielski        support folders). Default is <FALSE/>.
544*b1cdbd2cSJim Jagielski        </p>
545*b1cdbd2cSJim Jagielski     */
546*b1cdbd2cSJim Jagielski    [optional,property] boolean Unpacked;
547*b1cdbd2cSJim Jagielski
548*b1cdbd2cSJim Jagielski    //-------------------------------------------------------------------------
549*b1cdbd2cSJim Jagielski    /** URL of the document
550*b1cdbd2cSJim Jagielski
551*b1cdbd2cSJim Jagielski        <p>
552*b1cdbd2cSJim Jagielski        The location of the component in URL syntax. It must be the full qualified URL and
553*b1cdbd2cSJim Jagielski        must include f.e. an optional <member>MediaDescriptor::JumpMark</member> too.
554*b1cdbd2cSJim Jagielski        </p>
555*b1cdbd2cSJim Jagielski	 */
556*b1cdbd2cSJim Jagielski    [optional,property] string URL;
557*b1cdbd2cSJim Jagielski
558*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
559*b1cdbd2cSJim Jagielski    /** storage version
560*b1cdbd2cSJim Jagielski
561*b1cdbd2cSJim Jagielski        <p>
562*b1cdbd2cSJim Jagielski        For components supporting versioning: the number of the version to be
563*b1cdbd2cSJim Jagielski        loaded or saved. Default is zero and means: no version is created or
564*b1cdbd2cSJim Jagielski        loaded, the "main" document is processed.
565*b1cdbd2cSJim Jagielski        </p>
566*b1cdbd2cSJim Jagielski	 */
567*b1cdbd2cSJim Jagielski	[optional,property] short Version;
568*b1cdbd2cSJim Jagielski
569*b1cdbd2cSJim Jagielski    //-------------------------------------------------------------------------
570*b1cdbd2cSJim Jagielski    /** set special view state
571*b1cdbd2cSJim Jagielski        <p>
572*b1cdbd2cSJim Jagielski        Data to set a special view state after loading. The type depends on
573*b1cdbd2cSJim Jagielski        the component and is usually retrieved from a <type scope="com::sun::star::frame">Controller</type>
574*b1cdbd2cSJim Jagielski        object by its <type scope="com::sun::star::frame">XController</type>
575*b1cdbd2cSJim Jagielski        interface. Default is: no view data.
576*b1cdbd2cSJim Jagielski        </p>
577*b1cdbd2cSJim Jagielski	 */
578*b1cdbd2cSJim Jagielski    [optional,property] any ViewData;
579*b1cdbd2cSJim Jagielski
580*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
581*b1cdbd2cSJim Jagielski    /** id of the initial view
582*b1cdbd2cSJim Jagielski
583*b1cdbd2cSJim Jagielski        <p>
584*b1cdbd2cSJim Jagielski        For components supporting different views: a number to define the view
585*b1cdbd2cSJim Jagielski        that should be constructed after loading. Default is: zero, and this
586*b1cdbd2cSJim Jagielski        should be treated by the component as the default view.
587*b1cdbd2cSJim Jagielski        </p>
588*b1cdbd2cSJim Jagielski	 */
589*b1cdbd2cSJim Jagielski	[optional,property] short ViewId;
590*b1cdbd2cSJim Jagielski
591*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
592*b1cdbd2cSJim Jagielski	/** should the macro be executed.
593*b1cdbd2cSJim Jagielski		the value should be one from <type scope="com::sun::star::document">MacroExecMode</type>
594*b1cdbd2cSJim Jagielski		constant list.
595*b1cdbd2cSJim Jagielski
596*b1cdbd2cSJim Jagielski	    @since OpenOffice 1.1.2
597*b1cdbd2cSJim Jagielski	 */
598*b1cdbd2cSJim Jagielski	[optional,property] short MacroExecutionMode;
599*b1cdbd2cSJim Jagielski
600*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
601*b1cdbd2cSJim Jagielski	/** can the document be updated depending from links.
602*b1cdbd2cSJim Jagielski		the value should be one from <type scope="com::sun::star::document">UpdateDocMode</type>
603*b1cdbd2cSJim Jagielski		constant list.
604*b1cdbd2cSJim Jagielski
605*b1cdbd2cSJim Jagielski	    @since OpenOffice 1.1.2
606*b1cdbd2cSJim Jagielski	 */
607*b1cdbd2cSJim Jagielski	[optional,property] short UpdateDocMode;
608*b1cdbd2cSJim Jagielski
609*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
610*b1cdbd2cSJim Jagielski	/** specifies the name of the view controller to create when loading a document
611*b1cdbd2cSJim Jagielski
612*b1cdbd2cSJim Jagielski        <p>If this property is used when loading a document into a frame, then it
613*b1cdbd2cSJim Jagielski        specifies the name of the view controller to create. That is, the property
614*b1cdbd2cSJim Jagielski        is passed to the document's <member scope="com::sun::star::frame">XModel2::createViewController</member>
615*b1cdbd2cSJim Jagielski        method.<br/>
616*b1cdbd2cSJim Jagielski        If the loaded document does not support the <code>XModel2</code> interface,
617*b1cdbd2cSJim Jagielski        the property is ignored.</p>
618*b1cdbd2cSJim Jagielski
619*b1cdbd2cSJim Jagielski        @see ::com::sun::star::frame::XModel2::createViewController
620*b1cdbd2cSJim Jagielski        @see ::com::sun::star::frame::XController2::ViewControllerName
621*b1cdbd2cSJim Jagielski
622*b1cdbd2cSJim Jagielski	    @since OpenOffice 3.0
623*b1cdbd2cSJim Jagielski	 */
624*b1cdbd2cSJim Jagielski	[optional,property] string ViewControllerName;
625*b1cdbd2cSJim Jagielski	//-------------------------------------------------------------------------
626*b1cdbd2cSJim Jagielski
627*b1cdbd2cSJim Jagielski	/** specifies the frame containing the document. May be empty.
628*b1cdbd2cSJim Jagielski	 */
629*b1cdbd2cSJim Jagielski	[optional,property] com::sun::star::frame::XFrame Frame;
630*b1cdbd2cSJim Jagielski};
631*b1cdbd2cSJim Jagielski
632*b1cdbd2cSJim Jagielski//=============================================================================
633*b1cdbd2cSJim Jagielski
634*b1cdbd2cSJim Jagielski}; }; }; };
635*b1cdbd2cSJim Jagielski
636*b1cdbd2cSJim Jagielski#endif
637