Java tutorial
/* *\ ** ||//| \|| //\\'|| ||||| \|| //|__| ** ** | '| '( | '|\ '|| | | '|| '|/\| '|| '|| '|\ '|| | ,---, ** ** |__|\__\|__|'|__| \__\/__/'|__,/\'__||__||__|'|__| \__\/__| ** ** ** ** Knowing Framework ** ** Apache License - http://www.apache.org/licenses/ ** ** LMU Munich - Database Systems Group ** ** http://www.dbs.ifi.lmu.de/ ** \* */ package de.lmu.ifi.dbs.knowing.debug.ui.editor; import org.eclipse.jface.viewers.ArrayContentProvider; import org.eclipse.jface.viewers.TableViewer; import org.eclipse.jface.viewers.TableViewerColumn; import org.eclipse.swt.SWT; import org.eclipse.swt.widgets.Composite; import de.lmu.ifi.dbs.knowing.debug.ui.provider.WorkbenchTableLabelProvider; /** * * @author Nepomuk Seiler * @version 0.1 * @since 2012-04-18 * */ public class ParameterTableViewer extends TableViewer { private static final String[] columns = new String[] { "Key", "Value" }; private static final int[] width = new int[] { 250, 450 }; public ParameterTableViewer(Composite parent, int style) { super(parent, style); init(); } private void init() { initColumns(); initProvider(); } private void initColumns() { getTable().setHeaderVisible(true); getTable().setLinesVisible(true); for (int i = 0; i < columns.length; i++) { TableViewerColumn viewerColumn = new TableViewerColumn(this, SWT.LEAD); // Kopfzeile und Breite der jeweiligen Spalten festlegen viewerColumn.getColumn().setText(columns[i]); viewerColumn.getColumn().setWidth(width[i]); // Spaltengroesse laesst sich zur Laufzeit aendern viewerColumn.getColumn().setResizable(true); // Spalten lassen sich untereinander verschieben viewerColumn.getColumn().setMoveable(true); if (columns[i].equals("Value")) viewerColumn.setEditingSupport(new ParameterEditingSupport(this)); } } private void initProvider() { setContentProvider(new ArrayContentProvider()); setLabelProvider(new WorkbenchTableLabelProvider()); } }