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

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

Introduction

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

Prototype

public Table getTable() 

Source Link

Document

Returns this table viewer's table control.

Usage

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

License:Open Source License

/**
 * handles updates//from ww  w.j  a va 2s  .  c  om
 * @param updatedElements
 * updates elements 
 */
public void elementsChanged(Object[] updatedElements) {
    StructuredViewer viewer2 = this.aptanaFileSearchPage.getViewer();
    TableViewer viewer = (TableViewer) viewer2;
    int elementLimit = this.getElementLimit();
    boolean tableLimited = getElementLimit() == -1;
    AbstractTextSearchResult input = this.aptanaFileSearchPage.getInput();
    for (int i = 0; i < updatedElements.length; i++) {
        Object element = updatedElements[i];

        Match[] matchs = (Match[]) this.mmap.get(element);
        if (matchs == null) {
            matchs = AptanaFileSearchPage.NO_MATCH;
        }
        if (input.getMatchCount(element) > 0) {
            Match[] matches = input.getMatches(element);
            HashSet set = new HashSet(Arrays.asList(matches));
            for (int a = 0; a < matchs.length; a++) {
                Match m = matchs[a];
                if (!set.contains(m)) {
                    viewer.remove(m);
                } else {
                    set.remove(m);
                }
            }
            this.mmap.put(element, matches);
            for (Iterator iterator = set.iterator(); iterator.hasNext();) {
                Match name = (Match) iterator.next();
                if (!tableLimited || (viewer.getTable().getItemCount() < elementLimit)) {
                    viewer.add(name);
                } else {
                    break;
                }
            }
        } else {
            viewer.remove(matchs);
        }
    }
}

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

License:Open Source License

/**
 * @see org.eclipse.search.internal.ui.text.FileSearchPage#getLabel()
 *///w  w w  .  j  a v  a  2  s  . c o m
public String getLabel() {
    if (this.layout == LAYOUT_MATCHES) {
        AbstractTextSearchResult input = getInput();
        if (input != null) {
            String label = input.getLabel();
            TableViewer viewer = (TableViewer) getViewer();
            int itemCount = viewer.getTable().getItemCount();
            int matchCount = input.getMatchCount();
            if (itemCount < matchCount) {
                return Messages.format(com.aptana.ide.search.Messages.AptanaFileSearchPage_NOT_ALL_MATCHES,
                        new Object[] { label, new Integer(itemCount), new Integer(matchCount) });
            }
        } else {
            return ""; //$NON-NLS-1$
        }
    }
    return super.getLabel();
}

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

License:Open Source License

/**
 * @see org.eclipse.search.ui.text.AbstractTextSearchViewPage#handleSearchResultChanged(org.eclipse.search.ui.SearchResultEvent)
 *///from www. jav a 2  s .c  o  m
protected void handleSearchResultChanged(final SearchResultEvent e) {
    if (this.layout != LAYOUT_MATCHES) {
        super.handleSearchResultChanged(e);
        return;
    }
    if (e instanceof MatchEvent) {
        MatchEvent me = (MatchEvent) e;
        int kind = me.getKind();
        if ((Display.getCurrent() != null) && (kind == MatchEvent.REMOVED)) {
            TableViewer cc = (TableViewer) getViewer();
            Table table = cc.getTable();
            int selectionIndex = table.getSelectionIndex();
            cc.refresh();
            if (selectionIndex != -1) {
                if (selectionIndex < table.getItemCount()) {
                    TableItem item = cc.getTable().getItem(selectionIndex);
                    cc.setSelection(new StructuredSelection(item.getData()));
                }
            }
        } else {
            super.handleSearchResultChanged(e);
        }
    } else if (e instanceof RemoveAllEvent) {
        super.handleSearchResultChanged(e);
    }
}

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();/*from ww w.  j  a v a2  s  .  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.search.ui.filesystem.MatchesContentProvider.java

License:Open Source License

/**
 * handles updates// w w  w .ja v a 2  s .com
 * 
 * @param updatedElements
 *            updates elements
 */
public void elementsChanged(Object[] updatedElements) {
    StructuredViewer viewer2 = this.aptanaFileSearchPage.getViewer();
    TableViewer viewer = (TableViewer) viewer2;
    int elementLimit = getElementLimit();
    boolean tableLimited = getElementLimit() == -1;
    AbstractTextSearchResult input = this.aptanaFileSearchPage.getInput();
    for (Object element : updatedElements) {
        Match[] matchs = this.mmap.get(element);
        if (matchs == null) {
            matchs = AptanaFileSystemSearchPage.NO_MATCH;
        }
        if (input.getMatchCount(element) > 0) {
            Match[] matches = input.getMatches(element);
            Set<Match> set = new HashSet<Match>(Arrays.asList(matches));
            for (Match m : matches) {
                if (!set.contains(m)) {
                    viewer.remove(m);
                } else {
                    set.remove(m);
                }
            }
            this.mmap.put(element, matches);
            for (Match name : set) {
                if (!tableLimited || (viewer.getTable().getItemCount() < elementLimit)) {
                    viewer.add(name);
                } else {
                    break;
                }
            }
        } else {
            viewer.remove(matchs);
        }
    }
}

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);/*  ww w.  ja v a  2  s  .  com*/
    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.aptana.js.debug.ui.internal.xhr.AJAXMonitorPage.java

License:Open Source License

private void createDetailsPart(Composite parent, String name, Viewer[] viewers) {
    Composite container = new Composite(parent, SWT.NONE);
    container.setLayoutData(new GridData(GridData.FILL_BOTH));

    GridLayout layout = new GridLayout(1, false);
    layout.marginHeight = 0;/*from  w  ww .  j  a va 2  s  . co  m*/
    layout.horizontalSpacing = 0;
    layout.marginWidth /= 2;
    container.setLayout(layout);

    Label label = new Label(container, SWT.NONE);
    label.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    label.setText(name);

    CTabFolder tab = new CTabFolder(container, SWT.BOTTOM | SWT.FLAT | SWT.BORDER);
    tab.setLayoutData(new GridData(GridData.FILL_BOTH));

    TableViewer viewer = new TableViewer(tab, /* SWT.VIRTUAL | */SWT.SINGLE | SWT.FULL_SELECTION);
    Table table = viewer.getTable();
    TableLayout tableLayout = new TableLayout();
    table.setLayout(tableLayout);
    table.setHeaderVisible(false);
    table.setLinesVisible(true);

    // CHECKSTYLE:OFF
    TableColumn column = new TableColumn(table, SWT.LEFT);
    column.setText(Messages.AJAXMonitorPage_Name);
    tableLayout.addColumnData(new ColumnWeightData(50));

    column = new TableColumn(table, SWT.LEFT);
    column.setText(Messages.AJAXMonitorPage_Value);
    tableLayout.addColumnData(new ColumnWeightData(50));
    // CHECKSTYLE:ON

    viewer.setContentProvider(new XHRContentProvider());
    viewer.setLabelProvider(new XHRLabelProvider());
    viewers[0] = viewer;

    CTabItem item = new CTabItem(tab, SWT.NONE);
    item.setControl(viewers[0].getControl());
    item.setText(Messages.AJAXMonitorPage_Headers);

    TextViewer textViewer = new TextViewer(tab, SWT.READ_ONLY | SWT.V_SCROLL | SWT.H_SCROLL);
    item = new CTabItem(tab, SWT.NONE);
    item.setControl(textViewer.getControl());
    item.setText(Messages.AJAXMonitorPage_Body);

    textViewer.setEditable(false);
    textViewer.setDocument(new Document());
    viewers[1] = textViewer;
    tab.setSelection(item);
}

From source file:com.aptana.webserver.ui.internal.views.ServersView.java

License:Open Source License

private TableViewer createServerTable(Composite parent) {
    TableViewer tableViewer = new TableViewer(parent, SWT.SINGLE | SWT.FULL_SELECTION);
    Table serverTable = tableViewer.getTable();
    serverTable.setHeaderVisible(true);//from  w w  w. j ava2s .  c  o m
    serverTable.setLinesVisible(true);
    serverTable.setLayoutData(new GridData(GridData.FILL_BOTH));

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

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

    TableColumn typeColumn = new TableColumn(serverTable, SWT.LEFT);
    typeColumn.setText(Messages.ServersView_TYPE);
    typeColumn.setWidth(125);

    TableColumn hostColumn = new TableColumn(serverTable, SWT.LEFT);
    hostColumn.setText(Messages.GenericServersView_HOST);
    hostColumn.setWidth(150);

    TableColumn portColumn = new TableColumn(serverTable, SWT.LEFT);
    portColumn.setText(Messages.GenericServersView_PORT);
    portColumn.setWidth(50);

    WebServerCorePlugin.getDefault().getServerManager().addServerChangeListener(this);
    tableViewer.setLabelProvider(new ServerLabelProvider());
    tableViewer.setContentProvider(ArrayContentProvider.getInstance());
    tableViewer.setInput(WebServerCorePlugin.getDefault().getServerManager().getServers());

    ThemePlugin.getDefault().getControlThemerFactory().apply(tableViewer);
    return tableViewer;
}

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);//  w  ww  .j  a  v  a2 s  .c o m
    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));
        }
    });
}

From source file:com.astra.ses.spell.database.db.ui.editor.DatabaseEditor.java

License:Open Source License

@Override
protected void configureTable(TableViewer tableViewer) {
    super.configureTable(tableViewer);
    /*//from   ww w. ja  va2s  .  com
     * In this case we want to add column headers
     */
    tableViewer.getTable().setHeaderVisible(true);
}