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.maybebuggy.finder.views.SearchResultView.java

License:Open Source License

private TableViewerColumn createTableViewerColumn(String title, int width, final int colNumber) {
    final TableViewerColumn viewerColumn = new TableViewerColumn(viewer, SWT.NONE);
    final TableColumn column = viewerColumn.getColumn();
    column.setText(title);/*from  w ww  .j a  v a  2  s. co m*/
    column.setWidth(width);
    column.setResizable(true);
    column.setMoveable(false);
    viewerColumn.setLabelProvider(new ViewLabelProvider(colNumber));
    return viewerColumn;
}

From source file:de.ovgu.featureide.fm.ui.editors.ConstraintDialog.java

License:Open Source License

/**
 * initializes the group containing the searchText and featureTable
 * /*from  w  w w . ja v a2  s .c o  m*/
 * @param featuremodel
 */
private void initFeatureGroup(final FeatureModel featuremodel) {

    featureGroup = new Group(shell, SWT.NONE);
    featureGroup.setText("Features");
    GridData gridData = new GridData(GridData.FILL_HORIZONTAL);
    gridData.grabExcessHorizontalSpace = true;
    gridData.grabExcessVerticalSpace = true;
    featureGroup.setLayoutData(gridData);
    GridLayout featureGroupLayout = new GridLayout();
    featureGroupLayout.numColumns = 1;
    featureGroup.setLayout(featureGroupLayout);

    searchFeatureText = new StyledText(featureGroup, SWT.SINGLE | SWT.LEFT | SWT.BORDER);
    searchFeatureText.setText(FILTERTEXT);
    searchFeatureText.setForeground(shell.getDisplay().getSystemColor(SWT.COLOR_GRAY));
    gridData = new GridData(GridData.FILL_HORIZONTAL);
    searchFeatureText.setLayoutData(gridData);

    Composite tableComposite = new Composite(featureGroup, SWT.NONE);
    gridData = new GridData(GridData.FILL_HORIZONTAL);
    gridData.grabExcessHorizontalSpace = true;
    gridData.grabExcessVerticalSpace = true;
    tableComposite.setLayoutData(gridData);

    final TableViewer featureTableViewer = new TableViewer(tableComposite,
            SWT.BORDER | SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL);
    featureTable = featureTableViewer.getTable();
    featureTableViewer.setContentProvider(new ArrayContentProvider());
    TableViewerColumn viewerNameColumn = new TableViewerColumn(featureTableViewer, SWT.NONE);
    TableColumnLayout tableColumnLayout = new TableColumnLayout();
    tableComposite.setLayout(tableColumnLayout);
    tableColumnLayout.setColumnData(viewerNameColumn.getColumn(), new ColumnWeightData(100, 100, false));

    featureTableViewer.setComparator(new ViewerComparator() {

        @Override
        public int compare(Viewer viewer, Object feature1, Object feature2) {

            return ((Feature) feature1).getName().compareToIgnoreCase(((Feature) feature2).getName());
        }

    });

    viewerNameColumn.setLabelProvider(new CellLabelProvider() {
        @Override
        public void update(ViewerCell cell) {
            cell.setText(((Feature) cell.getElement()).getName());

        }
    });

    searchFeatureText.addModifyListener(new ModifyListener() {

        @Override
        public void modifyText(ModifyEvent e) {
            ViewerFilter searchFilter = new ViewerFilter() {

                @Override
                public boolean select(Viewer viewer, Object parentElement, Object element) {
                    return ((Feature) element).getName().toLowerCase(Locale.ENGLISH)
                            .contains(searchFeatureText.getText().toLowerCase(Locale.ENGLISH));
                }

            };
            if (!searchFeatureText.getText().equalsIgnoreCase(FILTERTEXT)) {
                featureTableViewer.addFilter(searchFilter);

            }
        }

    });

    searchFeatureText.addListener(SWT.FocusOut, new Listener() {

        @Override
        public void handleEvent(Event event) {
            if (searchFeatureText.getText().isEmpty()) {
                searchFeatureText.setText(FILTERTEXT);
                searchFeatureText.setForeground(shell.getDisplay().getSystemColor(SWT.COLOR_GRAY));

            }

        }
    });
    searchFeatureText.addListener(SWT.FocusIn, new Listener() {

        @Override
        public void handleEvent(Event event) {
            if (searchFeatureText.getText().equals(FILTERTEXT))

                searchFeatureText.setText("");
            searchFeatureText.setForeground(shell.getDisplay().getSystemColor(SWT.COLOR_BLACK));
        }

    });

    featureTableViewer.setInput(featureModel.getFeatures());

    gridData = new GridData(GridData.FILL_HORIZONTAL);
    gridData.grabExcessVerticalSpace = true;
    featureTable.setLayoutData(gridData);

    featureTable.addListener(SWT.MouseDoubleClick, new Listener() {
        @Override
        public void handleEvent(Event event) {
            TableItem[] selectedItem = featureTable.getSelection();
            StringBuilder temp = new StringBuilder(constraintText.getText());

            temp.delete(x, y);
            if (selectedItem.length > 0) {
                temp.insert(x > y ? y : x,
                        " " + (selectedItem[0].getText().contains(" ")
                                || Operator.isOperatorName(selectedItem[0].getText())
                                        ? "\"" + selectedItem[0].getText() + "\""
                                        : selectedItem[0].getText())
                                + " ");

            }
            constraintText.setText(temp.toString()); //NodeReader.reduceWhiteSpaces(temp.toString()));

            constraintText.setSelection(constraintText.getCharCount());
            searchFeatureText.setText(FILTERTEXT);
            searchFeatureText.setForeground(shell.getDisplay().getSystemColor(SWT.COLOR_GRAY));
            constraintText.setFocus();
            featureTableViewer.resetFilters();

            validate();
        }
    });

}

From source file:de.ovgu.featureide.fm.ui.editors.DeleteOperationAlternativeDialog.java

License:Open Source License

/**
 * initializes the group containing the searchText and featureTable
 * //from   www  . j a  v  a  2 s  . c  om
 * @param featuremodel
 */
private void initFeatureGroup() {
    Group featureGroup = new Group(shell, SWT.NONE);
    featureGroup.setText("Features");
    GridData gridData = new GridData(GridData.FILL_HORIZONTAL);
    gridData.grabExcessHorizontalSpace = true;
    featureGroup.setLayoutData(gridData);
    GridLayout featureGroupLayout = new GridLayout();
    featureGroupLayout.numColumns = 2;
    featureGroup.setLayout(featureGroupLayout);

    Composite tableComposite = new Composite(featureGroup, SWT.NONE);
    gridData = new GridData(GridData.FILL_HORIZONTAL);
    gridData.grabExcessVerticalSpace = true;
    gridData.grabExcessHorizontalSpace = true;
    tableComposite.setLayoutData(gridData);

    final TableViewer tableViewer = new TableViewer(tableComposite,
            SWT.BORDER | SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL);
    alternativefeatureTable = tableViewer.getTable();
    alternativefeatureTable.setLayoutData(gridData);
    alternativefeatureTable.setToolTipText("Features supposed to be deleted");
    TableViewerColumn viewerNameColumn = new TableViewerColumn(tableViewer, SWT.NONE);
    TableColumnLayout tableColumnLayout = new TableColumnLayout();
    tableComposite.setLayout(tableColumnLayout);
    tableColumnLayout.setColumnData(viewerNameColumn.getColumn(), new ColumnWeightData(100, 100, false));

    tableViewer.setComparator(new ViewerComparator() {
        @Override
        public int compare(Viewer viewer, Object feature1, Object feature2) {
            return ((Feature) feature1).getName().compareToIgnoreCase(((Feature) feature2).getName());
        }

    });

    viewerNameColumn.setLabelProvider(new CellLabelProvider() {
        @Override
        public void update(ViewerCell cell) {
            cell.setText(((Feature) cell.getElement()).getName());

        }
    });
    Collection<Feature> l = new ArrayList<Feature>();
    l.addAll(featureMap.keySet());
    tableViewer.setContentProvider(new ArrayContentProvider());
    tableViewer.setInput(l);

    tableComposite = new Composite(featureGroup, SWT.NONE);
    gridData = new GridData(GridData.FILL_HORIZONTAL);
    gridData.grabExcessVerticalSpace = true;
    gridData.grabExcessHorizontalSpace = true;
    tableComposite.setLayoutData(gridData);

    final TableViewer tableViewer2 = new TableViewer(tableComposite,
            SWT.BORDER | SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL);
    featureTable = tableViewer2.getTable();
    featureTable.setLayoutData(gridData);
    featureTable.setToolTipText("alternative features");
    TableViewerColumn viewerNameColumn2 = new TableViewerColumn(tableViewer2, SWT.NONE);
    tableColumnLayout = new TableColumnLayout();
    tableComposite.setLayout(tableColumnLayout);
    tableColumnLayout.setColumnData(viewerNameColumn2.getColumn(), new ColumnWeightData(100, 100, false));
    tableViewer2.setContentProvider(new ArrayContentProvider());

    featureTable.addListener(SWT.MouseDoubleClick, new Listener() {
        @Override
        public void handleEvent(Event event) {
            execute();
        }
    });

    alternativefeatureTable.addListener(SWT.MouseUp, new Listener() {
        @Override
        public void handleEvent(Event event) {
            final Collection<Feature> l = new ArrayList<Feature>();
            l.addAll(featureMap.get((Feature) (alternativefeatureTable.getSelection()[0]).getData()));
            for (int i = 0; i < alternativefeatureTable.getSelectionCount(); i++) {

                if (!featureMap.get((Feature) (alternativefeatureTable.getSelection()[0]).getData()).equals(
                        featureMap.get((Feature) (alternativefeatureTable.getSelection()[i]).getData()))) {
                    l.clear();
                    break;
                }
            }
            tableViewer2.setInput(l);
            featureTable.select(0);
            tableViewer2.refresh(true, true);
        }
    });

    viewerNameColumn2.setLabelProvider(new CellLabelProvider() {
        @Override
        public void update(ViewerCell cell) {
            cell.setText(((Feature) cell.getElement()).getName());

        }
    });

    final Label label = new Label(featureGroup, 0);
    gridData = new GridData(GridData.FILL_HORIZONTAL);
    label.setLayoutData(gridData);

    final Button button = new Button(featureGroup, SWT.PUSH);
    button.setText("Replace");
    gridData = new GridData(GridData.FILL_HORIZONTAL);
    button.setLayoutData(gridData);

    button.addSelectionListener(new org.eclipse.swt.events.SelectionAdapter() {
        public void widgetSelected(org.eclipse.swt.events.SelectionEvent e) {
            execute();
        }
    });
}

From source file:de.plugins.eclipse.depclipse.views.ProhibitedDependencyView.java

License:Open Source License

/**
 * This is a callback that will allow us
 * to create the viewer and initialize it.
 *///from   w  w w  . java 2s.c om
public void createPartControl(Composite parent) {
    sashForm = new SashForm(parent, SWT.VERTICAL);
    sashForm.setLayoutData(new GridData(GridData.FILL_BOTH));
    PlatformUI.getWorkbench().getHelpSystem().setHelp(sashForm, "de.plugins.eclipse.depclipse.jdepend"); //$NON-NLS-1$

    table = createTable(sashForm);
    viewer = new TableViewer(table);
    viewer.setContentProvider(new ArrayContentProvider());

    TableViewerColumn viewerNameColumn = new TableViewerColumn(viewer, SWT.NONE);
    viewerNameColumn.getColumn().setText("Prohibited Dependency"); //$NON-NLS-1$
    viewerNameColumn.getColumn().setWidth(250);

    viewer.setLabelProvider(new ViewLabelProvider());
    viewer.setSorter(new NameSorter());
    viewer.setInput(getViewSite());
    hookContextMenu();
    hookDoubleClickAction();
    contributeToActionBars();

    // get initial data - subscribe as observer
    Map<String, List<String>> initialData = DepclipsePlugin.getJDependData().getSelectedBrokenDependencyRules();
    updateUI(initialData);
    DepclipsePlugin.getJDependData().addPropertyChangeListener(this);
}

From source file:de.quamoco.qm.editor.refactoring.ConflictResolutionDialog.java

License:Apache License

/** Create the column to display the feature. */
private void createFeatureColumn(TableViewer viewer) {
    TableViewerColumn viewerColumn = new TableViewerColumn(viewer, SWT.None);
    TableColumn column = viewerColumn.getColumn();
    column.setWidth(100);/*from w w w . j a v a 2s  . c om*/
    column.setText("Property");
    viewerColumn.setLabelProvider(new ColumnLabelProvider() {
        @Override
        public String getText(Object element) {
            Conflict conflict = (Conflict) element;
            return getString(conflict.getFeature());
        }

        private String getString(EStructuralFeature feature) {
            String key = "_UI_" + feature.getEContainingClass().getName() + "_" + feature.getName()
                    + "_feature";
            return QmEditPlugin.INSTANCE.getString(key);
        }
    });
}

From source file:de.quamoco.qm.editor.refactoring.ConflictResolutionDialog.java

License:Apache License

/** Create a column for the value of a feature for an element. */
private void createValueColumn(final TableViewer viewer, final boolean first) {
    TableViewerColumn viewerColumn = new TableViewerColumn(viewer, SWT.None);
    TableColumn column = viewerColumn.getColumn();
    column.setWidth(200);// w  ww  . ja v a 2 s  .  c o  m
    column.setText(labelProvider.getText(first ? merge.getFirst() : merge.getSecond()));
    column.setImage(labelProvider.getImage(first ? merge.getFirst() : merge.getSecond()));
    viewerColumn.setLabelProvider(new ColumnLabelProvider() {

        @Override
        public String getText(Object element) {
            Conflict conflict = (Conflict) element;
            Object value = getValue(conflict);
            return labelProvider.getText(value);
        }

        private Object getValue(Conflict conflict) {
            return first ? conflict.getFirstValue() : conflict.getSecondValue();
        }

        @Override
        public Image getImage(Object element) {
            Conflict conflict = (Conflict) element;
            Object value = getValue(conflict);
            return labelProvider.getImage(value);
        }
    });
}

From source file:de.quamoco.qm.editor.refactoring.ConflictResolutionDialog.java

License:Apache License

/**
 * Create the column for the resolution of a feature's conflict in favor of
 * an element.//from  w w w.  j  a  va2  s . c  o  m
 */
private void createChoiceColumn(final TableViewer viewer, final boolean first) {
    TableViewerColumn viewerColumn = new TableViewerColumn(viewer, SWT.None);
    TableColumn column = viewerColumn.getColumn();
    column.setWidth(20);
    column.setText("x");
    viewerColumn.setLabelProvider(new ColumnLabelProvider() {

        @Override
        public String getText(Object element) {
            Conflict conflict = (Conflict) element;
            return first == conflict.getResolution() ? "x" : "";
        }

    });
    viewerColumn.setEditingSupport(new EditingSupport(viewer) {

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

        @Override
        protected CellEditor getCellEditor(Object element) {
            return new CheckboxCellEditor((Composite) getViewer().getControl());
        }

        @Override
        protected Object getValue(Object element) {
            Conflict conflict = (Conflict) element;
            return first == conflict.getResolution();
        }

        @Override
        protected void setValue(Object element, Object value) {
            Conflict conflict = (Conflict) element;
            conflict.resolve(first);
            getViewer().refresh();
        }
    });

    column.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            for (Conflict conflict : merge.getConflicts()) {
                conflict.resolve(first);
            }
            viewer.refresh();
        }
    });
}

From source file:de.quamoco.qm.properties.AnnotatedElementAnnotationsSection.java

License:Apache License

/** Creates the {@link TableViewerColumn}s for key and value. */
private void createColumn(final EStructuralFeature feature) {
    TableViewerColumn column = new TableViewerColumn(tableViewer, SWT.NONE);
    column.getColumn().setText(ResourceLocatorUtils.getString(feature));
    column.getColumn().setWidth(200);/*  w ww.  jav  a  2  s.c o  m*/
    column.getColumn().setResizable(true);
    column.setLabelProvider(new ColumnLabelProvider() {
        @Override
        public String getText(Object element) {
            AnnotationImpl impl = (AnnotationImpl) element;
            Object value = impl.eGet(feature);
            if (value == null) {
                return "<Enter " + ResourceLocatorUtils.getString(feature) + ">";
            }
            return value.toString();
        }
    });
    column.setEditingSupport(new AnnotationsEditingSupport(tableViewer, feature));
}

From source file:de.quamoco.qm.properties.eval.section.AbstractAggregationSection.java

License:Apache License

/**
 * Creates a single table column//from w  ww . jav a2  s. c o m
 * 
 * @param title
 *            the title of the column
 * @param bound
 *            the width
 * @param colIndex
 *            the column number
 * @return the created column
 */
private TableViewerColumn createTableViewerColumn(String title, String toolTip, int bound, final int colIndex,
        final IStructuredContentProvider contentProvider) {
    final TableViewerColumn viewerColumn = new TableViewerColumn(tableViewer, SWT.NONE);
    final TableColumn column = viewerColumn.getColumn();
    column.setText(title);
    column.setToolTipText(toolTip);
    column.setWidth(bound);
    column.setResizable(true);
    column.setMoveable(false);

    InfluencingOrRefiningElementLabelProvider labelProvider = new InfluencingOrRefiningElementLabelProvider(
            colIndex);
    labelProviders.add(labelProvider);
    viewerColumn.setLabelProvider(labelProvider);
    return viewerColumn;
}

From source file:de.ralfebert.rcputils.tables.ColumnBuilder.java

License:Open Source License

/**
 * Builds the column and returns the TableViewerColumn
 *//*from   w ww.j  av  a2s .co m*/
public TableViewerColumn build() {
    // create column
    TableViewerColumn viewerColumn = new TableViewerColumn(builder.getTableViewer(), align);
    TableColumn column = viewerColumn.getColumn();
    column.setText(columnHeaderText);

    // set label provider
    if (customLabelProvider != null) {
        if (cellFormatter != null) {
            throw new RuntimeException("If you specify a custom label provider, it is not allowed "
                    + "to specify a cell formatter. You need to do the formatting in your labelprovider!");
        }
        viewerColumn.setLabelProvider(customLabelProvider);
    } else {
        viewerColumn
                .setLabelProvider(new PropertyCellLabelProvider(valueHandler, valueFormatter, cellFormatter));
    }

    // activate column sorting
    if (sortBy == null) {
        sortBy = valueHandler;
    }
    if (sortBy != null) {
        column.setData(SortColumnComparator.SORT_BY, sortBy);
        column.addSelectionListener(builder.getSortSelectionListener());
        if (defaultSort) {
            builder.getTable().setSortColumn(column);
            builder.getTable().setSortDirection(SWT.UP);
        }
    }

    // set column layout data
    if (widthPixel != null && widthPercent != null) {
        throw new RuntimeException("You can specify a width in pixel OR in percent, but not both!");
    }
    if (widthPercent == null) {
        // default width of 100px if nothing specified
        builder.getTableLayout().setColumnData(column,
                new ColumnPixelData(widthPixel == null ? 100 : widthPixel));
    } else {
        builder.getTableLayout().setColumnData(column, new ColumnWeightData(widthPercent));
    }

    // set editing support
    if (editor != null) {
        if (valueHandler == null) {
            throw new RuntimeException(
                    "makeEditable() requires that the column is bound to some value using bindTo...()");
        }

        viewerColumn.setEditingSupport(
                new PropertyEditingSupport(builder.getTableViewer(), valueHandler, editorFormat, editor));
    }

    return viewerColumn;
}