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:au.gov.ga.earthsci.discovery.ui.TableViewerSelectionHelper.java

License:Apache License

public TableViewerSelectionHelper(final TableViewer viewer, final Class<T> selectionType) {
    viewer.getControl().addMouseListener(new MouseAdapter() {
        @Override//  w  w  w . j  av a 2 s. c o m
        public void mouseDown(MouseEvent e) {
            ViewerCell cell = viewer.getCell(new Point(e.x, e.y));
            if (cell == null) {
                viewer.setSelection(StructuredSelection.EMPTY);
            }
        }
    });

    viewer.getTable().addSelectionListener(new SelectionListener() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            IStructuredSelection selection = (IStructuredSelection) viewer.getSelection();
            Object s = selection.getFirstElement();
            if (s == null) {
                itemSelected(null);
            } else if (selectionType.isInstance(s)) {
                T t = selectionType.cast(s);
                itemSelected(t);
            }
        }

        @Override
        public void widgetDefaultSelected(SelectionEvent e) {
            IStructuredSelection selection = (IStructuredSelection) viewer.getSelection();
            Object s = selection.getFirstElement();
            if (selectionType.isInstance(s)) {
                T t = selectionType.cast(s);
                itemDefaultSelected(t);
            }
        }
    });
}

From source file:ca.mcgill.sable.soot.ui.AnalysisVisManipDialog.java

License:Open Source License

protected Control createDialogArea(Composite parent) {
    GridData gd;/*from   w  w  w.  j  a  v  a 2s.  c  o m*/

    Composite dialogComp = (Composite) super.createDialogArea(parent);
    Composite topComp = new Composite(dialogComp, SWT.NONE);
    gd = new GridData(GridData.FILL_BOTH);
    topComp.setLayoutData(gd);
    GridLayout topLayout = new GridLayout();
    topLayout.numColumns = 2;
    topComp.setLayout(topLayout);

    setTitle("Project: " + getProj().getName());
    setMessage("");

    TabFolder tabFolder = new TabFolder(topComp, SWT.NONE);
    gd = new GridData(GridData.FILL_BOTH);
    tabFolder.setLayoutData(gd);

    TabItem singleFileItem = new TabItem(tabFolder, SWT.NONE);
    singleFileItem.setText("By File");
    TabItem globalItem = new TabItem(tabFolder, SWT.NONE);
    globalItem.setText("By Project");

    /* create single file tab */
    SashForm sash = new SashForm(tabFolder, SWT.NONE);
    singleFileItem.setControl(sash);
    sash.setOrientation(SWT.HORIZONTAL);

    gd = new GridData(GridData.FILL_BOTH);
    sash.setLayoutData(gd);

    Composite selection = createSelectionArea(sash);
    gd = new GridData(GridData.FILL_VERTICAL);
    gd.horizontalSpan = 1;

    selection.setLayoutData(gd);

    Composite types = createCheckArea(sash);
    gd = new GridData(GridData.FILL_VERTICAL);
    gd.horizontalSpan = 1;

    types.setLayoutData(gd);

    /* create global tab */
    Composite global = new Composite(tabFolder, SWT.NONE);
    GridLayout globalLayout = new GridLayout();

    global.setLayout(globalLayout);

    Table allTable = new Table(global, SWT.CHECK);
    TableViewer allTypesList = new TableViewer(allTable);
    allTypesList.setContentProvider(new ArrayContentProvider());
    allTypesList.setLabelProvider(new LabelProvider());

    gd = new GridData(GridData.FILL_BOTH);
    allTypesList.getControl().setLayoutData(gd);

    Composite buttonPanel = new Composite(global, SWT.NONE);
    GridLayout bpLayout = new GridLayout();
    bpLayout.numColumns = 2;
    buttonPanel.setLayout(bpLayout);

    Button selectAll = new Button(buttonPanel, SWT.PUSH);
    selectAll.setText("Select All");
    gd = new GridData();
    gd.horizontalSpan = 1;
    selectAll.setLayoutData(gd);

    Button deselectAll = new Button(buttonPanel, SWT.PUSH);
    deselectAll.setText("De-select All");
    gd = new GridData();
    gd.horizontalSpan = 1;
    deselectAll.setLayoutData(gd);

    globalItem.setControl(global);

    return dialogComp;
}

From source file:com.android.traceview.PropertiesDialog.java

License:Apache License

@Override
protected Control createDialogArea(Composite parent) {
    Composite container = (Composite) super.createDialogArea(parent);
    GridLayout gridLayout = new GridLayout(1, false);
    gridLayout.marginWidth = 0;//from  w  w  w  .  j a  v  a 2s.c  o  m
    gridLayout.marginHeight = 0;
    gridLayout.horizontalSpacing = 0;
    gridLayout.verticalSpacing = 0;
    container.setLayout(gridLayout);

    TableViewer tableViewer = new TableViewer(container, SWT.HIDE_SELECTION | SWT.V_SCROLL | SWT.BORDER);
    tableViewer.getTable().setLinesVisible(true);
    tableViewer.getTable().setHeaderVisible(true);

    TableViewerColumn propertyColumn = new TableViewerColumn(tableViewer, SWT.NONE);
    propertyColumn.getColumn().setText("Property");
    propertyColumn.setLabelProvider(new ColumnLabelProvider() {
        @Override
        @SuppressWarnings("unchecked")
        public String getText(Object element) {
            Entry<String, String> entry = (Entry<String, String>) element;
            return entry.getKey();
        }
    });
    propertyColumn.getColumn().setWidth(400);

    TableViewerColumn valueColumn = new TableViewerColumn(tableViewer, SWT.NONE);
    valueColumn.getColumn().setText("Value");
    valueColumn.setLabelProvider(new ColumnLabelProvider() {
        @Override
        @SuppressWarnings("unchecked")
        public String getText(Object element) {
            Entry<String, String> entry = (Entry<String, String>) element;
            return entry.getValue();
        }
    });
    valueColumn.getColumn().setWidth(200);

    tableViewer.setContentProvider(new ArrayContentProvider());
    tableViewer.setInput(mProperties.entrySet().toArray());

    GridData gridData = new GridData();
    gridData.verticalAlignment = GridData.FILL;
    gridData.horizontalAlignment = GridData.FILL;
    gridData.grabExcessHorizontalSpace = true;
    gridData.grabExcessVerticalSpace = true;
    tableViewer.getControl().setLayoutData(gridData);

    return container;
}

From source file:com.aptana.git.ui.internal.history.GitHistoryPage.java

License:Open Source License

/**
 * hookContextMenu/*w ww . j a v  a  2 s . c o  m*/
 */
private void hookContextMenu(TableViewer treeViewer) {
    MenuManager menuMgr = new MenuManager("#PopupMenu"); //$NON-NLS-1$
    menuMgr.setRemoveAllWhenShown(true);

    // Create menu.
    Menu menu = menuMgr.createContextMenu(treeViewer.getControl());
    treeViewer.getControl().setMenu(menu);
    getSite().registerContextMenu(POPUP_MENU_ID, menuMgr, treeViewer);
}

From source file:com.aptana.ide.installer.views.PluginsView.java

License:Open Source License

/**
 * Creates and registers the context menu
 *//*from   w w w  . j a  v a 2 s .  c o m*/
private void createPopupMenu(TableViewer table, String[] ids) {
    MenuManager menuMgr = new MenuManager("#PopupMenu"); //$NON-NLS-1$
    menuMgr.setRemoveAllWhenShown(true);

    menuMgr.addMenuListener(new MyMenuListener(getViewSite(), ids));

    Menu menu = menuMgr.createContextMenu(table.getControl());
    table.getControl().setMenu(menu);
    getSite().registerContextMenu(menuMgr, table);
}

From source file:com.aptana.ide.search.AptanaFileSearchPage.java

License:Open Source License

/**
 * we are reconfiguring table viewer to matches mode here
 *///from w  w  w  .j  a v a  2 s. c  o  m
private void reconfigureTableViewer() {

    TableViewer tViewer = (TableViewer) this.getViewer();
    TableColumn[] columns = tViewer.getTable().getColumns();
    for (int a = 0; a < columns.length; a++) {
        columns[a].dispose();
    }
    this.metrics = new PixelConverter(tViewer.getControl());
    tViewer.getTable().setHeaderVisible(true);
    TableColumn clmn = new TableColumn(tViewer.getTable(), SWT.LEFT);
    clmn.setText(com.aptana.ide.search.Messages.AptanaFileSearchPage_File);
    TableColumn clmn1 = new TableColumn(tViewer.getTable(), SWT.LEFT);
    clmn1.setText(com.aptana.ide.search.Messages.AptanaFileSearchPage_Line);
    TableColumn clmn2 = new TableColumn(tViewer.getTable(), SWT.LEFT);
    clmn2.setText(com.aptana.ide.search.Messages.AptanaFileSearchPage_Source);

    TableLayout tableLayout = new TableLayout();
    tableLayout.addColumnData(new ColumnWeightData(1));
    tableLayout.addColumnData(new ColumnPixelData(50));
    tableLayout.addColumnData(new ColumnWeightData(1));
    PreferenceUtils.persist(Activator.getDefault().getPreferenceStore(), tViewer.getTable(), "tviewer"); //$NON-NLS-1$
    this.listener = new Listener() {

        public void handleEvent(Event event) {
            if (event.index == 2) {
                AptanaFileMatch aptanaFileMatch = ((AptanaFileMatch) event.item.getData());
                if (aptanaFileMatch != null) {
                    event.gc.drawText(aptanaFileMatch.getLineContent(), event.x, event.y);
                }
            }
        }

    };
    this.listener1 = new Listener() {

        public void handleEvent(Event event) {

            if (event.index == 2) {
                AptanaFileMatch aptanaFileMatch = ((AptanaFileMatch) event.item.getData());
                if (aptanaFileMatch != null) {
                    event.width = AptanaFileSearchPage.this.metrics
                            .convertWidthInCharsToPixels(aptanaFileMatch.getLineContent().length());
                }
            }
        }

    };
    tViewer.getTable().addListener(SWT.PaintItem, this.listener);
    tViewer.getTable().setLayout(tableLayout);
    IBaseLabelProvider labelProvider = tViewer.getLabelProvider();
    //if (labelProvider instanceof DecoratingLabelProvider){
    labelProvider = new DecoratingFileSearchLabelProvider(
            new FileLabelProvider(this, FileLabelProvider.SHOW_LABEL_PATH));
    tViewer.setLabelProvider(labelProvider);
    baseLabelProvider = (DecoratingFileSearchLabelProvider) labelProvider;
    tViewer.setInput(null);
    tViewer.setLabelProvider(new MatchesTableLabelProvider());
    final IContentProvider contentProvider = tViewer.getContentProvider();
    this.structuredContentProvider = new MatchesContentProvider(this, contentProvider);
    tViewer.setContentProvider(this.structuredContentProvider);
    tViewer.setInput(this.getInput());
    tViewer.getTable().getParent().layout(true);
}

From source file:com.aptana.ide.search.ui.filesystem.AptanaFileSystemSearchPage.java

License:Open Source License

private void reconfigureTableViewer() {
    TableViewer tViewer = (TableViewer) getViewer();
    TableColumn[] columns = tViewer.getTable().getColumns();
    for (int a = 0; a < columns.length; a++) {
        columns[a].dispose();/* w  w  w  .ja  v  a2s  .  c om*/
    }
    metrics = new PixelConverter(tViewer.getControl());
    tViewer.getTable().setHeaderVisible(true);
    TableColumn clmn = new TableColumn(tViewer.getTable(), SWT.LEFT);
    clmn.setText(com.aptana.ide.search.Messages.AptanaFileSearchPage_File);
    TableColumn clmn1 = new TableColumn(tViewer.getTable(), SWT.LEFT);
    clmn1.setText(com.aptana.ide.search.Messages.AptanaFileSearchPage_Line);
    TableColumn clmn2 = new TableColumn(tViewer.getTable(), SWT.LEFT);
    clmn2.setText(com.aptana.ide.search.Messages.AptanaFileSearchPage_Source);

    TableLayout tableLayout = new TableLayout();
    tableLayout.addColumnData(new ColumnWeightData(1));
    tableLayout.addColumnData(new ColumnPixelData(50));
    tableLayout.addColumnData(new ColumnWeightData(1));
    PreferenceUtils.persist(Activator.getDefault().getPreferenceStore(), tViewer.getTable(), "tviewer"); //$NON-NLS-1$
    this.listener = new Listener() {

        public void handleEvent(Event event) {
            if (event.index == 2) {
                AptanaFileSystemMatch aptanaFileMatch = ((AptanaFileSystemMatch) event.item.getData());
                if (aptanaFileMatch != null) {
                    event.gc.drawText(aptanaFileMatch.getLineContent(), event.x, event.y);
                }
            }
        }

    };
    this.listener1 = new Listener() {

        public void handleEvent(Event event) {

            if (event.index == 2) {
                AptanaFileSystemMatch aptanaFileMatch = ((AptanaFileSystemMatch) event.item.getData());
                if (aptanaFileMatch != null) {
                    event.width = AptanaFileSystemSearchPage.this.metrics
                            .convertWidthInCharsToPixels(aptanaFileMatch.getLineContent().length());
                }
            }
        }

    };
    tViewer.getTable().addListener(SWT.PaintItem, this.listener);
    tViewer.getTable().setLayout(tableLayout);
    this.baseLabelProvider = (LabelProvider) tViewer.getLabelProvider();
    tViewer.setInput(null);
    tViewer.setLabelProvider(new MatchesTableLabelProvider());
    final IContentProvider contentProvider = tViewer.getContentProvider();
    this.structuredContentProvider = new MatchesContentProvider(this, contentProvider);
    tViewer.setContentProvider(this.structuredContentProvider);
    tViewer.setInput(this.getInput());
    tViewer.getTable().getParent().layout(true);
}

From source file:com.aptana.ide.server.ui.views.ServersView.java

License:Open Source License

private TableViewer createServerTable(Composite parent) {
    TableViewer view = new TableViewer(parent, SWT.SINGLE | SWT.FULL_SELECTION);
    Table serverTable = view.getTable();
    serverTable.setHeaderVisible(true);/*w  w  w .j  a  v a 2s . c o  m*/
    serverTable.setLinesVisible(true);
    serverTable.setLayoutData(new GridData(GridData.FILL_BOTH));

    TableColumn imageCol = new TableColumn(serverTable, SWT.LEFT);
    imageCol.setWidth(20);

    TableColumn nameCol = new TableColumn(serverTable, SWT.LEFT);
    nameCol.setText(Messages.ServersView_NAME);
    nameCol.setWidth(100);

    TableColumn statusCol = new TableColumn(serverTable, SWT.LEFT);
    statusCol.setText(Messages.ServersView_STATUS);
    statusCol.setWidth(125);

    ServerManager.getInstance().addServerListener(this);
    view.setLabelProvider(new ServerLabelProvider());
    view.setContentProvider(new ServerContentProvider());
    PreferenceUtils.registerBackgroundColorPreference(view.getControl(),
            "com.aptana.ide.core.ui.background.color.serversView"); //$NON-NLS-1$
    PreferenceUtils.registerForegroundColorPreference(view.getControl(),
            "com.aptana.ide.core.ui.foreground.color.serversView"); //$NON-NLS-1$
    return view;
}

From source file:com.archimatetool.templates.wizard.NewModelFromTemplateWizardPage.java

License:Open Source License

/**
 * Select first group on user table if there is one, else first group on inbuilt table
 *//*from  w  w  w  . j av  a  2s . c om*/
private void selectFirstTableItem() {
    TableViewer tableViewer;

    if (!fTemplateManager.getUserTemplates().isEmpty()) {
        tableViewer = fUserTableViewer;
    } else {
        tableViewer = fInbuiltTableViewer;
    }

    Object o = tableViewer.getElementAt(0);
    if (o != null) {
        tableViewer.setSelection(new StructuredSelection(o));
        tableViewer.getControl().setFocus();
    }
}

From source file:com.asakusafw.shafu.internal.ui.preferences.ShafuPreferencePage.java

License:Apache License

private void createPropertiesField(Composite pane, final String key, int span, String title) {
    Group group = new Group(pane, SWT.NONE);
    group.setText(title);/* ww w . jav a  2 s  .  c om*/
    group.setLayoutData(
            GridDataFactory.swtDefaults().align(SWT.FILL, SWT.FILL).grab(true, true).span(span, 1).create());
    group.setLayout(new GridLayout(2, false));

    final Map<String, String> contents = new LinkedHashMap<String, String>();
    final TableViewer viewer = new TableViewer(group,
            SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER | SWT.FULL_SELECTION);
    viewer.getControl().setLayoutData(GridDataFactory.fillDefaults().grab(true, true).span(1, 3)
            .indent(BasicField.getDecorationWidth(), 0).create());
    viewer.setContentProvider(new PropertiesContentProvider());
    viewer.setLabelProvider(new PropertiesLabelProvider());
    viewer.setInput(contents);
    viewer.getTable().setLinesVisible(true);
    viewer.getTable().setHeaderVisible(true);
    TableColumn keyColumn = new TableColumn(viewer.getTable(), SWT.NONE, 0);
    keyColumn.setResizable(true);
    keyColumn.setText(Messages.ShafuPreferencePage_propertiesKeyLabel);
    keyColumn.setWidth(convertWidthInCharsToPixels(20));
    TableColumn valueColumn = new TableColumn(viewer.getTable(), SWT.NONE, 1);
    valueColumn.setResizable(true);
    valueColumn.setText(Messages.ShafuPreferencePage_propertiesValueLabel);
    valueColumn.setWidth(convertWidthInCharsToPixels(40));
    viewer.addDoubleClickListener(new IDoubleClickListener() {
        @Override
        public void doubleClick(DoubleClickEvent event) {
            ISelection s = event.getSelection();
            if (s.isEmpty()) {
                return;
            }
            if ((s instanceof IStructuredSelection) == false) {
                return;
            }
            Map.Entry<?, ?> first = (Map.Entry<?, ?>) ((IStructuredSelection) s).iterator().next();
            String oldKey = (String) first.getKey();
            String oldValue = (String) first.getValue();
            PropertyEntryInputDialog dialog = new PropertyEntryInputDialog(getShell(), contents, oldKey,
                    oldValue);
            if (dialog.open() != Window.OK) {
                return;
            }
            contents.remove(oldKey);
            contents.put(dialog.getInputKey(), dialog.getInputValue());
            viewer.refresh();
            setPreferenceValue(key, encodeMap(contents));
        }
    });

    final Button addButton = new Button(group, SWT.PUSH);
    addButton.setText(Messages.ShafuPreferencePage_propertiesAddLabel);
    addButton.setLayoutData(GridDataFactory.swtDefaults().align(SWT.FILL, SWT.BEGINNING).create());
    addButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            PropertyEntryInputDialog dialog = new PropertyEntryInputDialog(getShell(), contents);
            if (dialog.open() != Window.OK) {
                return;
            }
            contents.put(dialog.getInputKey(), dialog.getInputValue());
            viewer.refresh();
            setPreferenceValue(key, encodeMap(contents));
        }
    });

    final Button removeButton = new Button(group, SWT.PUSH);
    removeButton.setText(Messages.ShafuPreferencePage_propertiesRemoveLabel);
    removeButton.setLayoutData(GridDataFactory.swtDefaults().align(SWT.FILL, SWT.BEGINNING).create());
    removeButton.setEnabled(false);
    removeButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            ISelection selection = viewer.getSelection();
            if (selection instanceof IStructuredSelection) {
                Iterator<?> iter = ((IStructuredSelection) selection).iterator();
                Set<String> keys = new HashSet<String>();
                while (iter.hasNext()) {
                    Map.Entry<?, ?> entry = (Map.Entry<?, ?>) iter.next();
                    keys.add((String) entry.getKey());
                }
                contents.keySet().removeAll(keys);
                viewer.refresh();
                setPreferenceValue(key, encodeMap(contents));
            }
        }
    });

    viewer.addSelectionChangedListener(new ISelectionChangedListener() {
        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            removeButton.setEnabled(event.getSelection().isEmpty() == false);
        }
    });

    registerField(new PreferenceField(key, viewer.getControl()) {
        @Override
        public void refresh() {
            String value = getPreferenceValue(key);
            Map<String, String> map = decodeToMap(value);
            contents.clear();
            contents.putAll(map);
            viewer.refresh();
            setPreferenceValue(key, encodeMap(contents));
        }
    });
}