xref: /trunk/main/udkapi/com/sun/star/beans/Property.idl (revision a5f4f399ee733c9ba42d31d70ac311c6a6ac5e06)
1408a4873SAndrew Rist/**************************************************************
2cdf0e10cSrcweir *
3408a4873SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one
4408a4873SAndrew Rist * or more contributor license agreements.  See the NOTICE file
5408a4873SAndrew Rist * distributed with this work for additional information
6408a4873SAndrew Rist * regarding copyright ownership.  The ASF licenses this file
7408a4873SAndrew Rist * to you under the Apache License, Version 2.0 (the
8408a4873SAndrew Rist * "License"); you may not use this file except in compliance
9408a4873SAndrew Rist * with the License.  You may obtain a copy of the License at
10cdf0e10cSrcweir *
11408a4873SAndrew Rist *   http://www.apache.org/licenses/LICENSE-2.0
12cdf0e10cSrcweir *
13408a4873SAndrew Rist * Unless required by applicable law or agreed to in writing,
14408a4873SAndrew Rist * software distributed under the License is distributed on an
15408a4873SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16408a4873SAndrew Rist * KIND, either express or implied.  See the License for the
17408a4873SAndrew Rist * specific language governing permissions and limitations
18408a4873SAndrew Rist * under the License.
19cdf0e10cSrcweir *
20408a4873SAndrew Rist *************************************************************/
21408a4873SAndrew Rist
22408a4873SAndrew Rist
23cdf0e10cSrcweir#ifndef __com_sun_star_beans_Property_idl__
24cdf0e10cSrcweir#define __com_sun_star_beans_Property_idl__
25cdf0e10cSrcweir
26cdf0e10cSrcweir#ifndef __com_sun_star_reflection_XIdlClass_idl__
27cdf0e10cSrcweir#include <com/sun/star/reflection/XIdlClass.idl>
28cdf0e10cSrcweir#endif
29cdf0e10cSrcweir
30cdf0e10cSrcweir
31cdf0e10cSrcweir//=============================================================================
32cdf0e10cSrcweir
33cdf0e10cSrcweirmodule com {  module sun {  module star {  module beans {
34cdf0e10cSrcweir
35cdf0e10cSrcweir//=============================================================================
36cdf0e10cSrcweir
37cdf0e10cSrcweir/** This structure describes a property.
38cdf0e10cSrcweir
39cdf0e10cSrcweir    <dl>There are three types of properties:
40cdf0e10cSrcweir        <dt>- bound properties</dt>
41cdf0e10cSrcweir        <dt>- constrained properties</dt>
42cdf0e10cSrcweir        <dt>- free properties</dt>
43cdf0e10cSrcweir    </dl>
44cdf0e10cSrcweir */
45cdf0e10cSrcweirpublished struct Property
46cdf0e10cSrcweir{
47*a5f4f399SMatthias Seidel    //-------------------------------------------------------------------------
48*a5f4f399SMatthias Seidel
49cdf0e10cSrcweir    /** specifies the name of the property.
50cdf0e10cSrcweir
51cdf0e10cSrcweir        <p> The name is unique within an <type>XPropertySet</type>.
52cdf0e10cSrcweir            Upper and lower case are distinguished.</p>
53cdf0e10cSrcweir     */
54cdf0e10cSrcweir    string Name;
55cdf0e10cSrcweir
56cdf0e10cSrcweir    //-------------------------------------------------------------------------
57cdf0e10cSrcweir
58cdf0e10cSrcweir    /** contains an implementation-specific handle for the property.
59cdf0e10cSrcweir
60cdf0e10cSrcweir        <p> It may be -1 if the implementation has no handle. You can use
61cdf0e10cSrcweir            this handle to get values from the <type>XFastPropertySet</type>.</p>
62cdf0e10cSrcweir     */
63cdf0e10cSrcweir    long Handle;
64cdf0e10cSrcweir
65cdf0e10cSrcweir    //-------------------------------------------------------------------------
66cdf0e10cSrcweir
67*a5f4f399SMatthias Seidel    /** contains an object that identifies the declared type for the property.
68cdf0e10cSrcweir
69cdf0e10cSrcweir        <p> If the property has multiple types or the type is not
70cdf0e10cSrcweir            known, <strong>but not an <atom>any</atom></strong>, then
71cdf0e10cSrcweir            <const>void</const> must be returned.</p>
72cdf0e10cSrcweir     */
73cdf0e10cSrcweir    type Type;
74cdf0e10cSrcweir
75cdf0e10cSrcweir    //-------------------------------------------------------------------------
76cdf0e10cSrcweir
77cdf0e10cSrcweir    /** This field may contain zero or more constants of the
78cdf0e10cSrcweir        <type>PropertyAttribute</type> constants group.
79cdf0e10cSrcweir     */
80cdf0e10cSrcweir    short Attributes;
81cdf0e10cSrcweir
82*a5f4f399SMatthias Seidel    //-------------------------------------------------------------------------
83*a5f4f399SMatthias Seidel
84cdf0e10cSrcweir};
85cdf0e10cSrcweir
86cdf0e10cSrcweir//=============================================================================
87cdf0e10cSrcweir
88cdf0e10cSrcweir}; }; }; };
89cdf0e10cSrcweir
90cdf0e10cSrcweir#endif
91