]> git.argeo.org Git - gpl/argeo-slc.git/blob - eclipse/plugins/org.argeo.slc.client.ui/src/org/argeo/slc/client/ui/views/ProcessParametersView.java
Fix drag & drop and begin implementation of test parameters.
[gpl/argeo-slc.git] / eclipse / plugins / org.argeo.slc.client.ui / src / org / argeo / slc / client / ui / views / ProcessParametersView.java
1 package org.argeo.slc.client.ui.views;
2
3 import java.util.ArrayList;
4 import java.util.List;
5
6 import org.eclipse.jface.viewers.IStructuredContentProvider;
7 import org.eclipse.jface.viewers.ITableLabelProvider;
8 import org.eclipse.jface.viewers.LabelProvider;
9 import org.eclipse.jface.viewers.TableViewer;
10 import org.eclipse.jface.viewers.TableViewerColumn;
11 import org.eclipse.jface.viewers.Viewer;
12 import org.eclipse.swt.SWT;
13 import org.eclipse.swt.graphics.Image;
14 import org.eclipse.swt.widgets.Composite;
15 import org.eclipse.swt.widgets.Table;
16 import org.eclipse.ui.part.ViewPart;
17
18 public class ProcessParametersView extends ViewPart {
19 public static final String ID = "org.argeo.slc.client.ui.processParametersView";
20
21 private TableViewer viewer;
22
23 private List<String[]> parameters = new ArrayList<String[]>();
24
25 public void createPartControl(Composite parent) {
26 viewer = new TableViewer(parent, SWT.MULTI | SWT.H_SCROLL
27 | SWT.V_SCROLL | SWT.FULL_SELECTION);
28 createColumns(viewer);
29
30 viewer.setLabelProvider(new ViewLabelProvider());
31 viewer.setContentProvider(new ViewContentProvider());
32 viewer.setInput(getViewSite());
33 }
34
35 // This will create the columns for the table
36 private void createColumns(TableViewer viewer) {
37
38 String[] titles = { "Attribute name", "value" };
39 int[] bounds = { 200, 200 };
40
41 for (int i = 0; i < titles.length; i++) {
42 TableViewerColumn column = new TableViewerColumn(viewer, SWT.NONE);
43 column.getColumn().setText(titles[i]);
44 column.getColumn().setWidth(bounds[i]);
45 column.getColumn().setResizable(true);
46 column.getColumn().setMoveable(true);
47 }
48 Table table = viewer.getTable();
49 table.setHeaderVisible(true);
50 table.setLinesVisible(true);
51 }
52
53 public void setFocus() {
54 viewer.getControl().setFocus();
55 }
56
57 // Inner Classes
58 protected class ViewContentProvider implements IStructuredContentProvider {
59 public void inputChanged(Viewer arg0, Object arg1, Object arg2) {
60 }
61
62 public void dispose() {
63 }
64
65 public Object[] getElements(Object obj) {
66 return parameters.toArray();
67 }
68 }
69
70 protected class ViewLabelProvider extends LabelProvider implements
71 ITableLabelProvider {
72 public String getColumnText(Object obj, int index) {
73 String[] param = (String[]) obj;
74 return param[index];
75 }
76
77 public Image getColumnImage(Object obj, int index) {
78 return null;
79 }
80
81 }
82 }