Example usage for org.eclipse.jface.viewers TableViewerColumn TableViewerColumn

List of usage examples for org.eclipse.jface.viewers TableViewerColumn TableViewerColumn

Introduction

In this page you can find the example usage for org.eclipse.jface.viewers TableViewerColumn TableViewerColumn.

Prototype

public TableViewerColumn(TableViewer viewer, TableColumn column) 

Source Link

Document

Creates a new viewer column for the given TableViewer on the given TableColumn .

Usage

From source file:de.topicmapslab.kuria.swtgenerator.table.TableGenerator.java

License:Apache License

private void generateColumns(Class<?> clazz, TableViewer tableViewer) {
    Table table = tableViewer.getTable();
    ITableBinding tb = bindingContainer.getTableBinding(clazz);
    TableColumnLayout layout = (TableColumnLayout) table.getParent().getLayout();

    boolean firstCol = true;

    for (IColumnBinding cb : tb.getColumnBindings()) {

        TableColumn tc = new TableColumn(table, 0);
        tc.setText(bindingContainer.getLabelProvider().getLabel(cb.getColumnTitle()));
        tc.setWidth(50);/*from w w w.  j a va 2 s. com*/
        layout.setColumnData(tc, new ColumnWeightData(1));

        TableViewerColumn column = new TableViewerColumn(tableViewer, tc);
        column.setLabelProvider(new KuriaColumnLabelProvider(cb));

        // listener registers to column haeder clicks and sets on click 
        ColumnViewerSorter sorter = new ColumnViewerSorter(tableViewer, column, cb);
        if (firstCol) {
            // set initial sort to first column
            sorter.setSorter(sorter, ColumnViewerSorter.ASC);
            firstCol = false;
        }
    }

    table.setHeaderVisible(true);
}

From source file:de.topicmapslab.onotoa.wordlisteditor.editor.WordListEditor.java

License:Open Source License

/**
 * Creates the table viewer and columns.
 * /*w  w w  .  j a  v  a 2 s.com*/
 * @param table
 *            the table which will be used by the wrapper
 */
private void initTable(final Table table) {

    TableColumnLayout layout = (TableColumnLayout) table.getParent().getLayout();
    table.setLinesVisible(true);
    table.setHeaderVisible(true);

    table.setMenu(new Menu(table));

    table.addKeyListener(new KeyAdapter() {
        /**
         * {@inheritDoc}
         */
        @Override
        public void keyPressed(KeyEvent e) {
            if ((e.keyCode == (int) 'c') && ((e.stateMask & SWT.CTRL) != 0)) {
                Clipboard clipboard = new Clipboard(e.widget.getDisplay());

                StringBuilder builder = new StringBuilder();

                String lineSeparator = System.getProperty("line.separator");
                IStructuredSelection sel = (IStructuredSelection) viewer.getSelection();

                Iterator<?> it = sel.iterator();
                while (it.hasNext()) {
                    Word w = (Word) it.next();
                    builder.append("\"");
                    builder.append(w.getWord());
                    builder.append("\"");
                    builder.append(";");
                    builder.append(w.getType().getName());
                    if (it.hasNext()) {
                        builder.append(lineSeparator);
                    }
                }
                clipboard.setContents(new Object[] { builder.toString() },
                        new Transfer[] { TextTransfer.getInstance() });

                clipboard.dispose();
            }
        }
    });

    viewer = new CheckboxTableViewer(table);
    viewer.setContentProvider(ArrayContentProvider.getInstance());
    viewer.addSelectionChangedListener(new ISelectionChangedListener() {

        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            removeButton.setEnabled(viewer.getCheckedElements().length != 0);
        }
    });

    ColumnViewerEditorActivationStrategy actSupport = new ColumnViewerEditorActivationStrategy(viewer) {
        protected boolean isEditorActivationEvent(ColumnViewerEditorActivationEvent event) {
            return event.eventType == ColumnViewerEditorActivationEvent.TRAVERSAL
                    || event.eventType == ColumnViewerEditorActivationEvent.MOUSE_CLICK_SELECTION
                    || (event.eventType == ColumnViewerEditorActivationEvent.KEY_PRESSED
                            && event.keyCode == SWT.CR)
                    || event.eventType == ColumnViewerEditorActivationEvent.PROGRAMMATIC;
        }
    };

    TableViewerEditor.create(viewer, null, actSupport,
            ColumnViewerEditor.TABBING_HORIZONTAL | ColumnViewerEditor.TABBING_MOVE_TO_ROW_NEIGHBOR
                    | ColumnViewerEditor.TABBING_VERTICAL | ColumnViewerEditor.KEYBOARD_ACTIVATION);

    // word column
    TableViewerColumn tvc = new TableViewerColumn(viewer, SWT.NONE);
    layout.setColumnData(tvc.getColumn(), new ColumnWeightData(1));
    tvc.getColumn().setText("Word");
    tvc.setLabelProvider(new CellLabelProvider() {

        @Override
        public void update(ViewerCell cell) {
            cell.setText(((Word) cell.getElement()).getWord());
        }
    });

    tvc.setEditingSupport(new EditingSupport(viewer) {

        @Override
        protected void setValue(Object element, Object value) {
            WordListContainer wlc = (WordListContainer) viewer.getInput();

            Word w = (Word) element;
            if (w.getWord().equals(value))
                return;

            if (wlc.containsWord((String) value)) {
                MessageDialog.openInformation(table.getShell(), "Word already entered",
                        "The word <" + value + "> was already entered");
                return;
            }

            AbstractCommand cmd = null;
            cmd = new ModifyWordCommand(w, (String) value);
            commandStack.execute(cmd);
            viewer.refresh(element);

        }

        @Override
        protected Object getValue(Object element) {
            Word w = (Word) element;
            return w.getWord();
        }

        @Override
        protected CellEditor getCellEditor(Object element) {
            return new TextCellEditor(table);
        }

        @Override
        protected boolean canEdit(Object element) {
            return true;
        }
    });

    // create column sorter
    new AbstractColumnViewerSorter(viewer, tvc) {

        @Override
        public String getText(Object element) {
            return ((Word) element).getWord();
        }
    };

    // type column
    tvc = new TableViewerColumn(viewer, SWT.NONE);
    tvc.getColumn().setText("Type");
    layout.setColumnData(tvc.getColumn(), new ColumnWeightData(1));
    tvc.setLabelProvider(new CellLabelProvider() {

        @Override
        public void update(ViewerCell cell) {
            String name = ((Word) cell.getElement()).getType().getName();
            cell.setText(name);
            cell.setImage(ImageProvider.getImageOfKindOfTopic(KindOfTopicType.getByName(name)));

        }
    });
    tvc.setEditingSupport(new EditingSupport(viewer) {
        final String[] ITEMS = { KindOfTopicType.TOPIC_TYPE.getName(),
                KindOfTopicType.OCCURRENCE_TYPE.getName(), KindOfTopicType.NAME_TYPE.getName(),
                KindOfTopicType.ROLE_TYPE.getName(), KindOfTopicType.ASSOCIATION_TYPE.getName(),
                KindOfTopicType.NO_TYPE.getName() };

        @Override
        protected void setValue(Object element, Object value) {
            int val = (Integer) value;
            // jump from scope to no type index
            if (val == 5)
                val = 6;

            KindOfTopicType type = KindOfTopicType.get(val);

            WordListContainer wlc = (WordListContainer) viewer.getInput();
            Word w = (Word) element;

            AbstractCommand cmd = null;
            if (wlc.contains(w)) {
                cmd = new ModifyWordTypeCommand((Word) element, type);
                commandStack.execute(cmd);
                viewer.refresh(element);
            } else {
                cmd = new AddWordCommand(wlc, w.getWord(), type);
                commandStack.execute(cmd);
                viewer.refresh();
            }
        }

        @Override
        protected Object getValue(Object element) {
            int val = ((Word) element).getType().getValue();
            // switching from scope to no type
            if (val == 6)
                val = 5;
            return val;
        }

        @Override
        protected CellEditor getCellEditor(Object element) {
            ComboBoxCellEditor comboBoxCellEditor = new ComboBoxCellEditor(table, ITEMS, SWT.READ_ONLY);
            return comboBoxCellEditor;
        }

        @Override
        protected boolean canEdit(Object element) {
            return true;
        }
    });

    // create column sorter
    new AbstractColumnViewerSorter(viewer, tvc) {

        @Override
        public String getText(Object element) {
            if (((WordListContainer) viewer.getInput()).contains(element))
                return ((Word) element).getType().getName();
            // hack so hopefully the new element is always the last
            else
                return "zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzZ";
        }
    };

    tvc = new TableViewerColumn(viewer, SWT.NONE);
    layout.setColumnData(tvc.getColumn(), new ColumnWeightData(2));
    tvc.getColumn().setText("Comment");
    tvc.setLabelProvider(new CellLabelProvider() {

        @Override
        public void update(ViewerCell cell) {
            String tmp = ((Word) cell.getElement()).getComment();
            if (tmp == null)
                tmp = "";
            cell.setText(tmp);
        }
    });

    tvc.setEditingSupport(new EditingSupport(viewer) {

        @Override
        protected void setValue(Object element, Object value) {
            AbstractCommand cmd = null;
            cmd = new ModifyWordCommentCommand((Word) element, (String) value);
            commandStack.execute(cmd);
            viewer.refresh(element);

        }

        @Override
        protected Object getValue(Object element) {
            String tmp = ((Word) element).getComment();
            if (tmp == null)
                return "";
            return tmp;
        }

        @Override
        protected CellEditor getCellEditor(Object element) {
            return new TextCellEditor(table);
        }

        @Override
        protected boolean canEdit(Object element) {
            return true;
        }
    });
}

From source file:de.topicmapslab.tmcledit.model.views.widgets.AnnotationWidget.java

License:Open Source License

private void createTable() {
    Composite comp = (toolkit == null) ? new Composite(this, SWT.NONE) : toolkit.createComposite(this);
    TableColumnLayout layout = new TableColumnLayout();
    comp.setLayout(layout);// w w  w  . j a va 2  s.  c  om
    comp.setLayoutData(new GridData(GridData.FILL_BOTH));

    Table table = null;
    if (toolkit != null) {
        table = toolkit.createTable(comp, SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION);
    } else {
        table = new Table(comp, SWT.BORDER);
    }
    table.setHeaderVisible(true);

    viewer = new TableViewer(table);
    viewer.setColumnProperties(new String[] { "key", "value" });
    viewer.setLabelProvider(new AnnotationLabelProvider());
    viewer.setContentProvider(new ArrayContentProvider());
    // viewer.setCellEditors(new CellEditor[] { new TextCellEditor(table),
    // new TextCellEditor(table) });
    viewer.addDoubleClickListener(new IDoubleClickListener() {

        public void doubleClick(DoubleClickEvent event) {
            editAnnotation();
        }
    });
    viewer.addSelectionChangedListener(new ISelectionChangedListener() {

        public void selectionChanged(SelectionChangedEvent event) {
            if (!(event.getSelection() instanceof IStructuredSelection))
                return;
            IStructuredSelection sel = (IStructuredSelection) event.getSelection();

            if (sel.isEmpty())
                removeButton.setEnabled(false);
            else
                removeButton.setEnabled(true);

        }
    });

    TableViewerColumn tvc = new TableViewerColumn(viewer, SWT.NONE);
    tvc.setLabelProvider(new KeyLabelProvider());
    tvc.setEditingSupport(new KeyEditingSupport(viewer));
    TableColumn tc = tvc.getColumn();
    tc.setText("Key");
    layout.setColumnData(tc, new ColumnWeightData(1));

    tvc = new TableViewerColumn(viewer, SWT.NONE);
    tvc.setLabelProvider(new ValueLabelProvider());
    tvc.setEditingSupport(new ValueEditingSupport(viewer));
    tc = tvc.getColumn();
    tc.setText("Value");
    layout.setColumnData(tc, new ColumnWeightData(1));

    if (model != null)
        viewer.setInput(model.getAnnotations());
}

From source file:de.tuilmenau.ics.fog.eclipse.ui.views.MarkerView.java

License:Open Source License

private void createColumns() {
    for (int i = 0; i < Math.min(COLUMN_TITLES.length, COLUMN_SIZE.length); i++) {
        TableViewerColumn column = new TableViewerColumn(viewer, SWT.NONE);
        column.getColumn().setText(COLUMN_TITLES[i]);
        column.getColumn().setWidth(COLUMN_SIZE[i]);
        column.getColumn().setResizable(true);
        column.getColumn().setMoveable(true);

        // Setting the right sorter
        column.getColumn().addSelectionListener(new SelectionAdapter() {
            @Override/*from w  w  w . ja  v  a2  s  . co m*/
            public void widgetSelected(SelectionEvent event) {
                if (event.widget instanceof TableColumn) {
                    TableColumn column = (TableColumn) event.widget;

                    int dir = viewer.getTable().getSortDirection();

                    if (viewer.getTable().getSortColumn() == column) {
                        dir = (dir == SWT.UP) ? SWT.DOWN : SWT.UP;
                    } else {
                        dir = SWT.DOWN;
                    }

                    tableSorter.setSorting(column, dir);
                    viewer.getTable().setSortColumn(column);
                    viewer.getTable().setSortDirection(dir);
                    updateView();
                }
            }
        });

    }

    Table table = viewer.getTable();
    table.setHeaderVisible(true);
    table.setLinesVisible(true);
}

From source file:de.uniluebeck.itm.spyglass.gui.configuration.PluginManagerPreferencePage.java

License:Open Source License

private void createPluginTableViewer(final Composite parent) {

    final int style = SWT.MULTI | SWT.BORDER | SWT.H_SCROLL | SWT.V_SCROLL | SWT.FULL_SELECTION;

    pluginTableViewer = new TableViewer(parent, style);

    TableViewerColumn column;//from w ww.  ja  va 2  s  .  c  om

    column = new TableViewerColumn(pluginTableViewer, SWT.NONE);
    column.getColumn().setWidth(130);
    column.getColumn().setText(COLUMN_CATEGORY);
    column.setLabelProvider(new CategoryLabelProvider());
    column.setEditingSupport(new CategoryEditing(pluginTableViewer));

    column = new TableViewerColumn(pluginTableViewer, SWT.NONE);
    column.getColumn().setWidth(130);
    column.getColumn().setText(COLUMN_TYPE);
    column.setLabelProvider(new TypeLabelProvider());
    column.setEditingSupport(new TypeEditing(pluginTableViewer));

    column = new TableViewerColumn(pluginTableViewer, SWT.NONE);
    column.getColumn().setWidth(140);
    column.getColumn().setText(COLUMN_NAME);
    column.setLabelProvider(new NameLabelProvider());
    column.setEditingSupport(new NameEditing(pluginTableViewer));

    column = new TableViewerColumn(pluginTableViewer, SWT.NONE);
    column.getColumn().setWidth(50);
    column.getColumn().setText(COLUMN_ACTIVE);
    column.getColumn().setResizable(false);
    column.setLabelProvider(new ActiveLabelProvider());
    column.setEditingSupport(new ActiveEditing(pluginTableViewer));

    column = new TableViewerColumn(pluginTableViewer, SWT.NONE);
    column.getColumn().setWidth(50);
    column.getColumn().setText(COLUMN_VISIBLE);
    column.getColumn().setResizable(false);
    column.setLabelProvider(new VisibleLabelProvider());
    column.setEditingSupport(new VisibleEditing(pluginTableViewer));

    pluginTableViewer.addSelectionChangedListener(new ISelectionChangedListener() {

        @Override
        public void selectionChanged(final SelectionChangedEvent e) {
            final IStructuredSelection selection = (IStructuredSelection) e.getSelection();
            updateButtons(selection);
        }

    });

    pluginTableViewer.getTable().setLinesVisible(true);
    pluginTableViewer.getTable().setHeaderVisible(true);

    pluginTableViewer.setContentProvider(pluginTableContentProvider);
    pluginTableViewer.setInput(spyglass);

}

From source file:de.uniluebeck.itm.spyglass.gui.databinding.StringFormatter.java

License:Open Source License

public void addStringFormatterFields(final Composite parent, final int gridHorizontalSpan) {

    this.parent = parent;

    {//from w ww  .j av a 2s.  c om
        label3 = new Label(parent, SWT.NONE);
        label3.setText("Common string formatter");
    }
    {
        final GridData defaultStringFmtLData = new GridData();
        defaultStringFmtLData.horizontalSpan = gridHorizontalSpan - 1;
        defaultStringFmtLData.horizontalAlignment = GridData.FILL;
        defaultStringFmtLData.verticalAlignment = GridData.BEGINNING;
        defaultStringFmtLData.grabExcessHorizontalSpace = true;
        defaultStringFmt = new Text(parent, SWT.BORDER);
        defaultStringFmt.setLayoutData(defaultStringFmtLData);

    }
    {
        final GridData tableLData = new GridData();
        tableLData.horizontalSpan = gridHorizontalSpan;
        tableLData.grabExcessHorizontalSpace = true;
        tableLData.horizontalAlignment = GridData.FILL;
        tableLData.verticalAlignment = GridData.FILL;
        tableLData.grabExcessVerticalSpace = true;
        tableLData.heightHint = 27;
        table = new TableViewer(parent, SWT.FULL_SELECTION);
        table.getControl().setLayoutData(tableLData);

    }
    {
        columnTypes = new TableViewerColumn(table, SWT.NONE);
        columnTypes.getColumn().setWidth(50);
        columnTypes.getColumn().setText("Type");

        // Sort by semantic tyoe
        table.getTable().setSortColumn(columnTypes.getColumn());
        table.getTable().setSortDirection(SWT.DOWN);
        table.getTable().setLinesVisible(true);
        table.getTable().setHeaderVisible(true);

    }
    {
        columnFormatString = new TableViewerColumn(table, SWT.NONE);
        columnFormatString.getColumn().setWidth(200);
        columnFormatString.getColumn().setText("Format string");

    }
    {
        buttonComposite = new Composite(parent, SWT.NONE);
        buttonComposite.setLayout(new GridLayout(2, false));
        final GridData data = new GridData();
        data.horizontalSpan = gridHorizontalSpan;
        buttonComposite.setLayoutData(data);
    }
    {
        addEntry = new Button(buttonComposite, SWT.PUSH | SWT.CENTER);
        final GridData addEntryLData = new GridData();
        addEntryLData.verticalAlignment = GridData.BEGINNING;
        addEntryLData.horizontalAlignment = GridData.END;
        addEntryLData.widthHint = 100;
        addEntry.setLayoutData(addEntryLData);
        addEntry.setText("Add");
        addEntry.addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(final SelectionEvent evt) {
                addEntryWidgetSelected(evt);
            }
        });
    }
    {
        final GridData data = new GridData();
        data.widthHint = 100;
        delEntry = new Button(buttonComposite, SWT.PUSH | SWT.CENTER);
        delEntry.setLayoutData(data);
        delEntry.setText("Delete");
        delEntry.addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(final SelectionEvent evt) {
                delEntryWidgetSelected(evt);
            }
        });
    }
}

From source file:de.uniluebeck.itm.spyglass.plugin.nodesensorrange.NodeSensorRangePerNodeConfigurationComposite.java

License:Open Source License

public void addPerNodeConfigurationTable(final Composite parent) {

    this.parent = parent;

    {//from  www. j av a 2  s  .  c o m
        final GridData tableLData = new GridData();
        tableLData.horizontalSpan = 2;
        tableLData.grabExcessHorizontalSpace = true;
        tableLData.horizontalAlignment = GridData.FILL;
        tableLData.verticalAlignment = GridData.FILL;
        tableLData.grabExcessVerticalSpace = true;
        tableLData.heightHint = 100;

        table = new TableViewer(parent, SWT.FULL_SELECTION);
        table.getControl().setLayoutData(tableLData);
        table.getTable().setLinesVisible(true);
        table.getTable().setHeaderVisible(true);
    }
    {
        columnNodeId = new TableViewerColumn(table, SWT.LEFT);
        columnNodeId.getColumn().setWidth(80);
        columnNodeId.getColumn().setText("Node ID");

        // sort by node ID
        table.getTable().setSortColumn(columnNodeId.getColumn());
        table.getTable().setSortDirection(SWT.DOWN);
    }
    {
        columnLineWidth = new TableViewerColumn(table, SWT.LEFT);
        columnLineWidth.getColumn().setWidth(80);
        columnLineWidth.getColumn().setText("Line width");
        // editing support is set later on data binding
    }
    {
        columnLineColor = new TableViewerColumn(table, SWT.LEFT);
        columnLineColor.getColumn().setWidth(150);
        columnLineColor.getColumn().setText("Line color");
        // editing support is set later on data binding
    }
    {
        columnBackgroundColor = new TableViewerColumn(table, SWT.LEFT);
        columnBackgroundColor.getColumn().setWidth(150);
        columnBackgroundColor.getColumn().setText("Background color");
        // editing support is set later on data binding
    }
    {
        columnBackgroundAlpha = new TableViewerColumn(table, SWT.LEFT);
        columnBackgroundAlpha.getColumn().setWidth(120);
        columnBackgroundAlpha.getColumn().setText("Background alpha");
        // editing support is set later on data binding
    }
    {
        columnType = new TableViewerColumn(table, SWT.LEFT);
        columnType.getColumn().setWidth(50);
        columnType.getColumn().setText("Type");
        // editing support is set later on data binding
    }
    {
        columnButton = new TableViewerColumn(table, SWT.NONE);
        columnButton.getColumn().setWidth(50);
    }
    {
        buttonComposite = new Composite(parent, SWT.NONE);
        buttonComposite.setLayout(new GridLayout(2, false));
        final GridData data = new GridData();
        buttonComposite.setLayoutData(data);
    }
    {
        addEntry = new Button(buttonComposite, SWT.PUSH | SWT.CENTER);
        final GridData addEntryLData = new GridData();
        addEntryLData.verticalAlignment = GridData.BEGINNING;
        addEntryLData.horizontalAlignment = GridData.END;
        addEntryLData.widthHint = 100;
        addEntry.setLayoutData(addEntryLData);
        addEntry.setText("Add");
        addEntry.addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(final SelectionEvent evt) {
                clickedButtonAddEntry(evt);
            }
        });
    }
    {
        final GridData data = new GridData();
        data.widthHint = 100;
        delEntry = new Button(buttonComposite, SWT.PUSH | SWT.CENTER);
        delEntry.setLayoutData(data);
        delEntry.setText("Delete");
        delEntry.addSelectionListener(new SelectionAdapter() {
            @Override
            public void widgetSelected(final SelectionEvent evt) {
                clickedButtonDelEntry(evt);
            }
        });
    }

}

From source file:de.uniluebeck.itm.spyglass.plugin.simpleglobalinformation.SGIStringFormatter.java

License:Open Source License

/**
 * Adds fields to configure the {@link StatisticalInformationEvaluator}
 * //ww  w .j a v  a2s  .c  o m
 * @param parent
 *            the parent widget
 * @param gridHorizontalSpan
 *            the horizontal span of the underlying grid of the widget
 */
public void addStringFormatterFields(final Composite parent, final int gridHorizontalSpan) {

    this.parent = parent;

    {
        final GridData tableLData = new GridData();
        tableLData.horizontalSpan = gridHorizontalSpan;
        tableLData.grabExcessHorizontalSpace = true;
        tableLData.horizontalAlignment = GridData.FILL;
        tableLData.verticalAlignment = GridData.FILL;
        tableLData.grabExcessVerticalSpace = true;
        tableLData.heightHint = 27;
        table = new TableViewer(parent, SWT.FULL_SELECTION);
        table.getControl().setLayoutData(tableLData);

    }
    {
        columnTypes = new TableViewerColumn(table, SWT.NONE);
        columnTypes.getColumn().setWidth(50);
        columnTypes.getColumn().setText("Type");

        // Sort by semantic tyoe
        table.getTable().setSortColumn(columnTypes.getColumn());
        table.getTable().setSortDirection(SWT.DOWN);
        table.getTable().setLinesVisible(true);
        table.getTable().setHeaderVisible(true);

    }
    {
        columnDescription = new TableViewerColumn(table, SWT.NONE);
        columnDescription.getColumn().setWidth(200);
        columnDescription.getColumn().setText("Description");
    }
    {
        columnExpressionString = new TableViewerColumn(table, SWT.NONE);
        columnExpressionString.getColumn().setWidth(100);
        columnExpressionString.getColumn().setText("Expression");

    }
    {
        columnStatisticType = new TableViewerColumn(table, SWT.NONE);
        columnStatisticType.getColumn().setWidth(100);
        columnStatisticType.getColumn().setText("Operation");
    }
    {
        buttonComposite = new Composite(parent, SWT.NONE);
        buttonComposite.setLayout(new GridLayout(2, false));
        final GridData data = new GridData();
        data.horizontalSpan = gridHorizontalSpan;
        buttonComposite.setLayoutData(data);
    }
    {
        addEntry = new Button(buttonComposite, SWT.PUSH | SWT.CENTER);
        final GridData addEntryLData = new GridData();
        addEntryLData.verticalAlignment = GridData.BEGINNING;
        addEntryLData.horizontalAlignment = GridData.END;
        addEntryLData.widthHint = 100;
        addEntry.setLayoutData(addEntryLData);
        addEntry.setText("Add");
        addEntry.addSelectionListener(new SelectionAdapter() {
            @SuppressWarnings("synthetic-access")
            @Override
            public void widgetSelected(final SelectionEvent evt) {
                addEntryWidgetSelected(evt);
            }
        });
    }
    {
        final GridData data = new GridData();
        data.widthHint = 100;
        delEntry = new Button(buttonComposite, SWT.PUSH | SWT.CENTER);
        delEntry.setLayoutData(data);
        delEntry.setText("Delete");
        delEntry.addSelectionListener(new SelectionAdapter() {
            @SuppressWarnings("synthetic-access")
            @Override
            public void widgetSelected(final SelectionEvent evt) {
                delEntryWidgetSelected(evt);
            }
        });
    }
}

From source file:de.unistuttgart.ipvs.pmp.editor.ui.editors.ais.ServiceFeatureRGDetailsPage.java

License:Apache License

/**
 * Creates the resource group table/*from  w w w. ja  v a2s.  c o  m*/
 * 
 * @param parent
 *            parent {@link Composite}
 * @param toolkit
 *            {@link FormToolkit}
 * @return the created {@link TableViewer}
 */
private TableViewer createPSTable(Composite parent, FormToolkit toolkit) {
    // Use grid layout so that the table uses the whole screen width
    final GridData layoutData = new GridData();
    layoutData.horizontalAlignment = GridData.FILL;
    layoutData.grabExcessHorizontalSpace = true;
    layoutData.verticalAlignment = GridData.FILL;
    layoutData.grabExcessVerticalSpace = true;

    // Workaround for SWT-Bug needed
    // (https://bugs.eclipse.org/bugs/show_bug.cgi?id=215997)
    layoutData.widthHint = 1;

    this.psTableViewer = new TableViewer(parent, SWT.BORDER | SWT.FULL_SELECTION | SWT.MULTI);
    this.psTableViewer.setContentProvider(new RequiredPSContentProvider());
    this.psTableViewer.addDoubleClickListener(this);

    this.psTableDec = new ControlDecoration(this.psTableViewer.getControl(), SWT.TOP | SWT.LEFT);
    this.psTableDec.setImage(Images.IMG_DEC_FIELD_ERROR);

    // Disable the default tool tips
    this.psTableViewer.getTable().setToolTipText(""); //$NON-NLS-1$

    TooltipTableListener tooltipListener = new TooltipTableListener(this.psTableViewer, this.parentShell);

    this.psTableViewer.getTable().addListener(SWT.Dispose, tooltipListener);
    this.psTableViewer.getTable().addListener(SWT.KeyDown, tooltipListener);
    this.psTableViewer.getTable().addListener(SWT.MouseMove, tooltipListener);
    this.psTableViewer.getTable().addListener(SWT.MouseHover, tooltipListener);

    // The identifier column with the LabelProvider
    TableViewerColumn identifierViewerColumn = new TableViewerColumn(this.psTableViewer, SWT.NULL);
    identifierViewerColumn.getColumn().setText(I18N.general_identifier);
    identifierViewerColumn.setLabelProvider(new ColumnLabelProvider() {

        @Override
        public String getText(Object element) {
            return ((AISRequiredPrivacySetting) element).getIdentifier();
        }

        @Override
        public Image getImage(Object element) {
            AISRequiredPrivacySetting item = (AISRequiredPrivacySetting) element;
            if (!item.getIssues().isEmpty()) {
                return Images.ERROR16;
            }
            return null;
        }
    });
    this.identifierColumn = identifierViewerColumn.getColumn();

    // The value column with the LabelProvider
    TableViewerColumn valueViewerColumn = new TableViewerColumn(this.psTableViewer, SWT.NULL);
    valueViewerColumn.getColumn().setText(I18N.general_value);
    valueViewerColumn.setLabelProvider(new ColumnLabelProvider() {

        @Override
        public String getText(Object element) {
            if (((AISRequiredPrivacySetting) element) == null) {
                return ""; //$NON-NLS-1$
            }
            return ((AISRequiredPrivacySetting) element).getValue();
        }
    });

    this.valueColumn = valueViewerColumn.getColumn();

    // Define the table's view
    Table psTable = this.psTableViewer.getTable();
    psTable.setLayoutData(layoutData);
    psTable.setHeaderVisible(true);
    psTable.setLinesVisible(true);

    // SelectionListener to enable and disable the remove button
    this.psTableViewer.getTable().addSelectionListener(new SelectionListener() {

        @Override
        public void widgetSelected(SelectionEvent arg0) {
            if (ServiceFeatureRGDetailsPage.this.psTableViewer.getTable().getSelectionCount() > 0) {
                ServiceFeatureRGDetailsPage.this.removeButton.setEnabled(true);
            } else {
                ServiceFeatureRGDetailsPage.this.removeButton.setEnabled(false);
            }
        }

        @Override
        public void widgetDefaultSelected(SelectionEvent arg0) {
        }
    });

    markEmptyCells();
    return this.psTableViewer;
}

From source file:de.unistuttgart.ipvs.pmp.editor.ui.editors.internals.localetable.LocaleTable.java

License:Apache License

/**
 * Build a column using the given data//from  w  w  w.j  a v  a2s .  c om
 * 
 * @param text
 *            Title of the column
 * @param width
 *            Width of the column in pixel. If set to 0 or a negative value,
 *            the column will use all available width
 * @param labelProvider
 * @param editingSupport
 * @param columnLayout
 */
private TableViewerColumn buildColumn(String text, int width, CellLabelProvider labelProvider,
        EditingSupport editingSupport, TableColumnLayout columnLayout) {
    TableViewerColumn column = new TableViewerColumn(this.tableViewer, SWT.BORDER);

    final TableColumn control = column.getColumn();
    if (width <= 0) {
        columnLayout.setColumnData(control, new ColumnWeightData(1, true));
    } else {
        columnLayout.setColumnData(control, new ColumnPixelData(width, true));
    }

    control.setText(text);
    column.setLabelProvider(labelProvider);
    column.setEditingSupport(editingSupport);

    return column;

}