/************************************************************************* * * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * Copyright 2000, 2010 Oracle and/or its affiliates. * * OpenOffice.org - a multi-platform office productivity suite * * This file is part of OpenOffice.org. * * OpenOffice.org is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License version 3 * only, as published by the Free Software Foundation. * * OpenOffice.org is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License version 3 for more details * (a copy is included in the LICENSE file that accompanied this code). * * You should have received a copy of the GNU Lesser General Public License * version 3 along with OpenOffice.org. If not, see * * for a copy of the LGPLv3 License. * ************************************************************************/ #ifndef __com_sun_star_sdb_DocumentContainer_idl__ #define __com_sun_star_sdb_DocumentContainer_idl__ #include #include 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.

The XMultiServiceFactory::createInstanceWithArguments() should be used to create sub document container or form, or report objects.

The embedded documents do not support any particular database related service, instead, they're usual OfficeDocuments.
The only thing worth mentioning here is that they support the XChild interface, whose XChild::getParent method can be used to obtain the database document which the embedded document belongs to.

@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.

The XCommandProcessor::execute method of a DocumentDefinition supports at least the following commands, additionally to the ones already supported by the DefinitionContent:

  • open: provides a XDynamicResultSet to enumerate the content of the document container.
  • delete: deletes the document container, including all contained documents.
*/ service DefinitionContent; /** can be used to load the document inside.

URL: describes the name of the document definition to load, TargetFrameName: isn't used. SearchFlags: isn't used. Arguments:

  1. PropertyValue
  2. Name = ActiveConnection Value = The connection which should be used when opening the text document.
  3. PropertyValue
  4. 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)
@see com::sun::star::sdbc::XConnection

*/ interface com::sun::star::frame::XComponentLoader; /** can be used to create container elements.

If this interface is supported, the object created using it (e.g., the object returned by XMultiServiceFactory::createInstanceWithArguments() ) can be used as container elements.

*/ 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