1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: XDataFormatTranslator.idl,v $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
32 #ifndef __com_sun_star_datatransfer_XDataFormatTranslator_idl__
33 #define __com_sun_star_datatransfer_XDataFormatTranslator_idl__
35 #ifndef __com_sun_star_uno_XInterface_idl__
36 #include
<com
/sun
/star
/uno
/XInterface.idl
>
39 #ifndef __com_sun_star_datatransfer_DataFlavor_idl__
40 #include
<com
/sun
/star
/datatransfer
/DataFlavor.idl
>
43 module com
{ module sun
{ module star
{ module datatransfer
{
45 //=============================================================================
46 /** Interface to be implemented by objects used to translate a <type>DataFlavor</type> to
47 a system dependent data transfer type and vice versa.
49 <p>Different platforms use different types to describe data formats available
50 during data exchange operations like clipboard or drag&drop. Windows for instance
51 uses integer values to describe an available clipboard or drag&drop format, Unix
52 X11 uses so called Atoms etc.</p>
55 published
interface XDataFormatTranslator
: com
::sun
::star
::uno
::XInterface
57 //-------------------------------------------------------------------------
58 /** Converts a <type>DataFlavor</type> to system dependend data type.
61 Describes the format for which a system dependent data types is requested.
64 A system dependent data transfer type for the given <type>DataFlavor</type>
65 if there is one available.
66 <p>If the is no system dependent data type for a given <type>DataFlavor</type>
67 the returned any is empty.</p>
69 any getSystemDataTypeFromDataFlavor
( [in] DataFlavor aDataFlavor
);
71 //-------------------------------------------------------------------------
72 /** Converts a system dependent data type to a <type>DataFlavor</type>.
75 A system dependent data type. If aSysDataType is empty so is the returned <type>DataFlavor</type>.
78 A <type>DataFlavor</type> for the given system dependent data transfer type.
79 <p>If there is no appropriate mapping for a sytem dependent data type, the returned <type>DataFlavor</type> will be empty.</p>
81 DataFlavor getDataFlavorFromSystemDataType
( [in] any aSysDataType
);