| /************************************************************** |
| * |
| * 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_document_OfficeDocument_idl__ |
| #define __com_sun_star_document_OfficeDocument_idl__ |
| |
| #include <com/sun/star/frame/XModel.idl> |
| #include <com/sun/star/util/XModifiable.idl> |
| #include <com/sun/star/frame/XStorable.idl> |
| #include <com/sun/star/view/XPrintable.idl> |
| #include <com/sun/star/view/XPrintJobBroadcaster.idl> |
| #include <com/sun/star/document/XEventBroadcaster.idl> |
| #include <com/sun/star/document/XEventsSupplier.idl> |
| #include <com/sun/star/document/XDocumentInfoSupplier.idl> |
| #include <com/sun/star/document/XViewDataSupplier.idl> |
| #include <com/sun/star/document/XDocumentEventBroadcaster.idl> |
| #include <com/sun/star/document/XEmbeddedScripts.idl> |
| #include <com/sun/star/document/XDocumentPropertiesSupplier.idl> |
| #include <com/sun/star/document/XUndoManagerSupplier.idl> |
| |
| //============================================================================= |
| |
| module com { module sun { module star { module document { |
| |
| //============================================================================= |
| /** abstract service which specifies a storable and printable document |
| |
| <p> |
| All major document-like components should support this service |
| instead of simple components which supports a <type scope="com::sun::star::frame">Controller</type> |
| or pure <type scope="com::sun::star::awt">XWindow</type> only. |
| </p> |
| |
| @see com::sun::star::frame::Controller |
| */ |
| published service OfficeDocument |
| { |
| //------------------------------------------------------------------------- |
| /** represents a component which is created from an URL and arguments |
| |
| <p> |
| It is a representation of a resource in the sense that it was |
| created/loaded from the resource. The arguments are passed to the loader |
| to modify its behavior. |
| </p> |
| */ |
| interface com::sun::star::frame::XModel; |
| |
| //------------------------------------------------------------------------- |
| /** a storable document should provide information about his modify state |
| |
| <p> |
| With this interface it's possible too, to reset the modify state. |
| That can be neccessary to prevent code against problem during closing |
| of the document without saving any changes. |
| </p> |
| */ |
| interface com::sun::star::util::XModifiable; |
| |
| //------------------------------------------------------------------------- |
| /** offers a simple way to store a component to an URL |
| |
| <p> |
| This interface supports functionality |
| <ul> |
| <li>to make a copy of current component by saving it to another location</li> |
| <li>to commit made changes</li> |
| <li>to convert it by saving it by using suitable filter name.</li> |
| </ul> |
| </p> |
| */ |
| interface com::sun::star::frame::XStorable; |
| |
| //------------------------------------------------------------------------- |
| /** offers a way to print a component |
| |
| <p> |
| It's possible to specify wich printer should be used and of course |
| print the document on it. |
| </p> |
| */ |
| interface com::sun::star::view::XPrintable; |
| |
| //------------------------------------------------------------------------- |
| /** is an old and deprecated version of the <type>XDocumentEventBroadcaster</type> interface |
| @deprecated |
| */ |
| [optional] interface XEventBroadcaster; |
| |
| //------------------------------------------------------------------------- |
| /** makes it possible to register listeners which are called whenever |
| a document event occurs |
| */ |
| [optional] interface XDocumentEventBroadcaster; |
| |
| //------------------------------------------------------------------------- |
| /** access to bound event handlers |
| */ |
| [optional] interface XEventsSupplier; |
| |
| //------------------------------------------------------------------------- |
| /** document can provide a <type>DocumentInfo</type> |
| |
| <p> |
| Instead of the <type>StandaloneDocumentInfo</type> service the <type>DocumentInfo</type> |
| will be available on an already opened document only. |
| </p> |
| |
| @deprecated Use <type>XDocumentPropertiesSupplier</type> instead. |
| */ |
| [optional] interface XDocumentInfoSupplier; |
| |
| //------------------------------------------------------------------------- |
| /** access to some properties describing all open views to a document |
| */ |
| [optional] interface XViewDataSupplier; |
| |
| //------------------------------------------------------------------------- |
| /** allows for getting information about a print job |
| |
| @since OpenOffice 1.1.2 |
| */ |
| [optional] interface com::sun::star::view::XPrintJobBroadcaster; |
| |
| /** is supported when the document can contain scripts and dialogs |
| |
| @since OpenOffice 2.4 |
| */ |
| [optional] interface XEmbeddedScripts; |
| |
| //------------------------------------------------------------------------- |
| /** access to the <type>DocumentProperties</type>. |
| |
| @since OpenOffice 3.0 |
| */ |
| [optional] interface XDocumentPropertiesSupplier; |
| |
| /** provides access to the document's undo manager. |
| */ |
| [optional] interface XUndoManagerSupplier; |
| |
| //------------------------------------------------------------------------- |
| /** controls the focus behaviour of the form controls in the document |
| |
| <p> |
| If this flag is set to <TRUE/>, any view belonging to the document |
| should focus the first control in the document. With this, you may |
| control if your document works primarily as a form document. |
| </p> |
| */ |
| [property, optional] boolean AutomaticControlFocus; |
| |
| //------------------------------------------------------------------------- |
| /** controls the initial (on-load) behavior of the form controls in the document |
| |
| <p>If set to <TRUE/>, upon loading the document, the form controls will be in design mode.<br/> |
| If set to <FALSE/>, they will be alive, i.e. operational.<br/> |
| With this, you may control if your document works primarily as a form document. |
| </p> |
| */ |
| [property, optional] boolean ApplyFormDesignMode; |
| |
| //------------------------------------------------------------------------- |
| /** contains a unique id for the document |
| |
| <p>Once calculated, the id must not change until the document has been |
| closed. Upon closing it will not be made persistent. Thus, the document |
| may get a different id every time it gets loaded.</p> |
| */ |
| [property, optional, readonly] string RuntimeUID; |
| }; |
| |
| //============================================================================= |
| |
| }; }; }; }; |
| |
| #endif |