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_ucb_ContentEvent_idl__
24#define __com_sun_star_ucb_ContentEvent_idl__
25
26#ifndef __com_sun_star_lang_EventObject_idl__
27#include <com/sun/star/lang/EventObject.idl>
28#endif
29
30//=============================================================================
31
32module com { module sun { module star { module ucb {
33
34 published interface XContent;
35 published interface XContentIdentifier;
36
37//=============================================================================
38/** A structure for content events.
39*/
40published struct ContentEvent: com::sun::star::lang::EventObject
41{
42	//-------------------------------------------------------------------------
43	/** The action.
44
45		<p>The value can be one of the <type>ContentAction</type> constants.
46	*/
47	long Action;
48
49	//-------------------------------------------------------------------------
50	/** The content to that the action is related (e.g., the content that was
51	    just physically destroyed, the content that was just inserted into a
52		folder content).
53
54		<p>This member must be filled as follows:
55
56		<table border=1>
57		<tr align=left>
58			<td><member>ContentAction::INSERTED</member></td>
59			<td>The content inserted into a folder</td>
60		</tr>
61		<tr align=left>
62			<td><member>ContentAction::REMOVED</member></td>
63			<td>The content removed from a folder</td>
64		</tr>
65		<tr align=left>
66			<td><member>ContentAction::DELETED</member></td>
67			<td>The deleted content</td>
68		</tr>
69		<tr align=left>
70			<td><member>ContentAction::EXCHANGED</member></td>
71			<td>The exchanged content (that already has the new content id)</td>
72		</tr>
73		</table>
74	*/
75	XContent Content;
76
77	//-------------------------------------------------------------------------
78	/** A content identifier, which must be filled according to the action
79		notified (e.g., the id of the folder content into which another content
80		was inserted).
81
82		<p>This member must be filled as follows:
83
84		<table border=1>
85		<tr align=left>
86			<td><member>ContentAction::INSERTED</member></td>
87			<td>Id of the folder the content was inserted into</td>
88		</tr>
89		<tr align=left>
90			<td><member>ContentAction::REMOVED</member></td>
91			<td>Id of the folder the content was removed from</td>
92		</tr>
93		<tr align=left>
94			<td><member>ContentAction::DELETED</member></td>
95			<td>Id of the deleted content</td>
96		</tr>
97		<tr align=left>
98			<td><member>ContentAction::EXCHANGED</member></td>
99			<td>Previous(!) id of the exchanged content</td>
100		</tr>
101		</table>
102	*/
103	XContentIdentifier Id;
104};
105
106//=============================================================================
107
108}; }; }; };
109
110#endif
111