blob: c3e02eefa8caeaef12e799c43abe0fdaa81ca733 [file] [log] [blame]
/**************************************************************
*
* 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_sdb_DocumentContainer_idl__
#define __com_sun_star_sdb_DocumentContainer_idl__
#ifndef __com_sun_star_sdb_DefinitionContainer_idl__
#include <com/sun/star/sdb/DefinitionContainer.idl>
#endif
#ifndef __com_sun_star_sdb_DefinitionContent_idl__
#include <com/sun/star/sdb/DefinitionContent.idl>
#endif
module com { module sun { module star { module lang {
published interface XMultiServiceFactory;
};};};};
module com { module sun { module star { module frame {
published interface XComponentLoader;
};};};};
module com { module sun { module star { module container {
published interface XHierarchicalNameContainer;
};};};};
module com { module sun { module star { module sdb {
/** describes a container which provides access to documents embedded into a database document,
usually forms and reports.
<p>The <member scope="com::sun::star::lang">XMultiServiceFactory::createInstanceWithArguments()</member>
should be used to create sub document container or form, or report objects.</p>
<p>The embedded documents do not support any particular database related service, instead, they're
usual <type scope="com::sun::star::document">OfficeDocument</type>s.<br/>
The only thing worth mentioning here is that they support the
<type scope="com::sun::star::container">XChild</type> interface, whose
<member scope="com::sun::star::container">XChild::getParent</member> method can be used to
obtain the database document which the embedded document belongs to.
</p>
@see DocumentDefinition
@see OfficeDatabaseDocument
*/
service DocumentContainer
{
service DefinitionContainer;
/** provides functionality for treating the container as part of a hierarchy
of a database document's sub documents.
<p>The <member scope="com::sun::star::ucb">XCommandProcessor::execute</member> method
of a <code>DocumentDefinition</code> supports at least the following commands, additionally to
the ones already supported by the DefinitionContent:
<ul>
<li><strong>open</strong>: provides a <type scope="com::sun::star::ucb::">XDynamicResultSet</type>
to enumerate the content of the document container.</li>
<li><strong>delete</strong>: deletes the document container, including all contained documents.</li>
</ul>
*/
service DefinitionContent;
/** can be used to load the document inside.
<p>
URL: describes the name of the document definition to load,
TargetFrameName: isn't used.
SearchFlags: isn't used.
Arguments:
<ol>
<li>PropertyValue</li>
Name = ActiveConnection
Value = The connection which should be used when opening the text document.
<li>PropertyValue</li>
Name = OpenMode
Value = string, "open" if the document should be opened in live mode (editing is not possible),
"openDesign" if the document should be open in design mode (editing is possible)
</ol>
@see com::sun::star::sdbc::XConnection
</p>
*/
interface com::sun::star::frame::XComponentLoader;
/** can be used to create container elements.
<p>
If this interface is supported, the object created using it (e.g., the object returned by
<method scope="com.sun.star.lang">XMultiServiceFactory::createInstanceWithArguments()</method>
) can be used as container elements.
</p>
*/
interface com::sun::star::lang::XMultiServiceFactory;
/** can be used to create folder hierarchies and to organize forms or reports in different sub folders.
*/
interface com::sun::star::container::XHierarchicalNameContainer;
};
//=============================================================================
}; }; }; };
/*===========================================================================
===========================================================================*/
#endif