]> git.argeo.org Git - lgpl/argeo-commons.git/blob - org.argeo.eclipse.ui/src/org/argeo/eclipse/ui/AbstractTreeContentProvider.java
Merge remote-tracking branch 'origin/master' into v2.x
[lgpl/argeo-commons.git] / org.argeo.eclipse.ui / src / org / argeo / eclipse / ui / AbstractTreeContentProvider.java
1 package org.argeo.eclipse.ui;
2
3 import org.eclipse.jface.viewers.ITreeContentProvider;
4 import org.eclipse.jface.viewers.Viewer;
5
6 /**
7 * Tree content provider dealing with tree objects and providing reasonable
8 * defaults.
9 */
10 public abstract class AbstractTreeContentProvider implements
11 ITreeContentProvider {
12 private static final long serialVersionUID = 8246126401957763868L;
13
14 /** Does nothing */
15 public void dispose() {
16 }
17
18 /** Does nothing */
19 public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
20 }
21
22 public Object[] getChildren(Object element) {
23 if (element instanceof TreeParent) {
24 return ((TreeParent) element).getChildren();
25 }
26 return new Object[0];
27 }
28
29 public Object getParent(Object element) {
30 if (element instanceof TreeParent) {
31 return ((TreeParent) element).getParent();
32 }
33 return null;
34 }
35
36 public boolean hasChildren(Object element) {
37 if (element instanceof TreeParent) {
38 return ((TreeParent) element).hasChildren();
39 }
40 return false;
41 }
42 }