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:eu.esdihumboldt.hale.ui.scripting.mathematical.MathEditor.java

License:Open Source License

/**
 * Default constructor.//from www .  ja  va2s . co  m
 * 
 * @param parent the parent composite
 * @param script the script object
 */
public MathEditor(Composite parent, Script script) {
    this.script = script;

    composite = new Composite(parent, SWT.NONE);
    // left margin 5 for control decoration
    composite.setLayout(GridLayoutFactory.swtDefaults().margins(0, 0).create());

    // input field
    textField = new Text(composite, SWT.SINGLE | SWT.BORDER);
    textField.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).indent(7, 0).create());

    // control decoration
    decorator = new ControlDecoration(textField, SWT.LEFT | SWT.TOP, composite);
    // set initial status
    decorator.hide();
    // set image
    FieldDecoration fieldDecoration = FieldDecorationRegistry.getDefault()
            .getFieldDecoration(FieldDecorationRegistry.DEC_ERROR);
    decorator.setImage(fieldDecoration.getImage());

    textField.addModifyListener(new ModifyListener() {

        @Override
        public void modifyText(ModifyEvent e) {
            // update value
            String newValue = textField.getText();
            fireValueChanged(VALUE, currentValue, newValue);
            currentValue = newValue;

            validate();
        }
    });

    // variables
    Label label = new Label(composite, SWT.NONE);
    label.setText("Available variables (double click to insert)");
    label.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false));

    // variables table
    Composite tableComposite = new Composite(composite, SWT.NONE);
    tableComposite.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());
    TableColumnLayout columnLayout = new TableColumnLayout();
    tableComposite.setLayout(columnLayout);
    varTable = new TableViewer(tableComposite, SWT.BORDER | SWT.SINGLE | SWT.FULL_SELECTION);
    varTable.addFilter(new ViewerFilter() {

        @Override
        public boolean select(Viewer viewer, Object parentElement, Object element) {
            PropertyEntityDefinition def = (PropertyEntityDefinition) element;
            Class<?> binding = def.getDefinition().getPropertyType().getConstraint(Binding.class).getBinding();

            return BindingCondition.isCompatibleClass(Double.class, true, binding, true);
        }
    });
    TableViewerColumn column = new TableViewerColumn(varTable, SWT.NONE);
    columnLayout.setColumnData(column.getColumn(), new ColumnWeightData(1, false));
    varTable.setContentProvider(ArrayContentProvider.getInstance());
    varTable.setLabelProvider(new DefinitionLabelProvider(true, true) {

        /**
         * @see eu.esdihumboldt.hale.ui.common.definition.viewer.DefinitionLabelProvider#getText(java.lang.Object)
         */
        @Override
        public String getText(Object element) {
            return MathEditor.this.script.getVariableName((PropertyEntityDefinition) element);
        }
    });
    varTable.getTable().addMouseListener(new MouseAdapter() {

        /**
         * @see MouseAdapter#mouseDoubleClick(MouseEvent)
         */
        @Override
        public void mouseDoubleClick(MouseEvent e) {
            int index = varTable.getTable().getSelectionIndex();
            if (index >= 0) {
                String var = varTable.getTable().getItem(index).getText();
                textField.insert(var);
                textField.setFocus();
            }
        }
    });

    validate();
}

From source file:eu.esdihumboldt.hale.ui.util.selector.AbstractSelector.java

License:Open Source License

/**
 * Create a selector.//  w  ww  .ja v  a2 s .c  om
 * 
 * @param parent the parent composite
 * @param labelProvider the label provider for the selector
 * @param filters the filters for the selector, may be <code>null</code>
 */
public AbstractSelector(Composite parent, ILabelProvider labelProvider, ViewerFilter[] filters) {
    main = new Composite(parent, SWT.NONE);
    TableColumnLayout columnLayout = new TableColumnLayout();
    main.setLayout(columnLayout);

    // entity selection combo
    /*
     * Use MULTI selection so having an empty selection is possible on
     * Linux/GTK. Otherwise when the control gets the focus it will
     * automatically select the entry and launch the selection dialog. This
     * especially is a problem when a selector gets the focus automatically.
     */
    viewer = new TableViewer(main, SWT.BORDER | SWT.MULTI | SWT.FULL_SELECTION | SWT.NO_SCROLL);

    TableViewerColumn column = new TableViewerColumn(viewer, SWT.NONE);
    columnLayout.setColumnData(column.getColumn(), new ColumnWeightData(1, false));

    viewer.setContentProvider(ObjectContentProvider.getInstance());
    viewer.setLabelProvider(labelProvider);

    this.filters = filters;

    // initial selection
    Object select = NoObject.NONE;
    currentInput = select;
    viewer.setInput(select);

    viewer.addSelectionChangedListener(new ISelectionChangedListener() {

        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            if (event.getSelection().isEmpty()) {
                return;
            }

            AbstractViewerSelectionDialog<T, ?> dialog = createSelectionDialog(
                    Display.getCurrent().getActiveShell());
            dialog.setFilters(AbstractSelector.this.filters);
            if (dialog.open() == AbstractViewerSelectionDialog.OK) {
                T selected = dialog.getObject();
                if ((selected == null && currentInput == null)
                        || (selected != null && selected.equals(currentInput)))
                    return;
                if (selected != null) {
                    currentInput = selected;
                } else {
                    currentInput = NoObject.NONE;
                }
                viewer.setInput(currentInput);
                /*
                 * XXX Bug on Mac? - Viewer is not refreshed correctly until
                 * user clicks on the wizard. Manually refreshing, layouting
                 * the parent composite or calling
                 * forceActive/forceFocus/setActive on the Shell doesn't
                 * help. XXX is this fixed with TableColumnLayout?
                 */
            }
            viewer.setSelection(new StructuredSelection());

            // inform about the input change
            fireSelectionChange();
        }

    });
}

From source file:eu.esdihumboldt.hale.ui.views.properties.function.abstractfunction.AbstractFunctionParameterSection.java

License:Open Source License

/**
 * @see org.eclipse.ui.views.properties.tabbed.AbstractPropertySection#createControls(org.eclipse.swt.widgets.Composite,
 *      org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage)
 *//*from  w  w  w . j  a  va 2s  . c  om*/
@Override
public void createControls(Composite parent, TabbedPropertySheetPage aTabbedPropertySheetPage) {
    super.createControls(parent, aTabbedPropertySheetPage);

    Composite compparent = getWidgetFactory().createComposite(parent);
    compparent.setLayout(new FormLayout());

    Composite composite = getWidgetFactory().createComposite(compparent);
    TableColumnLayout columnLayout = new TableColumnLayout();
    composite.setLayout(columnLayout);
    FormData data = new FormData();
    data.width = 100;
    data.left = new FormAttachment(0, 0);
    data.right = new FormAttachment(100, -0);
    data.top = new FormAttachment(0, ITabbedPropertyConstants.VSPACE);
    data.bottom = new FormAttachment(100, -ITabbedPropertyConstants.VSPACE);
    composite.setLayoutData(data);

    tableViewer = new TableViewer(composite, SWT.FULL_SELECTION);
    Table table = tableViewer.getTable();
    table.setHeaderVisible(true);
    table.setLinesVisible(true);
    tableViewer.setContentProvider(ArrayContentProvider.getInstance());

    TableViewerColumn nameviewercol = new TableViewerColumn(tableViewer, SWT.NONE);
    TableColumn namecol = nameviewercol.getColumn();
    columnLayout.setColumnData(namecol, new ColumnWeightData(20));
    namecol.setText("Name");
    nameviewercol.setLabelProvider(new CellLabelProvider() {

        @Override
        public void update(ViewerCell cell) {
            cell.setText(((FunctionParameter) cell.getElement()).getName());
        }

    });

    TableViewerColumn lableviewercol = new TableViewerColumn(tableViewer, SWT.NONE);
    TableColumn lablecol = lableviewercol.getColumn();
    columnLayout.setColumnData(lablecol, new ColumnWeightData(20));
    lablecol.setText("Label");
    lableviewercol.setLabelProvider(new CellLabelProvider() {

        @Override
        public void update(ViewerCell cell) {
            cell.setText(((FunctionParameter) cell.getElement()).getDisplayName());
        }

    });

    TableViewerColumn occurenceviewercol = new TableViewerColumn(tableViewer, SWT.NONE);
    TableColumn occurencecol = occurenceviewercol.getColumn();
    columnLayout.setColumnData(occurencecol, new ColumnWeightData(10));
    occurencecol.setText("Occurence");
    occurenceviewercol.setLabelProvider(new CellLabelProvider() {

        @Override
        public void update(ViewerCell cell) {
            FunctionParameter cellparameter = ((FunctionParameter) cell.getElement());
            cell.setText(String.valueOf(cellparameter.getMinOccurrence()) + ".."
                    + (String.valueOf(cellparameter.getMaxOccurrence())));
        }

    });

    TableViewerColumn descriptionviewercol = new TableViewerColumn(tableViewer, SWT.NONE);
    TableColumn descriptioncol = descriptionviewercol.getColumn();
    columnLayout.setColumnData(descriptioncol, new ColumnWeightData(40));
    descriptioncol.setText("Description");
    descriptionviewercol.setLabelProvider(new CellLabelProvider() {

        @Override
        public void update(ViewerCell cell) {
            cell.setText(String.valueOf(((FunctionParameter) cell.getElement()).getDescription()));
        }

    });
}

From source file:eu.esdihumboldt.hale.ui.views.properties.function.AbstractFunctionTableSection.java

License:Open Source License

/**
 * @see org.eclipse.ui.views.properties.tabbed.AbstractPropertySection#createControls(org.eclipse.swt.widgets.Composite,
 *      org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage)
 *///from   w w w .  j av  a  2s  .  c  o  m
@Override
@SuppressWarnings("unchecked")
public void createControls(Composite parent, TabbedPropertySheetPage aTabbedPropertySheetPage) {
    super.createControls(parent, aTabbedPropertySheetPage);

    Composite compparent = getWidgetFactory().createComposite(parent);
    compparent.setLayout(new FormLayout());

    Composite composite = getWidgetFactory().createComposite(compparent);
    TableColumnLayout columnLayout = new TableColumnLayout();
    composite.setLayout(columnLayout);
    FormData data = new FormData();
    data.width = 100;
    data.left = new FormAttachment(0, 0);
    data.right = new FormAttachment(100, -0);
    data.top = new FormAttachment(0, ITabbedPropertyConstants.VSPACE);
    data.bottom = new FormAttachment(100, -ITabbedPropertyConstants.VSPACE);
    composite.setLayoutData(data);

    tableViewer = new TableViewer(composite, SWT.FULL_SELECTION);
    Table table = tableViewer.getTable();
    table.setHeaderVisible(true);
    table.setLinesVisible(true);
    tableViewer.setContentProvider(ArrayContentProvider.getInstance());

    TableViewerColumn nameviewercol = new TableViewerColumn(tableViewer, SWT.NONE);
    TableColumn namecol = nameviewercol.getColumn();
    columnLayout.setColumnData(namecol, new ColumnWeightData(20));
    namecol.setText("Name");
    nameviewercol.setLabelProvider(new CellLabelProvider() {

        @Override
        public void update(ViewerCell cell) {
            cell.setText(((P) cell.getElement()).getName());
        }

    });

    TableViewerColumn lableviewercol = new TableViewerColumn(tableViewer, SWT.NONE);
    TableColumn lablecol = lableviewercol.getColumn();
    columnLayout.setColumnData(lablecol, new ColumnWeightData(20));
    lablecol.setText("Lable");
    lableviewercol.setLabelProvider(new CellLabelProvider() {

        @Override
        public void update(ViewerCell cell) {
            cell.setText(((P) cell.getElement()).getDisplayName());
        }

    });

    TableViewerColumn occurenceviewercol = new TableViewerColumn(tableViewer, SWT.NONE);
    TableColumn occurencecol = occurenceviewercol.getColumn();
    columnLayout.setColumnData(occurencecol, new ColumnWeightData(20));
    occurencecol.setText("Occurence");
    occurenceviewercol.setLabelProvider(new CellLabelProvider() {

        @Override
        public void update(ViewerCell cell) {
            P cellparameter = ((P) cell.getElement());
            cell.setText(String.valueOf(cellparameter.getMinOccurrence()) + ".."
                    + (String.valueOf(cellparameter.getMaxOccurrence())));
        }

    });

    TableViewerColumn descriptionviewercol = new TableViewerColumn(tableViewer, SWT.NONE);
    TableColumn descriptioncol = descriptionviewercol.getColumn();
    columnLayout.setColumnData(descriptioncol, new ColumnWeightData(20));
    descriptioncol.setText("Description");
    descriptionviewercol.setLabelProvider(new CellLabelProvider() {

        @Override
        public void update(ViewerCell cell) {
            cell.setText(String.valueOf(((P) cell.getElement()).getDescription()));
        }

    });
}

From source file:eu.hydrologis.stage.modules.widgets.GuiFilespathListInputField.java

License:Open Source License

private TableViewerColumn createTableViewerColumn(String title, int bound, final int colNumber) {
    final TableViewerColumn viewerColumn = new TableViewerColumn(tableViewer, SWT.NONE);
    final TableColumn column = viewerColumn.getColumn();
    column.setText(title);//from   w w  w  .ja  v a2  s  .c o m
    column.setWidth(bound);
    column.setResizable(true);
    column.setMoveable(true);
    return viewerColumn;
}

From source file:eu.modelwriter.marker.ui.internal.preferences.RefColumnLabelProvider.java

License:Open Source License

public TableViewerColumn addColumnTo(TableViewer viewer) {
    TableViewerColumn tableViewerColumn = new TableViewerColumn(viewer, SWT.NONE);
    TableColumn column = tableViewerColumn.getColumn();
    column.setMoveable(true);// w  w  w  .  j av a 2 s .  c o  m
    column.setText(getTitle());
    column.setResizable(true);
    tableViewerColumn.setLabelProvider(this);
    return tableViewerColumn;
}

From source file:eu.modelwriter.marker.ui.internal.wizards.selectionwizard.Column.java

License:Open Source License

public TableViewerColumn addColumnTo(TableViewer viewer) {
    TableViewerColumn tableViewerColumn = new TableViewerColumn(viewer, SWT.NONE);
    TableColumn column = tableViewerColumn.getColumn();
    column.setText(getTitle());//from w w  w .  j a  v  a2s .c o m
    tableViewerColumn.setLabelProvider(this);
    return tableViewerColumn;
}

From source file:eu.numberfour.n4js.ui.viewer.TableViewerBuilder.java

License:Open Source License

@Override
protected TableViewer createViewer(final Composite parent, final AbstractColumnLayout columnLayout,
        final int style) {
    final TableViewer viewer = new TableViewer(parent, style);
    final Table table = viewer.getTable();
    table.setLinesVisible(linesVisible);
    table.setHeaderVisible(headerVisible);

    int columnIndex = 0;
    for (final String columnLabel : columnLabels) {

        final TableViewerColumn viewerColumn = new TableViewerColumn(viewer, NONE);
        final TableColumn column = viewerColumn.getColumn();
        columnLayout.setColumnData(column, createColumnLayoutData(columnIndex));
        column.setText(columnLabel);/*w ww  .  j  a  v a 2 s.c o  m*/
        column.setMoveable(moveable);

        columnIndex++;
    }

    return viewer;
}

From source file:eu.skillpro.ams.pscm.connector.amlservice.ui.dialogs.DeleteAMLDialog.java

License:Open Source License

private void createViewerContainer(Composite container) {
    Composite top = new Composite(container, SWT.NONE);
    top.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());
    top.setLayout(GridLayoutFactory.fillDefaults().margins(5, 5).equalWidth(false).numColumns(4).create());

    Label lbtFirstName = new Label(top, SWT.NONE);
    lbtFirstName.setText("Select file:");
    lbtFirstName.setLayoutData(GridDataFactory.swtDefaults().align(SWT.BEGINNING, SWT.FILL).create());

    viewer = new TableViewer(top, SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER | SWT.FULL_SELECTION | SWT.MULTI);
    viewer.getControl().setLayoutData(GridDataFactory.swtDefaults().align(SWT.FILL, SWT.FILL).grab(true, true)
            .hint(SWT.DEFAULT, 100).span(3, 2).create());

    TableViewerColumn col1 = new TableViewerColumn(viewer, SWT.NONE);
    col1.getColumn().setText("ID");
    col1.getColumn().setWidth(50);/*from   w w  w. j  a va 2 s .c  o m*/
    col1.getColumn().setResizable(false);
    col1.getColumn().setMoveable(false);

    TableViewerColumn col2 = new TableViewerColumn(viewer, SWT.NONE);
    col2.getColumn().setText("Name");
    col2.getColumn().setWidth(150);
    col2.getColumn().setResizable(true);
    col2.getColumn().setMoveable(false);

    TableViewerColumn col3 = new TableViewerColumn(viewer, SWT.NONE);
    col3.getColumn().setText("Date");
    col3.getColumn().setWidth(70);
    col3.getColumn().setResizable(true);
    col3.getColumn().setMoveable(false);

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

    viewer.setContentProvider(new ArrayContentProvider());
    viewer.setLabelProvider(new AMLProjectLabelProvider());

    countLabel = new Label(top, SWT.NONE);
    countLabel.setLayoutData(GridDataFactory.swtDefaults().align(SWT.BEGINNING, SWT.END).create());
}

From source file:fr.esrf.icat.manager.core.part.DataPart.java

License:Apache License

private void createColumns(final Composite parent) {
    WrappedEntityBean data = null;/*from w ww  .j a v  a 2s  .co m*/
    try {
        data = ICATDataService.getInstance().getClient(entity.getServer()).create(entity.getEntityName());
    } catch (ICATClientException e) {
        LOG.error("Error creating " + entity.getEntityName(), e);
        return;
    }
    List<String> fields = new LinkedList<>();
    fields.addAll(data.getMutableFields());
    //      fields.addAll(data.getAssociationFields());
    fields.addAll(data.getImmutableFields());

    for (final String field : fields) {
        TableViewerColumn column = new TableViewerColumn(viewer, SWT.NONE);
        final TableColumn currentColumn = column.getColumn();
        currentColumn.setText(field);
        currentColumn.setWidth(100);
        currentColumn.setResizable(true);
        currentColumn.setMoveable(true);
        if (field.equals(contentProvider.getSortingField())) {
            switch (contentProvider.getSortingOrder()) {
            case SWT.UP:
                currentColumn.setImage(IMAGE_UP);
                break;
            case SWT.DOWN:
                currentColumn.setImage(IMAGE_DOWN);
                break;
            default:
                currentColumn.setImage(null);
                break;
            }
        } else {
            currentColumn.setImage(null);
        }

        column.getColumn().addSelectionListener(new SelectionListener() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                final TableColumn col = (TableColumn) e.getSource();
                final String sortingField = col.getText();
                DataPart.LOG.debug("Selected column " + sortingField);
                contentProvider.toggleSortingField(field);
                for (TableColumn column : viewer.getTable().getColumns()) {
                    if (column.getText().equals(sortingField)) {
                        switch (contentProvider.getSortingOrder()) {
                        case SWT.UP:
                            column.setImage(IMAGE_UP);
                            break;
                        case SWT.DOWN:
                            column.setImage(IMAGE_DOWN);
                            break;
                        default:
                            column.setImage(null);
                            break;
                        }
                    } else {
                        column.setImage(null);
                    }
                }
                refresh();
            }

            @Override
            public void widgetDefaultSelected(SelectionEvent e) {
            }

        });

        column.setLabelProvider(new DataColumnLabelProvider(field));
        if (data.isMutable(field)) {
            column.setEditingSupport(
                    new DataColumnEditingSupport(viewer, field, data.getReturnType(field), entity.getServer()));
        }
    }
}