Skip to main content
summaryrefslogtreecommitdiffstats
blob: 74eab3a0028e6d440ba5bb8c56d85ddfb99194b6 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
/*******************************************************************************
 * Copyright (c) 2007, 2008 Oracle. All rights reserved.
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License v1.0, which accompanies this distribution
 * and is available at http://www.eclipse.org/legal/epl-v10.html.
 * 
 * Contributors:
 *     Oracle - initial API and implementation
 ******************************************************************************/
package org.eclipse.jpt.utility.model.listener;

import org.eclipse.jpt.utility.model.event.ListChangeEvent;

/**
 * A "list change" event gets fired whenever a model changes a "bound"
 * list. You can register a ListChangeListener with a source
 * model so as to be notified of any bound list updates.
 * 
 * Provisional API: This interface is part of an interim API that is still
 * under development and expected to change significantly before reaching
 * stability. It is available at this early stage to solicit feedback from
 * pioneering adopters on the understanding that any code that uses this API
 * will almost certainly be broken (repeatedly) as the API evolves.
 */
public interface ListChangeListener extends ChangeListener {

	/**
	 * This method gets called when items are added to a bound list.
	 * 
	 * @param event A ListChangeEvent describing the event source,
	 * the list that changed, the items that were added, and the index
	 * at which the items were added.
	 */
	void itemsAdded(ListChangeEvent event);

	/**
	 * This method gets called when items are removed from a bound list.
	 * 
	 * @param event A ListChangeEvent describing the event source,
	 * the list that changed, the items that were removed, and the index
	 * at which the items were removed.
	 */
	void itemsRemoved(ListChangeEvent event);

	/**
	 * This method gets called when items in a bound list are replaced.
	 * 
	 * @param event A ListChangeEvent describing the event source,
	 * the list that changed, the items that were added, the items that were
	 * replaced, and the index at which the items were replaced.
	 */
	void itemsReplaced(ListChangeEvent event);

	/**
	 * This method gets called when items in a bound list are moved.
	 * 
	 * @param event A ListChangeEvent describing the event source,
	 * the list that changed, and the indices of where items were moved
	 * from and to.
	 */
	void itemsMoved(ListChangeEvent event);

	/**
	 * This method gets called when a bound list is cleared.
	 * 
	 * @param event A ListChangeEvent object describing the event source 
	 * and the list that changed.
	 */
	void listCleared(ListChangeEvent event);

	/**
	 * This method gets called when a bound list is changed in a manner
	 * that is not easily characterized by the other methods in this interface.
	 * 
	 * @param event A ListChangeEvent object describing the event source 
	 * and the list that changed.
	 */
	void listChanged(ListChangeEvent event);

}

Back to the top