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

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

Introduction

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

Prototype

public TableViewer(Composite parent, int style) 

Source Link

Document

Creates a table viewer on a newly-created table control under the given parent.

Usage

From source file:com.google.dart.tools.ui.internal.dialogs.ListDialog.java

License:Open Source License

@Override
protected Control createDialogArea(Composite container) {
    Composite parent = (Composite) super.createDialogArea(container);
    createMessageArea(parent);/*from ww  w  .j  a  v a  2  s .  c  om*/
    fTableViewer = new TableViewer(parent, getTableStyle());
    fTableViewer.setContentProvider(fContentProvider);
    Table table = fTableViewer.getTable();
    fTableViewer.setLabelProvider(fLabelProvider);
    fTableViewer.setInput(fInput);
    GridData gd = new GridData(GridData.FILL_BOTH);
    gd.widthHint = convertWidthInCharsToPixels(55);
    gd.heightHint = convertHeightInCharsToPixels(15);
    table.setLayoutData(gd);
    applyDialogFont(parent);
    return parent;
}

From source file:com.google.dart.tools.ui.internal.problemsview.ProblemsView.java

License:Open Source License

@Override
public void createPartControl(Composite parent) {
    clipboard = new Clipboard(parent.getDisplay());

    tableViewer = new TableViewer(parent,
            SWT.H_SCROLL | SWT.VIRTUAL | SWT.V_SCROLL | SWT.MULTI | SWT.FULL_SELECTION);
    tableViewer.setContentProvider(new ErrorViewTreeContentProvider());
    tableViewer.addDoubleClickListener(new IDoubleClickListener() {
        @Override//ww  w  .j  a  v a2  s .c om
        public void doubleClick(DoubleClickEvent event) {
            openSelectedMarker();
        }
    });
    tableViewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            ISelection selection = event.getSelection();
            if (selection instanceof IStructuredSelection) {
                updateStatusLine((IStructuredSelection) selection);
            }
        }
    });

    // Create actions; must be done after the construction of the tableViewer
    goToMarkerAction = new GoToMarkerAction();
    copyAction = new CopyMarkerAction();

    tableViewer.addSelectionChangedListener(copyAction);
    tableViewer.addSelectionChangedListener(goToMarkerAction);

    tableSorter = new TableSorter();
    tableSorter.setColumn(1);
    tableViewer.setComparator(tableSorter);
    tableViewer.getTable().setSortDirection(SWT.UP);

    Table table = tableViewer.getTable();

    TableViewerColumn descriptionColumn = new TableViewerColumn(tableViewer, SWT.LEFT);
    descriptionColumn.setLabelProvider(new DescriptionLabelProvider());
    descriptionColumn.getColumn().setText("Description");
    descriptionColumn.getColumn().setWidth(520);
    descriptionColumn.getColumn().setResizable(true);
    enableSorting(descriptionColumn.getColumn(), 0);

    TableViewerColumn fileNameColumn = new TableViewerColumn(tableViewer, SWT.LEFT);
    fileNameColumn.setLabelProvider(new FileNameLabelProvider());
    fileNameColumn.getColumn().setText("Location");
    fileNameColumn.getColumn().setWidth(220);
    fileNameColumn.getColumn().setResizable(true);
    enableSorting(fileNameColumn.getColumn(), 1);

    tableViewer.getTable().setSortColumn(fileNameColumn.getColumn());

    //    TableViewerColumn typeColumn = new TableViewerColumn(tableViewer, SWT.LEFT);
    //    typeColumn.setLabelProvider(new TypeLabelProvider());
    //    typeColumn.getColumn().setText("Type");
    //    typeColumn.getColumn().setWidth(130);
    //    typeColumn.getColumn().setResizable(true);
    //    enableSorting(typeColumn.getColumn(), 2);

    restoreColumnWidths();

    table.setLayoutData(new GridData(GridData.FILL_BOTH));
    //    table.setFont(parent.getFont());
    updateTableFont();

    table.setLinesVisible(true);
    table.setHeaderVisible(true);

    table.layout(true);

    getSite().setSelectionProvider(tableViewer);

    IToolBarManager toolbar = getViewSite().getActionBars().getToolBarManager();

    fillInToolbar(toolbar);
    registerContextMenu();

    tableFilter = new ErrorViewerFilter();

    updateFilters();

    startUpdateJob();

    MarkersChangeService.getService().addListener(this);

    focusOnActiveEditor();
}

From source file:com.google.dart.tools.ui.internal.pub.PackagesView.java

License:Open Source License

private void createTable(Composite client) {

    Composite tableComposite = new Composite(client, SWT.NONE);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).grab(true, true).applyTo(tableComposite);
    TableColumnLayout tableLayout = new TableColumnLayout();
    tableComposite.setLayout(tableLayout);

    tableViewer = new TableViewer(tableComposite,
            SWT.HIDE_SELECTION | SWT.FULL_SELECTION | SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL | SWT.WRAP);
    final Table table = tableViewer.getTable();
    table.setLinesVisible(true);//  ww  w  . j av  a2s.c o  m
    table.setHeaderVisible(true);

    createFontStyles();

    final TableViewerColumn nameColumn = createColumnsAndMenu(tableLayout);

    tableViewer.setContentProvider(new ArrayContentProvider());
    tableViewer.setLabelProvider(new PackagesLabelProvider());
    tableViewer.getTable().setSortColumn(nameColumn.getColumn());
    tableViewer.getTable().setSortDirection(SWT.DOWN);
    comparator = new PackagesComparator();
    comparator.setColumn(0);
    tableViewer.setComparator(comparator);

    filter = new PackagesFilter();
    tableViewer.addFilter(filter);
    ColumnViewerToolTipSupport.enableFor(tableViewer, ToolTip.NO_RECREATE);

    pubPackages = PubPackageManager.getInstance().getPubPackages();
    if (pubPackages.size() > 0) {
        tableViewer.setInput(pubPackages);
    } else {
        List<String> strings = new ArrayList<String>();
        for (int i = 0; i < 25; i++) {
            strings.add("Populating data ...");
        }
        tableViewer.setInput(strings);
    }

}

From source file:com.google.devtools.depan.matchers.eclipse.ui.widgets.EdgeMatcherTableControl.java

License:Apache License

public EdgeMatcherTableControl(Composite parent) {
    super(parent, SWT.NONE);
    setLayout(Widgets.buildContainerLayout(1));

    viewer = new TableViewer(this, SWT.MULTI | SWT.BORDER | SWT.V_SCROLL);

    // Layout embedded table
    Table relationTable = viewer.getTable();
    relationTable.setLayoutData(Widgets.buildGrabFillData());

    // initialize the table
    relationTable.setHeaderVisible(true);
    relationTable.setToolTipText("Edge Matcher Definition");
    EditColTableDef.setupTable(TABLE_DEF, relationTable);

    CellEditor[] cellEditors = new CellEditor[TABLE_DEF.length];
    cellEditors[INDEX_RELATION] = null;//from w w w . java 2 s  .  c  om
    cellEditors[INDEX_FORWARD] = new CheckboxCellEditor(relationTable);
    cellEditors[INDEX_BACKWARD] = new CheckboxCellEditor(relationTable);

    // cell content
    viewer.setCellEditors(cellEditors);
    viewer.setLabelProvider(new CellLabelProvider());
    viewer.setColumnProperties(EditColTableDef.getProperties(TABLE_DEF));
    viewer.setCellModifier(new CellModifier());
    viewer.setContentProvider(ArrayContentProvider.getInstance());

    viewer.setComparator(new AlphabeticSorter(new ViewerObjectToString() {

        @Override
        public String getString(Object object) {
            if (object instanceof Relation) {
                return ((Relation) object).toString();
            }
            return object.toString();
        }
    }));
}

From source file:com.google.devtools.depan.nodes.filters.eclipse.ui.widgets.FilterTableControl.java

License:Apache License

public FilterTableControl(Composite parent) {
    super(parent, SWT.NONE);
    setLayout(Widgets.buildContainerLayout(1));

    filterViewer = new TableViewer(this, SWT.BORDER | SWT.V_SCROLL | SWT.MULTI);

    // Set up layout properties.
    Table filterTable = filterViewer.getTable();
    filterTable.setLayoutData(Widgets.buildGrabFillData());

    // Initialize the table.
    filterTable.setHeaderVisible(true);/*from  w  ww  .j  a  v  a2 s.c  o m*/
    filterTable.setToolTipText("Node Filter Editor");
    EditColTableDef.setupTable(TABLE_DEF, filterTable);

    CellEditor[] cellEditors = new CellEditor[TABLE_DEF.length];
    cellEditors[INDEX_NAME] = new TextCellEditor(filterTable);
    cellEditors[INDEX_SUMMARY] = new NodeFilterCellEditor(filterTable);

    // Configure table properties.
    filterViewer.setCellEditors(cellEditors);
    filterViewer.setLabelProvider(LABEL_PROVIDER);
    filterViewer.setColumnProperties(EditColTableDef.getProperties(TABLE_DEF));
    filterViewer.setCellModifier(new ControlCellModifier());

    // Since the order is significant, no sorting capabilities.

    // Avoid setInput() invocations that come with
    // TableContentProvider.initViewer
    filterViewer.setContentProvider(ArrayContentProvider.getInstance());
}

From source file:com.google.devtools.depan.nodes.filters.eclipse.ui.widgets.NodeKindTableControl.java

License:Apache License

/**
 * Create the ElementKindPicker, with all the usual sub-controls.
 *
 * @param parent containing controls//from w ww.  j  av  a2  s.  c  o  m
 * @param style standard style bits
 */
public NodeKindTableControl(Composite parent) {
    super(parent, SWT.NONE);
    setLayout(Widgets.buildContainerLayout(1));

    // Setup selection button bar
    Composite buttonBar = configButtonBar(this);
    buttonBar.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, false, false));

    // Configure the table viewer
    kindViewer = new TableViewer(this, SWT.MULTI | SWT.BORDER | SWT.V_SCROLL);

    // Set up layout properties.
    Table elementKindTable = kindViewer.getTable();
    elementKindTable.setLayoutData(Widgets.buildGrabFillData());

    // Initialize the table.
    elementKindTable.setHeaderVisible(true);
    elementKindTable.setToolTipText("Node Kind Selector");
    EditColTableDef.setupTable(TABLE_DEF, elementKindTable);

    // Configure the table viewer
    kindViewer.setLabelProvider(LABEL_PROVIDER);
    kindViewer.setColumnProperties(EditColTableDef.getProperties(TABLE_DEF));

    configSorters(elementKindTable);
    setSortColumn(elementKindTable.getColumn(0), 0, SWT.DOWN);

    kindViewer.setContentProvider(new ArrayContentProvider());
}

From source file:com.google.devtools.depan.relations.eclipse.ui.widgets.RelationSetTableControl.java

License:Apache License

public RelationSetTableControl(Composite parent) {
    super(parent, SWT.NONE);
    setLayout(Widgets.buildContainerLayout(1));

    // Layout embedded table
    relSetViewer = new TableViewer(this, SWT.FULL_SELECTION | SWT.MULTI | SWT.BORDER | SWT.V_SCROLL);

    // Set up layout properties
    Table relSetTable = relSetViewer.getTable();
    relSetTable.setLayoutData(Widgets.buildGrabFillData());

    // initialize the table
    relSetTable.setHeaderVisible(true);//from   w  w w  . ja  v a2  s  . c  o m
    relSetTable.setToolTipText("List of Relations");
    EditColTableDef.setupTable(TABLE_DEF, relSetTable);

    // Configure cell editing
    CellEditor[] cellEditors = new CellEditor[TABLE_DEF.length];
    cellEditors[INDEX_NAME] = null;
    cellEditors[INDEX_SOURCE] = null;
    cellEditors[INDEX_VISIBLE] = new CheckboxCellEditor(relSetTable);

    // Configure table properties.
    relSetViewer.setCellEditors(cellEditors);
    relSetViewer.setLabelProvider(new ControlLabelProvider());
    relSetViewer.setColumnProperties(EditColTableDef.getProperties(TABLE_DEF));
    relSetViewer.setCellModifier(new ControlCellModifier());
    relSetViewer.setContentProvider(ArrayContentProvider.getInstance());

    configSorters(relSetTable);
}

From source file:com.google.devtools.depan.remap_doc.eclipse.ui.editors.MigrationGroupListViewer.java

License:Apache License

/**
 * Create the GUI Control under the given parent.
 * @param parent the GUI parent.//  ww w  .  j  av a 2s.  c om
 * @param listener {@link SelectionListener} for selection callbacks.
 * @return the top level Control for this widget.
 */
public Control createControl(Composite parent, SelectionListener listener) {
    table = new TableViewer(parent, SWT.V_SCROLL | SWT.BORDER);
    table.setContentProvider(CollectionContentProvider.newProvider(task.getMigrationGroups()));
    table.getTable().addSelectionListener(listener);
    return table.getControl();
}

From source file:com.google.devtools.depan.remap_doc.eclipse.ui.editors.MigrationTaskEditor.java

License:Apache License

/**
 * Create the editor for engineers. Display a list, and add/remove buttons.
 *
 * @param parent Parent for this widget.
 * @return the top level Control for this widget.
 *///from  w w w  .  j  ava2  s  .  c  o  m
private Control createEngineersEditor(Composite parent) {
    // widgets
    Composite topLevel = new Composite(parent, SWT.None);
    GridLayout layout = new GridLayout(3, false);
    topLevel.setLayout(layout);

    engineersTable = new TableViewer(topLevel, SWT.V_SCROLL | SWT.MULTI | SWT.BORDER);
    final Text newEngineer = new Text(topLevel, SWT.BORDER);
    Button addEngineer = new Button(topLevel, SWT.PUSH);
    Button removeEngineer = new Button(topLevel, SWT.PUSH);

    // content
    engineers.initViewer(engineersTable);
    addEngineer.setText("Add");
    removeEngineer.setText("Remove selected");

    // layout
    engineersTable.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 4, 1));
    newEngineer.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false));
    addEngineer.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false));
    removeEngineer.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false));

    engineersTable.setComparator(new AlphabeticSorter(true));

    // actions
    addEngineer.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            addEngineer(newEngineer.getText());
            newEngineer.setText("");
        }
    });

    removeEngineer.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            removeSelectedEngineers();
        }
    });

    newEngineer.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetDefaultSelected(SelectionEvent e) {
            addEngineer(newEngineer.getText());
            newEngineer.setText("");
        }
    });

    fillEngineers();
    engineersTable.refresh(false);

    return topLevel;
}

From source file:com.google.devtools.depan.remap_doc.eclipse.ui.editors.RemapTable.java

License:Apache License

private Control setupControl(Composite parent) {
    Composite topLevel = new Composite(parent, SWT.NONE);
    GridLayout layout = new GridLayout();
    topLevel.setLayout(layout);//from w  ww  .j  a va  2 s .  c  om

    tableViewer = new TableViewer(topLevel, SWT.BORDER | SWT.MULTI | SWT.V_SCROLL);

    Table tableData = tableViewer.getTable();
    tableData.setHeaderVisible(true);
    EditColTableDef.setupTable(TABLE_DEF, tableData);

    CellEditor[] cellEditors = new CellEditor[4];
    cellEditors[0] = null;
    cellEditors[1] = null;
    cellEditors[2] = new TextCellEditor(tableData);
    cellEditors[3] = new TextCellEditor(tableData);

    tableViewer.setCellEditors(cellEditors);
    tableViewer.setColumnProperties(EditColTableDef.getProperties(TABLE_DEF));

    RemapTableHelper cellHelper = new RemapTableHelper();
    tableViewer.setLabelProvider(cellHelper);

    tableData.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));

    remapContent = new TableContentProvider<MigrationRule<?>>();
    remapContent.initViewer(tableViewer);

    return topLevel;
}