78
|
1 /*******************************************************************************
|
|
2 * Copyright (c) 2006, 2007 IBM Corporation and others.
|
|
3 * All rights reserved. This program and the accompanying materials
|
|
4 * are made available under the terms of the Eclipse Public License v1.0
|
|
5 * which accompanies this distribution, and is available at
|
|
6 * http://www.eclipse.org/legal/epl-v10.html
|
|
7 *
|
|
8 * Contributors:
|
|
9 * IBM Corporation - initial API and implementation
|
|
10 *******************************************************************************/
|
|
11
|
|
12 module org.eclipse.core.internal.databinding.observable.tree.IOrderedTreeProvider;
|
81
|
13 import org.eclipse.core.internal.databinding.observable.tree.TreePath;
|
78
|
14
|
|
15 import java.lang.all;
|
|
16
|
|
17 import org.eclipse.core.databinding.observable.Realm;
|
|
18 import org.eclipse.core.databinding.observable.list.IObservableList;
|
|
19
|
|
20 /**
|
|
21 * Objects that implement this interface are capable of describing a tree by
|
|
22 * returning the list of children of any given element in the tree.
|
|
23 *
|
|
24 * @since 3.3
|
|
25 */
|
|
26 public interface IOrderedTreeProvider {
|
|
27 /**
|
|
28 * Returns the children of the given element, or null if the element is a
|
|
29 * leaf node. The caller of this method is expected to dispose the result
|
|
30 * list when it is no longer needed.
|
|
31 *
|
|
32 * @param element
|
|
33 * the tree path of the element to query
|
|
34 * @return the children of the given element, or null if the element is a
|
|
35 * leaf node
|
|
36 */
|
|
37 IObservableList createChildList(TreePath element);
|
|
38
|
|
39 /**
|
|
40 * @return the realm shared by all child lists
|
|
41 */
|
|
42 Realm getRealm();
|
|
43 }
|