1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
19 #ifndef __com_sun_star_beans_XMultiPropertyStates_idl__
20 #define __com_sun_star_beans_XMultiPropertyStates_idl__
22 #include
<com
/sun
/star
/uno
/XInterface.idl
>
23 #include
<com
/sun
/star
/beans
/PropertyState.idl
>
24 #include
<com
/sun
/star
/beans
/UnknownPropertyException.idl
>
25 #include
<com
/sun
/star
/lang
/WrappedTargetException.idl
>
26 #include
<com
/sun
/star
/beans
/XPropertyStateChangeListener.idl
>
30 module com
{ module sun
{ module star
{ module beans
{
32 /** makes it possible to query information about the state of
33 one or more properties.
35 <p>The state of a property contains information about the source of
36 the value, e.g. the object itself, a default or a stylesheet.
37 For more information see PropertyState.
39 published
interface XMultiPropertyStates
: com
::sun
::star
::uno
::XInterface
42 a sequence of the states of the properties which are specified
45 <p>The order of the states is correlating to the order of the
49 specifies the names of the properties. All names must be unique.
50 This sequence must be alphabetically sorted.
52 sequence
<com
::sun
::star
::beans
::PropertyState
> getPropertyStates
(
53 [in] sequence
<string> aPropertyName
)
54 raises
( com
::sun
::star
::beans
::UnknownPropertyException
);
56 /** sets all properties to their default values.
58 <p>Each value depends on the implementation of this interface.
59 If it is a bound property, you must change the value before
60 the change events are fired. If it is a constrained property, you
61 must fire the vetoable event before you change the property value.
64 void setAllPropertiesToDefault
();
66 /** sets the specified properties to their default values.
68 <p>Each value depends on the implementation of this interface.
69 If it is a bound property, you must change the value before
70 the change events are fired. If it is a constrained property, you
71 must fire the vetoable event before you change the property value. </p>
74 specifies the names of the properties. All names must be unique.
75 This sequence must be alphabetically sorted.
77 @throws UnknownPropertyException
78 if one of the properties does not exist.
80 void setPropertiesToDefault
( [in] sequence
<string> aPropertyNames
)
81 raises
( com
::sun
::star
::beans
::UnknownPropertyException
);
84 the default values of the propertes with the specified names.
86 <p>If no default exists, is not known, or is void,
87 then the return type at the corresponding position in the
88 sequence returned is `void`. </p>
91 specifies the names of the properties. All names must be unique.
92 This sequence must be alphabetically sorted.
94 @throws UnknownPropertyException
95 if one of the propertes does not exist.
97 @throws com::sun::star::lang::WrappedTargetException
98 if the implementation has an internal reason for the exception.
99 In this case the original exception is wrapped into that
100 com::sun::star::lang::WrappedTargetException.
102 sequence
<any
> getPropertyDefaults
(
103 [in] sequence
<string> aPropertyNames
)
104 raises
( com
::sun
::star
::beans
::UnknownPropertyException
,
105 com
::sun
::star
::lang
::WrappedTargetException
);
113 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */