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

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

Introduction

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

Prototype

@Override
public void setContentProvider(IContentProvider provider) 

Source Link

Document

Sets the content provider used by this AbstractTableViewer.

Usage

From source file:org.cs3.pdt.common.search.PrologSearchResultPage.java

License:Open Source License

@Override
protected void configureTableViewer(TableViewer viewer) {
    viewer.setLabelProvider(new DecoratingLabelProvider(new PrologSearchLabelProvider(),
            PlatformUI.getWorkbench().getDecoratorManager().getLabelDecorator()));
    fContentProvider = new PrologSearchTableContentProvider(this);
    viewer.setContentProvider(fContentProvider);
}

From source file:org.csstudio.alarm.beast.ui.alarmtable.GUI.java

License:Open Source License

/**
 * Create a table viewer for displaying alarms
 *
 * @param parent Parent widget, uses GridLayout
 * @param is_active_alarm_table true if the table is for the active alarms or false if for acknowledged alarms
 *
 * @return TableViewer, still needs input
 *//*ww w  . ja v  a  2s .  c  o  m*/
private TableViewer createAlarmTable(final Composite parent, final boolean is_active_alarm_table) {
    // TableColumnLayout requires the TableViewer to be in its own Composite
    final GridLayout parent_layout = (GridLayout) parent.getLayout();
    final Composite table_parent = new Composite(parent, 0);
    table_parent.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, parent_layout.numColumns, 1));

    // Auto-size table columns
    final TableColumnLayout table_layout = new MinSizeTableColumnLayout(10);
    table_parent.setLayout(table_layout);

    final TableViewer table_viewer = new TableViewer(table_parent,
            SWT.H_SCROLL | SWT.V_SCROLL | SWT.MULTI | SWT.FULL_SELECTION | SWT.VIRTUAL);

    // Some tweaks to the underlying table widget
    final Table table = table_viewer.getTable();
    table.setHeaderVisible(true);
    table.setLinesVisible(true);

    ColumnViewerToolTipSupport.enableFor(table_viewer);

    // Connect TableViewer to the Model: Provide content from model...
    table_viewer.setContentProvider(new AlarmTableContentProvider());

    // Create the columns of the table, using a fixed initial width.
    for (ColumnWrapper cw : columns) {
        if (!cw.isVisible())
            continue;

        // Create auto-size column
        final TableViewerColumn view_col = new TableViewerColumn(table_viewer, 0);
        final TableColumn table_col = view_col.getColumn();
        table_layout.setColumnData(table_col, new ColumnWeightData(cw.getWeight(), cw.getMinWidth()));
        table_col.setText(cw.getName());
        table_col.setMoveable(true);

        ColumnInfo col_info = cw.getColumnInfo();
        // Tell column how to display the model elements

        if (col_info == ColumnInfo.TIME)
            view_col.setLabelProvider(table_label_provider);
        else
            view_col.setLabelProvider(
                    new AlarmTableLabelProvider(icon_provider, color_provider, color_pair_provider, col_info));

        if (col_info == ColumnInfo.ACK) {
            if (writable)
                view_col.setEditingSupport(new AcknowledgeEditingSupport(table_viewer));
        }
        table_col.setToolTipText(col_info.getTooltip());
    }

    return table_viewer;
}

From source file:org.csstudio.alarm.beast.ui.globaltable.GlobalAlarmTableView.java

License:Open Source License

/** @param parent Parent widget
 *  @return Table viewer for GlobalAlarmModel
 *///w ww .j av  a  2 s . co m
private TableViewer createTable(final Composite parent) {
    // TableColumnLayout requires the TableViewer to be in its
    // own Composite! For now, the 'parent' is used because there is
    // no other widget in the view.
    parent.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    final TableColumnLayout table_layout = new MinSizeTableColumnLayout(10);
    parent.setLayout(table_layout);

    final TableViewer table_viewer = new TableViewer(parent,
            SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER | SWT.FULL_SELECTION);
    final Table table = table_viewer.getTable();
    table.setHeaderVisible(true);
    table.setLinesVisible(true);
    createColumns(table_viewer, table_layout);
    table_viewer.setContentProvider(new GlobalAlarmContentProvider());

    ColumnViewerToolTipSupport.enableFor(table_viewer);

    return table_viewer;
}

From source file:org.csstudio.auth.ui.internal.preferences.SystemPropertiesPreferencePage.java

License:Open Source License

/**
 * {@inheritDoc}//from  w  w w .j a v a 2 s .  co m
 */
@Override
protected Control createContents(final Composite parent) {
    // We don't want Reset and Apply buttons on this preference page.
    // Apply does not work anyway (system properties are set during startup)
    // and Reset is not supported currently.
    noDefaultAndApplyButton();

    Composite contents = new Composite(parent, SWT.NULL);
    GridLayout layout = new GridLayout(2, false);
    layout.marginHeight = 0;
    layout.marginWidth = 0;
    contents.setLayout(layout);
    contents.setFont(parent.getFont());

    Label about = new Label(contents, SWT.WRAP);
    about.setText(Messages.SystemPropertiesPreferencePage_ABOUT_TEXT);
    GridData data = new GridData(SWT.FILL, SWT.BEGINNING, true, false, 2, 1);
    data.widthHint = 300;
    about.setLayoutData(data);

    final TableViewer viewer = new TableViewer(contents,
            SWT.MULTI | SWT.V_SCROLL | SWT.BORDER | SWT.FULL_SELECTION);
    viewer.getControl().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 2, 1));
    initializeTableViewer(viewer);
    viewer.setContentProvider(new PropertiesContentProvider());
    viewer.setLabelProvider(new PropertiesLabelProvider());

    Button addButton = new Button(contents, SWT.PUSH);
    addButton.setText(Messages.SystemPropertiesPreferencePage_ADD_BUTTON);
    data = new GridData(SWT.BEGINNING, SWT.BEGINNING, false, false);
    data.widthHint = convertHorizontalDLUsToPixels(IDialogConstants.BUTTON_WIDTH);
    addButton.setLayoutData(data);
    addButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(final SelectionEvent e) {
            Shell shell = e.widget.getDisplay().getActiveShell();
            SystemPropertyDialog dlg = new SystemPropertyDialog(shell);
            if (dlg.open() == Window.OK) {
                SystemPropertyPreferenceEntry entry = new SystemPropertyPreferenceEntry(dlg.getKey(),
                        dlg.getValue());
                _properties.add(entry);
            }
        }
    });

    final Button removeButton = new Button(contents, SWT.PUSH);
    removeButton.setText(Messages.SystemPropertiesPreferencePage_REMOVE_BUTTON);
    data = new GridData(SWT.BEGINNING, SWT.BEGINNING, false, false);
    data.widthHint = convertHorizontalDLUsToPixels(IDialogConstants.BUTTON_WIDTH);
    removeButton.setLayoutData(data);
    removeButton.setEnabled(false);
    removeButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(final SelectionEvent e) {
            IStructuredSelection selection = (IStructuredSelection) viewer.getSelection();
            for (Iterator<?> i = selection.iterator(); i.hasNext();) {
                SystemPropertyPreferenceEntry entry = (SystemPropertyPreferenceEntry) i.next();
                _properties.remove(entry);
            }
        }
    });

    // Add a selection listener to the viewer that will enable the
    // "Remove" button when at least one item is selected in the table.
    viewer.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(final SelectionChangedEvent event) {
            removeButton.setEnabled(!event.getSelection().isEmpty());
        }
    });

    _properties = new PropertiesModel();
    _properties.loadFromPreferences();
    viewer.setInput(_properties);

    return contents;
}

From source file:org.csstudio.diag.pvfields.gui.GUI.java

License:Open Source License

/** Create table for Properties
 *  @param box Container/*  www . j  a va 2s .c  o m*/
 *  @return {@link TableViewer}
 */
private static TableViewer createPropertyTable(final Composite box) {
    final TableColumnLayout table_layout = new TableColumnLayout();
    box.setLayout(table_layout);

    final TableViewer viewer = new TableViewer(box, SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER);
    final Table table = viewer.getTable();
    table.setHeaderVisible(true);
    table.setLinesVisible(true);
    ColumnViewerToolTipSupport.enableFor(viewer);
    viewer.setContentProvider(new ArrayContentProvider());

    createColumn(viewer, table_layout, "Property", 100, new CellLabelProvider() {
        @Override
        public void update(final ViewerCell cell) {
            final String[] values = (String[]) cell.getElement();
            cell.setText(values[0]);
        }
    });
    createColumn(viewer, table_layout, "Value", 161, new CellLabelProvider() {
        @Override
        public void update(final ViewerCell cell) {
            final String[] values = (String[]) cell.getElement();
            cell.setText(values[1]);
        }
    });

    return viewer;
}

From source file:org.csstudio.diag.pvfields.gui.GUI.java

License:Open Source License

/** Create table for {@link PVField}s
 *  @param box Container//from   w w  w  .j a  v  a 2s  .c o m
 *  @return {@link TableViewer}
 */
private static TableViewer createFieldTable(final Composite box) {
    final TableColumnLayout table_layout = new TableColumnLayout();
    box.setLayout(table_layout);

    final TableViewer viewer = new TableViewer(box, SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER);
    final Table table = viewer.getTable();
    table.setHeaderVisible(true);
    table.setLinesVisible(true);
    ColumnViewerToolTipSupport.enableFor(viewer);
    viewer.setContentProvider(new ArrayContentProvider());

    final Display display = viewer.getTable().getDisplay();
    createColumn(viewer, table_layout, "Field", 40, new CellLabelProvider() {
        @Override
        public void update(final ViewerCell cell) {
            final PVField field = (PVField) cell.getElement();
            cell.setText(PVHelper.getField(field.getName()));
        }
    });
    createColumn(viewer, table_layout, "Original Value", 60, new CellLabelProvider() {
        @Override
        public void update(final ViewerCell cell) {
            final PVField field = (PVField) cell.getElement();
            cell.setText(field.getOriginalValue());
            if (field.isChanged())
                cell.setBackground(display.getSystemColor(SWT.COLOR_GRAY));
            else
                cell.setBackground(null);
        }
    });
    createColumn(viewer, table_layout, "Current Value", 60, new CellLabelProvider() {
        @Override
        public void update(final ViewerCell cell) {
            final PVField field = (PVField) cell.getElement();
            cell.setText(field.getCurrentValue());
            if (field.isChanged())
                cell.setBackground(display.getSystemColor(SWT.COLOR_GRAY));
            else
                cell.setBackground(null);
        }
    });
    return viewer;
}

From source file:org.csstudio.opibuilder.visualparts.ActionsInputDialog.java

License:Open Source License

private TableViewer createPropertiesViewer(Composite parent) {
    TableViewer viewer = new TableViewer(parent, SWT.V_SCROLL | SWT.H_SCROLL | SWT.BORDER | SWT.FULL_SELECTION);
    viewer.getTable().setLinesVisible(true);
    viewer.getTable().setHeaderVisible(true);
    TableViewerColumn tvColumn = new TableViewerColumn(viewer, SWT.NONE);
    tvColumn.getColumn().setText("Property");
    tvColumn.getColumn().setMoveable(false);
    tvColumn.getColumn().setWidth(100);/*from w  w  w .  j  av  a 2 s . c  o  m*/
    tvColumn = new TableViewerColumn(viewer, SWT.NONE);
    tvColumn.getColumn().setText("Value");
    tvColumn.getColumn().setMoveable(false);
    tvColumn.getColumn().setWidth(300);
    EditingSupport editingSupport = new PropertiesEditingSupport(viewer, viewer.getTable());
    tvColumn.setEditingSupport(editingSupport);

    viewer.setContentProvider(new WidgetPropertiesContentProvider());
    viewer.setLabelProvider(new PropertiesLabelProvider());
    viewer.getTable().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    viewer.getTable().setEnabled(false);
    return viewer;
}

From source file:org.csstudio.opibuilder.visualparts.ActionsInputDialog.java

License:Open Source License

/**
 * Creates and configures a {@link TableViewer}.
 *
 * @param parent//from  w  w  w  . java2  s.  com
 *            The parent for the table
 * @return The {@link TableViewer}
 */
private TableViewer createActionsTableViewer(final Composite parent) {
    TableViewer viewer = new TableViewer(parent, SWT.V_SCROLL | SWT.H_SCROLL | SWT.BORDER | SWT.SINGLE);
    viewer.setContentProvider(new BaseWorkbenchContentProvider() {
        @SuppressWarnings("unchecked")
        @Override
        public Object[] getElements(final Object element) {
            return (((List<AbstractWidgetAction>) element).toArray());
        }
    });
    viewer.setLabelProvider(new WorkbenchLabelProvider() {
        @Override
        protected String decorateText(String input, Object element) {
            return input + "(index: " + actionsList.indexOf(element) + ")";
        }
    });
    viewer.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(final SelectionChangedEvent event) {
            refreshGUIOnSelection();
        }
    });
    viewer.getTable().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    return viewer;
}

From source file:org.csstudio.opibuilder.visualparts.OPIColorDialog.java

License:Open Source License

/**
 * Creates and configures a {@link TableViewer}.
 *
 * @param parent//from  w w w. j a v a 2  s .co m
 *            The parent for the table
 * @return The {@link TableViewer}
 */
private TableViewer createPredefinedColorsTableViewer(final Composite parent) {
    TableViewer viewer = new TableViewer(parent, SWT.V_SCROLL | SWT.H_SCROLL | SWT.BORDER | SWT.SINGLE);
    viewer.setContentProvider(new BaseWorkbenchContentProvider() {
        @Override
        public Object[] getElements(final Object element) {
            return (Object[]) element;
        }
    });
    viewer.setLabelProvider(new WorkbenchLabelProvider());
    viewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(final SelectionChangedEvent event) {
            refreshGUIOnSelection();
        }
    });
    viewer.getTable().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));

    MenuManager menuManager = new MenuManager();
    menuManager.add(new ReloadColorFileAction());
    viewer.getTable().setMenu(menuManager.createContextMenu(viewer.getTable()));
    viewer.addDoubleClickListener(new IDoubleClickListener() {

        @Override
        public void doubleClick(DoubleClickEvent event) {
            okPressed();
        }
    });
    return viewer;
}

From source file:org.csstudio.opibuilder.visualparts.OPIFontDialog.java

License:Open Source License

/**
 * Creates and configures a {@link TableViewer}.
 *
 * @param parent/*from  w  w  w  . ja v a2  s .c  o m*/
 *            The parent for the table
 * @return The {@link TableViewer}
 */
private TableViewer createPredefinedFontsTableViewer(final Composite parent) {
    TableViewer viewer = new TableViewer(parent, SWT.V_SCROLL | SWT.H_SCROLL | SWT.BORDER | SWT.SINGLE);
    viewer.setContentProvider(new BaseWorkbenchContentProvider() {
        @Override
        public Object[] getElements(final Object element) {
            return (Object[]) element;
        }
    });
    viewer.setLabelProvider(new LabelProvider());
    viewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(final SelectionChangedEvent event) {
            refreshGUIOnSelection();
        }
    });
    viewer.getTable().setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
    MenuManager menuManager = new MenuManager();
    menuManager.add(new ReloadFontFileAction());
    viewer.getTable().setMenu(menuManager.createContextMenu(viewer.getTable()));
    viewer.addDoubleClickListener(new IDoubleClickListener() {

        @Override
        public void doubleClick(DoubleClickEvent event) {
            okPressed();
        }
    });
    return viewer;
}