summaryrefslogtreecommitdiff
path: root/offapi/com/sun/star/script/XLibraryContainer2.idl
blob: 2d315ca3a88ff8333008f66d897fd221944964ff (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
/*************************************************************************
 *
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 *
 * Copyright 2000, 2010 Oracle and/or its affiliates.
 *
 * OpenOffice.org - a multi-platform office productivity suite
 *
 * This file is part of OpenOffice.org.
 *
 * OpenOffice.org is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License version 3
 * only, as published by the Free Software Foundation.
 *
 * OpenOffice.org 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 version 3 for more details
 * (a copy is included in the LICENSE file that accompanied this code).
 *
 * You should have received a copy of the GNU Lesser General Public License
 * version 3 along with OpenOffice.org.  If not, see
 * <http://www.openoffice.org/license.html>
 * for a copy of the LGPLv3 License.
 *
 ************************************************************************/
#ifndef __com_sun_star_script_XLibraryContainer2_idl__
#define __com_sun_star_script_XLibraryContainer2_idl__

#ifndef __com_sun_star_script_XLibraryContainer_idl__
#include <com/sun/star/script/XLibraryContainer.idl>
#endif


//=============================================================================

 module com {  module sun {  module star {  module script {

//=============================================================================

/**
    Extension of <type>XLibraryContainer</type> to provide additional information
    about the libraries contained in a library container
 */
published interface XLibraryContainer2: com::sun::star::script::XLibraryContainer
{
    /**
        returns true if the accessed library item is a link,
        e.g., created by createLibraryLink, otherwise false.
     */
    boolean isLibraryLink( [in] string Name )
            raises( com::sun::star::container::NoSuchElementException );

    /**
        returns the location of the library link target.
        Should return the same URL that was passed to
        createLibraryLink in the StorageURL parameter.

        If the accessed library item exists but isn't a
        link, a IllegalArgumentException is thrown
     */
    string getLibraryLinkURL( [in] string Name )
            raises( com::sun::star::lang::IllegalArgumentException,
                    com::sun::star::container::NoSuchElementException );

    /**
        returns true if the accessed library item (library or library
        link) is read only. A library can be read only because it was
        set to read only using the methods provided by this interface
        or because of other reasons depending on the implementation
        (e.g., file system write protection)
     */
    boolean isLibraryReadOnly( [in] string Name )
            raises( com::sun::star::container::NoSuchElementException );

    /**
        Sets the accessed library item (library or library link) to
        read only according to the flag bReadOnly (true means read only)
     */
    void setLibraryReadOnly( [in] string Name, [in] boolean bReadOnly )
            raises( com::sun::star::container::NoSuchElementException );

    /** renames the library item with the specified name. If the accessed
        library item is a link only the link is renamed, not the target library.
        If a library with the new name exists already a
        com::sun::star::container::ElementExistException is thrown.
     */
    void renameLibrary( [in] string Name, [in] string NewName )
            raises( com::sun::star::container::NoSuchElementException,
                    com::sun::star::container::ElementExistException );

};

//=============================================================================


}; }; }; };

#endif