1/*************************************************************************
2 *
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 *
5 * Copyright 2000, 2010 Oracle and/or its affiliates.
6 *
7 * OpenOffice.org - a multi-platform office productivity suite
8 *
9 * This file is part of OpenOffice.org.
10 *
11 * OpenOffice.org is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser General Public License version 3
13 * only, as published by the Free Software Foundation.
14 *
15 * OpenOffice.org is distributed in the hope that it will be useful,
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18 * GNU Lesser General Public License version 3 for more details
19 * (a copy is included in the LICENSE file that accompanied this code).
20 *
21 * You should have received a copy of the GNU Lesser General Public License
22 * version 3 along with OpenOffice.org.  If not, see
23 * <http://www.openoffice.org/license.html>
24 * for a copy of the LGPLv3 License.
25 *
26 ************************************************************************/
27
28#ifndef __ooo_vba_XDocumentProperty_idl__
29#define __ooo_vba_XDocumentProperty_idl__
30
31#ifndef __com_sun_star_script_BasicErrorException_idl__
32#include <com/sun/star/script/BasicErrorException.idl>
33#endif
34#ifndef __com_sun_star_script_XDefaultProperty_idl__
35#include <com/sun/star/script/XDefaultProperty.idl>
36#endif
37#ifndef __ooo_vba_XHelperInterface_idl__
38#include <ooo/vba/XHelperInterface.idl>
39#endif
40
41module ooo { module vba {
42
43/**
44 * Specific built-in document property. Use CustomDocumentProperties(index),
45 * where index is the name or index number of the custom document property,
46 * to return a DocumentProperty object that represents a specific custom document property.
47 */
48interface XDocumentProperty
49{
50
51    interface com::sun::star::script::XDefaultProperty;
52    interface ooo::vba::XHelperInterface;
53
54    void Delete()
55        raises (com::sun::star::script::BasicErrorException);
56
57    /** Required String. The name of the property.
58     */
59    string getName()
60        raises (com::sun::star::script::BasicErrorException);
61
62    void setName([in] string Name)
63        raises (com::sun::star::script::BasicErrorException);
64
65    /** The data type of the property.
66     * Can be one of the following MsoDocProperties constants:
67     * msoPropertyTypeBoolean, msoPropertyTypeDate, msoPropertyTypeFloat,
68     * msoPropertyTypeNumber, or msoPropertyTypeString.
69     */
70    byte getType()
71        raises (com::sun::star::script::BasicErrorException);
72
73    void setType([in] byte Type)
74        raises (com::sun::star::script::BasicErrorException);
75
76    /** If true, then LinkSource has a valid value. */
77    boolean getLinkToContent()
78        raises (com::sun::star::script::BasicErrorException);
79
80    void setLinkToContent([in] boolean LinkToContent)
81        raises (com::sun::star::script::BasicErrorException);
82
83    /** If LinkToContent is false, then this contains the value of the property
84     * The data type of the value will match the Type property.
85     */
86    any getValue()
87        raises (com::sun::star::script::BasicErrorException);
88
89    void setValue([in] any Value)
90        raises (com::sun::star::script::BasicErrorException);
91
92    /** If LinkToContent is false, then this contains the value of the property */
93    string getLinkSource()
94        raises (com::sun::star::script::BasicErrorException);
95
96    void setLinkSource([in] string LinkSource)
97        raises (com::sun::star::script::BasicErrorException);
98};
99
100}; };
101
102#endif
103
104