From ed5640d8b587fbcfed7dd7967f3de04b37a76f26 Mon Sep 17 00:00:00 2001
From: Daniel Baumann
+ This exception indicates, that generic filter detection can't decide which of
+ two filters is the right one. In this case an interaction will be made.
+ Given URL can be used to decide between given two filters.
+ Decision can be made e.g. by a dialog, on which the user must select one
+ of these filters.
+ A possible continuation of type XInteractionFilterSelect
+ transport this decision back to source of started interaction.
+ The com::sun::star::lang::EventObject::Source member
+ of the base type refers to the document which broadcasts the event. This type is the successor of the EventObject type, which should not be used
+ anymore. It's the responsibility of the component supporting the XDocumentEventBroadcaster
+ interface to specify which events it supports. Might be `NULL` if the event is not related to a concrete view of
+ the document. The semantics of this additional information needs to be specified by the broadcaster
+ of the event.
+ This service replaces the deprecated DocumentInfo and
+ StandaloneDocumentInfo services.
+
+
+ */
+service DocumentRevisionListPersistence : XDocumentRevisionListPersistence;
+
+
+}; }; }; };
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/document/EmptyUndoStackException.idl b/offapi/com/sun/star/document/EmptyUndoStackException.idl
new file mode 100644
index 000000000..305c831a0
--- /dev/null
+++ b/offapi/com/sun/star/document/EmptyUndoStackException.idl
@@ -0,0 +1,43 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * 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 .
+ */
+
+#ifndef __com_sun_star_document_EmptyUndoStackException_idl__
+#define __com_sun_star_document_EmptyUndoStackException_idl__
+
+#include
+ Usually this is one of the following:
+
+ For a list of possible event names see Events.
+
+ Such Events will be broadcasted by a XEventBroadcaster
+ to any XEventListener packed as EventObjects.
+
+ The following events are usually available:
+
+
+ This list is extensible.
+
+
+
+ Such filters can be used for exporting a content. + Of course it's possible to combine it with the service ImportFilter + if import functionality should be available at same implementation too. +
+ + @see ImportFilter + */ +published service ExportFilter +{ + /** set source(!) document for this filter + ++ The document must be used as the source for following filter operation. + Any content from there will be exported to another format. +
+ */ + interface XExporter; + + /** filter interface + ++ It's used to filter a document at saving time. + The source document should be already set by using another interface + XExporter which is supported by this service too. +
+ +
+ Tip:
+ If same implementation provides the service ImportFilter too,
+ code must distinguish between filtering from a source document (for export) or
+ filtering to a target document (for import). This can be recognized by saving
+ state of used interfaces XExporter or XImporter!
+ Otherwise it's not clear which action is required here.
+
+ A filter object must be created by global service FilterFactory. + If filter supports this optional interface, he will be initialized by the factory directly + after creation. The factory will pass the following information to this new instance: +
+ This internal filter name can be used on service FilterFactory + to get further information about it (e.g. his registration for mime types or extensions etc.) + It's important that returned string is the "internal name" of the filter which must be + unambiguous against all other registered filters in current installation. +
+
+ Attention!
+ Supported method setName() should be ignored or forwarded to the FilterFactory.
+ It's not allowed to set it directly to the configuration. Because it depends
+ from real implementation of the FilterFactory if it will be allowed or not!
+
+ Due to the registered types, flat TypeDetection is already possible, i.e.
+ the assignment of types (e.g. to a URL) only on the basis of configuration data.
+ If, however, you imagine special cases (e.g. modifying the file extension of a
+ Writer file from .sdw to .doc), it quickly becomes clear that you cannot always
+ get a correct result with flat detection. To be certain to get correct results,
+ you need deep detection, i.e. the file itself has to be examined.
+ And that is exactly the function of DetectServices. They get all the information
+ collected so far on a document and then decide which type to assign it to.
+ In the new modular model, such a detector is meant as UNO service which registers
+ itself in the office and is requested by the generic type detection if necessary.
+
+ Therefore you need two pieces of information:
+
+ Generic type detection searches for a registered DetectService for an + already flat detected type. If any could be found it will be created and + used by calling methods of this interface. It gets a MediaDescriptor + which contains information about the document which should be detected and must return +
+ This factory implements read/write access on the underlying configuration set. + and further a validate and flush mechanism for more performance and a special query mode + can be used here too. +
+ + @since OOo 1.1.2 + */ +published service ExtendedTypeDetectionFactory +{ + /** factory interface to create and initialize extended type detection components. + ++ A detection component must be specified by its UNO implementation name and will be created then. + Every new created component can be initialized with its own configuration data + and may given optional arguments of the corresponding createInstanceWithArguments() request. To do so the + service must support the optional interface com::sun::star::lang::XInitialization. + The arguments parameter will have the following structure: +
+ Every container item is specified as a set of properties and will be + represented by a sequence< com::sun::star::beans::PropertyValue > structure. + Follow properties are supported: + (But note: not all of them must be present every time!) +
+Property Name | +Value Type | +Description | +
Name | +[string] | +It means the UNO implementation name of the detector component. + Note: It means the really the implementation instead of the UNO service name. + Because it's not possible to distinguish between more than one components; if all of them + uses a generic service identifier! | +
Types | +[sequence< string >] | +It's a list of all types, which can be detected by this extended detection component. + All items of this list must match an item of the TypeDetection container service. | +
+ Against simple property search it provides some complex algorithms too. + For further information please read the SDK documentation. +
+ */ + [optional] interface com::sun::star::container::XContainerQuery; + + /** can be used to perform container changes. + ++ Because the complexness of such configuration set can be very high, + it seems not very useful to update the underlying configuration layer + on every container change request immediately. Another strategy can be to + make all changes (adding/changing/removing of items) and call flush at the end. + That will validate the whole container and reject inconsistent data sets. + Only in case all made changes was correct, they will be written back to the + configuration. Further this interface provides the possibility, that interested + changes listener can be registered too. +
+ */ + [optional] interface com::sun::star::util::XFlushable; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/FilterAdapter.idl b/offapi/com/sun/star/document/FilterAdapter.idl new file mode 100644 index 000000000..ed9f7db25 --- /dev/null +++ b/offapi/com/sun/star/document/FilterAdapter.idl @@ -0,0 +1,42 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef _COM_SUN_STAR_DOCUMENT_FILTERADAPTER_IDL__ +#define _COM_SUN_STAR_DOCUMENT_FILTERADAPTER_IDL__ + +#include+ After a generic TypeDetection an internal type name + will be known. Further a generic com::sun::star::frame::FrameLoader + can use this information, to search a suitable filter (may the default filter) at + this factory and use it for loading the document into a specified frame. +
+ ++ This factory implements read/write access on the underlying configuration set. + and further a validate and flush mechanism for more performance and a special query mode + can be used here too. +
+ */ +published service FilterFactory +{ + /** factory interface to create and initialize filter components. + ++ Current behavior
+ The methods createInstance() or createInstanceWithArguments() of this interface must be + called with an internal type name!. This name is used internally to search a suitable + (mostly the default) filter for this type then. The found filter will be created, initialized + and returned then. Creation of a filter by using its internal filter name directly can be + reached by using createInstanceWithArguments() with an optional property "FilterName" only. + See the following example: + + @code{.java} + private com.sun.star.uno.XInterface createFilterDirect( com.sun.star.lang.XMultiServiceFactory xFilterFactory , + java.lang.String sInternalFilterName ) + { + com.sun.star.beans.PropertyValue aFilterProp = new com.sun.star.beans.PropertyValue(); + aFilterProp.Name = "FilterName"; + aFilterProp.Value = sInternalFilterName; + + com.sun.star.uno.Any[] lProps = new com.sun.star.uno.Any[1]; + lProps[0] = aFilterProp; + + java.lang.Object aFilter = xFilterFactory.createInstanceWithArguments("", lProps); + return (com.sun.star.uno.XInterface)UnoRuntime.queryInterface(com.sun.star.uno.XInterface.class, aFilter); + } + @endcode +
+ ++ Proposed behavior
+ Searching of a suitable filter for a given internal type name, must be done by the new interface + com::sun::star::container::XContainerQuery, available on this factory too. + The factory interface can be used to create filter components by its internal filter name only. +
+ ++ How it can be distinguished?
+ The new proposed implementation will throw a com::sun::star::container::NoSuchElementException + if the first parameter of createInstance() or createInstanceWithArguments() does not match to a valid container (means + filter) item. Further it will throw a com::sun::star::lang::IllegalArgumentException if the optional + parameter "FilterName" could not be detected inside the argument list of call createInstanceWithArguments(). +
+ ++ Initialization of a filter component
+ Every filter, which was created by this factory can(!) be initialized with its own configuration data + and may given optional arguments of the corresponding createInstanceWithArguments() request. To do so the filter + instance must support the optional interface com::sun::star::lang::XInitialization. + The arguments parameter will have the following structure: +
+ Every container item is specified as a set of properties and will be + represented by a sequence< com::sun::star::beans::PropertyValue > structure. + Follow properties are supported: + (But note: not all of them must be present every time!) +
+Property Name | +Value Type | +Description | +
Name | +[string] | +The internal name is the only value, which makes a container item unique. | +
UIName | +[string] | +It contains the localized name for this filter for the current locale. | +
UINames | +[sequence< string >] | +It contains all available localized names for this filter. The are organized + in pairs and represented as a structure of sequence< com::sun::star::beans::PropertyValue >. + The name of such property must be interpreted as locale; its value as the localized + filter name corresponding to this locale. | +
Type | +[string] | +Every filter is registered for a type. This value contains the internal name of it. + (see service TypeDetection for further information) | +
DocumentService | +[string] | +It's the UNO service name of the document type, which can be handled by this filter. + (e.g. com::sun::star::text::TextDocument) | +
FilterService | +[string] | +It means the UNO implementation name of the filter component. + Note: It really means the implementation instead of the UNO service name. + Because it's not possible to distinguish between more than one filters; if all of them + uses a generic identifier! | +
Flags | +[integer] | +They describe the filter more specific. + (e.g. they mark it as IMPORT/EXPORT or DEFAULT filter.) |
+
UserData | +[string] | +This field contains filter specific configuration data. | +
FileFormatVersion | +[integer] | +It specifies the supported file format version if there exist more than ones. | +
TemplateName | +[string] | +It's the name of a suitable default template. | +
+ Note:
+ All elements of this container will be addressed by his internal name,
+ and it must be an unambiguous value.
+
+ Against simple property search it provides some complex algorithms too. + For further information please read the SDK documentation. +
+ */ + interface com::sun::star::container::XContainerQuery; + + /** can be used to perform container changes. + ++ Because the complexness of such configuration set can be very high, + it seems not very useful to update the underlying configuration layer + on every container change request immediately. Another strategy can be to + make all changes (adding/changing/removing of items) and call flush at the end. + That will validate the whole container and reject inconsistent data sets. + Only in case all made changes was correct, they will be written back to the + configuration. Further this interface provides the possibility, that interested + changes listener can be registered too. +
+ */ + [optional] interface com::sun::star::util::XFlushable; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/FilterOptionsRequest.idl b/offapi/com/sun/star/document/FilterOptionsRequest.idl new file mode 100644 index 000000000..2bf536836 --- /dev/null +++ b/offapi/com/sun/star/document/FilterOptionsRequest.idl @@ -0,0 +1,51 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef __com_sun_star_document_FilterOptionsRequest_idl__ +#define __com_sun_star_document_FilterOptionsRequest_idl__ + +#include+ Such filters can be used for importing a content. + Of course it's possible to combine it with the service ExportFilter + if export functionality should be available at same implementation too. +
+ + @see ExportFilter + */ +published service ImportFilter +{ + /** set target(!) document for this filter + ++ The document must be used as the target of the filter. + Any external content will be written there. +
+ */ + interface XImporter; + + /** filter interface + ++ It's used to filter a document at loading time. + The target document should be already set by using another interface + ImportFilter::XImporter which is supported by this service too. +
+ +
+ Tip:
+ If same implementation provides the service ExportFilter too,
+ code must distinguish between filtering into a target document (for import) or
+ filtering from a source document (for export). This can be recognized by saving
+ state of used interfaces XExporter or XImporter!
+ Otherwise it's not clear which action is required here.
+
+ A filter object must be created by global service FilterFactory. + If filter supports this optional interface, he will be initialized by the factory directly + after creation. The factory will pass follow information to this new instance: +
+ This internal filter name can be used on service FilterFactory + to get further information about it (e.g. his registration for mime types or extensions etc.) + It's important that returned string is the "internal name" of the filter which must be + unambiguous against all other registered filters in current installation. +
+
+ Attention!
+ Supported method setName() should be ignored or forwarded to the FilterFactory.
+ It's not allowed to set it directly to the configuration. Because it depends
+ from real implementation of the FilterFactory if it will be allowed or not!
+
The com::sun::star::container::XNameAccess returns elements + of com::sun::star::beans::XPropertySet that implement + the service LinkTarget.
+ */ +published service LinkTargets +{ + interface com::sun::star::container::XNameAccess; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/LinkUpdateModes.idl b/offapi/com/sun/star/document/LinkUpdateModes.idl new file mode 100644 index 000000000..f1cdd93be --- /dev/null +++ b/offapi/com/sun/star/document/LinkUpdateModes.idl @@ -0,0 +1,52 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef __com_sun_star_document_LinkUpdateModes_idl__ +#define __com_sun_star_document_LinkUpdateModes_idl__ + + +module com { module sun { module star { module document { + + +published constants LinkUpdateModes +{ + /** never update links + */ + const long NEVER = 0; + + /** update links when confirmed on request during loading the + document + */ + const long MANUAL = 1; + + /** automatic update on load + */ + const long AUTO = 2; + + /** use the setting that is configured in your installed + application. This may be one of the above behaviors. + */ + const long GLOBAL_SETTING = 3; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/LockFileCorruptRequest.idl b/offapi/com/sun/star/document/LockFileCorruptRequest.idl new file mode 100644 index 000000000..4a22f0a96 --- /dev/null +++ b/offapi/com/sun/star/document/LockFileCorruptRequest.idl @@ -0,0 +1,43 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef __com_sun_star_document_LockFileCorruptRequest_idl__ +#define __com_sun_star_document_LockFileCorruptRequest_idl__ + +#include+ If a macro is not in the list a confirmation for it executing will + appear. +
+ */ + + const short FROM_LIST = 1; + + /** Execute any macro, macros signed with trusted certificates and macros + from secure list are executed quietly. + ++ If the macro is neither in secure list nor signed a conformation + will be requested. +
+ */ + + const short ALWAYS_EXECUTE = 2; + + /** Use configuration to retrieve macro settings. In case a user + confirmation is required a dialog is output. + */ + + const short USE_CONFIG = 3; + + + /** A macro should be executed always no conformation should be provided. + */ + + const short ALWAYS_EXECUTE_NO_WARN = 4; + + /** Use configuration to retrieve macro settings. Treat cases when user + confirmation required as rejected. + */ + + const short USE_CONFIG_REJECT_CONFIRMATION = 5; + + /** Use configuration to retrieve macro settings. Treat cases when user + confirmation required as approved. + */ + + const short USE_CONFIG_APPROVE_CONFIRMATION = 6; + + /** Execute only macros from secure list. Macros that are not from the list + are not executed. + */ + const short FROM_LIST_NO_WARN = 7; + + /** Execute only macros from secure list or macros that are signed by + trusted certificates. + +If the macro is neither in secure list nor signed it will not be + executed. +
+ +If the macro is signed with unknown certificate a warning will + appear. The macro either will not be executed or if the warning + allows conformation, it will be executed after user agrees. +
+ */ + const short FROM_LIST_AND_SIGNED_WARN = 8; + + /** Execute only macros from secure list or macros that are signed by + trusted certificates. No warning/conformation should be shown. + */ + const short FROM_LIST_AND_SIGNED_NO_WARN = 9; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/MediaDescriptor.idl b/offapi/com/sun/star/document/MediaDescriptor.idl new file mode 100644 index 000000000..73ea2cacb --- /dev/null +++ b/offapi/com/sun/star/document/MediaDescriptor.idl @@ -0,0 +1,619 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef __com_sun_star_document_MediaDescriptor_idl__ +#define __com_sun_star_document_MediaDescriptor_idl__ + +#include+ This service may be represented by a com::sun::star::beans::PropertyValue[]. + Such descriptors will be passed to different functions, included into possible + load/save processes. Every member of such process can use this descriptor + and may change it if to actualize the information about the document. + So this descriptor should be used as an in/out parameter. +
+ +
+ Note:
+ It's not allowed to hold member of this descriptor by references longer than they
+ will be used (especially a possible stream). It's allowed to use it directly
+ or by copying it only.
+
+ Loading a component of type "template" creates a new untitled document + by default, but setting the "AsTemplate" property to `FALSE` loads the + template document for editing. Setting "AsTemplate" to `TRUE` creates a + new untitled document out of the loaded document, even if it has not + a "template" type. +
+ */ + [optional,property] boolean AsTemplate; + + /** the author of the document + ++ Only for storing versions in components supporting versioning: + author of version. +
+ */ + [optional,property] string Author; + + /** identifier of used character set + ++ Defines the character set for document formats that contain single + byte characters (if necessary). +
+ */ + [optional,property] string CharacterSet; + + /** description of document + ++ Only for storing versions in components supporting versioning: + comment (description) for stored version. +
+ */ + [optional,property] string Comment; + + /** pack specific properties of caller + ++ This is a parameter that can be used for any properties specific + for a special component type. Format of that depends from real + type of addressed component. +
+ +
+ For extensibility, it is recommended to use values of type
+ sequence
+ This parameter can be used to specify a title for a document. +
+ */ + [optional,property] string DocumentTitle; + + /** encryption information for encryption/decryption of documents + ++ It contains the necessary information for encryption/decryption of + a component (if necessary). + If neither password nor encryption data is specified, loading of + a password protected document will fail, storing will be done without + encryption. If both are provided, the encryption data is used + ( if the filter supports it ). +
++ The encryption data is generated based on the password. +
+ */ + [optional,property] sequence< ::com::sun::star::beans::NamedValue > EncryptionData; + + /** same as MediaDescriptor::URL + ++ It will be supported for compatibility reasons only. +
+ + @deprecated + */ + [optional,property] string FileName; + + /** internal filter name + ++ Name of a filter that should be used for loading or storing the component. + Names must match the names of the TypeDetection configuration, + invalid names are ignored. If a name is specified on loading, + it still will be verified by a filter detection, but in case of doubt + it will be preferred. + + See this page for a list of internal filter names: https://help.libreoffice.org/latest/en-US/text/shared/guide/convertfilters.html +
+ */ + [optional,property] string FilterName; + + /** same as MediaDescriptor::FilterOptions + ++ It will be supported for compatibility reasons only. +
+ + @deprecated + */ + [optional,property] string FilterFlags; + + /** additional properties for filter + ++ Some filters need additional parameters; use only together with property + MediaDescriptor::FilterName. Details must be documented + by the filter. This is an old format for some filters. If a string is not + enough, filters can use the property MediaDescriptor::FilterData. +
+ */ + [optional,property] string FilterOptions; + + /** additional properties for filter + ++ This is a parameter that can be used for any properties specific + for a special filter type. It should be used if + MediaDescriptor::FilterOptions isn't enough. +
+ */ + [optional,property] any FilterData; + + /** load document invisible + ++ Defines if the loaded component is made visible. If this property is not + specified, the component is made visible by default. +
+ */ + [optional,property] boolean Hidden; + + /** The hierarchical path to the embedded document from topmost container. + */ + [optional,property] string HierarchicalDocumentName; + + /** a stream to receive the document data. + ++ If used when storing a document: writing must be done using this stream. + If no stream is provided, the loader will create a stream by itself using + the other properties. It is not allowed to keep a reference to this + OutputStream after storing the component. +
+ */ + [optional,property] com::sun::star::io::XOutputStream OutputStream; + + /** content of document + ++ If used when loading a document: reading must be done using this stream. + If no stream is provided, the loader will create a stream by itself using + the other properties. It is not allowed to keep a reference to this + InputStream after loading the component, and it would be useless, because + in general an InputStream is usable for reading only once, except when it + also implements the com::sun::star::io::XSeekable interface. +
+ */ + [optional,property] com::sun::star::io::XInputStream InputStream; + + /** handle exceptional situations + ++ Object implementing the com::sun::star::task::InteractionHandler + service that is used to handle exceptional situations where proceeding with the task + is impossible without additional information or impossible at all. + The implemented API provides a default implementation for it that can handle many situations. + If no InteractionHandler is set, a suitable exception is thrown. + It is not allowed to keep a reference to this object, even not in the loaded + or stored component's copy of the MediaDescriptor provided by its arguments attribute. +
+ */ + [optional,property] com::sun::star::task::XInteractionHandler InteractionHandler; + + /** jump to a marked position after loading + ++ This is the same as the text behind a "#" in a http URL. But + this syntax with a "#" is not specified in most URL schemas. +
+ */ + [optional,property] string JumpMark; + + /** specify mime type of content + ++ Type of the medium to load, that must match to one of the types defined + in the TypeDetection configuration (otherwise it's ignored). + This bypasses the type detection of the com::sun::star::frame::Desktop environment, + so passing a wrong MediaType will cause failure of loading. +
+ */ + [optional,property] string MediaType; + + /** please use the corresponding parameters of this descriptor instead + +
+ String that summarizes some flags for loading. The string contains capital
+ letters for the flags:
+
flag | +value | +replacement | +
ReadOnly | +R | +MediaDescriptor::ReadOnly | +
Preview | +B | +MediaDescriptor::Preview | +
AsTemplate | +T | +MediaDescriptor::AsTemplate | +
Hidden | +H | +MediaDescriptor::Hidden | +
+ Setting this to `TRUE` forces the component to create a new window on loading + in any case. If the component supports multiple views, a second view is + opened, if not, the component is loaded one more time. Otherwise the behavior + depends on the default window handling of the com::sun::star::frame::Desktop environment. +
+ */ + [optional,property] boolean OpenNewView; + + + /** overwrite any existing file + ++ For storing only: overwrite any existing file, default is `TRUE`. + Setting this to `FALSE` raises an error, if the target file already exists. +
+ */ + [optional,property] boolean Overwrite; + + /** password for loading or storing documents + ++ It contains a password for loading or storing a component (if necessary). + If neither password nor encryption data is specified, loading of + a password protected document will fail, storing will be done without + encryption. If both are provided, the encryption data is used + ( if the filter supports it ). +
+ */ + [optional,property] string Password; + + /** contains the data for HTTP post method as a sequence of bytes. + ++ Data to send to a location described by the media descriptor to get + a result in return that will be loaded as a component + (usually in webforms). Default is: no PostData. +
+ */ + [optional,property] sequence< byte > PostData; + + /** add loaded document to recent document list + ++ Setting this to `FALSE` prevents the loaded document to be added to the recent documents list. + Default is `TRUE`. +
+ + @since LibreOffice 5.1 + */ + [optional,property] boolean PickListEntry; + + /** use MediaDescriptor::PostData instead of this + ++ Same as PostData, but the data is transferred as a string + (just for compatibility). +
+ + @deprecated + */ + [optional,property] string PostString; + + /** show preview + ++ Setting this to `TRUE` tells the a loaded component that it is loaded as + a preview, so it can optimize loading and viewing for this special purpose. + Default is `FALSE`. +
+ */ + [optional,property] boolean Preview; + + /** open document readonly + ++ Tells whether a document should be loaded in a (logical) readonly or in + read/write mode. If opening in the desired mode is impossible, an error occurs. + By default the loaded content decides what to do: if its UCB content supports + a "readonly" property, the logical open mode depends on that, otherwise + it will be read/write. This is only a UI related property, opening a + document in read only mode will not prevent the component from being + modified by API calls, but all modifying functionality in the UI will + be disabled or removed. +
+ */ + [optional,property] boolean ReadOnly; + + /** start presentation from a document + ++ Tells the component loading the document that a presentation that is in the + document is to be started right away. +
+ */ + [optional,property] boolean StartPresentation; + + /** name of document referrer + +
+ A URL describing the environment of the request; e.g. a referrer may be a
+ URL of a document, if a hyperlink inside this document is clicked to load
+ another document. The referrer may be evaluated by the addressed UCB content
+ or the loaded document. Without a referrer the processing of URLs that
+ needs security checks will be denied, e.g. "macro:" URLs.
+
+ Don't be confused about the wrong spelling; it is kept for compatibility reasons.
+
+ For loading of corrupted zip packages: Setting this to `TRUE` let the document + be opened in repair mode, so as much as possible information will be retrieved. +
+ + @since OOo 1.1.2 + */ + [optional,property] boolean RepairPackage; + + /** can be used for status information + ++ Object implementing the com::sun::star::task::XStatusIndicator + interface that can be used to give status information (text or progress) for the task. + The office provides a default implementation for it. It is not allowed to keep + a reference to this object, even not in the loaded or stored component's + copy of the MediaDescriptor provided by its arguments attribute. +
+ */ + [optional,property] com::sun::star::task::XStatusIndicator StatusIndicator; + + /** allows to specify the URL that is used next time SaveAs dialog is opened + ++ If the parameter is specified, the URL will be used by SaveAs dialog + next time as target folder. +
+ */ + [optional,property] string SuggestedSaveAsDir; + + /** allows to specify the suggested file name that is used next time SaveAs + dialog is opened + ++ If the parameter is specified, the file name will be suggested by + SaveAs dialog next time. +
+ */ + [optional,property] string SuggestedSaveAsName; + + /** name of the template instead of the URL + ++ The logical name of a template to load. Together with the MediaDescriptor::TemplateRegion + property it can be used instead of the URL of the template. Use always in conjunction with + MediaDescriptor::TemplateRegionName. +
+ */ + [optional,property] string TemplateName; + + /** name of the template instead of the URL + ++ See MediaDescriptor::TemplateName. The template region names are the folder names you see + in the templates dialog. +
+ */ + [optional,property] string TemplateRegionName; + + /** regulate using of compressing + ++ For storing: Setting this to `TRUE` means, don't use a zip file to save + the document, use a folder instead (only usable for UCB contents, that + support folders). Default is `FALSE`. +
+ */ + [optional,property] boolean Unpacked; + + /** URL of the document + ++ The location of the component in URL syntax. It must be a fully qualified URL. +
+ */ + [optional,property] string URL; + + /** storage version + ++ For components supporting versioning: the number of the version to be + loaded or saved. Default is zero and means: no version is created or + loaded, the "main" document is processed. +
+ */ + [optional,property] short Version; + + /** set special view state ++ Data to set a special view state after loading. The type depends on + the component and is usually retrieved from a com::sun::star::frame::Controller + object by its com::sun::star::frame::XController + interface. Default is: no view data. +
+ */ + [optional,property] any ViewData; + + /** id of the initial view + ++ For components supporting different views: a number to define the view + that should be constructed after loading. Default is: zero, and this + should be treated by the component as the default view. +
+ */ + [optional,property] short ViewId; + + /** should the macro be executed. + the value should be one from com::sun::star::document::MacroExecMode + constant list. + + @since OOo 1.1.2 + */ + [optional,property] short MacroExecutionMode; + + /** can the document be updated depending from links. + the value should be one from com::sun::star::document::UpdateDocMode + constant list. + + @since OOo 1.1.2 + */ + [optional,property] short UpdateDocMode; + + /** specifies the name of the view controller to create when loading a document + +If this property is used when loading a document into a frame, then it
+ specifies the name of the view controller to create. That is, the property
+ is passed to the document's com::sun::star::frame::XModel2::createViewController()
+ method.
+ If the loaded document does not support the XModel2
interface,
+ the property is ignored.
Normally a document is always opened in a new frame. If this property is + set to true, this document just acts as a placeholder while it's unmodified. + I.e. the next opened document from its frame will close and replace it.
+ +This defaults to false, except for the default template of a LibreOffice + module, referenced as "private:factory/<module>".
+ + @since LibreOffice 7.0 + */ + [optional,property] boolean Replaceable; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/NamedPropertyValues.idl b/offapi/com/sun/star/document/NamedPropertyValues.idl new file mode 100644 index 000000000..08b0035cd --- /dev/null +++ b/offapi/com/sun/star/document/NamedPropertyValues.idl @@ -0,0 +1,37 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef __com_sun_star_document_NamedPropertyValues_idl__ +#define __com_sun_star_document_NamedPropertyValues_idl__ + +#include+ If during loading time the filter can't be detected and wasn't given at calling time, + a possible com::sun::star::task::InteractionHandler will be used. + (it's a part of used MediaDescriptor) + Such "NoSuchFilterRequest" will be used then to start right interaction on that to + get a decision which filter should be used for given URL. A possible continuation + of type XInteractionFilterSelect will transport this decision back to + generic filter detection and force using of it. Of course it's possible to abort + the loading process by use another continuation com::sun::star::task::XInteractionAbort. +
+ + @see MediaDescriptor + @see com::sun::star::task::InteractionHandler + @see XInteractionFilterSelect + @see com::sun::star::task::XInteractionAbort +*/ +published exception NoSuchFilterRequest : ::com::sun::star::uno::Exception +{ + /** transport URL which couldn't be detected + */ + string URL; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/OOXMLDocumentPropertiesImporter.idl b/offapi/com/sun/star/document/OOXMLDocumentPropertiesImporter.idl new file mode 100644 index 000000000..04299af95 --- /dev/null +++ b/offapi/com/sun/star/document/OOXMLDocumentPropertiesImporter.idl @@ -0,0 +1,37 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef __com_sun_star_document_OOXMLDocumentPropertiesImporter_idl__ +#define __com_sun_star_document_OOXMLDocumentPropertiesImporter_idl__ + +#include+ All major document-like components should support this service + instead of simple components which supports a com::sun::star::frame::Controller + or pure com::sun::star::awt::XWindow only. +
+ + @see com::sun::star::frame::Controller + */ +published service OfficeDocument +{ + /** represents a component which is created from a URL and arguments + ++ 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. +
+ */ + interface com::sun::star::frame::XModel; + + /** a storable document should provide information about his modify state + ++ With this interface it's possible too, to reset the modify state. + That can be necessary to prevent code against problem during closing + of the document without saving any changes. +
+ */ + interface com::sun::star::util::XModifiable; + + /** offers a simple way to store a component to a URL + ++ This interface supports functionality +
+ It's possible to specify which printer should be used and of course + print the document on it. +
+ */ + interface com::sun::star::view::XPrintable; + + /** is an old and deprecated version of the XDocumentEventBroadcaster 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; + + /** access to some properties describing all open views to a document + */ + [optional] interface XViewDataSupplier; + + /** allows for getting information about a print job + + @since OOo 1.1.2 + */ + [optional] interface com::sun::star::view::XPrintJobBroadcaster; + + /** is supported when the document can contain scripts and dialogs + + @since OOo 2.4 + */ + [optional] interface XEmbeddedScripts; + + /** access to the DocumentProperties. + + @since OOo 3.0 + */ + [optional] interface XDocumentPropertiesSupplier; + + /** provides access to the document's undo manager. + */ + [optional] interface XUndoManagerSupplier; + + /** controls the focus behavior of the form controls in the document + ++ 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. +
+ */ + [property, optional] boolean AutomaticControlFocus; + + /** controls the initial (on-load) behavior of the form controls in the document + +If set to `TRUE`, upon loading the document, the form controls will be in design mode.
+ If set to `FALSE`, they will be alive, i.e. operational.
+ With this, you may control if your document works primarily as a form document.
+
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.
+ */ + [property, optional, readonly] string RuntimeUID; + + /** Grab bag of document properties, used as a string-any map for + interim interop purposes. + + @since LibreOffice 4.2 + +This property is intentionally not handled by the ODF + filter. Any member that should be handled there should be + first moved out from this grab bag to a separate property.
+ */ + [optional, property] sequence+ This service is only used to register embedded server support + for StarOffice documents. +
+ + @since OOo 1.1.2 + */ +published service OleEmbeddedServerRegistration + : com::sun::star::uno::XInterface; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/OwnLockOnDocumentRequest.idl b/offapi/com/sun/star/document/OwnLockOnDocumentRequest.idl new file mode 100644 index 000000000..f805f2c4d --- /dev/null +++ b/offapi/com/sun/star/document/OwnLockOnDocumentRequest.idl @@ -0,0 +1,54 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef __com_sun_star_document_OwnLockOnDocumentRequest_idl__ +#define __com_sun_star_document_OwnLockOnDocumentRequest_idl__ + +#includeFor application specific settings, please refer to the + individual services.
+ + @see com::sun::star::text::DocumentSettings + @see com::sun::star::sheet::DocumentSettings + @see com::sun::star::drawing::DocumentSettings + @see com::sun::star::presentation::DocumentSettings + */ +published service Settings +{ + /** gives access to the properties implemented by this service. + */ + interface com::sun::star::beans::XPropertySet; + + + // Note: These settings are global. However there is a note at + // every property that shows which application currently makes use + // of it. + + // Writer and Draw/Impress and Calc + /** gives access to the set of forbidden characters. + + @return the + com::sun::star::i18n::XForbiddenCharacters + interface to allow retrieval and modification of the + forbidden characters set. + */ + [optional, property] com::sun::star::i18n::XForbiddenCharacters ForbiddenCharacters; + + // Writer and Calc + /** specifies the update mode for links when loading text documents. + +For supported values see the constants group + LinkUpdateModes.
+ */ + [optional, property] short LinkUpdateMode; + + // Writer and Draw/Impress and Calc + /** printer used by the document. + */ + [property] string PrinterName; + + // Writer and Draw/Impress and Calc + /** platform and driver dependent printer setup data. + +This property serves to capture the current printer setup + settings, such as paper tray, printer options, etc. The data + can typically be interpreted only by the system that generated + it. The PrinterSetup property may be used to save and restore + the user's printer settings.
+ */ + [property] sequence< byte > PrinterSetup; + + // Writer and Draw/Impress and Calc + /** specifies if kerning is applied to Asian punctuation. + +Applies only if kerning is enabled.
+ */ + [optional, property] boolean IsKernAsianPunctuation; + + // Writer and Draw/Impress and Calc + /** specifies the compression (character spacing) type used for + Asian characters. + + @see com::sun::star::text::CharacterCompressionType + */ + [optional, property] short CharacterCompressionType; + + // Writer and Draw/Impress and Calc + /** specifies if the user-specific settings saved within a + document should be loaded with the document. + */ + [optional, property] boolean ApplyUserData; + + // Writer and Calc + /** specifies if a new version is created if a document has + been modified and you want to close it. + */ + [optional, property] boolean SaveVersionOnClose; + + // Writer and Draw/Impress and Calc + /** specifies if the document should be updated when the + template it was created from changes. + +Applies only for documents that were created from a template.
+ */ + [optional, property] boolean UpdateFromTemplate; + + // Writer + /** specifies if fields in text documents are updated automatically. + */ + [optional, property] boolean FieldAutoUpdate; + + // Writer + /** The name of the globally registered + com::sun::star::sdb::DataSource + from which the current data is taken. + +The data source can e.g. be used for feeding a form + letter.
+ */ + [optional, property] string CurrentDatabaseDataSource; + + // Writer + /** a string value, specifying the name of the object displayed + currently (or the SQL statement used). + */ + [optional, property] string CurrentDatabaseCommand; + + // Writer + // Note: What is the property DataTableName? Is this Writer-specific? + /** determines the interpretation of the property DataTableName. + + @see com::sun::star::sdb::CommandType + */ + [optional, property] long CurrentDatabaseCommandType; + + // Draw and Impress + /** + */ + [optional, property] long DefaultTabStop; + + // Draw and Impress + /** determines if the document will be printed as a booklet + (brochure), i.e., two document pages are put together on one + physical page, such that you can fold the print result and get + a booklet. + +Note, that you have to print in duplex mode, if both, + #IsPrintBookletFront and + #IsPrintBookletBack are set to `TRUE`.
+ */ + [optional, property] boolean IsPrintBooklet; + + // Draw and Impress + /** is only effective, if #IsPrintBooklet is + `TRUE`. If this property is also `TRUE`, only the fronts of + the pages of your booklet are printed. + +This is especially useful, if your printer does not supply + duplex printing.
+ */ + [optional, property] boolean IsPrintBookletFront; + + // Draw and Impress + /** is only effective, if #IsPrintBooklet is + `TRUE`. If this property is also `TRUE`, only the backs of + the pages of your booklet are printed. + +This is especially useful, if your printer does not supply + duplex printing.
+ */ + [optional, property] boolean IsPrintBookletBack; + + // Draw and Impress + /** how printing uses color. + +For supported values see the constants group + PrinterIndependentLayout.
+ */ + [optional, property] short PrinterIndependentLayout; + + // Writer, maybe later other applications, too + /** layout engine should add value of a Font's "external leading" + * attribute to the line spacing. + */ + [optional, property] boolean AddExternalLeading; + + // Writer, maybe later others + /** + Whether to embed fonts used by the document (see e.g. handling + of OOXML embedRegular etc.) + @since LibreOffice 4.0 + */ + [optional, property] boolean EmbedFonts; + // Writer, maybe later others + /** + Whether to embed also system fonts used by the document. + Does not have any effect if EmbedFonts is false. + @since LibreOffice 4.0 + */ + [optional, property] boolean EmbedSystemFonts; + + /** Whether to embed only the fonts that are used in the document. + + @since LibreOffice 6.2 + */ + [optional, property] boolean EmbedOnlyUsedFonts; + + /** Whether to embed Latin script fonts. + + @since LibreOffice 6.2 + */ + [optional, property] boolean EmbedLatinScriptFonts; + + /** Whether to embed Asian script fonts. + + @since LibreOffice 6.2 + */ + [optional, property] boolean EmbedAsianScriptFonts; + + /** Whether to embed Complex script fonts. + + @since LibreOffice 6.2 + */ + [optional, property] boolean EmbedComplexScriptFonts; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/TypeDetection.idl b/offapi/com/sun/star/document/TypeDetection.idl new file mode 100644 index 000000000..57e446bc3 --- /dev/null +++ b/offapi/com/sun/star/document/TypeDetection.idl @@ -0,0 +1,173 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef __com_sun_star_document_TypeDetection_idl__ +#define __com_sun_star_document_TypeDetection_idl__ + +#include+ It's possible to make a "flat" detection which may use internal configuration + data only - or a "deep" detection which use special ExtendedTypeDetection + services to look into the document stream. Last mode can be suppressed to perform the operation. + Of course the results can't be guaranteed then. (e.g. in case the extension was changed) +
+ */ +published service TypeDetection +{ + /** can be used to make a flat or deep type detection. + ++ Use this interface to get information about the type of the given resource. + Return value will be always an internal name of a registered document type. + It can be used may on other services (e.g. com::sun::star::frame::FrameLoaderFactory) + to do further things, which base on it (e.g. to load it into a frame). +
+ */ + interface XTypeDetection; + + /** provides read access to the complete set of type configuration data. + ++ Every container item is specified as a set of properties and will be + represented by a sequence< com::sun::star::beans::PropertyValue > structure. + Follow properties are supported: + (But note: not all of them must be present every time!) + +
Property Name | +Value Type | +Description | +
Name | +[string] | +The internal name is the only value, which makes a container item unique. | +
UIName | +[string] | +It contains the localized name for this type for the current locale. | +
UINames | +[sequence< string >] | +It contains all available localized names for this type. The are organized + in pairs and represented as a structure of sequence< com::sun::star::beans::PropertyValue >. + The name of such property must be interpreted as locale; its value as the localized + type name corresponding to this locale. | +
MediaType | +[string] | +It contains the MIME or content type descriptor. The differences between a MIME type and + an internal type name was made, to resolve existing ambiguities. | +
ClipboardFormatdeprecated! | +[string] | +It was interpreted as an identifier inside clipboard. + Please use new property ContentFormat instead of this now. | +
ContentFormat | +[string] | +It's and identifier, which is used for a deep format detection. + An ExtendedTypeDetection use this value to match + a given content to this type. e.g. It's interpreted as the doc type + of an XML stream or as an identifier inside a file header. + | +
URLPattern | +[sequence< string >] | +This list contains different URL patterns, which identify this type. + E.g. data base contents can be described by a new defined protocol like "sql://select*". + In combination with a suitable com::sun::star::frame::FrameLoader or + ImportFilter/ExportFilter it would be possible then, to + layout a SQL query output into an office frame. | +
Extensions | +[sequence< string >] | +It contains a list of file extensions, which match this type. + They must be specified as pure extension, without any special signs. + E.g.: "doc", "html" ... but not ".doc". + Using wild cards is allowed but not very useful. They may result in + ambiguities with other type registrations can't be resolved anytime. | +
DocumentIconID | +[integer] | +It's an ID, which present the number of a corresponding icon. | +
+ Note:
+ All elements of this container will be addressed by his internal name,
+ and it must be an unambiguous value.
+
+ Against simple property search it provides some complex algorithms too. + For further information please read the SDK documentation. +
+ */ + [optional] interface com::sun::star::container::XContainerQuery; + + /** can be used to perform container changes. + ++ Because the complexness of such configuration set can be very high, + it seems not very useful to update the underlying configuration layer + on every container change request immediately. Another strategy can be to + make all changes (adding/changing/removing of items) and call flush at the end. + That will validate the whole container and reject inconsistent data sets. + Only in case all made changes was correct, they will be written back to the + configuration. Further this interface provides the possibility, that interested + changes listener can be registered too. +
+ */ + [optional] interface com::sun::star::util::XFlushable; +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/UndoContextNotClosedException.idl b/offapi/com/sun/star/document/UndoContextNotClosedException.idl new file mode 100644 index 000000000..29313e2a7 --- /dev/null +++ b/offapi/com/sun/star/document/UndoContextNotClosedException.idl @@ -0,0 +1,43 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ + +#ifndef __com_sun_star_document_UndoContextNotClosedException_idl__ +#define __com_sun_star_document_UndoContextNotClosedException_idl__ + +#includeThis method is used for debugging purposes. The programming + environment can restore the locking after a break of a debug + session.
+ */ + void setActionLocks( [in] short nLock ); + + /** resets the locking level. + +This method is used for debugging purposes. The debugging + environment of a programming language can reset the locks + to allow refreshing of the view if a breakpoint is reached or + step execution is used.
+ */ + short resetActionLocks(); + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/XBinaryStreamResolver.idl b/offapi/com/sun/star/document/XBinaryStreamResolver.idl new file mode 100644 index 000000000..0ebeabf22 --- /dev/null +++ b/offapi/com/sun/star/document/XBinaryStreamResolver.idl @@ -0,0 +1,69 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef __com_sun_star_document_XBinaryStreamResolver_idl__ +#define __com_sun_star_document_XBinaryStreamResolver_idl__ + +#includeThis interface encapsulates functionality to get/resolve binary data streams. + It is used to transform binary data to a URL or to transform a URL to binary + data. The binary data is represented through input and output streams.
+ +In the case of transforming a URL to binary data, the getInputStream
+ method is used. This returns a com::sun::star::io::XInputStream
+ from which the binary data, transformed from the given URL, can be read.
In the case of transforming binary data to a URL, a
+ com::sun::star::io::XOutputStream is created first to write
+ the binary data to. After this, the resolveOutputStream
method can
+ be used to transform the binary data, represented through the
+ com::sun::star::io::XOutputStream interface, to a URL.
This interface is the successor of the XEventBroadcaster interface, which should not be used + anymore.
+ + @see DocumentEvent + @since OOo 3.1 +*/ +interface XDocumentEventBroadcaster +{ + /** registers a listener which is notified about document events + + @param Listener + the listener to register. The behavior of the method is undefined this listener + is `NULL`. + */ + void addDocumentEventListener( [in] XDocumentEventListener Listener ); + + /** revokes a listener which has previously been registered to be notified about document events. + + @param Listener + the listener to revoke. The behavior of the method is undefined this listener + is `NULL`. + */ + void removeDocumentEventListener( [in] XDocumentEventListener Listener ); + + /** causes the broadcaster to notify all registered listeners of the given event + +The method will create a DocumentEvent instance with the given parameters,
+ and fill in the Source
member (denoting the broadcaster) as appropriate.
Whether the actual notification happens synchronously or asynchronously is up to the + implementor of this method. However, implementations are encouraged to specify this, for the + list of supported event types, in their service contract.
+ +Implementations might also decide to limit the list of allowed events (means event names) at + their own discretion. Again, in this case they're encouraged to document this in their service + contract.
+ + @param EventName + the name of the event to be notified. + @param ViewController + the view/controller which the event applies to. May be `NULL` + @param Supplement + supplemental information related to the event. + + @throws ::com::sun::star::lang::IllegalArgumentException + if EventName is empty, or if EventName is not supported by the + document implementation. + + @throws ::com::sun::star::lang::NoSupportException + if the broadcaster implementation does not supported broadcasting events induced externally. + This is usually used for components which multiplex events from multiple sources, and thus would + be unable to fill in theSource
member of the DocumentEvent instance.
+ */
+ void notifyDocumentEvent(
+ [in] string EventName,
+ [in] ::com::sun::star::frame::XController2 ViewController,
+ [in] any Supplement
+ )
+ raises ( ::com::sun::star::lang::IllegalArgumentException,
+ ::com::sun::star::lang::NoSupportException );
+};
+
+
+}; }; }; };
+
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/document/XDocumentEventListener.idl b/offapi/com/sun/star/document/XDocumentEventListener.idl
new file mode 100644
index 000000000..b3c249f60
--- /dev/null
+++ b/offapi/com/sun/star/document/XDocumentEventListener.idl
@@ -0,0 +1,51 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * 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 .
+ */
+
+#ifndef __com_sun_star_document_XDocumentEventListener_idl__
+#define __com_sun_star_document_XDocumentEventListener_idl__
+
+#include This interface is the successor of the XEventListener interface, which should not be used + anymore.
+ + @see XDocumentEventBroadcaster + @since OOo 3.1 + */ +interface XDocumentEventListener : ::com::sun::star::lang::XEventListener +{ + /** is called whenever a document event occurred + */ + void documentEventOccured( [in] DocumentEvent Event ); +}; + + +}; }; }; }; + + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/XDocumentInsertable.idl b/offapi/com/sun/star/document/XDocumentInsertable.idl new file mode 100644 index 000000000..340305c6d --- /dev/null +++ b/offapi/com/sun/star/document/XDocumentInsertable.idl @@ -0,0 +1,58 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef __com_sun_star_document_XDocumentInsertable_idl__ +#define __com_sun_star_document_XDocumentInsertable_idl__ + +#include+ This interface manages access to document meta-data properties. + Such properties may be set from the outside via the setter methods + (e.g. when importing arbitrary document formats that support + document properties), or imported from an ODF package via the methods + loadFromStorage() and loadFromMedium(). + The properties may also be stored via the methods + storeToStorage() and storeToMedium(). +
+ + @since OOo 3.0 + + @see XDocumentPropertiesSupplier + for getting access to an instance from a loaded document + @see DocumentProperties for a service that implements this interface + */ +published interface XDocumentProperties +{ + /** contains the initial author of the document. + */ + + [attribute] string Author; + + /** identifies which application was used to create or last modify the + document. ++ The generating application will set this attribute when it creates a + new document or it saves a document. When a document is loaded that + itself contains such an attribute it will be preserved until the + document is saved again. +
+ */ + + [attribute] string Generator; + + /** contains the date and time when the document was created. + */ + + [attribute] com::sun::star::util::DateTime CreationDate; + + /** contains the title of the document. + */ + + [attribute] string Title; + + /** contains the subject of the document. + */ + + [attribute] string Subject; + + /** contains a multi-line comment describing the document. ++ Line delimiters can be UNIX, Macintosh or DOS style. +
+ */ + + [attribute] string Description; + + /** contains a list of keywords for the document. + */ + + [attribute] sequence< string > Keywords; + + /** contains the default language of the document. + */ + + [attribute] com::sun::star::lang::Locale Language; + + /** contains the name of the person who most recently stored the document. + */ + + [attribute] string ModifiedBy; + + /** contains the date and time of the last time the document was stored. ++ If the document has never been stored, contains a default value. +
+ */ + + [attribute] com::sun::star::util::DateTime ModificationDate; + + /** contains the name of the person who most recently printed the document. + */ + + [attribute] string PrintedBy; + + /** contains the date and time when the document was last printed. ++ If the document has never been printed, contains a default value. +
+ */ + + [attribute] com::sun::star::util::DateTime PrintDate; + + /** contains the name of the template from which the document was created. ++ The value is an empty `string` if the document was not + created from a template or if it was detached from the template. +
+ */ + + [attribute] string TemplateName; + + /** contains the URL of the template from which the document was created. ++ The value is an empty `string` if the document was not + created from a template or if it was detached from the template. +
+ */ + + [attribute] string TemplateURL; + + /** contains the date and time of when the document + was created or updated from the template. + */ + + [attribute] com::sun::star::util::DateTime TemplateDate; + + /** contains the URL to load automatically at a + specified time after the document is loaded into a desktop frame. ++ An empty URL is valid and describes a case where the document shall be + reloaded from its original location after some time described by the + attribute #AutoloadSecs. + An empty `string` together with an + #AutoloadSecs value of 0 + describes a case where no autoload is specified. +
+ + @see AutoloadSecs + */ + + [attribute] string AutoloadURL; + + /** contains the number of seconds after which a specified + URL is to be loaded after the document is loaded into a desktop + frame. ++ A value of 0 is valid and describes a redirection. + A value of 0 together with an empty `string` as + #AutoloadURL + describes a case where no autoload is specified. +
+ + @throws com::sun::star::lang::IllegalArgumentException + if argument is negative + + @see AutoloadURL + */ + + [attribute] long AutoloadSecs { + set raises ( com::sun::star::lang::IllegalArgumentException ); + }; + + /** contains the name of the default frame into which + links should be loaded if no target is specified. ++ This applies to the autoload feature too, but to others as well. +
+ */ + + [attribute] string DefaultTarget; + + /** contains some statistics about the document. ++ The contained statistics may be specific to the type of the document. +
+ */ + + [attribute] + sequence< com::sun::star::beans::NamedValue > DocumentStatistics; + + /** describes how often the document was edited and saved. ++
+ + @throws com::sun::star::lang::IllegalArgumentException + if argument is negative + */ + + [attribute] short EditingCycles { + set raises ( com::sun::star::lang::IllegalArgumentException ); + }; + + /** contains the net time of editing the document (in seconds). ++
+ + @throws com::sun::star::lang::IllegalArgumentException + if argument is negative + */ + + [attribute] long EditingDuration { + set raises ( com::sun::star::lang::IllegalArgumentException ); + }; + + /** resets all attributes that could identify the user. ++ Clears the document properties, such that it appears the document + has just been created. + This is a convenience method which resets several attributes at once, + as follows: +
+ The returned object also implements the interface + com::sun::star::beans::XPropertySet. +
+ @returns a container that provides access to user-defined properties + */ + + com::sun::star::beans::XPropertyContainer getUserDefinedProperties(); + + /** loads document properties from an ODF package. ++ This method is used for accessing an ODF package that is owned by + someone else, e.g., a document. +
+ + @param Storage + the com::sun::star::embed::Storage representing the + ODF package + + @param Medium + the com::sun::star::document::MediaDescriptor + representing the source ++ This is unfortunately necessary in order to properly resolve + relative URLs in the meta-data. +
+ + @throws com::sun::star::lang::IllegalArgumentException + if argument is `NULL` + @throws com::sun::star::io::WrongFormatException + if parsing the XML document fails + @throws com::sun::star::lang::WrappedTargetException + if thrown when trying to open a stream in the given storage + @throws com::sun::star::io::IOException + if thrown when trying to open a stream in the given storage + */ + + void loadFromStorage( [in] com::sun::star::embed::XStorage Storage, + [in] sequence < com::sun::star::beans::PropertyValue > Medium ) + raises( com::sun::star::lang::IllegalArgumentException, + com::sun::star::io::WrongFormatException, + com::sun::star::lang::WrappedTargetException, + com::sun::star::io::IOException ); + + /** loads document properties from an ODF package or an OLE container. + + @param URL + the URL of the source document ++ The URL could be part of the Medium parameter, but because often + no other parameters except the URL are needed, providing it + separately was added for convenience. +
+ + @param Medium + the com::sun::star::document::MediaDescriptor + representing the source + + @throws com::sun::star::io::WrongFormatException + if parsing the XML document fails + @throws com::sun::star::lang::WrappedTargetException + if thrown when trying to open a stream in the given storage + @throws com::sun::star::io::IOException + if thrown when trying to open a stream in the given storage + */ + + void loadFromMedium( [in] string URL, + [in] sequence < com::sun::star::beans::PropertyValue > Medium ) + raises( com::sun::star::io::WrongFormatException, + com::sun::star::lang::WrappedTargetException, + com::sun::star::io::IOException ); + + /** stores document properties to an ODF package. ++ This method is used for accessing an ODF package that is owned by + someone else, e.g., a document. + Note that the implementation may choose to store the meta-data + in either OOo or ODF format, depending on the MediaType property + of the given Storage argument. +
+ + @param Storage + the com::sun::star::embed::Storage representing the + ODF package + + @param Medium + the com::sun::star::document::MediaDescriptor + representing the source ++ This is unfortunately necessary in order to properly resolve + relative URLs in the meta-data. +
+ + @throws com::sun::star::lang::IllegalArgumentException + if argument is `NULL` + @throws com::sun::star::lang::WrappedTargetException + if thrown when trying to open a stream in the given storage + @throws com::sun::star::io::IOException + if thrown when writing to the storage + */ + + void storeToStorage( [in] com::sun::star::embed::XStorage Storage, + [in] sequence < com::sun::star::beans::PropertyValue > Medium ) + raises( com::sun::star::lang::IllegalArgumentException, + com::sun::star::lang::WrappedTargetException, + com::sun::star::io::IOException ); + + /** stores document properties to an ODF package or an OLE container. + + @param URL + the URL of the target document ++ The URL could be part of the Medium parameter, but because often + no other parameters except the URL are needed, providing it + separately was added for convenience. +
+ + @param Medium + the com::sun::star::document::MediaDescriptor + representing the target + + @throws com::sun::star::lang::WrappedTargetException + if thrown when trying to open a stream in the given storage + @throws com::sun::star::io::IOException + if thrown when writing to the storage + */ + + void storeToMedium( [in] string URL, + [in] sequence < com::sun::star::beans::PropertyValue > Medium ) + raises( com::sun::star::lang::WrappedTargetException, + com::sun::star::io::IOException ); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/XDocumentPropertiesSupplier.idl b/offapi/com/sun/star/document/XDocumentPropertiesSupplier.idl new file mode 100644 index 000000000..29c29d9cd --- /dev/null +++ b/offapi/com/sun/star/document/XDocumentPropertiesSupplier.idl @@ -0,0 +1,55 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef __com_sun_star_document_XDocumentPropertiesSupplier_idl__ +#define __com_sun_star_document_XDocumentPropertiesSupplier_idl__ + +#include+ A DocumentProperties instance is available on loaded documents + via this supplier interface. +
+ + @since OOo 3.0 + + @see XDocumentProperties + @see DocumentProperties + */ +published interface XDocumentPropertiesSupplier +{ + /** provides the document properties object. + + @returns + an object of type XDocumentProperties + */ + XDocumentProperties getDocumentProperties(); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/XDocumentRecovery.idl b/offapi/com/sun/star/document/XDocumentRecovery.idl new file mode 100644 index 000000000..914a091b6 --- /dev/null +++ b/offapi/com/sun/star/document/XDocumentRecovery.idl @@ -0,0 +1,119 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ + +#ifndef __com_sun_star_document_XDocumentRecovery_idl__ +#define __com_sun_star_document_XDocumentRecovery_idl__ + +#includeIf storeToRecoveryFile
has not been called before, this method returns whether the document
+ has been modified since it has been loaded respectively created.
When saving a session, either in case of an emergency (when OpenOffice.org crashed), or during a
+ periodic session save as configured by the user, storeToRecoveryFile() is called for every
+ document where wasModifiedSinceLastSave
returns `TRUE`.
It's allowed to implement this method sloppy, by returning `TRUE` in cases where it is not sure whether + the document actually has been modified. So, the most simple implementation could simply delegate this call + to com::sun::star::util::XModifiable::isModified(). (Well, actually that's the + second simple implementation, the most simple one would, still legitimately, always return `TRUE`.)
+ +However, in such a case, the document might be saved more often than needed. In particular during the + periodic session save, this might become a problem when saving is expensive, for a single document + or the sum of all open documents.
+ */ + boolean wasModifiedSinceLastSave(); + + /** does an emergency save of the document + +A default implementation of this method could simply delegate this call to + com::sun::star::frame::XStorable::storeToURL().
+ + @param TargetLocation + specifies the URL of the location to which the document should be emergency-saved. + + @param MediaDescriptor + contains additional arguments for the save process, for instance a StatusIndicator. + + @see MediaDescriptor + */ + void storeToRecoveryFile( + [in] string TargetLocation, + [in] sequence< ::com::sun::star::beans::PropertyValue > MediaDescriptor + ) + raises ( ::com::sun::star::io::IOException, + ::com::sun::star::lang::WrappedTargetException + ); + + /** recovers the document after a previous emergency or session save. + +The document itself has previously been created, but not loaded + (via com::sun::star::frame::XLoadable::load()) or initialized (via + com::sun::star::frame::XLoadable::initNew()).
+ +Upon successful return, the document must be fully initialized. In particular, the + caller is not responsible for calling com::sun::star::frame::XModel::attachResource(). + Instead, the implementation is responsible to do so, if required.
+ +A default implementation of this method could simply delegate this call to + ::com::sun::star::frame::XLoadable::load(), followed by + com::sun::star::frame::XModel::attachResource().
+ + @param SourceLocation + specifies the URL of the location to which the document was previously emergency-saved. + + @param SalvagedFile + specifies the original URL of the file which had been emergency-saved. If this is empty, + then the file should be recovered from its original location. + + @param MediaDescriptor + contains additional arguments for the load process, for instance a StatusIndicator. + + @see MediaDescriptor + */ + void recoverFromFile( + [in] string SourceLocation, + [in] string SalvagedFile, + [in] sequence< ::com::sun::star::beans::PropertyValue > MediaDescriptor + ) + raises ( ::com::sun::star::io::IOException, + ::com::sun::star::lang::WrappedTargetException + ); +}; + + +}; }; }; }; + + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/XDocumentRevisionListPersistence.idl b/offapi/com/sun/star/document/XDocumentRevisionListPersistence.idl new file mode 100644 index 000000000..f8aa9f5ce --- /dev/null +++ b/offapi/com/sun/star/document/XDocumentRevisionListPersistence.idl @@ -0,0 +1,62 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef __com_sun_star_document_XDocumentRevisionListPersistence_idl__ +#define __com_sun_star_document_XDocumentRevisionListPersistence_idl__ + +#include+ This method does not load any revision itself +
+ */ + sequence < ::com::sun::star::util::RevisionTag > load( [in] ::com::sun::star::embed::XStorage Storage) + raises( com::sun::star::container::NoSuchElementException, + com::sun::star::io::IOException, + com::sun::star::uno::Exception ); + + /** Stores a list of available revisions to a storage ++ This method does not store revisions themselves +
+ */ + void store( [in] ::com::sun::star::embed::XStorage Storage, [in] sequence < ::com::sun::star::util::RevisionTag > List ) + raises( com::sun::star::io::IOException, + com::sun::star::uno::Exception ); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/XDocumentSubStorageSupplier.idl b/offapi/com/sun/star/document/XDocumentSubStorageSupplier.idl new file mode 100644 index 000000000..044bd98f3 --- /dev/null +++ b/offapi/com/sun/star/document/XDocumentSubStorageSupplier.idl @@ -0,0 +1,67 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef __com_sun_star_document_XDocumentSubStorageSupplier_idl__ +#define __com_sun_star_document_XDocumentSubStorageSupplier_idl__ + +#include+ A temporary interface to get access to documents substorages. +
+ */ +interface XDocumentSubStorageSupplier: com::sun::star::uno::XInterface +{ + /** provides the access to a substorage with specified name + + @param StorageName + the name of requested substorage + + @param nMode + a mode the storage should be opened in can take value from ::com::sun::star::embed::ElementModes + + @returns + XStorage implementation that refers to specified substorage + */ + com::sun::star::embed::XStorage getDocumentSubStorage( + [in] string StorageName, + [in] long nMode ); + + /** provides the list of substorages + + @returns + sequence of substorages names + */ + sequence< string > getDocumentSubStoragesNames() + raises( ::com::sun::star::io::IOException ); + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/XEmbeddedObjectResolver.idl b/offapi/com/sun/star/document/XEmbeddedObjectResolver.idl new file mode 100644 index 000000000..bbba8de4d --- /dev/null +++ b/offapi/com/sun/star/document/XEmbeddedObjectResolver.idl @@ -0,0 +1,43 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef __com_sun_star_document_XEmbeddedObjectResolver_idl__ +#define __com_sun_star_document_XEmbeddedObjectResolver_idl__ + +#include+ This method does not return the model that is controlled by the + embedded object, but the embedded object itself. +
+ */ + com::sun::star::embed::XEmbeddedObject getExtendedControlOverEmbeddedObject(); + + /** allows to control the aspect of the object. + */ + [attribute] hyper Aspect; + + /** allows to get the replacement image of the object. + */ + [attribute,readonly] com::sun::star::graphic::XGraphic ReplacementGraphic; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/XEmbeddedScripts.idl b/offapi/com/sun/star/document/XEmbeddedScripts.idl new file mode 100644 index 000000000..c7ef5ea4e --- /dev/null +++ b/offapi/com/sun/star/document/XEmbeddedScripts.idl @@ -0,0 +1,60 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ + +#ifndef __com_sun_star_document_XEmbeddedScripts_idl__ +#define __com_sun_star_document_XEmbeddedScripts_idl__ + +#includeStarBasic
macro libraries contained in the document
+ */
+ [attribute, readonly] ::com::sun::star::script::XStorageBasedLibraryContainer BasicLibraries;
+
+ /** is the container of dialogs libraries contained in the document
+ */
+ [attribute, readonly] ::com::sun::star::script::XStorageBasedLibraryContainer DialogLibraries;
+
+ /** determines whether executing macros from this document is allowed.
+
+ Effectively, this attribute is an evaluation of the document's MacroExecMode + against possibly applicable configuration settings, the document location in relation to the + trusted location, and the like.
+ + @see MacroExecMode + */ + [attribute, readonly] boolean AllowMacroExecution; +}; + + +}; }; }; }; + + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/XEventBroadcaster.idl b/offapi/com/sun/star/document/XEventBroadcaster.idl new file mode 100644 index 000000000..140b0b6ab --- /dev/null +++ b/offapi/com/sun/star/document/XEventBroadcaster.idl @@ -0,0 +1,56 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef __com_sun_star_document_XEventBroadcaster_idl__ +#define __com_sun_star_document_XEventBroadcaster_idl__ + +#includeSuch events will be broadcasted by a XEventBroadcaster.
+ + @deprecated + @see XDocumentEventListener + */ +published interface XEventListener: com::sun::star::lang::XEventListener +{ + /** is called whenever a document event (see EventObject) occurs + + @param Event + specifies the event type + */ + void notifyEvent( [in] EventObject Event ); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/XEventsSupplier.idl b/offapi/com/sun/star/document/XEventsSupplier.idl new file mode 100644 index 000000000..46d303558 --- /dev/null +++ b/offapi/com/sun/star/document/XEventsSupplier.idl @@ -0,0 +1,45 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef __com_sun_star_document_XEventsSupplier_idl__ +#define __com_sun_star_document_XEventsSupplier_idl__ + +#include+ An ExportFilter must know the source of his filter operation. + To set this on a filter is part of this interface. + Same mechanism exist for import too. +
+ + @see ExportFilter + @see ImportFilter + @see XImporter + */ +published interface XExporter: com::sun::star::uno::XInterface +{ + /** sets the source document for the exporter + + @param Document + the source document + + @throws com::sun::star::lang::IllegalArgumentException + if Document does not support any service which is + supported by this exporter + */ + void setSourceDocument( + [in] com::sun::star::lang::XComponent Document ) + raises( com::sun::star::lang::IllegalArgumentException ); +}; + + +}; }; }; }; + +#endif + + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/XExtendedFilterDetection.idl b/offapi/com/sun/star/document/XExtendedFilterDetection.idl new file mode 100644 index 000000000..879c83937 --- /dev/null +++ b/offapi/com/sun/star/document/XExtendedFilterDetection.idl @@ -0,0 +1,68 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef __com_sun_star_document_XExtendedFilterDetection_idl__ +#define __com_sun_star_document_XExtendedFilterDetection_idl__ + +#include+ A "deep" filter detection means looking into the document stream to detect + the format of it. Services of type ExtendedTypeDetection must support this + interface to be called from generic load mechanism of the office for that. +
+ + @see DetectService + @see TypeDetection + @see FilterFactory + */ +published interface XExtendedFilterDetection: com::sun::star::uno::XInterface +{ + /** controls agreement of a "flat" TypeDetection + with given URL or arguments + ++ Registered services in configuration, which support this interface for different mime types, + will be called automatically to look into the document stream and decide which format it represent. + Add the collected information about detected documents in given MediaDescriptor + Descriptor. The decision must be returned as any valid type name (which specifies + the detected format) or an empty value for unknown formats. +
+ + @param Descriptor + represent a MediaDescriptor which can be used to get/set information + about the detected document + + @returns + an internal type name if format was detected successfully ++ This interface will be used by service ImportFilter or + ExportFilter to support loading/saving of documents in + different formats. The target/source of such filter operations must + be known before filtering will be started. + (see XImporter and XExporter too) + Otherwise this interface can't work right. +
+ + @see ImportFilter + @see ExportFilter + @see XImporter + @see XExporter + */ +published interface XFilter: com::sun::star::uno::XInterface +{ + /** filter the document. + +
+ The given MediaDescriptor holds all necessary information + about the document. + + Don't hold hard references to the descriptor items. You must copy needed information! + Otherwise we couldn't destroy (for example) an existing input stream! +
+ @param aDescriptor + the MediaDescriptor describing the respective document. + @return a boolean value indicating whether the filter operation was successful or not. + */ + boolean filter( [in] sequence< com::sun::star::beans::PropertyValue > aDescriptor ); + + /** cancel the process. + */ + void cancel(); + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/XFilterAdapter.idl b/offapi/com/sun/star/document/XFilterAdapter.idl new file mode 100644 index 000000000..226782009 --- /dev/null +++ b/offapi/com/sun/star/document/XFilterAdapter.idl @@ -0,0 +1,56 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef _COM_SUN_STAR_DOCUMENT_XFILTERADAPTER_IDL__ +#define _COM_SUN_STAR_DOCUMENT_XFILTERADAPTER_IDL__ + +#include+ An ImportFilter must know the target of his filter operation. + To set this on a filter is part of this interface. + Same mechanism exist for export too. +
+ + @see ExportFilter + @see ImportFilter + @see XExporter + */ +published interface XImporter: com::sun::star::uno::XInterface +{ + /** sets the target document for the importer + + @param Document + the target document + + @throws com::sun::star::lang::IllegalArgumentException + if Document does not support any service which is + supported by this importer + */ + void setTargetDocument( + [in] com::sun::star::lang::XComponent Document ) + raises( com::sun::star::lang::IllegalArgumentException ); +}; + + +}; }; }; }; + +#endif + + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/XInteractionFilterOptions.idl b/offapi/com/sun/star/document/XInteractionFilterOptions.idl new file mode 100644 index 000000000..27a0704bc --- /dev/null +++ b/offapi/com/sun/star/document/XInteractionFilterOptions.idl @@ -0,0 +1,53 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef __com_sun_star_document_XInteractionFilterOptions_idl__ +#define __com_sun_star_document_XInteractionFilterOptions_idl__ + +#include+ If during loading time the filter can't be detected and wasn't given at calling time, + a possible com::sun::star::task::InteractionHandler will be used. + (it's a part of used MediaDescriptor) + A NoSuchFilterRequest will be used then to start right interaction on that to + get a decision which filter should be used for given URL. A possible continuation + of that can be this XInteractionFilterSelect. It will transport the decision back to + generic filter detection and force using of it. Of course it's possible to abort + the loading process by use another continuation com::sun::star::task::XInteractionAbort. +
+ + @see MediaDescriptor + @see com::sun::star::task::InteractionHandler + @see NoSuchFilterRequest + @see com::sun::star::task::XInteractionAbort + */ +published interface XInteractionFilterSelect : com::sun::star::task::XInteractionContinuation +{ + /** used by interaction to set selected filter + ++ This value must be saved till another one will be set + and must be provided on getFilter() for interest users. +
+ */ + void setFilter( [in] string Name ); + + /** used by detection to get selected filter + */ + string getFilter(); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/XLinkTargetSupplier.idl b/offapi/com/sun/star/document/XLinkTargetSupplier.idl new file mode 100644 index 000000000..31e44ca0f --- /dev/null +++ b/offapi/com/sun/star/document/XLinkTargetSupplier.idl @@ -0,0 +1,51 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef __com_sun_star_document_XLinkTargetSupplier_idl__ +#define __com_sun_star_document_XLinkTargetSupplier_idl__ + +#includeThese targets implement the service LinkTarget.
+ */ +published interface XLinkTargetSupplier: com::sun::star::uno::XInterface +{ + /** @returns + the names of possible links to children of this object inside a + document object model. It implements the service LinkTargets. + */ + com::sun::star::container::XNameAccess getLinks(); + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/XMLBasicExporter.idl b/offapi/com/sun/star/document/XMLBasicExporter.idl new file mode 100644 index 000000000..d994a2174 --- /dev/null +++ b/offapi/com/sun/star/document/XMLBasicExporter.idl @@ -0,0 +1,49 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef __com_sun_star_document_XMLBasicExporter_idl__ +#define __com_sun_star_document_XMLBasicExporter_idl__ + +#includeFirst the XExporter::setSourceDocument() method must be + called in order to provide the export component with the source document + from which the data should be exported. After that, the export is started + by calling the XFilter::filter() method.
+ + @since OOo 2.0 + */ +published service XMLBasicExporter : XXMLBasicExporter +{ + createWithHandler([in] com::sun::star::xml::sax::XDocumentHandler DocumentHandler); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/XMLOasisBasicExporter.idl b/offapi/com/sun/star/document/XMLOasisBasicExporter.idl new file mode 100644 index 000000000..7befbf100 --- /dev/null +++ b/offapi/com/sun/star/document/XMLOasisBasicExporter.idl @@ -0,0 +1,49 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef __com_sun_star_document_XMLOasisBasicExporter_idl__ +#define __com_sun_star_document_XMLOasisBasicExporter_idl__ + +#includeFirst the XExporter::setSourceDocument() method must be + called in order to provide the export component with the source document + from which the data should be exported. After that, the export is started + by calling the XFilter::filter() method.
+ + @since OOo 2.0 + */ +published service XMLOasisBasicExporter : XXMLBasicExporter +{ + createWithHandler([in] com::sun::star::xml::sax::XDocumentHandler DocumentHandler); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/XMimeTypeInfo.idl b/offapi/com/sun/star/document/XMimeTypeInfo.idl new file mode 100644 index 000000000..5733b7d37 --- /dev/null +++ b/offapi/com/sun/star/document/XMimeTypeInfo.idl @@ -0,0 +1,50 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef __com_sun_star_document_XMimeTypeInfo_idl__ +#define __com_sun_star_document_XMimeTypeInfo_idl__ + +#include+ The implementation should parse the document properties from OOXML + format storage and set them to the target + XDocumentProperties implementation. +
+ ++ The storage must represent OOXML format and support + com::sun::star::embed::XRelationshipAccess + interface. Please see + com::sun::star::embed::StorageFactory for details + regarding creation of such a storage. +
+ + @param xSource + the source storage representing OOXML document + + @param xDocumentProperties + the target XDocumentProperties interface implementation + + @throws ::com::sun::star::lang::IllegalArgumentException + the exception is thrown in case unexpected arguments are provided + + @throws ::com::sun::star::xml::sax::SAXException + the exception is thrown in case of parsing problems + + @throws ::com::sun::star::uno::Exception + the exception is thrown in case of other problems during the import + */ + + void importProperties( + [in] com::sun::star::embed::XStorage xSource, + [in] com::sun::star::document::XDocumentProperties xDocumentProperties ) + raises( com::sun::star::lang::IllegalArgumentException, + com::sun::star::xml::sax::SAXException, + com::sun::star::uno::Exception ); + + /** find and get core properties stream + + (usually it is docProps\core.xml) + @since LibreOffice 7.3 + */ + + com::sun::star::io::XInputStream getCorePropertiesStream([in] com::sun::star::embed::XStorage xSource); + + /** find and get extended properties stream + + (usually it is docProps/app.xml) + @since LibreOffice 7.3 + */ + + com::sun::star::io::XInputStream getExtendedPropertiesStream([in] com::sun::star::embed::XStorage xSource); + + /** find and get custom properties streams + + (usually it is customXml\*.xml) + @since LibreOffice 7.3 + */ + + sequence< com::sun::star::io::XInputStream > getCustomPropertiesStreams([in] com::sun::star::embed::XStorage xSource); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/XRedlinesSupplier.idl b/offapi/com/sun/star/document/XRedlinesSupplier.idl new file mode 100644 index 000000000..4c7c2b19a --- /dev/null +++ b/offapi/com/sun/star/document/XRedlinesSupplier.idl @@ -0,0 +1,47 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef __com_sun_star_document_XRedlinesSupplier_idl__ +#define __com_sun_star_document_XRedlinesSupplier_idl__ + +#includeThe returned objects implement at least the interface + com::sun::star::beans::XPropertySet. + Specific objects may support other interfaces as well.
+ */ + com::sun::star::container::XEnumerationAccess getRedlines(); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/XScriptInvocationContext.idl b/offapi/com/sun/star/document/XScriptInvocationContext.idl new file mode 100644 index 000000000..574873188 --- /dev/null +++ b/offapi/com/sun/star/document/XScriptInvocationContext.idl @@ -0,0 +1,61 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ + +#ifndef __com_sun_star_document_XScriptInvocationContext_idl__ +#define __com_sun_star_document_XScriptInvocationContext_idl__ + + +#includeIf the component implementing it is a document, which supports embedding scripts into + itself, then #ScriptContainer refers to the document itself. Implementing this + interface is unnecessary then, instead the document should simply implement XEmbeddedScripts directly.
+ +If the interface is implemented by a document which does not itself support embedding + scripts into it, but which is associated unambiguously with a document which does, + then this other document is denoted by #ScriptContainer.
+ +If the interface is implemented by a controller, then #ScriptContainer + refers to the document which supports embedding scripts, and which is unambiguously + associated with the controller. This must not necessarily be the model returned by + com::sun::star::frame::XController::getModel().
+ + @since OOo 2.4 + */ +interface XScriptInvocationContext +{ + /** denotes the document which contains the scripts which are to be invoked from + the component implementing the XScriptInvocationContext interface. + */ + [attribute, readonly] XEmbeddedScripts ScriptContainer; +}; + + +}; }; }; }; + + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/XShapeEventBroadcaster.idl b/offapi/com/sun/star/document/XShapeEventBroadcaster.idl new file mode 100644 index 000000000..78a227eb9 --- /dev/null +++ b/offapi/com/sun/star/document/XShapeEventBroadcaster.idl @@ -0,0 +1,57 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef __com_sun_star_document_XShapeEventBroadcaster_idl__ +#define __com_sun_star_document_XShapeEventBroadcaster_idl__ + +#includeSuch events will be broadcasted by a XShapeEventBroadcaster.
+ + @since LibreOffice 6.4 + */ +interface XShapeEventListener +{ + /** is called whenever a document event (see EventObject) occurs + + @param Event + specifies the event type + */ + void notifyShapeEvent( [in] EventObject Event ); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/XStorageBasedDocument.idl b/offapi/com/sun/star/document/XStorageBasedDocument.idl new file mode 100644 index 000000000..0819fe2cc --- /dev/null +++ b/offapi/com/sun/star/document/XStorageBasedDocument.idl @@ -0,0 +1,87 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef __com_sun_star_document_XStorageBasedDocument_idl__ +#define __com_sun_star_document_XStorageBasedDocument_idl__ + +#include+ A "flat" detection means specifying the document format by using + the URL and some configuration data only. That will perform but produce + may invalid results if e.g., the extension of the document is wrong. + A "deep" detection means looking into the document stream to be right + which format it supports. Of course that includes a "flat" detection before. + The combination of both ones should produce stable results every time. +
+ + @see TypeDetection + */ +published interface XTypeDetection: com::sun::star::uno::XInterface +{ + /** make a "flat" detection by using the URL of the document + ++ It use given URL in combination with the internal configuration of well known + types only to specify the format of given document. +
+ + @param URL + specify the document by name + + @returns + an internal type name which represent the detected format +
+ Instead of XTypeDetection::queryTypeByURL() this function
+ use a MediaDescriptor to specify the document for detection.
+ Such descriptor hold different information about the document.
+ He will be passed to any part of made detection process and every part
+ can change it to actualize it.
+ The property MediaDescriptor::URL should be set on
+ this descriptor as minimum. It specifies the location of the document.
+ If this parameter is missing another one is required: MediaDescriptor::InputStream.
+ This can be useful to prevent operation against multiple opening of the stream
+ and perform the operation. If this stream isn't already included the detection
+ will open it (if allowed!) and add it to the descriptor so it will be available for
+ all following parts.
+ A combination of both parameters can be useful to perform the operation
+ and make results more stable; but only one of them is required.
+ Of course its possible to specify more document properties (e.g.
+ MediaDescriptor::ReadOnly).
+
+ As an additional feature it's possible to suppress "deep" detection by using argument
+ AllowDeep.
+
XUndoAction
instance, and any possibly
+ depending instances.
+ */
+ void undo()
+ raises ( ::com::sun::star::document::UndoFailedException
+ );
+
+ /** repeats the action represented by the instance, after it had previously been reverted.
+
+ @throws UndoFailedException
+ if repeating the action failed. In this case, the caller should assume that this is a permanent failure,
+ and take appropriate action, such as discarding the XUndoAction
instance, and any possibly
+ depending instances.
+ */
+ void redo()
+ raises ( ::com::sun::star::document::UndoFailedException
+ );
+
+ /** is the human-readable, localized description of the action.
+ */
+ [attribute, readonly] string Title;
+};
+
+
+}; }; }; };
+
+
+#endif
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/offapi/com/sun/star/document/XUndoManager.idl b/offapi/com/sun/star/document/XUndoManager.idl
new file mode 100644
index 000000000..9eb3d1d5c
--- /dev/null
+++ b/offapi/com/sun/star/document/XUndoManager.idl
@@ -0,0 +1,330 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ *
+ * This file incorporates work covered by the following license notice:
+ *
+ * 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 .
+ */
+
+#ifndef __com_sun_star_document_XUndoManager_idl__
+#define __com_sun_star_document_XUndoManager_idl__
+
+#include Changes to a document usually result in recording of information how to undo those changes, if desired. A so-called + undo action records the information how to undo a single change. Undo actions are maintained in a stack, so that + the changes they represent can be undo in the reverse order they have originally been applied.
+ +Additionally, the Undo manager manages a Redo stack: Actions which are undone are moved from the Undo to the Redo + stack, so it is possible to re-apply the changes to the document.
+ +For collecting multiple changes in a single undo action, so-called Undo contexts are provided. When an Undo
+ context is entered, all subsequently added Undo actions are not pushed onto the undo stack directly, but considered
+ a sub action of the Undo context. Once the Undo context is left, a single undo action is pushed onto the undo stack,
+ which comprises all those single Undo actions.
+ Undo contexts can be arbitrarily nested.
Hidden Undo actions are those which in no observable way contribute to the undo stack. That is,
+ any method retrieving information about the stack will behave as if the undo action does not exist. Nonetheless,
+ calling undo() respectively redo() will include those actions.
+ Hidden Undo actions can be created by calling enterHiddenUndoContext(), following by
+ leaveUndoContext().
An Undo manager can be locked and unlocked, using the XLockable::lock() and + XLockable::unlock() methods. When it is locked, then every attempt to add an undo action, or to + enter or leave an Undo context, will be silently ignored.
+ + @since OOo 3.4 + */ +interface XUndoManager +{ + /** allows locking the undo manager. + */ + interface ::com::sun::star::util::XLockable; + + /** allows accessing the component, usually a document, which the undo manager works for. + +com::sun::star::container::XChild::setParent() is not supported, and will throw + a com::sun::star::lang::NoSupportException.
+ */ + interface ::com::sun::star::container::XChild; + + /** enters a new undo context. + +A new undo action will be added to the undo stack, with the title given as iTitle
. As long
+ as the context is not left, every undo action added to the stack will be treated as sub action. This means
+ it will not be directly accessible at the Undo manager, not appear in any user interface, and cannot be
+ separately undone or re-done.
Each call to enterUndoContext
must be paired by a call to leaveUndoContext(),
+ otherwise, the document's undo stack is left in an inconsistent state.
Undo contexts can be nested, i.e. it is legitimate to call enterUndoContext
and
+ enterHiddenUndoContext() multiple times without calling leaveUndoContext() inbetween.
A hidden undo action does not, in any visible way, contribute to the undo stack. This means + that +
A new undo action will be added to the undo stack. As long as the context is not left, every undo action + added to the stack will be treated as sub action. This means it will not be directly accessible at the undo + manager, not appear in any user interface, and cannot be separately undone or re-done.
+ +Each call to enterHiddenUndoContext
must be paired by a call to leaveUndoContext(),
+ otherwise, the document's undo stack is left in an inconsistent state.
Undo contexts can be nested, i.e. it is legitimate to call enterUndoContext() and
+ enterHiddenUndoContext
multiple times without calling leaveUndoContext() inbetween.
If no undo action has been added since the context has been opened, the context is not only left, + but silently removed, and does not contribute to the undo stack at all. In this case, possible + listeners will be notified via XUndoManagerListener::cancelledContext().
+ +Otherwise, the undo context will be closed, and added to the Undo stack; the redo stack will be cleared, + and listeners will be notified via XUndoManagerListener::leftContext() resp. + XUndoManagerListener::leftHiddenContext()
+ + @throws ::com::sun::star::util::InvalidStateException + if no undo context is currently open. + + @see enterUndoContext + @see enterHiddenUndoContext + */ + void leaveUndoContext() + raises( ::com::sun::star::util::InvalidStateException ); + + /** adds the given undo action to the undo stack. + +The redo stack is cleared when a new action is pushed onto the undo stack.
+ +The Undo manager takes ownership of any actions pushed onto the undo stack. This means that if the + action is finally removed from the Undo manager's control (e.g. by calling clear() resp. + clearRedo()), it will be disposed, as long as it supports the com::sun::star::lang::XComponent + interface.
+ +If the Undo manager is locked at the moment the method is called, the call will be ignored, and the undo action + will immediately be disposed, if applicable.
+ + @throws ::com::sun::star::lang::IllegalArgumentException + if the given undo action is `NULL`. + */ + void addUndoAction( + [in] XUndoAction iAction + ) + raises( ::com::sun::star::lang::IllegalArgumentException ); + + /** reverts the most recent action on the document. + +Effectively, invoking this method will +
Effectively, invoking this method will +
All actions will be removed from both the Undo and the Redo stack. Actions which implement the + com::sun::star::lang::XComponent interface will be disposed.
+ + @throws UndoContextNotClosedException + if the method is invoked while an undo context is still open + */ + void clear() + raises( ::com::sun::star::document::UndoContextNotClosedException ); + + /** clears the redo stack. + +All actions will be removed from the Redo stack. Actions which implement the com::sun::star::lang::XComponent + interface will be disposed.
+ + @throws UndoContextNotClosedException + if the method is invoked while an undo context is still open + */ + void clearRedo() + raises( ::com::sun::star::document::UndoContextNotClosedException ); + + /** resets the Undo manager + +In particular, this method will +
Note that possible listeners will not get notifications for the single parts of the reset, i.e. there + will be no single XUndoManagerListener::allActionsCleared(), + XUndoManagerListener::leftContext(), etc., notifications. Instead, listeners will be + notified of the reset by calling their XUndoManagerListener::resetAll() method.
+ */ + void reset(); + + /** adds a listener to be notified of changes in the Undo/Redo stacks. + */ + void addUndoManagerListener( + [in] XUndoManagerListener iListener + ); + + /** removes a previously added listener + */ + void removeUndoManagerListener( + [in] XUndoManagerListener iListener + ); +}; + + +}; }; }; }; + + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/XUndoManagerListener.idl b/offapi/com/sun/star/document/XUndoManagerListener.idl new file mode 100644 index 000000000..449737b72 --- /dev/null +++ b/offapi/com/sun/star/document/XUndoManagerListener.idl @@ -0,0 +1,136 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ + +#ifndef __com_sun_star_document_XUndoManagerListener_idl__ +#define __com_sun_star_document_XUndoManagerListener_idl__ + +#includeNote that the action must not necessarily be the new top element of the stack: In case there's an
+ open Undo context, UndoManagerEvent::UndoContextDepth will be greater 0
,
+ and the newly added action will be subordinate of the context action.
UndoManagerEvent::UndoActionTitle carries the title of the Undo context, and + UndoManagerEvent::UndoContextDepth the number of open Undo contexts, including the + one just entered.
+ + @see XUndoManager::enterUndoContext + */ + void enteredContext( [in] UndoManagerEvent iEvent ); + + /** is called when a new hidden Undo context has been entered. + +UndoManagerEvent::UndoActionTitle carries the title of the Undo context, and + UndoManagerEvent::UndoContextDepth the number of open Undo contexts, including the + one just entered.
+ + @see XUndoManager::enterUndoContext + */ + void enteredHiddenContext( [in] UndoManagerEvent iEvent ); + + /** is called when an Undo context has been left. + +UndoManagerEvent::UndoActionTitle carries the title of the Undo context, and + UndoManagerEvent::UndoContextDepth the number of open Undo contexts, excluding the + one just left.
+ + @see XUndoManager::leaveUndoContext + @see leftHiddenUndocontext + @see cancelledContext + */ + void leftContext( [in] UndoManagerEvent iEvent ); + + /** is called when a hidden Undo context has been left. + +UndoManagerEvent::UndoActionTitle is empty, as hidden Undo contexts don't have + a title.
+ + @see XUndoManager::leaveHiddenUndoContext + @see leftContext + @see cancelledContext + */ + void leftHiddenContext( [in] UndoManagerEvent iEvent ); + + /** is called when an Undo context has been left, but no actions have been added within this context. + +In such a case, the context which has just been left will not contribute to the undo stack, but instead + be silently removed. Consequently, the UndoManagerEvent::UndoActionTitle is empty.
+ + @see XUndoManager::leaveUndoContext + @see leftContext + @see leftHiddenContext + */ + void cancelledContext( [in] UndoManagerEvent iEvent ); +}; + + +}; }; }; }; + + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/XUndoManagerSupplier.idl b/offapi/com/sun/star/document/XUndoManagerSupplier.idl new file mode 100644 index 000000000..b3affa1ec --- /dev/null +++ b/offapi/com/sun/star/document/XUndoManagerSupplier.idl @@ -0,0 +1,48 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ + +#ifndef __com_sun_star_document_XUndoManagerSupplier_idl__ +#define __com_sun_star_document_XUndoManagerSupplier_idl__ + +#include+ Each view is described by a sequence< ::com::sun::star::beans::PropertyValue >. + Through this interface the state of all open views can be retrieved and restored + later. These states can also be made persistent so that a document loader can create + all views of the correct types and restore their state to the state when the document was + saved. +
+ */ +published interface XViewDataSupplier: com::sun::star::uno::XInterface +{ + /** retrieve information about currently opened view to restore it later + + @returns + a com::sun::star::container::XIndexAccess, + that gives access to a list of com::sun::star::beans::PropertyValue + for every open view. May `NULL` if no view is currently available. + */ + ::com::sun::star::container::XIndexAccess getViewData(); + + /** restore all views which will be represented by given data argument + + @param Data + a list of com::sun::star::beans::PropertyValues + with information about last opened views to restore it + `NULL` isn't allowed here. + */ + void setViewData( [in] com::sun::star::container::XIndexAccess Data ); +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/com/sun/star/document/XXMLBasicExporter.idl b/offapi/com/sun/star/document/XXMLBasicExporter.idl new file mode 100644 index 000000000..35ee98cbd --- /dev/null +++ b/offapi/com/sun/star/document/XXMLBasicExporter.idl @@ -0,0 +1,52 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * 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 . + */ +#ifndef __com_sun_star_document_XXMLBasicExporter_idl__ +#define __com_sun_star_document_XXMLBasicExporter_idl__ + +#include