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#ifndef __com_sun_star_beans_XIntroTest_idl__
28#define __com_sun_star_beans_XIntroTest_idl__
29
30#ifndef __com_sun_star_uno_XInterface_idl__
31#include <com/sun/star/uno/XInterface.idl>
32#endif
33
34#ifndef __com_sun_star_beans_Property_idl__
35#include <com/sun/star/beans/Property.idl>
36#endif
37
38#ifndef __com_sun_star_beans_PropertyValue_idl__
39#include <com/sun/star/beans/PropertyValue.idl>
40#endif
41
42#ifndef __com_sun_star_uno_TypeClass_idl__
43#include <com/sun/star/uno/TypeClass.idl>
44#endif
45
46//=============================================================================
47
48module com { module sun { module star { module beans {
49
50 published interface XPropertyChangeListener;
51 published interface XPropertiesChangeListener;
52
53//=============================================================================
54/** This is a test interface for introspection.
55
56	@deprecated
57*/
58published interface XIntroTest: com::sun::star::uno::XInterface
59{
60	//-------------------------------------------------------------------------
61	/**	contains the ID-String of the implementation.
62	 */
63	[attribute] string	ObjectName;
64
65	//-------------------------------------------------------------------------
66	/**	contains the first name of a person.
67	 */
68	[readonly, attribute] string	FirstName;
69
70	//-------------------------------------------------------------------------
71	/**	contains the last name of a person.
72	 */
73	[readonly, attribute] string	LastName;
74
75	//-------------------------------------------------------------------------
76	/**	contains the age of a person.
77	 */
78	[readonly, attribute] short		Age;
79
80	//-------------------------------------------------------------------------
81	/**	contains the number of children person has.
82	 */
83	[attribute] short				ChildrenCount;
84
85	//-------------------------------------------------------------------------
86	/**	contains a struct of type <type>Property</type>.
87	 */
88	[attribute] com::sun::star::beans::Property			FirstStruct;
89
90	//-------------------------------------------------------------------------
91	/**	contains a struct of type <type>PropertyValue</type>.
92	 */
93	[attribute] com::sun::star::beans::PropertyValue	SecondStruct;
94
95	//-------------------------------------------------------------------------
96	/** output method.
97	*/
98	void writeln( [in] string Text );
99
100	//-------------------------------------------------------------------------
101	/** ...
102	*/
103	long getDroenk();
104
105	//-------------------------------------------------------------------------
106	/** gets another object with this interface.
107	*/
108	com::sun::star::beans::XIntroTest getIntroTest();
109
110	//-------------------------------------------------------------------------
111	/** !!! No property, because parameter exists
112	*/
113	long getUps( [in] long l );
114
115	//-------------------------------------------------------------------------
116	/** ...
117	*/
118	void setDroenk( [in] long l );
119
120	//-------------------------------------------------------------------------
121	/** ...
122	*/
123	short getBla();
124
125	//-------------------------------------------------------------------------
126	/** !!! Not the set method for property Bla, because param type != return type.
127	*/
128	void setBla( [in] long n );
129
130	//-------------------------------------------------------------------------
131	/** ...
132	*/
133	short getBlub();
134
135	//-------------------------------------------------------------------------
136	/** ...
137	*/
138	void setBlub( [in] short n );
139
140	//-------------------------------------------------------------------------
141	/** ...
142	*/
143	short getGulp();
144
145	//-------------------------------------------------------------------------
146	/** !!! Not the set method for property Gulp, because return type != void.
147	*/
148	short setGulp( [in] short n );
149
150	//-------------------------------------------------------------------------
151	/** ...
152	*/
153	com::sun::star::uno::TypeClass getTypeClass( [in] short n );
154
155	//-------------------------------------------------------------------------
156	/** ...
157	*/
158	void setTypeClass( [in] com::sun::star::uno::TypeClass t,
159			 [in] double d1,
160			 [in] double d2 );
161
162	//-------------------------------------------------------------------------
163	sequence<string> getStrings();
164
165	//-------------------------------------------------------------------------
166	/** ...
167	*/
168	void setStrings( [in] sequence<string> Strings );
169
170	//-------------------------------------------------------------------------
171	/** ...
172	*/
173	void setStringsPerMethod( [in] sequence<string> Strings,
174			 [in] short n );
175
176	//-------------------------------------------------------------------------
177	sequence< sequence< sequence< short > > > getMultiSequence();
178
179	//-------------------------------------------------------------------------
180	/** ...
181	*/
182	void setMultiSequence( [in] sequence< sequence< sequence< short > > > Seq );
183
184	//-------------------------------------------------------------------------
185	/** adds a listener which is called, when one of the specified properties
186		changes its value.
187
188       <p>It is suggested to allow multiple registration of the same listener,
189	    thus for each time a listener is added, it has to be removed.
190	*/
191	[oneway] void addPropertiesChangeListener( [in] sequence< string > PropertyNames,
192			 [in] XPropertiesChangeListener Listener );
193
194	//-------------------------------------------------------------------------
195	/** removes a listener.
196
197       <p>It is suggested to allow multiple registration of the same listener,
198	    thus for each time a listener is added, it has to be removed.
199	*/
200	[oneway] void removePropertiesChangeListener( [in] XPropertiesChangeListener Listener );
201
202};
203
204//=============================================================================
205
206}; }; }; };
207
208#endif
209