xref: /AOO41X/main/udkapi/com/sun/star/beans/PropertyState.idl (revision 408a4873fc8bcc602c90ea4598886bb71abf0675)
1/**************************************************************
2 *
3 * Licensed to the Apache Software Foundation (ASF) under one
4 * or more contributor license agreements.  See the NOTICE file
5 * distributed with this work for additional information
6 * regarding copyright ownership.  The ASF licenses this file
7 * to you under the Apache License, Version 2.0 (the
8 * "License"); you may not use this file except in compliance
9 * with the License.  You may obtain a copy of the License at
10 *
11 *   http://www.apache.org/licenses/LICENSE-2.0
12 *
13 * Unless required by applicable law or agreed to in writing,
14 * software distributed under the License is distributed on an
15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16 * KIND, either express or implied.  See the License for the
17 * specific language governing permissions and limitations
18 * under the License.
19 *
20 *************************************************************/
21
22
23#ifndef __com_sun_star_beans_PropertyState_idl__
24#define __com_sun_star_beans_PropertyState_idl__
25
26
27//=============================================================================
28
29module com {  module sun {  module star {  module beans {
30
31//=============================================================================
32
33/** This enumeration lists the states that a property value can have.
34
35    <p>The state consists of two aspects: </p>
36    <ol>
37        <li>whether a value is available or void, </li>
38        <li>whether the value is stored in the property set itself or is a
39            default, or ambiguous.  </li>
40    </ol>
41
42    @see XPropertyState
43    @see Property
44 */
45published enum PropertyState
46{
47    //-------------------------------------------------------------------------
48
49    /** The value of the property is stored in the PropertySet itself.
50
51        <p>The property value must be available and of the specified type.
52        If the <member>PropertyAttribute</member> field in the struct
53        <type>Property</type> contains <const>PropertyAttribute::MAYBEVOID</const>,
54        then the value may be void. </p>
55     */
56    DIRECT_VALUE,
57
58    //-------------------------------------------------------------------------
59
60    /** The value of the property is available from a master (e.g., template).
61
62        <p>The <member>PropertyAttribute</member> field in the struct
63        <type>Property</type> must contain the
64        <const>PropertyAttribute::MAYBEDEFAULT</const> flag. The property
65        value must be available and of the specified type. If the
66        <member>PropertyAttribute</member> field in the struct <type>Property</type>
67        contains <const>PropertyAttribute::MAYBEVOID</const>, then the
68        value may be void. </p>
69     */
70    DEFAULT_VALUE,
71
72    //-------------------------------------------------------------------------
73
74    /** The value of the property is only a recommendation because there
75        are multiple values for this property (e.g., from a multi selection).
76
77        <p>The <member>PropertyAttribute</member> field in the struct
78        <type>Property</type> must contain the
79        <const>PropertyAttribute::MAYBEAMBIGUOUS</const> flag. The
80        property value must be available and of the specified type.
81        If the Attribute field in the struct Property contains
82        <const>PropertyAttribute::MAYBEVOID</const>, then the value
83        may be void. </p>
84     */
85    AMBIGUOUS_VALUE
86
87};
88
89//=============================================================================
90
91}; }; }; };
92
93#endif
94