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

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

Introduction

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

Prototype

public void add(Object[] elements) 

Source Link

Document

Adds the given elements to this table viewer.

Usage

From source file:c8_selectionservice.parts.SamplePart.java

License:Open Source License

private void initData(TableViewer tableViewer) {
    tableViewer.add(new Person("John"));
    tableViewer.add(new Person("Paul"));
    tableViewer.add(new Person("George"));
    tableViewer.add(new Person("Ringo"));
}

From source file:com.aptana.editor.php.internal.ui.preferences.BuildPathEditingComposite.java

License:Open Source License

/**
 * Add an item to the table viewer after verifying that the path of that item does not exist or is not containing
 * the path for this item./*  w  ww .ja v a  2  s . c  om*/
 * 
 * @param tableViewer
 * @param item
 */
@SuppressWarnings({ "unchecked", "rawtypes" })
private void addWithValidation(TableViewer tableViewer, Object item) {
    propertyPage.setMessage(null);
    TableItem[] tableItems = tableViewer.getTable().getItems();
    if (tableItems == null || tableItems.length == 0) {
        // Just add
        if (item instanceof Object[]) {
            Object[] items = (Object[]) item;
            for (Object obj : items) {
                tableViewer.add(obj);
                return;
            }
        } else {
            if (item != null) {
                tableViewer.add(item);
                return;
            }
        }
    }
    List toAdd = new ArrayList();
    boolean hasAlreadyIncludedPaths = false;
    if (item instanceof File) {
        File directoryAdded = (File) item;
        // Check for files that are already in the table.
        boolean shouldAdd = true;
        for (TableItem tableItem : tableItems) {
            Object data = tableItem.getData();
            if (data instanceof File) {
                File existinsDirectory = (File) data;
                if (existinsDirectory.equals(directoryAdded)
                        || directoryAdded.getAbsolutePath().startsWith(existinsDirectory.getAbsolutePath())) {
                    hasAlreadyIncludedPaths = true;
                    shouldAdd = false;
                    break;
                }
            }
        }
        if (shouldAdd) {
            toAdd.add(directoryAdded);
        }
    } else if (item instanceof Object[]) {
        Object[] elements = (Object[]) item;

        for (Object element : elements) {
            boolean shouldAdd = true;
            for (TableItem tableItem : tableItems) {
                if (element instanceof IResource && tableItem.getData() instanceof IResource) {
                    IResource resource = (IResource) element;
                    IResource resourceInTable = (IResource) tableItem.getData();
                    if ((resourceInTable).getFullPath().isPrefixOf(resource.getFullPath())) {
                        hasAlreadyIncludedPaths = true;
                        shouldAdd = false;
                        break;
                    }
                }
            }
            if (shouldAdd) {
                toAdd.add(element);
            }
        }
    }
    tableViewer.add(toAdd.toArray());
    if (hasAlreadyIncludedPaths) {
        propertyPage.setMessage(Messages.BuildPathEditingComposite_selectionIncludedNotice,
                DialogPage.INFORMATION);
        Job job = new UIJob("Build-Path::Remove message") //$NON-NLS-1$
        {
            public IStatus runInUIThread(IProgressMonitor monitor) {
                if (propertyPage != null && !propertyPage.getControl().isDisposed()) {
                    propertyPage.setMessage(null);
                }
                return Status.OK_STATUS;
            }
        };
        job.schedule(4000); // wait 4 seconds before removing the message
    }
}

From source file:com.aptana.ide.search.epl.filesystem.ui.text.FileTableContentProvider.java

License:Open Source License

/**
 * @see com.aptana.ide.search.epl.filesystem.ui.text.IFileSearchContentProvider#elementsChanged(java.lang.Object[])
 *//*from  www  . ja  va  2s .c  om*/
public void elementsChanged(Object[] updatedElements) {
    TableViewer viewer = this.getViewer();

    int elementLimit = this.getElementLimit();
    boolean tableLimited = elementLimit != -1;
    for (int i = 0; i < updatedElements.length; i++) {
        if (this.fResult.getMatchCount(updatedElements[i]) > 0) {
            if (viewer.testFindItem(updatedElements[i]) != null) {
                viewer.update(updatedElements[i], null);
            } else {
                if (!tableLimited || (viewer.getTable().getItemCount() < elementLimit)) {
                    viewer.add(updatedElements[i]);
                }
            }
        } else {
            viewer.remove(updatedElements[i]);
        }
    }
}

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

License:Open Source License

/**
 * handles updates//from w  w w . ja  v a 2 s.  c o  m
 * @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.MatchesContentProvider.java

License:Open Source License

/**
 * handles updates/*  w  ww .j  a  v a2  s  .  co m*/
 * 
 * @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.google.dart.tools.internal.search.ui.text.FileTableContentProvider.java

License:Open Source License

@Override
public void elementsChanged(Object[] updatedElements) {
    TableViewer viewer = getViewer();
    int elementLimit = getElementLimit();
    boolean tableLimited = elementLimit != -1;
    for (int i = 0; i < updatedElements.length; i++) {
        if (fResult.getMatchCount(updatedElements[i]) > 0) {
            if (viewer.testFindItem(updatedElements[i]) != null) {
                viewer.update(updatedElements[i], null);
            } else {
                if (!tableLimited || viewer.getTable().getItemCount() < elementLimit) {
                    viewer.add(updatedElements[i]);
                }//from  w  w w.j  a v a2  s .co  m
            }
        } else {
            viewer.remove(updatedElements[i]);
        }
    }
}

From source file:com.google.dart.tools.search.internal.ui.text.FileTableContentProvider.java

License:Open Source License

public void elementsChanged(Object[] updatedElements) {
    TableViewer viewer = getViewer();
    int elementLimit = getElementLimit();
    boolean tableLimited = elementLimit != -1;
    for (int i = 0; i < updatedElements.length; i++) {
        if (fResult.getMatchCount(updatedElements[i]) > 0) {
            if (viewer.testFindItem(updatedElements[i]) != null)
                viewer.update(updatedElements[i], null);
            else {
                if (!tableLimited || viewer.getTable().getItemCount() < elementLimit)
                    viewer.add(updatedElements[i]);
            }/*w w  w . j  a  v  a 2  s .co m*/
        } else
            viewer.remove(updatedElements[i]);
    }
}

From source file:com.google.dart.tools.ui.internal.search.DartSearchTableContentProvider.java

License:Open Source License

@Override
public void elementsChanged(Object[] updatedElements) {
    if (getSearchResult() == null) {
        return;//from   w w  w. j a va  2  s  .c  om
    }

    int addLimit = getAddLimit();

    TableViewer viewer = (TableViewer) getPage().getViewer();
    Set<Object> updated = new HashSet<Object>();
    Set<Object> added = new HashSet<Object>();
    Set<Object> removed = new HashSet<Object>();
    for (int i = 0; i < updatedElements.length; i++) {
        if (getPage().getDisplayedMatchCount(updatedElements[i]) > 0) {
            if (viewer.testFindItem(updatedElements[i]) != null) {
                updated.add(updatedElements[i]);
            } else {
                if (addLimit > 0) {
                    added.add(updatedElements[i]);
                    addLimit--;
                }
            }
        } else {
            removed.add(updatedElements[i]);
        }
    }

    viewer.add(added.toArray());
    viewer.update(updated.toArray(), new String[] { SearchLabelProvider.PROPERTY_MATCH_COUNT });
    viewer.remove(removed.toArray());
}

From source file:com.nextep.designer.sqlgen.ui.impl.SQLSearchTreeNewContentProvider.java

License:Open Source License

public synchronized void elementsChanged(Object[] updatedElements, boolean updateViewer) {
    for (Object o : updatedElements) {
        if (o instanceof IVersionable<?>) {
            final IVersionContainer parentContainer = ((IVersionable<?>) o).getContainer();
            List<Object> objs = elements.get(parentContainer);
            if (objs == null) {
                objs = new ArrayList<Object>();
                elements.put(parentContainer, objs);
            }//  w  ww.  j  a  va  2s .c  o  m
            objs.add(o);
            if (updateViewer) {
                if (viewer instanceof TreeViewer) {
                    TreeViewer treeViewer = (TreeViewer) viewer;
                    treeViewer.add(parentContainer, o);
                    // For all matches found
                    for (Match match : result.getMatches(o)) {
                        treeViewer.add(o, match);
                    }
                } else if (viewer instanceof TableViewer) {
                    TableViewer tabViewer = (TableViewer) viewer;
                    tabViewer.add(o);
                }
            }
        }
    }
    viewer.refresh();
}

From source file:com.nextep.designer.synch.ui.dialogs.TableSelectionDialog.java

License:Open Source License

private Collection<IVersionable<?>> transferSelection(TableViewer sourceViewer, TableViewer targetViewer) {
    final ISelection s = sourceViewer.getSelection();
    final Collection<IVersionable<?>> transferredElts = new ArrayList<IVersionable<?>>();
    if (s != null && !s.isEmpty() && s instanceof IStructuredSelection) {
        final IStructuredSelection sel = (IStructuredSelection) s;
        Iterator<?> it = sel.iterator();
        while (it.hasNext()) {
            IVersionable<?> v = (IVersionable<?>) it.next();
            targetViewer.add(v);
            sourceViewer.remove(v);/*from   ww w. j a  va2 s  .c o m*/
            transferredElts.add(v);
        }
    }
    return transferredElts;
}