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

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

Introduction

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

Prototype

@Override
    public Control getControl() 

Source Link

Usage

From source file:org.eclipse.jface.snippets.viewers.Snippet019TableViewerAddRemoveColumnsWithEditing.java

License:Open Source License

private void addMenu(final TableViewer v) {
    final MenuManager mgr = new MenuManager();

    final Action insertEmailBefore = new Action("Insert E-Mail before") {
        @Override//from w  w  w.  j  a  v a  2  s.com
        public void run() {
            addEmailColumn(v, activeColumn);
        }
    };

    final Action insertEmailAfter = new Action("Insert E-Mail after") {
        @Override
        public void run() {
            addEmailColumn(v, activeColumn + 1);
        }
    };

    final Action removeEmail = new Action("Remove E-Mail") {
        @Override
        public void run() {
            removeEmailColumn(v);
        }
    };

    final Action configureColumns = new Action("Configure Columns...") {
        @Override
        public void run() {
            ConfigureColumns.forTable(v.getTable(), new SameShellProvider(v.getControl()));
        }
    };

    mgr.setRemoveAllWhenShown(true);
    mgr.addMenuListener(new IMenuListener() {

        @Override
        public void menuAboutToShow(IMenuManager manager) {
            if (v.getTable().getColumnCount() == 2) {
                manager.add(insertEmailBefore);
                manager.add(insertEmailAfter);
            } else {
                manager.add(removeEmail);
            }
            manager.add(configureColumns);
        }

    });

    v.getControl().setMenu(mgr.createContextMenu(v.getControl()));
}

From source file:org.eclipse.jface.snippets.viewers.Snippet049StyledCellLabelProvider.java

License:Open Source License

public Composite createPartControl(Composite parent) {
    Composite composite = new Composite(parent, SWT.NONE);

    composite.setLayout(new GridLayout(1, true));

    Label label = new Label(composite, SWT.NONE);
    label.setLayoutData(new GridData(SWT.BEGINNING, SWT.CENTER, false, false));
    label.setText("Viewer with a StyledCellLabelProvider:"); //$NON-NLS-1$

    final TableViewer tableViewer = new TableViewer(composite, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL);

    // Multi-font support only works in JFace 3.5 and above (specifically, 3.5 M4 and above).
    // With JFace 3.4, the font information (bold in this example) will be ignored.
    FontData[] boldFontData = getModifiedFontData(tableViewer.getTable().getFont().getFontData(), SWT.BOLD);

    Font boldFont = new Font(Display.getCurrent(), boldFontData);
    ExampleLabelProvider labelProvider = new ExampleLabelProvider(boldFont);
    FileSystemContentProvider contentProvider = new FileSystemContentProvider();

    tableViewer.setContentProvider(contentProvider);
    tableViewer.setLabelProvider(labelProvider);

    GridData data = new GridData(GridData.FILL, GridData.FILL, true, true);
    tableViewer.getControl().setLayoutData(data);
    tableViewer.setInput(new Object());

    return composite;
}

From source file:org.eclipse.jface.snippets.viewers.Snippet057TableViewerSkipHiddenCells.java

License:Open Source License

public Snippet057TableViewerSkipHiddenCells(Shell shell) {

    final TableViewer tableviewer = new TableViewer(shell, SWT.BORDER | SWT.FULL_SELECTION);
    tableviewer.setContentProvider(ArrayContentProvider.getInstance());
    MenuManager mgr = new MenuManager();
    mgr.add(new Action("toggle surname visibility") {

        @Override/*from  w  ww. ja  v  a 2 s.c om*/
        public void run() {
            if (tableviewer.getTable().getColumn(1).getWidth() == 0) {
                tableviewer.getTable().getColumn(1).setWidth(200);
            } else {
                tableviewer.getTable().getColumn(1).setWidth(0);
            }

        }

    });
    tableviewer.getControl().setMenu(mgr.createContextMenu(tableviewer.getControl()));

    // Column 1
    TableViewerColumn column = new TableViewerColumn(tableviewer, SWT.NONE);
    column.getColumn().setWidth(200);
    column.getColumn().setText("Givenname");
    column.getColumn().setMoveable(false);
    column.setLabelProvider(new ColumnLabelProvider() {

        @Override
        public String getText(Object element) {
            return ((Person) element).givenname;
        }

    });

    column.setEditingSupport(new AbstractEditingSupport(tableviewer) {

        @Override
        protected Object getValue(Object element) {
            return ((Person) element).givenname;
        }

        @Override
        protected void doSetValue(Object element, Object value) {
            ((Person) element).givenname = value.toString();
        }

    });

    // Column 2 is zero-width hidden
    column = new TableViewerColumn(tableviewer, SWT.NONE);
    column.getColumn().setWidth(200);
    column.getColumn().setText("Surname");
    column.getColumn().setMoveable(false);
    column.getColumn().setResizable(false);
    column.setLabelProvider(new ColumnLabelProvider() {

        @Override
        public String getText(Object element) {
            return ((Person) element).surname;
        }

    });

    column.setEditingSupport(new AbstractEditingSupport(tableviewer) {

        @Override
        protected Object getValue(Object element) {
            return ((Person) element).surname;
        }

        @Override
        protected void doSetValue(Object element, Object value) {
            ((Person) element).surname = value.toString();
        }

    });

    // column 3
    column = new TableViewerColumn(tableviewer, SWT.NONE);
    column.getColumn().setWidth(200);
    column.getColumn().setText("E-Mail");
    column.getColumn().setMoveable(false);
    column.setLabelProvider(new ColumnLabelProvider() {

        @Override
        public String getText(Object element) {
            return ((Person) element).email;
        }

    });

    column.setEditingSupport(new AbstractEditingSupport(tableviewer) {

        @Override
        protected Object getValue(Object element) {
            return ((Person) element).email;
        }

        @Override
        protected void doSetValue(Object element, Object value) {
            ((Person) element).email = value.toString();
        }

    });

    Person[] model = this.createModel();
    tableviewer.setInput(model);
    tableviewer.getTable().setLinesVisible(true);
    tableviewer.getTable().setHeaderVisible(true);

    TableViewerFocusCellManager focusCellManager = new TableViewerFocusCellManager(tableviewer,
            new FocusCellOwnerDrawHighlighter(tableviewer));

    ColumnViewerEditorActivationStrategy actSupport = new ColumnViewerEditorActivationStrategy(tableviewer) {

        @Override
        protected boolean isEditorActivationEvent(

                ColumnViewerEditorActivationEvent event) {

            return event.eventType == ColumnViewerEditorActivationEvent.TRAVERSAL
                    || event.eventType == ColumnViewerEditorActivationEvent.MOUSE_DOUBLE_CLICK_SELECTION
                    || event.eventType == ColumnViewerEditorActivationEvent.KEY_PRESSED
                            && event.keyCode == SWT.CR
                    || event.eventType == ColumnViewerEditorActivationEvent.PROGRAMMATIC;

        }

    };

    TableViewerEditor.create(tableviewer, focusCellManager, actSupport,
            ColumnViewerEditor.TABBING_HORIZONTAL | ColumnViewerEditor.TABBING_MOVE_TO_ROW_NEIGHBOR
                    | ColumnViewerEditor.TABBING_VERTICAL | ColumnViewerEditor.KEYBOARD_ACTIVATION);

}

From source file:org.eclipse.jface.snippets.viewers.Snippet065TableViewerReplacingElements.java

License:Open Source License

public Snippet065TableViewerReplacingElements(Shell shell) {
    Random random = new Random();
    final Composite c = new Composite(shell, SWT.NONE);
    c.setLayout(new FillLayout(SWT.VERTICAL));
    Label l = new Label(c, SWT.NONE);
    l.setText(//from  www .  j  a v a  2s .  c o  m
            "The elements are ordered lexicografically, i.e. 11 comes before 2,\nPress q, to rename one element.");
    final TableViewer v = new TableViewer(c);
    String[] rootElements = new String[] { "root 1", "root 2", "root 3" };
    final IObservableList<String> input = new WritableList<>(DisplayRealm.getRealm(shell.getDisplay()));
    input.addAll(Arrays.asList(rootElements));
    IContentProvider contentProvider = new ObservableListContentProvider();
    v.setContentProvider(contentProvider);
    v.setComparator(new ViewerComparator());
    v.setInput(input);
    v.getControl().addKeyListener(new KeyAdapter() {
        @Override
        public void keyPressed(KeyEvent e) {
            // don't use 'r' and 'c', because they would iterate through the
            // root... / child... elements
            if (e.character == 'q') {
                input.set(0, "root " + random.nextInt());
            }
        }
    });
}

From source file:org.eclipse.jface.snippets.window.Snippet031TableStaticTooltip.java

License:Open Source License

private void createToolTipFor(final TableViewer viewer) {
    DefaultToolTip toolTip = new DefaultToolTip(viewer.getControl(), ToolTip.NO_RECREATE, false);

    toolTip.setText("Hello World\nHello World");
    toolTip.setBackgroundColor(viewer.getTable().getDisplay().getSystemColor(SWT.COLOR_RED));

    toolTip.setShift(new Point(10, 5));
}

From source file:org.eclipse.jst.jsf.facesconfig.ui.dialog.CommonListDialog.java

License:Open Source License

/**
 * Create the structured viewer, set up content & label provider for it.
 * Defaultly create a tableviewer.//from   www.  j  a va2  s  .co  m
 * 
 * @param parent
 * @return the structured viewer
 */
protected StructuredViewer createViewer(Composite parent) {

    GridData gd = new GridData(GridData.FILL_BOTH);
    gd.heightHint = 200;
    gd.widthHint = 150;
    parent.setLayoutData(gd);
    GridLayout layout = new GridLayout();
    parent.setLayout(layout);

    TableViewer tableViewer = new TableViewer(parent, SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL);
    gd = new GridData(GridData.FILL_BOTH);
    tableViewer.getControl().setLayoutData(gd);

    tableViewer.setContentProvider(new AdapterFactoryContentProvider(getAdapterFactory()));
    tableViewer.setLabelProvider(new AdapterFactoryLabelProvider(getAdapterFactory()));
    configViewer(tableViewer);
    tableViewer.setInput(input);

    return tableViewer;
}

From source file:org.eclipse.jst.jsf.facesconfig.ui.section.FacesConfigMasterSection.java

License:Open Source License

/**
 * Create the structured viewer, set up content & label provider for it.
 * Defaultly create a tableviewer./*from www .  j  a v a2 s  .  c o m*/
 * 
 * @param parent
 * @param toolkit
 * @return the structured viewer
 */
protected StructuredViewer createViewer(Composite parent, FormToolkit toolkit) {
    Composite tableContainer = toolkit.createComposite(parent);
    toolkit.paintBordersFor(tableContainer);

    GridData gd = new GridData(GridData.FILL_BOTH);
    gd.heightHint = 200;
    tableContainer.setLayoutData(gd);
    GridLayout layout = new GridLayout();
    tableContainer.setLayout(layout);

    TableViewer tableViewer = new TableViewer(tableContainer,
            SWT.SINGLE | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER);
    gd = new GridData(GridData.FILL_BOTH);
    tableViewer.getControl().setLayoutData(gd);

    tableViewer.setContentProvider(new AdapterFactoryContentProvider(getAdapterFactory()));
    tableViewer.setLabelProvider(new AdapterFactoryLabelProvider(getAdapterFactory()));

    configViewer(tableViewer);

    return tableViewer;
}

From source file:org.eclipse.jubula.client.alm.mylyn.ui.dialogs.InspectALMAttributesDialog.java

License:Open Source License

/**
 * {@inheritDoc}//from ww w  . j  a  v  a 2 s .  c om
 */
protected Control createDialogArea(Composite parent) {
    setTitle(Messages.InspectorTitle);
    setMessage(Messages.InspectorMessage);
    getShell().setText(Messages.InspectorTitle);
    parent.setLayout(new GridLayout());
    Composite content = new Composite(parent, SWT.None);
    content.setLayout(new GridLayout());

    TableViewer tableViewer = createTableViewer(content);

    createAttributeIDColumn(tableViewer);
    createValueColumn(tableViewer);
    createOptionsColumn(tableViewer);
    createPropertiesColumn(tableViewer);
    tableViewer.setInput(m_taskAttribute.getAttributes());
    GridData tableViewerGD = new GridData(GridData.FILL, GridData.FILL, true, true);
    tableViewerGD.horizontalSpan = 2;
    tableViewer.getControl().setLayoutData(tableViewerGD);

    GridData contentGD = new GridData(GridData.FILL, GridData.FILL, true, true);
    contentGD.heightHint = 600;
    content.setLayoutData(contentGD);

    return parent;
}

From source file:org.eclipse.jubula.client.analyze.ui.renderer.TableRenderer.java

License:Open Source License

/**
 * creates the TableViewer/* w ww. jav a 2  s .  c  om*/
 * 
 * @param parent
 *            The parent Composite
 * @param resultList
 *            The Given resultList
 */
private void createViewer(Composite parent, List<TableResult> resultList) {
    TableViewer tv = new TableViewer(parent);
    createColumns(parent, tv);

    Table table = tv.getTable();
    table.setHeaderVisible(true);
    table.setLinesVisible(true);

    tv.setContentProvider(new ArrayContentProvider());
    // set the Sorter

    tv.setSorter(new TableResultSorter());

    tv.setInput(resultList);
    // set the crontrol of the TreeViewer as the TopControl of this Renderer
    setTopControl(tv.getControl());
}

From source file:org.eclipse.linuxtools.internal.valgrind.massif.birt.ChartControl.java

License:Open Source License

public void callback(Object event, Object source, CallBackValue value) {
    // give Valgrind view focus
    showView();/*  ww w  .  ja va 2 s  .c o  m*/
    MouseEvent mEvent = (MouseEvent) event;

    DataPointHints point = ((DataPointHints) ((WrappedStructureSource) source).getSource());
    // select the corresponding snapshot in the TableViewer
    TableViewer viewer = view.getTableViewer();
    view.setTopControl(viewer.getControl());

    MassifSnapshot snapshot = (MassifSnapshot) viewer.getElementAt(point.getIndex());

    switch (mEvent.count) {
    case 1: // single click
        viewer.setSelection(new StructuredSelection(snapshot));
        break;
    case 2: // double click
        if (snapshot.isDetailed()) {
            ChartLocationsDialog dialog = new ChartLocationsDialog(getShell());
            dialog.setInput(snapshot);

            if (dialog.open() == Window.OK) {
                dialog.openEditorForResult();
            }
        }
    }
}