summaryrefslogtreecommitdiff
path: root/offapi
diff options
context:
space:
mode:
authorAndreas Schlüns <as@openoffice.org>2000-11-20 09:04:31 +0000
committerAndreas Schlüns <as@openoffice.org>2000-11-20 09:04:31 +0000
commitf3e5d65fac9d725d6f50efb163162f1e01b48d35 (patch)
tree1b1a034fcdb587bdcf035432e4f330d402b39b7f /offapi
parent107e7f3e788c62655d2fa17c7e13c07694868e96 (diff)
interfaces for new type and filter detection
Diffstat (limited to 'offapi')
-rw-r--r--offapi/com/sun/star/document/ExportFilter.idl144
-rw-r--r--offapi/com/sun/star/document/FilterFactory.idl126
-rw-r--r--offapi/com/sun/star/document/ImportFilter.idl144
-rw-r--r--offapi/com/sun/star/document/MediaDescriptor.idl194
-rw-r--r--offapi/com/sun/star/document/TypeDetection.idl114
-rw-r--r--offapi/com/sun/star/document/XFilter.idl107
-rw-r--r--offapi/com/sun/star/document/XTypeDetection.idl111
-rw-r--r--offapi/com/sun/star/document/makefile.mk11
8 files changed, 949 insertions, 2 deletions
diff --git a/offapi/com/sun/star/document/ExportFilter.idl b/offapi/com/sun/star/document/ExportFilter.idl
new file mode 100644
index 000000000000..56067a2b2c65
--- /dev/null
+++ b/offapi/com/sun/star/document/ExportFilter.idl
@@ -0,0 +1,144 @@
+/*************************************************************************
+ *
+ * $RCSfile: ExportFilter.idl,v $
+ *
+ * $Revision: 1.1 $
+ *
+ * last change: $Author: as $ $Date: 2000-11-20 10:04:31 $
+ *
+ * The Contents of this file are made available subject to the terms of
+ * either of the following licenses
+ *
+ * - GNU Lesser General Public License Version 2.1
+ * - Sun Industry Standards Source License Version 1.1
+ *
+ * Sun Microsystems Inc., October, 2000
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2000 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ *
+ * Sun Industry Standards Source License Version 1.1
+ * =================================================
+ * The contents of this file are subject to the Sun Industry Standards
+ * Source License Version 1.1 (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.openoffice.org/license.html.
+ *
+ * Software provided under this License is provided on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
+ * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
+ * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
+ * See the License for the specific provisions governing your rights and
+ * obligations concerning the Software.
+ *
+ * The Initial Developer of the Original Code is: Sun Microsystems, Inc.
+ *
+ * Copyright: 2000 by Sun Microsystems, Inc.
+ *
+ * All Rights Reserved.
+ *
+ * Contributor(s): _______________________________________
+ *
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_document_ExportFilter_idl__
+#define __com_sun_star_document_ExportFilter_idl__
+
+#ifndef __com_sun_star_document_XFilter_idl__
+#include <com/sun/star/document/XFilter.idl>
+#endif
+
+#ifndef __com_sun_star_document_XExporter_idl__
+#include <com/sun/star/document/XExporter.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+#ifndef __com_sun_star_lang_XInitialization_idl__
+#include <com/sun/star/lang/XInitialization.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module document {
+
+//=============================================================================
+
+/** filter for exports
+ */
+service ExportFilter
+{
+ //-------------------------------------------------------------------------
+ /** filter interface
+
+ <p>
+ These interface is used to filter a document at saving time.
+ </p>
+ */
+ interface com::sun::star::document::XFilter;
+
+ //-------------------------------------------------------------------------
+ /** set document for these filter
+
+ <p>
+ The document can used as target of filter output.
+ </p>
+ */
+ interface ::com::sun::star::document::XExporter;
+
+ //-------------------------------------------------------------------------
+ /** support initialization of filter with his own configuration!
+ <p>
+ A filter must support a readonly access to his own configuration.
+ But a readonly properties couldn't be set ...
+ That's the reason for these interface!
+ All Anys of given sequence are from Type <type>PropertyValue</type>.
+ </p>
+ */
+ [optional] interface com::sun::star::lang::XInitialization;
+
+ //-------------------------------------------------------------------------
+ /** readonly(!) access to filter configuration
+
+ <p>
+ These interface support a readonly access to our internal configuration of THESE filter.
+ The filter himself get his configuration about <type>XInitialization</type> at creation by using
+ the <type>FilterFactory</type>!
+ </p>
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ [property, readonly] string Type ; /// filter is registered for these type
+ [property, readonly] string UIName ; /// localized name of filter to show it at UI elements
+ [property, readonly] string DocumentService ; /// service name which present the document
+ [property, readonly] string FilterService ; /// service name of these filter implementation
+ [property, readonly] string Flags ; /// flags to describe the filter
+ [property, readonly] string UserData ; /// additional informations with private structure!
+ [property, readonly] string FileFormatVersion ; /// version number of file format
+ [property, readonly] string TemplateName ; /// name of suitable template
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/document/FilterFactory.idl b/offapi/com/sun/star/document/FilterFactory.idl
new file mode 100644
index 000000000000..d6e4c02971e0
--- /dev/null
+++ b/offapi/com/sun/star/document/FilterFactory.idl
@@ -0,0 +1,126 @@
+/*************************************************************************
+ *
+ * $RCSfile: FilterFactory.idl,v $
+ *
+ * $Revision: 1.1 $
+ *
+ * last change: $Author: as $ $Date: 2000-11-20 10:04:31 $
+ *
+ * The Contents of this file are made available subject to the terms of
+ * either of the following licenses
+ *
+ * - GNU Lesser General Public License Version 2.1
+ * - Sun Industry Standards Source License Version 1.1
+ *
+ * Sun Microsystems Inc., October, 2000
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2000 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ *
+ * Sun Industry Standards Source License Version 1.1
+ * =================================================
+ * The contents of this file are subject to the Sun Industry Standards
+ * Source License Version 1.1 (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.openoffice.org/license.html.
+ *
+ * Software provided under this License is provided on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
+ * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
+ * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
+ * See the License for the specific provisions governing your rights and
+ * obligations concerning the Software.
+ *
+ * The Initial Developer of the Original Code is: Sun Microsystems, Inc.
+ *
+ * Copyright: 2000 by Sun Microsystems, Inc.
+ *
+ * All Rights Reserved.
+ *
+ * Contributor(s): _______________________________________
+ *
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_document_FilterFactory_idl__
+#define __com_sun_star_document_FilterFactory_idl__
+
+#ifndef __com_sun_star_lang_XMultiServiceFactory_idl__
+#include <com/sun/star/lang/XMultiServiceFactory.idl>
+#endif
+
+#ifndef __com_sun_star_container_XNameAccess_idl__
+#include <com/sun/star/container/XNameAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module document {
+
+//=============================================================================
+
+/** factory to create filter objects
+ */
+service FilterFactory
+{
+ //-------------------------------------------------------------------------
+ /** search suitable filter for given internal type name and additional arguments
+ and create it
+
+ <p>
+ After a <type>TypDetection</type> you have an internal name of a type which present
+ your document. Call createInstance() or createInstanceWithArguments() with these
+ informations and we create a suitable filter for you.
+ It exist two types of filter: <type>ImportFilter</type> and <type>ExportFilter</type>.
+ A combination of both services in one implementation is possible too.
+ You can regulate search for filter by giving right arguments - like flags for import/export ...
+
+ @attention Don't use getAvailableServiceNames()!
+ Please use XNameAccess to get informations about our configuration of accessible filters.
+ </p>
+ */
+ interface com::sun::star::lang::XMultiServiceFactory;
+
+ //-------------------------------------------------------------------------
+ /** readonly access to filter configuration
+
+ <p>
+ These interface support a readonly access to our internal configuration of all accessible filter.
+ The return value of XNameAccess::getByName() is a sequence<PropertyValue> packed in an Any!
+
+ Supported properties are:
+ name of property value type of property description
+ "Type" [string ] filter is registered for these type
+ "UIName" [string ] localized name of filter to show it at the UI
+ "DocumentService" [string ] service name which present the document
+ "FilterService" [string ] service name of filter implementation
+ "Flags" [integer] flags to describe the filter
+ "UserData" [string ] additional informations with private structure!
+ "FileFormatVersion" [integer] version number of file format
+ "TemplateName" [string ] name of suitable template
+ </p>
+ */
+ interface com::sun::star::container::XNameAccess;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/document/ImportFilter.idl b/offapi/com/sun/star/document/ImportFilter.idl
new file mode 100644
index 000000000000..9ab1900cf3f6
--- /dev/null
+++ b/offapi/com/sun/star/document/ImportFilter.idl
@@ -0,0 +1,144 @@
+/*************************************************************************
+ *
+ * $RCSfile: ImportFilter.idl,v $
+ *
+ * $Revision: 1.1 $
+ *
+ * last change: $Author: as $ $Date: 2000-11-20 10:04:31 $
+ *
+ * The Contents of this file are made available subject to the terms of
+ * either of the following licenses
+ *
+ * - GNU Lesser General Public License Version 2.1
+ * - Sun Industry Standards Source License Version 1.1
+ *
+ * Sun Microsystems Inc., October, 2000
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2000 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ *
+ * Sun Industry Standards Source License Version 1.1
+ * =================================================
+ * The contents of this file are subject to the Sun Industry Standards
+ * Source License Version 1.1 (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.openoffice.org/license.html.
+ *
+ * Software provided under this License is provided on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
+ * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
+ * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
+ * See the License for the specific provisions governing your rights and
+ * obligations concerning the Software.
+ *
+ * The Initial Developer of the Original Code is: Sun Microsystems, Inc.
+ *
+ * Copyright: 2000 by Sun Microsystems, Inc.
+ *
+ * All Rights Reserved.
+ *
+ * Contributor(s): _______________________________________
+ *
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_document_ImportFilter_idl__
+#define __com_sun_star_document_ImportFilter_idl__
+
+#ifndef __com_sun_star_document_XFilter_idl__
+#include <com/sun/star/document/XFilter.idl>
+#endif
+
+#ifndef __com_sun_star_document_XImporter_idl__
+#include <com/sun/star/document/XImporter.idl>
+#endif
+
+#ifndef __com_sun_star_beans_XPropertySet_idl__
+#include <com/sun/star/beans/XPropertySet.idl>
+#endif
+
+#ifndef __com_sun_star_lang_XInitialization_idl__
+#include <com/sun/star/lang/XInitialization.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module document {
+
+//=============================================================================
+
+/** filter for imports
+ */
+service ImportFilter
+{
+ //-------------------------------------------------------------------------
+ /** filter interface
+
+ <p>
+ These interface is used to filter a document at loading time.
+ </p>
+ */
+ interface com::sun::star::document::XFilter;
+
+ //-------------------------------------------------------------------------
+ /** set document for these filter
+
+ <p>
+ The document can used as source of filter input.
+ </p>
+ */
+ interface com::sun::star::document::XImporter;
+
+ //-------------------------------------------------------------------------
+ /** support initialization of filter with his own configuration!
+ <p>
+ A filter must support a readonly access to his own configuration.
+ But a readonly properties couldn't be set ...
+ That's the reason for these interface!
+ All Anys of given sequence are from Type <type>PropertyValue</type>.
+ </p>
+ */
+ interface com::sun::star::lang::XInitialization;
+
+ //-------------------------------------------------------------------------
+ /** readonly(!) access to filter configuration
+
+ <p>
+ These interface support a readonly access to our internal configuration of THESE filter.
+ The filter himself get his configuration about <type>XInitialization</type> at creation by using
+ the <type>FilterFactory</type>!
+ </p>
+ */
+ interface com::sun::star::beans::XPropertySet;
+
+ [property, readonly] string Type ; /// filter is registered for these type
+ [property, readonly] string UIName ; /// localized name of filter to show it at UI elements
+ [property, readonly] string DocumentService ; /// service name which present the document
+ [property, readonly] string FilterService ; /// service name of these filter implementation
+ [property, readonly] string Flags ; /// flags to describe the filter
+ [property, readonly] string UserData ; /// additional informations with private structure!
+ [property, readonly] string FileFormatVersion ; /// version number of file format
+ [property, readonly] string TemplateName ; /// name of suitable template
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/document/MediaDescriptor.idl b/offapi/com/sun/star/document/MediaDescriptor.idl
new file mode 100644
index 000000000000..5de576107133
--- /dev/null
+++ b/offapi/com/sun/star/document/MediaDescriptor.idl
@@ -0,0 +1,194 @@
+/*************************************************************************
+ *
+ * $RCSfile: MediaDescriptor.idl,v $
+ *
+ * $Revision: 1.1 $
+ *
+ * last change: $Author: as $ $Date: 2000-11-20 10:04:31 $
+ *
+ * The Contents of this file are made available subject to the terms of
+ * either of the following licenses
+ *
+ * - GNU Lesser General Public License Version 2.1
+ * - Sun Industry Standards Source License Version 1.1
+ *
+ * Sun Microsystems Inc., October, 2000
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2000 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ *
+ * Sun Industry Standards Source License Version 1.1
+ * =================================================
+ * The contents of this file are subject to the Sun Industry Standards
+ * Source License Version 1.1 (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.openoffice.org/license.html.
+ *
+ * Software provided under this License is provided on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
+ * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
+ * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
+ * See the License for the specific provisions governing your rights and
+ * obligations concerning the Software.
+ *
+ * The Initial Developer of the Original Code is: Sun Microsystems, Inc.
+ *
+ * Copyright: 2000 by Sun Microsystems, Inc.
+ *
+ * All Rights Reserved.
+ *
+ * Contributor(s): _______________________________________
+ *
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_document_MediaDescriptor_idl__
+#define __com_sun_star_document_MediaDescriptor_idl__
+
+#ifndef __com_sun_star_io_XInputStream_idl__
+#include <com/sun/star/io/XInputStream.idl>
+#endif
+
+#ifndef __com_sun_star_awt_Rectangle_idl__
+#include <com/sun/star/awt/Rectangle.idl>
+#endif
+
+#ifndef __com_sun_star_util_URL_idl__
+#include <com/sun/star/util/URL.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module document {
+
+//=============================================================================
+
+/** describes properties of a document
+
+ <p>This service may be represented by a <code>sequence&amp;lt;PropertyValue&amp;gt;</code>.
+ </p>@see struct com::sun::star::beans::PropertyValue
+ */
+service MediaDescriptor
+{
+ //-------------------------------------------------------------------------
+ /** document is a template
+ */
+ [property] boolean AsTemplate;
+
+ //-------------------------------------------------------------------------
+ /** identifier of used character set
+ */
+ [property] string CharacterSet;
+
+ //-------------------------------------------------------------------------
+ /** internal filter name
+ */
+ [property] string FilterName;
+
+ //-------------------------------------------------------------------------
+ /** name of target frame
+ */
+ [property] string FrameName;
+
+ //-------------------------------------------------------------------------
+ /** load doucment unvisible
+ */
+ [property] boolean Hidden;
+
+ //-------------------------------------------------------------------------
+ /** content of document
+ */
+ [property] com::sun::star::io::XInputStream InputStream;
+
+ //-------------------------------------------------------------------------
+ /** mime type
+ */
+ [property] string MediaType;
+
+ //-------------------------------------------------------------------------
+ /** open a new view for already loaded document
+ */
+ [property] boolean OpenNewView;
+
+ //-------------------------------------------------------------------------
+ /** position and size of document window
+ */
+ [property] com::sun::star::awt::Rectangle PosSize;
+
+ //-------------------------------------------------------------------------
+ /** ???
+ */
+ [property] string PostData;
+
+ //-------------------------------------------------------------------------
+ /** ???
+ */
+ [property] string PostString;
+
+ //-------------------------------------------------------------------------
+ /** show preview
+ */
+ [property] boolean Preview;
+
+ //-------------------------------------------------------------------------
+ /** open document readonly
+ */
+ [property] boolean ReadOnly;
+
+ //-------------------------------------------------------------------------
+ /** name of document referrer
+ */
+ [property] string Referer;
+
+ //-------------------------------------------------------------------------
+ /** ???
+ */
+ [property] boolean Silent;
+
+ //-------------------------------------------------------------------------
+ /** name of corresponding template
+ */
+ [property] string TemplateName;
+
+ //-------------------------------------------------------------------------
+ /** ???
+ */
+ [property] string TemplateRegionName;
+
+ //-------------------------------------------------------------------------
+ /** url of document
+ */
+ [property] com::sun::star::util::URL URL;// FileName
+
+ //-------------------------------------------------------------------------
+ /** storage version
+ */
+ [property] short Version;
+
+ //-------------------------------------------------------------------------
+ /** ???
+ */
+ [property] short ViewId;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/document/TypeDetection.idl b/offapi/com/sun/star/document/TypeDetection.idl
new file mode 100644
index 000000000000..f43cfd2f4efa
--- /dev/null
+++ b/offapi/com/sun/star/document/TypeDetection.idl
@@ -0,0 +1,114 @@
+/*************************************************************************
+ *
+ * $RCSfile: TypeDetection.idl,v $
+ *
+ * $Revision: 1.1 $
+ *
+ * last change: $Author: as $ $Date: 2000-11-20 10:04:31 $
+ *
+ * The Contents of this file are made available subject to the terms of
+ * either of the following licenses
+ *
+ * - GNU Lesser General Public License Version 2.1
+ * - Sun Industry Standards Source License Version 1.1
+ *
+ * Sun Microsystems Inc., October, 2000
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2000 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ *
+ * Sun Industry Standards Source License Version 1.1
+ * =================================================
+ * The contents of this file are subject to the Sun Industry Standards
+ * Source License Version 1.1 (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.openoffice.org/license.html.
+ *
+ * Software provided under this License is provided on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
+ * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
+ * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
+ * See the License for the specific provisions governing your rights and
+ * obligations concerning the Software.
+ *
+ * The Initial Developer of the Original Code is: Sun Microsystems, Inc.
+ *
+ * Copyright: 2000 by Sun Microsystems, Inc.
+ *
+ * All Rights Reserved.
+ *
+ * Contributor(s): _______________________________________
+ *
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_document_TypeDetection_idl__
+#define __com_sun_star_document_TypeDetection_idl__
+
+#ifndef __com_sun_star_document_XTypeDetection_idl__
+#include <com/sun/star/document/XTypeDetection.idl>
+#endif
+
+#ifndef __com_sun_star_container_XNameAccess_idl__
+#include <com/sun/star/container/XNameAccess.idl>
+#endif
+
+//=============================================================================
+
+module com { module sun { module star { module document {
+
+//=============================================================================
+
+/** type detection of a specified ressource (document)
+ */
+service TypeDetection
+{
+ //-------------------------------------------------------------------------
+ /** detect ressource
+ <p>
+ Use XTypeDetection interface to get information about type of given document.
+ </p>
+ */
+ interface com::sun::star::document::XTypeDetection;
+
+ //-------------------------------------------------------------------------
+ /** readonly access to complete type configuration list
+
+ <p>
+ These interface support a readonly access to our internal configuration of all accessible types.
+ The return value of XNameAccess::getByName() is a sequence<PropertyValue> packed in an Any!
+
+ Supported properties are:
+ name of property value type of property description
+ "UIName" [string] localized name of type to show it at UI elements
+ "MediaType" [string] mime type
+ "ClipboardFormat" [string] name of clipboard format
+ "URLPattern" [sequence<string>] a list of URl pattern which identify these type
+ "Extensions" [sequence<string>] a list of file extensions which identify these type
+ "DocumentIconID" [integer] an ID which present the number of corresponding icon
+ </p>
+ */
+ interface com::sun::star::container::XNameAccess;
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/document/XFilter.idl b/offapi/com/sun/star/document/XFilter.idl
new file mode 100644
index 000000000000..75a56ef57358
--- /dev/null
+++ b/offapi/com/sun/star/document/XFilter.idl
@@ -0,0 +1,107 @@
+/*************************************************************************
+ *
+ * $RCSfile: XFilter.idl,v $
+ *
+ * $Revision: 1.1 $
+ *
+ * last change: $Author: as $ $Date: 2000-11-20 10:04:31 $
+ *
+ * The Contents of this file are made available subject to the terms of
+ * either of the following licenses
+ *
+ * - GNU Lesser General Public License Version 2.1
+ * - Sun Industry Standards Source License Version 1.1
+ *
+ * Sun Microsystems Inc., October, 2000
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2000 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ *
+ * Sun Industry Standards Source License Version 1.1
+ * =================================================
+ * The contents of this file are subject to the Sun Industry Standards
+ * Source License Version 1.1 (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.openoffice.org/license.html.
+ *
+ * Software provided under this License is provided on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
+ * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
+ * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
+ * See the License for the specific provisions governing your rights and
+ * obligations concerning the Software.
+ *
+ * The Initial Developer of the Original Code is: Sun Microsystems, Inc.
+ *
+ * Copyright: 2000 by Sun Microsystems, Inc.
+ *
+ * All Rights Reserved.
+ *
+ * Contributor(s): _______________________________________
+ *
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_document_XFilter_idl__
+#define __com_sun_star_document_XFilter_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_beans_PropertyValue_idl__
+#include <com/sun/star/beans/PropertyValue.idl>
+#endif
+
+//=============================================================================
+
+ module com { module sun { module star { module document {
+
+//=============================================================================
+
+/** interface to filter documents
+ */
+[ uik(43A2DBCB-7287-4fbc-8C200A58-8939C0BA), ident( "XFilter", 1.0 ) ]
+interface XFilter: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** filter the document
+
+ <p>
+ The given <type>MediaDescriptor</type> hold all neccessary informations
+ about the document.
+
+ @attention Don't hold hard references to these descriptor. You must copy needed informations!
+ Otherwise we couldn't destroy (for example) an existing input stream!
+ </p>
+ */
+ boolean filter( [in] sequence< com::sun::star::beans::PropertyValue > aDescriptor );
+
+ //-------------------------------------------------------------------------
+ /** cancels the loading process.
+ */
+ void cancel();
+
+};
+
+//=============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/document/XTypeDetection.idl b/offapi/com/sun/star/document/XTypeDetection.idl
new file mode 100644
index 000000000000..9e29a4828cab
--- /dev/null
+++ b/offapi/com/sun/star/document/XTypeDetection.idl
@@ -0,0 +1,111 @@
+/*************************************************************************
+ *
+ * $RCSfile: XTypeDetection.idl,v $
+ *
+ * $Revision: 1.1 $
+ *
+ * last change: $Author: as $ $Date: 2000-11-20 10:04:31 $
+ *
+ * The Contents of this file are made available subject to the terms of
+ * either of the following licenses
+ *
+ * - GNU Lesser General Public License Version 2.1
+ * - Sun Industry Standards Source License Version 1.1
+ *
+ * Sun Microsystems Inc., October, 2000
+ *
+ * GNU Lesser General Public License Version 2.1
+ * =============================================
+ * Copyright 2000 by Sun Microsystems, Inc.
+ * 901 San Antonio Road, Palo Alto, CA 94303, USA
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1, as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
+ * MA 02111-1307 USA
+ *
+ *
+ * Sun Industry Standards Source License Version 1.1
+ * =================================================
+ * The contents of this file are subject to the Sun Industry Standards
+ * Source License Version 1.1 (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.openoffice.org/license.html.
+ *
+ * Software provided under this License is provided on an "AS IS" basis,
+ * WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
+ * WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
+ * MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
+ * See the License for the specific provisions governing your rights and
+ * obligations concerning the Software.
+ *
+ * The Initial Developer of the Original Code is: Sun Microsystems, Inc.
+ *
+ * Copyright: 2000 by Sun Microsystems, Inc.
+ *
+ * All Rights Reserved.
+ *
+ * Contributor(s): _______________________________________
+ *
+ *
+ ************************************************************************/
+#ifndef __com_sun_star_document_XTypeDetection_idl__
+#define __com_sun_star_document_XTypeDetection_idl__
+
+#ifndef __com_sun_star_uno_XInterface_idl__
+#include <com/sun/star/uno/XInterface.idl>
+#endif
+
+#ifndef __com_sun_star_beans_PropertyValue_idl__
+#include <com/sun/star/beans/PropertyValue.idl>
+#endif
+
+//============================================================================
+
+module com { module sun { module star { module document {
+
+//============================================================================
+
+/** support "flat" and "deep" type detection of a given document.
+ */
+[ uik(CF5E32C9-253E-4d1b-9A171DB3-512CEB05), ident("XTypeDetection", 1.0) ]
+interface XTypeDetection: com::sun::star::uno::XInterface
+{
+ //-------------------------------------------------------------------------
+ /** return internal type name which is suitable to given url
+
+ <p>
+ We make a "flat" type detection only.
+ </p>
+ */
+ string queryTypeByURL( [in] string sURL );
+
+ //-------------------------------------------------------------------------
+ /** return internal type name which is suitable to given document properties
+ by an <type>MediaDescriptor</type>
+
+ <p>
+ These do the same like "queryTypeByURL()" before.
+ As additional feature you can specify more document properties
+ and select the detection mode. Available modes are "flat" (bDeep=FALSE)
+ and "deep" (bDeep=TRUE) detection.
+ </p>
+ */
+ string queryTypeByDescriptor( [inout] sequence< com::sun::star::beans::PropertyValue > aDescriptor ,
+ [in] boolean bDeep );
+};
+
+//============================================================================
+
+}; }; }; };
+
+#endif
diff --git a/offapi/com/sun/star/document/makefile.mk b/offapi/com/sun/star/document/makefile.mk
index e7d2d1b2e716..43938a720ead 100644
--- a/offapi/com/sun/star/document/makefile.mk
+++ b/offapi/com/sun/star/document/makefile.mk
@@ -2,9 +2,9 @@
#
# $RCSfile: makefile.mk,v $
#
-# $Revision: 1.4 $
+# $Revision: 1.5 $
#
-# last change: $Author: os $ $Date: 2000-11-17 11:51:25 $
+# last change: $Author: as $ $Date: 2000-11-20 10:04:31 $
#
# The Contents of this file are made available subject to the terms of
# either of the following licenses
@@ -92,6 +92,13 @@ IDLFILES=\
XLinkTargetSupplier.idl\
XStandaloneDocumentInfo.idl\
XEventSupplier.idl\
+ XFilter.idl\
+ XTypeDetection.idl\
+ TypeDetection.idl\
+ ImportFilter.idl\
+ ExportFilter.idl\
+ FilterFactory.idl\
+ MediaDescriptor.idl
# ------------------------------------------------------------------