Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'examples/org.eclipse.jface.snippets/Eclipse JFace Snippets/org/eclipse/jface/snippets/viewers/Snippet005TreeCustomMenu.java')
-rw-r--r--examples/org.eclipse.jface.snippets/Eclipse JFace Snippets/org/eclipse/jface/snippets/viewers/Snippet005TreeCustomMenu.java81
1 files changed, 54 insertions, 27 deletions
diff --git a/examples/org.eclipse.jface.snippets/Eclipse JFace Snippets/org/eclipse/jface/snippets/viewers/Snippet005TreeCustomMenu.java b/examples/org.eclipse.jface.snippets/Eclipse JFace Snippets/org/eclipse/jface/snippets/viewers/Snippet005TreeCustomMenu.java
index 46fd6404836..a238539e3b9 100644
--- a/examples/org.eclipse.jface.snippets/Eclipse JFace Snippets/org/eclipse/jface/snippets/viewers/Snippet005TreeCustomMenu.java
+++ b/examples/org.eclipse.jface.snippets/Eclipse JFace Snippets/org/eclipse/jface/snippets/viewers/Snippet005TreeCustomMenu.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2006 Tom Schindl and others.
+ * Copyright (c) 2006, 2013 Tom Schindl and others.
* 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
@@ -7,6 +7,7 @@
*
* Contributors:
* Tom Schindl - initial API and implementation
+ * Hendrik Still <hendrik.still@gammas.de> - bug 417676
*******************************************************************************/
package org.eclipse.jface.snippets.viewers;
@@ -28,63 +29,89 @@ import org.eclipse.swt.widgets.Shell;
/**
* Customized context menu based on TreeItem-Selection
- *
+ *
* @author Tom Schindl <tom.schindl@bestsolution.at>
*
*/
public class Snippet005TreeCustomMenu {
- private class MyContentProvider implements ITreeContentProvider {
-
- public Object[] getElements(Object inputElement) {
- return ((MyModel) inputElement).child.toArray();
+ private class MyContentProvider implements
+ ITreeContentProvider<MyModel, MyModel> {
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.eclipse.jface.viewers.IStructuredContentProvider#getElements(
+ * java.lang.Object)
+ */
+ public MyModel[] getElements(MyModel inputElement) {
+ MyModel[] myModels = new MyModel[inputElement.child.size()];
+ return inputElement.child.toArray(myModels);
}
- /* (non-Javadoc)
+ /*
+ * (non-Javadoc)
+ *
* @see org.eclipse.jface.viewers.IContentProvider#dispose()
*/
public void dispose() {
}
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse.jface.viewers.Viewer, java.lang.Object, java.lang.Object)
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.eclipse.jface.viewers.IContentProvider#inputChanged(org.eclipse
+ * .jface.viewers.Viewer, java.lang.Object, java.lang.Object)
*/
- public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
+ public void inputChanged(Viewer<? extends MyModel> viewer,
+ MyModel oldInput, MyModel newInput) {
}
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.ITreeContentProvider#getChildren(java.lang.Object)
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.eclipse.jface.viewers.ITreeContentProvider#getChildren(java.lang
+ * .Object)
*/
- public Object[] getChildren(Object parentElement) {
+ public MyModel[] getChildren(MyModel parentElement) {
return getElements(parentElement);
}
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.ITreeContentProvider#getParent(java.lang.Object)
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.eclipse.jface.viewers.ITreeContentProvider#getParent(java.lang
+ * .Object)
*/
- public Object getParent(Object element) {
+ public MyModel getParent(MyModel element) {
if (element == null) {
return null;
}
- return ((MyModel) element).parent;
+ return element.parent;
}
- /* (non-Javadoc)
- * @see org.eclipse.jface.viewers.ITreeContentProvider#hasChildren(java.lang.Object)
+ /*
+ * (non-Javadoc)
+ *
+ * @see
+ * org.eclipse.jface.viewers.ITreeContentProvider#hasChildren(java.lang
+ * .Object)
*/
- public boolean hasChildren(Object element) {
- return ((MyModel) element).child.size() > 0;
+ public boolean hasChildren(MyModel element) {
+ return element.child.size() > 0;
}
}
public class MyModel {
public MyModel parent;
-
- public ArrayList child = new ArrayList();
-
+ public ArrayList<MyModel> child = new ArrayList<MyModel>();
public int counter;
public MyModel(int counter, MyModel parent) {
@@ -94,7 +121,7 @@ public class Snippet005TreeCustomMenu {
public String toString() {
String rv = "Item ";
- if (parent != null) {
+ if( parent != null ) {
rv = parent.toString() + ".";
}
@@ -105,8 +132,8 @@ public class Snippet005TreeCustomMenu {
}
public Snippet005TreeCustomMenu(Shell shell) {
- final TreeViewer v = new TreeViewer(shell);
- v.setLabelProvider(new LabelProvider());
+ final TreeViewer<MyModel,MyModel> v = new TreeViewer<MyModel,MyModel>(shell);
+ v.setLabelProvider(new LabelProvider<MyModel>());
v.setContentProvider(new MyContentProvider());
v.setInput(createModel());

Back to the top